Ir para conteúdo

Spell/transforma,ganha Skill(Club,axe,sword)


cordis

Posts Recomendados

Se alguem puder ajudar, preciso de uma spell que quando usada pela classid12 ,se transforme de um animal(Midnight Panther) e ganhe 70 de Axe,club,sword.

Pedidos adicionais:

duração ilimitada, e se possivel, outra spell que faça voltar ao normal, caso nãom adicionar o tempo de 10min na spell.

 

explicação do pedido:

primeiramente eu havia pensado, bom é só misturar o spell "utevo res ina" e "blood rage", mas ai haveria um porem, o cara poderia se transformar em qualquer monstro, e eu preciso de algo espeçifico (midnight panther)

quem souber fazer isso, porfavor, preciso disso para um pequeno projeto.

Sim é a CAT form do WoW, mas fazer oque se é genial? =P

Link para o comentário
Compartilhar em outros sites

ta ae(n testado)

 

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

 

local condition = createConditionObject(CONDITION_ATTRIBUTES)

setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)

setConditionParam(condition, CONDITION_PARAM_SKILL_MELEEPERCENT, 140)

setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELDPERCENT, -100)

setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)

setCombatCondition(combat, condition)

 

function onCastSpell(cid, var)

y = getCreatureOutfit(cid)

doCreatureChangeOutfit(cid, x)

setPlayerStorageValue(cid, 99666, y )

doCombat(cid, combat, var)

return TRUE

end

troque o x vermelho pelo numero da outfit(a que vai vira)

 

para desativar a magia use essa magia

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, 40)

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_ATTRIBUTES)

 

function onCastSpell(cid, var)

if getCreatureOutfit(cid) == x or getPlayerStorageValue(cid, 99666) > 0 then

y = getPlayerStorageValue(cid, 99666)

setPlayerStorageValue(cid, 99666, 0)

doCreatureChangeOutfit(cid, y)

doCombat(cid, combat, var)

else

doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_RED,'você n esta trasformado........')

return TRUE

end

novamente troque o x vermelho pela id da outift(temque ser o mesmo do de cima

bom acho que ja deve sabe adiciona os spell nas pasta lua e nas tag do spell.xml(se n souber avise)

Editado por lordbug99
Link para o comentário
Compartilhar em outros sites

Relaxa eu sei adicionar, porem fui testar as spell e ambas deram erros.

1º Feral Form:

[Error - Spell Interface]

data/spells/scripts/support/feral.lua:onCastSpell

description:

attempt to index a number value

stack traceback:

in function 'doCreatureChangeOutfit'

data/spells/scripts/support/feral.lua:14: in function <data/spells/scripts/support/feral.lua:12>

 

e 2º no Feral Back form

[Error - LuaInterface::loadFile] data;spells/scripts/support/feralback.lua:15: 'end' expected <to cose 'function' at line6>

near '<eof>'

Link para o comentário
Compartilhar em outros sites

tenta essa aqui pra transformar, obs: eu uso ela então funcionara:

local outfit = {lookType = 32} -- Roupa que ira transformar no caso seu corpo ficara em choque
local tempo = 60 * 1000 -- Tempo, nesse caso esta 60 segundos Lembrando que 1000 = 1 segundo
local ml = 2 -- quantos ira aumentar o skill de ML
local skillfist = 2 -- quantos ira aumentar o skill de Fist
local skillsword = 2 -- quantos ira aumentar o skill de Sword
local skillaxe = 2 -- quantos ira aumentar o skill de Axe
local skillclub = 2 -- quantos ira aumentar o skill de Club
local skilldistance = 2 -- quantos ira aumentar o skill de Distance
local skillshield = 2 -- quantos ira aumentar o skill de Shield
local health = 20 -- A cada 1 segundo quantos aumentar de vida
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 48) -- effect que você quer usar
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword)
setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe)
setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub)
setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield)
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)
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)
setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health)
setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000)
setCombatCondition(combat, condition)
local sys = createConditionObject(CONDITION_OUTFIT)
setConditionParam(sys, CONDITION_PARAM_TICKS, tempo)
addOutfitCondition(sys, outfit)
setCombatCondition(combat, sys)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end

 

e para reverter:

 

local tempo = 60 * 1000 -- Tempo, nesse caso esta 60 segundos Lembrando que 1000 = 1 segundo
local health = 0 -- A cada 1 segundo quantos aumentar de vida
local mana = 0 -- A cada 1 segundo quantos aumentar de mana
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
local condition = createConditionObject(CONDITION_REGENERATION)
setConditionParam(condition, CONDITION_PARAM_SUBID, 1)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo)
setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health)
setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000)
setCombatCondition(combat, condition)
function onCastSpell(cid, var)
doRemoveCondition(cid, CONDITION_ATTRIBUTES)
doRemoveCondition(cid, CONDITION_HASTE)
doRemoveCondition(cid, CONDITION_OUTFIT)
   return doCombat(cid, combat, var)
end

 

ta aew =)

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...