Postado Janeiro 10, 2018 7 anos @marcot coloquei no meu servidor e deu tudo certo :D agora uma perguntinha pra esse script ficar perfeito, teria como colocar o item para upar magic level como a spell normal faz quando chamamos ela, e também colocar um tempo pra poder dar use no item, tipo 2 segundos ai depois pode usar dnv :D teria como fazer este favor? serei eternamente grato
Postado Janeiro 10, 2018 7 anos Autor 43 minutos atrás, Samu DS disse: @marcot coloquei no meu servidor e deu tudo certo :D agora uma perguntinha pra esse script ficar perfeito, teria como colocar o item para upar magic level como a spell normal faz quando chamamos ela, e também colocar um tempo pra poder dar use no item, tipo 2 segundos ai depois pode usar dnv :D teria como fazer este favor? serei eternamente grato sim acabei de nota isso kkkk estava reparando que se clicar no item sem parar o jogo fica roubado, tem que colocar um delay e seria bom tbm upar magic lvl
Postado Janeiro 10, 2018 7 anos Solução @apollo333, @Samu DS Desculpem nao ter respondido, estava maratonando uma série ontem. Aqui a versão upando ML e com exausted: local config = { requiredLevel = 100, -- Level necessario usingMana = 200, -- Mana que sera gasta storageID = 40001, -- Mude se ja estiver em uso timeExausted = 1, -- Tempo de exausted global } local errorMsg = { level = "Not enough level.", exausted = "You are exausted.", mana = "Not enough mana.", } local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 49) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -0.5, -30, -1.1, 0) local arr = { {0, 0, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 2, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 0, 0} } local area = createCombatArea(arr) setCombatArea(combat, area) function onUse(cid, item, frompos, item2, topos) if getPlayerLevel(cid) > config.requiredLevel then if getPlayerStorageValue (cid, config.storageID) < os.time() then if getPlayerMana(cid) > config.usingMana then doPlayerAddMana(cid, -config.usingMana) doPlayerAddSpentMana(cid, config.usingMana, true) setPlayerStorageValue(cid, config.storageID, os.time() + config.timeExausted) return doCombat(cid, combat, numberToVariant(cid)) else doPlayerSendCancel(cid, errorMsg.mana) doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, errorMsg.exausted) doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, errorMsg.level) end return TRUE end Editado Janeiro 10, 2018 7 anos por marcot (veja o histórico de edições)
Postado Janeiro 10, 2018 7 anos Autor @marcot desculpa te incomodar tanto rsrsrs mas e que ainda me restou apenas uma duvida, eu criei esta spell Spoiler local combat0_Brush = createCombatObject() setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE) setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatArea(combat0_Brush,createCombatArea({{1, 0, 1}, {1, 2, 1}, {1, 1, 1}})) function getDmg_Brush(cid, level, maglevel) return (10)*-1,(20)*-1 end setCombatCallback(combat0_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush") local function RunPart(c,cid,var,dirList,dirEmitPos) if (isCreature(cid)) then doCombat(cid, c, var) if (dirList ~= nil) local i = 2; while (i < #dirList) do doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1]) i = i + 2 end end endend function onCastSpell(cid, var) local startPos = getCreaturePosition(cid) RunPart(combat0_Brush,cid,var) return trueend porem quando adciono o script no inicio e no final ela nao funciona, mas quando coloco ela dentro do arquivo da pasta spell e chamdo ela pelo nome ela e lançada, saberia me dizer porque ela nao quer ser lançada com item? Editado Janeiro 10, 2018 7 anos por apollo333 (veja o histórico de edições)
Postado Janeiro 11, 2018 7 anos Essa ultima script que você mandou está com vários erros. Tem um erro de sintaxe de um if sem then, e a função RunPart está sendo chamada sem todos seus 5 parâmetros, onde 2 deles não foram definidos no código (dirList e dirEmitPos) Editado Janeiro 11, 2018 7 anos por marcot (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.