-
Total de itens
273 -
Registro em
-
Última visita
-
Dias Ganhos
4
Tudo que bepokemon postou
-
Help - Quest - O Que Tem De Errado No Meu Script
tópico respondeu ao Mehahbr de bepokemon em Lixeira Pública
O problema é que você está igualando a vocation do player com varios coisas. Isso não é possível. Vou refazer o script todo para você. function onUse(cid, item, frompos, item2, topos) local voc, n, msg = getPlayerVocation(cid), 0, "You have found a: " local prizes = { [1] = {{7424,1}}, [2] = {{7438,1},{2352,1}}, [3] = {{2408,1,true},{2415,1},{2453}}} if getPlayerStorageValue(cid,19000) ~= -1 then doPlayerSendTextMessage(cid,22,"It's empty.") return true end if isInArray({1,2,5,6,9,10}, voc) then n = 1 elseif isInArray({3,7,11}, voc) then n = 2 else n = 3 end for _,item in ipairs(prizes[n]) do if item[3] then local i = doPlayerAddItem(cid,2408,1) doItemSetAttribute(i, "attack", 87) doItemSetAttribute(i,"description","Refinado(Atk): +22\nEsse item foi obtido por "..getCreatureName(cid)..".") else doPlayerAddItem(cid, item[1], item[2]) end msg = msg .. getItemArticleById(item[1]).." "..getItemNameById(item[1]).."," end setPlayerStorageValue(cid,19000,1) doPlayerAddItem(cid,2160,10) doPlayerSendTextMessage(cid, 22, string.gsub(msg, -1) .. ".") return true end -
Algum servidores deixaram de usar o global.lua e no caso ele não existe mais. Agora a única forma de criar uma quarta moeda é editando o arquivo changegold.lua nos actions.
- 2 respostas
-
- global.lua
- tibia 8.60
-
(e 3 mais)
Tags:
-
Ajudinha antes de dormir: if getPlayerSlotItem(cid CONST_SLOT_HEAD).itemid == getItemIdByName('helmet of the deep') then Amanhã posto o código completo. Abraços.
-
@Topic Você pode fazer uma creaturescript onThink que verifica: Vocation LookType Addons Se for Knight, Mage, Addon (do ML) você tira dois MLs do player .. deve dar.
-
Testa os 2 auhauhaa Isso explica MUITA coisa. =) Obrigado.
-
[Tibia] Poder Se Transformar Em Algum Monster Só Se Tiver Quest
tópico respondeu ao Gabriel001 de bepokemon em Lixeira Pública
Não cara, comprei uma bola de cristal no mercado ali e adivinhei. Se ele quiser usar ele pode pegar o script ali de volta. Relaxa aí. -
[ Encerrado ] Brincadeira-Relâmpago: Seu Ot no Ekz.
tópico respondeu ao Henrique Moura de bepokemon em Noticias
Quando sai o resultado? b u m p ?- 21 respostas
-
- somente hoje
- otserv
-
(e 2 mais)
Tags:
-
function onAdvance(cid, oldLevel, newLevel) if skill == SKILL__LEVEL then if newLevel == 150 then doTeleportThing(cid, {x=,y=,z=}, false) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You\'ve been teleported somewhere.") end end return true end Oque é skill? (Aonde está isso? ¬¬')
-
[Help] Sistema Para Ver Meus Resets!
tópico respondeu ao AvengedSupremy de bepokemon em Lixeira Pública
Esta aqui não é a seção se pedidos. Seu pedido deve ser feito na seção correta. -
Coloque os devidos créditos por favor.
-
COMBAT_FORMULA_LEVELMAGIC, ML_MIN, MIN, ML_MAX, MAX -Total = math.random(ML_MIN * algo, ML_MAX * algo) + math.random(MIN, MAX) Ex: COMBAT_FORMULA_LEVELMAGIC, 0, -60, 0, -60 O dano será 60. Sobre o dano com LVL e ML você deverá fazer "manualmente". A spell vai ficar BEM diferente.
-
Função Addevent(Func, Time, Arg)
tópico respondeu ao Demonbholder de bepokemon em Mods, funções e outros
Ah sim, então ele só "têm a certeza" de que estará rodando os valores .. Saquei =) Obrigado o/ -
Função Addevent(Func, Time, Arg)
tópico respondeu ao Demonbholder de bepokemon em Mods, funções e outros
Na verdade era exatamente assim. Era pra uma merda boba que eu to tentando fazer. (Um "update" no NPC System pra colocar Quests "automaticas".) Não briguem T.T Não quero ter que escolher quem eu vou ser fã nos fim de semanas o/ @Mkalo Só não entendi uma coisa: function executeArray(array) local func = array[1] local parameters = {} for i,x in pairs(array) do table.insert(parameters, x) end return func(unpack(parameters)) end Eu não poderia usar: unpack(array) Ou: parameters = array unpack(parameters) ? @Demonbholder Tipo assim? .-. local rewards = {{doPlayerAddItem,cid,2160,1},{doPlayerAddItem,cid,2152,50}} for _,v in pairs(rewards) do executeArray(v) end -
local config = { seconds = 10, storage = 47112120, msg = "Voc\ê preci\sa aguardar 10 segundos para acumular o esp\írito.", mana = 2400, semMana = "Voc\ê n\ão t\êm mana suficiente." } local function useAgain(cid) setPlayerStorageValue(cid, config.storage, 2) return TRUE end local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 52) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -2.3, -250, -2.4, -260) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 52) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -2.3, -250, -2.4, -260) arr1 = { {0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } arr2 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) setCombatArea(combat1, area1) setCombatArea(combat2, area2) local function spell(parameters) if getTilePzInfo(getThingPos(cid)) then return false end doCombat(parameters.cid, parameters.combat2, parameters.var) end function onCastSpell(cid, var) if getPlayerStorageValue(cid, config.storage) == 1 then doPlayerSendCancel(cid, config.msg) return TRUE end if getPlayerStorageValue(cid, config.storage) ~= 1 then if getPlayerMana(cid) >= config.mana then doPlayerAddMana(cid, -config.mana) setPlayerStorageValue(cid, config.storage, 1) addEvent(useAgain, config.seconds*1000, cid) local parameters = { cid = cid, var = var, combat2 = combat2 } addEvent(spell, 500, parameters) return doCombat(cid, combat1, var) else doPlayerSendCancel(cid, config.semMana) end end return TRUE end
-
[Tibia] Poder Se Transformar Em Algum Monster Só Se Tiver Quest
tópico respondeu ao Gabriel001 de bepokemon em Lixeira Pública
Sério? Ok, muda a velocidade pra speed atual * 1 depois tira speed / 1. Dá no mesmo ¬¬' E a mana tá 0. Não faz diferença ._.' Além de que, se o player não estiver online em time * 1000 (24 horas depois) vai dar erro no console. -
A parte que tira/suga mana: local mana = getPlayerLevel(cid) if isPlayer(getCreatureTarget(cid)) then doPlayerAddMana(getCreatureTarget(cid), -(mana*2)) doPlayerAddMana(cid, mana) else doPlayerAddMana(cid, mana*2) end
-
Como é uma quest não vou colocar a parte de storage (só poderá ir uma vez). Assim quem morrer na quest pode voltar para lá. function onAdvance(cid, oldLevel, newLevel) if getPlayerLevel(cid) == 150 then doTeleportThing(cid, {x=,y=,z=}) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You\'ve been teleported somewhere.") end return TRUE end Instalação:
-
[Tibia] Poder Se Transformar Em Algum Monster Só Se Tiver Quest
tópico respondeu ao Gabriel001 de bepokemon em Lixeira Pública
O de cima conseguiu fazer, mas esse script tem coisa desnescessária DEMAIS. Aqui uma parte mais resumida e arrumada: function onSay(cid, words, param) if getPlayerStorageValue(cid,storage) == -1 then doPlayerSendCancel(cid, "Sorry, not possible.") doSendMagicEffect(getThingPos(cid), 2) else doSetCreatureOutfit(cid, {lookType = 5}, 86400 * 1000) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_GREEN) end return true end Só mudar Storage para o storage que você quer. -
Limitar Account Managers. local maxAccMngr = 5 -- Número máximo de account managers function onLogin(cid) local count = 0 if getCreatureName(cid) ~= 'Account Manager' then return true end for _,pid in ipairs(getPlayersOnline()) do if getCreatureName(pid) == 'Account Manager' then count = count+1 end end if count >= maxAccMngr then return doRemoveCreature(cid), false end return true end
-
Função Addevent(Func, Time, Arg)
tópico respondeu ao Demonbholder de bepokemon em Mods, funções e outros
Demonb, será que você pode me fazer um favor? Não sei se é possível (deve ser), mas eu queria uma função execArray(array). Ela executaria um array parecido com esse: {doPlayerSendCancel,cid,'Demonbholder'} Não consegui fazer -
Para o comando /addskill tente adicionar esta tag no talkactions.xml: <talkaction log="yes" words="/addskill" access="5" event="function" value="addSkill"/> Já para o comando buy premium você deve ir para mods (na mesma pasta que a pasta data) e adiciona um script.xml contendo este code: buypremium_command.xml: <?xml version="1.0" encoding="UTF-8"?> <mod name="Buy premium command" version="1.0" author="The Forgotten Server" contact="otland.net" enabled="yes"> <config name="buypremium_config"><![CDATA[ config = { days = 90, cost = 10000, maxDays = 360 } ]]></config> <talkaction words="!buypremium; !pacc" event="buffer"><![CDATA[ domodlib('buypremium_config') if(getPlayerPremiumDays(cid) > config.maxDays) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You can not buy more than " .. config.days + config.maxDays .. " days of Premium Account.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return end if(not doPlayerRemoveMoney(cid, config.cost)) then doPlayerSendCancel(cid, "You don't have enough money, " .. config.days .. " days premium account costs " .. config.cost .. " gold coins.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return end doPlayerAddPremiumDays(cid, config.days) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have bought " .. config.days .. " days of premium account.") ]]></talkaction> </mod>
-
-
Se eu não fiz merda deu pra reduzir o script.
-
effPos = getThingPos(cid) effPos.y = effPos.y+1 doSendDistanceShoot(getThingPos(cid), effPos, 40)
-
Como Coloco Dicas Iniciais Para Os Jogadores ?
tópico respondeu ao Batmann de bepokemon em Lixeira Pública
Se não conseguir poste aqui ou me mande uma PM.
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.