Postado Junho 11, 2019 6 anos Versão do Servidor: 8.54 (Narutibia) Olá pessoal do TK, queria fazer um pedido de uma SPELL que seria assim: - O player irá falar a palavra pra ativar a spell - Sua outfit irá mudar por 3 segundos e voltará pra sua outfit anterior que estava usando após os 3 segundos - O player não poderá se mover durante os 3 segundos da spell (durante essa troca de outfit) - Depois dos 3 segundos, irá aparecer um Effect no player (que seria o Susanoo) e o player conseguirá se mover novamente. Já agradeço adiantado quem puder me ajudar nessa aê Editado Junho 27, 2019 5 anos por Genkkai (veja o histórico de edições)
Postado Julho 13, 2019 5 anos local t = { duration = 3, -- duração da novo outfit (em segundos) newLooktype = 111, -- looktype da nova outfit effect = 10, -- efeito que aparecerá cooldown = 10, -- tempo para usar a magia novamente (em segudos) storage = 54897 -- só modifique se necessário } function onCastSpell(cid, var) if getPlayerStorageValue(cid, t.storage) > os.time() then doPlayerSendCancel(cid, "Você precisa esperar para soltar esta magia novamente.") return false end doCreatureSetNoMove(cid, true) local out = getCreatureOutfit(cid) out.lookType = t.newLooktype doSetCreatureOutfit(cid, out, t.duration * 1000) setPlayerStorageValue(cid, t.storage, t.cooldown + os.time()) addEvent(function() if isPlayer(cid) then doCreatureSetNoMove(cid, false) doSendMagicEffect(getPlayerPosition(cid), t.effect) end end, t.duration * 1000) return true end Contato: Email: [email protected] Discord: Dwarfer#2715
Postado Julho 16, 2019 5 anos Autor Em 13/07/2019 em 17:35, Dwarfer disse: local t = { duration = 3, -- duração da novo outfit (em segundos) newLooktype = 111, -- looktype da nova outfit effect = 10, -- efeito que aparecerá cooldown = 10, -- tempo para usar a magia novamente (em segudos) storage = 54897 -- só modifique se necessário } function onCastSpell(cid, var) if getPlayerStorageValue(cid, t.storage) > os.time() then doPlayerSendCancel(cid, "Você precisa esperar para soltar esta magia novamente.") return false end doCreatureSetNoMove(cid, true) local out = getCreatureOutfit(cid) out.lookType = t.newLooktype doSetCreatureOutfit(cid, out, t.duration * 1000) setPlayerStorageValue(cid, t.storage, t.cooldown + os.time()) addEvent(function() if isPlayer(cid) then doCreatureSetNoMove(cid, false) doSendMagicEffect(getPlayerPosition(cid), t.effect) end end, t.duration * 1000) return true end @Dwarfer Ficou muito bom o código, porém, está faltando os atributos que o buff dá e o effect apenas aparece e some, queria que ele ficasse contínuo até o buff acabar, se puder me dar uma ajudinha nessa, agradeço muito. Ahh, e também se pudesse colocar x y z pra poder mudar o effect de lugar, ficaria perfeito! Editado Julho 16, 2019 5 anos por Genkkai (veja o histórico de edições)
Postado Julho 30, 2019 5 anos Em 16/07/2019 em 11:00, Genkkai disse: @Dwarfer Ficou muito bm o código, porém, está faltando os atributos que o buff dá e o effect apenas aparece e some, queria que ele ficasse contínuo até o buff acabar, se puder me dar uma ajudinha nessa, agradeço muito. Ahh, e também se pudesse colocar x y z pra poder mudar o effect de lugar, ficaria perfeito! Em 11/06/2019 em 14:30, Genkkai disse: Versão do Servidor: 8.54 (Narutibia) Olá pessoal do TK, queria fazer um pedido de uma SPELL que seria assim: - O player irá falar a palavra pra ativar a spell - Sua outfit irá mudar por 3 segundos e voltará pra sua outfit anterior que estava usando após os 3 segundos - O player não poderá se mover durante os 3 segundos da spell (durante essa troca de outfit) - Depois dos 3 segundos, irá aparecer um Effect no player (que seria o Susanoo) e o player conseguirá se mover novamente. Já agradeço adiantado quem puder me ajudar nessa aê local tempo = 60 -- tempo em segundos. local EffPerma = {2124-1} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local EffOnUse = 2124-1 local outfit = {lookType = 2160} local points = 150 -- quantos ira aumentar o skill de Fist local health = 80 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, points) --setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, points) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, points) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, points) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, points) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, points) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, points) --setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) function Meliodas(tempo2,tempo3,cid) -- Altera aqui o nome da funçao pelo nome do personagem if (isCreature(cid)) then for i=1, #EffPerma do local position = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(position, EffPerma) end end end function onCastSpell(cid, var) if isMonster(cid) then return true end if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(Meliodas, tempo2, tempo2, tempo*1000, cid) -- Altere aqui pelo nome da função criada acima tempo2 = tempo2 + 300 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. --doCreatureSay(cid, "Arte Ninja: Clone das Sombras", TALKTYPE_MONSTER) local PosOnUse = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(PosOnUse, EffOnUse) else doPlayerSendCancel(cid, "Voce ja esta com o Buff Ativo.") end end
Postado Julho 31, 2019 5 anos Autor @EduardoVidal Testarei amanhã Obrigado! @EduardoVidal 20 horas atrás, EduardoVidal disse: local tempo = 60 -- tempo em segundos. local EffPerma = {2124-1} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local EffOnUse = 2124-1 local outfit = {lookType = 2160} local points = 150 -- quantos ira aumentar o skill de Fist local health = 80 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, points) --setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, points) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, points) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, points) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, points) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, points) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, points) --setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) function Meliodas(tempo2,tempo3,cid) -- Altera aqui o nome da funçao pelo nome do personagem if (isCreature(cid)) then for i=1, #EffPerma do local position = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(position, EffPerma) end endend function onCastSpell(cid, var) if isMonster(cid) then return true endif getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(Meliodas, tempo2, tempo2, tempo*1000, cid) -- Altere aqui pelo nome da função criada acima tempo2 = tempo2 + 300 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. --doCreatureSay(cid, "Arte Ninja: Clone das Sombras", TALKTYPE_MONSTER) local PosOnUse = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(PosOnUse, EffOnUse)else doPlayerSendCancel(cid, "Voce ja esta com o Buff Ativo.")endend @EduardoVidal Sua script funcionou apenas como BUFF, sem as outras coisas acima que eu tinha pedido. Eu estava precisando que alguem colocasse os atributos na script do Dwarfer, que funcionou perfeitamente. Mesmo assim, obrigado novamente.
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.