Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

Aeeeeeee carai, hoje vim trazer pra vocês meu mais novo sistema *-*. É uma fodenda spell que você seleciona alguém pra ser seu voodoo e a partir disso durante um tempo X ela vai receber todos os hit's que você deveria receber... INCRÍVEL, NÃO?
Agora se nesse meio tempo ela deslogar ou entrar em pz você vai tomar o dano normal, mas se ainda tiver nesse tempo X e ela sair ela vai receber o dano instantaneamente (É BOM DEMAIS PRA SER VERDADE).

Agora você deve estar imaginando, e se eu usar a magia pra transferir o dano pra um amigo e ele fizer a mesma coisa em mim, pra onde vai o dano?
PRA LUGAR NENHUM!!!! Até porque eu já me previni contra esse bug fazendo com que não seja possível fazer alguém de voodoo se ele já tiver alguém de voodoo.

Testado em versão 8.54 TFS Crying Damnson mas deve funcionar em todas as versões que tenham a função onStatsChange no creaturescripts.

Bom, o script tá 100% funcional e livre de bugs (se vc achar algum eu te dou 3 REP).

Agora vamos à mágica:
 

Crie um arquivo em mods com extensão .xml e adiciona isso daqui nele

<?xml version="1.0" encoding="UTF-8"?>
<mod name="Voodoo System" version="1.0" author="Night Wolf" contact="none" enabled="yes">
------------------------------------------------------------------------------------
<config name="feitisso"><![CDATA[
configuration = {
storage = 24567, 
tempo = 20,
cooldown = 45,
effect1 = 13,
effect2 = 65
}
storagecool = 24568
]]></config>


----------------------------------------------------------------------------------
<event type="login" name="registerVoodoo" event="script"><![CDATA[
function onLogin(cid)
domodlib('feitisso')
if getPlayerStorageValue(cid, configuration.storage) > 0 then
doPlayerSendTextMessage(cid, 22, "Your victim is not receiving your hits anymore.")
doPlayerSetStorageValue(cid, configuration.storage, 0)
end
registerCreatureEvent(cid,"voodoo")
return true
end
]]></event>
------------------------------------------------------------------------------------
<instant name="Feitiço" words="voodoo" lvl="50" mana="10" prem="1" range="3" needtarget="1" blockwalls="1" exhaustion="1000" needlearn="0" event="script">
<vocation id="5"/>
<vocation id="6"/>
<vocation id="7"/>
<vocation id="8"/>
<![CDATA[ 
function onCastSpell(cid, var)
domodlib('feitisso')


if not (isPlayer(variantToNumber(var))) then
doPlayerSendCancel(cid, "You can only use this spell in players.")
return false
end


if getPlayerStorageValue(variantToNumber(var), configuration.storage) > 0 then
doPlayerSendCancel(cid, "You can't make a voodoo of someone who already has a voodoo.")
return false
end


if (os.time() - getPlayerStorageValue(cid, storagecool)) >= configuration.cooldown then
if getPlayerStorageValue(cid, configuration.storage) <= 0 then
timeleft = (os.time() + configuration.cooldown)
doPlayerSetStorageValue(cid, storagecool, timeleft)
local target = getPlayerGUID(variantToNumber(var)) 
doPlayerSetStorageValue(cid, configuration.storage, target)
doSendMagicEffect(getPlayerPosition(cid), configuration.effect1)
doSendMagicEffect(getThingPos(variantToNumber(var)), configuration.effect1)
addEvent(function()
  if isCreature(cid) then
doSendMagicEffect(getPlayerPosition(cid), configuration.effect2) 
doPlayerSendTextMessage(cid, 22, "Your victim is not receiving your hits anymore.")
doPlayerSetStorageValue(cid, configuration.storage, 0)
end
 end, 100+1000*configuration.tempo)
elseif getPlayerStorageValue (cid, configuration.storage) > 0 then
doPlayerSendCancel(cid, "You've already set a target.")
end
else
doPlayerSendCancel(cid, "Your skill is in cooldown, you must wait "..(configuration.cooldown - (os.time() - getPlayerStorageValue(cid, storagecool))).." seconds.")
end
return true
end
]]></instant>
------------------------------------------------------------------------------------
<event type="statschange" name="voodoo" event="script"><![CDATA[ 
function onStatsChange(cid, attacker, type, combat, value)
domodlib('feitisso') 
if isPlayer(cid) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) and getPlayerStorageValue(cid, configuration.storage) >= 1 then
local name = getPlayerNameByGUID(getPlayerStorageValue(cid, configuration.storage))
local victim = getCreatureByName(name)
if isCreature(victim) and not (getTilePzInfo(getPlayerPosition(victim)))  then
dano = math.ceil(value)
doSendMagicEffect(getPlayerPosition(cid), configuration.effect2)
if attacker == victim then
doTargetCombatHealth(cid, victim, combat, -dano, -dano, configuration.effect2)
else
doTargetCombatHealth(attacker, victim, combat, -dano, -dano, configuration.effect2)
end
return false
end
end
return true
end
]]></event>
------------------------------------------------------------------------------------
</mod>
Citar
configuration = {
storage = 24567, 
tempo = 20,
cooldown = 45,
effect1 = 13,
effect2 = 65
}
storagecool = 24568

 

aqui você edita os storages da magia e do cooldown, além do tempo que ela dura, o tempo de cooldown (um uso e outro) e os efeitos que vão sair.

-------------------------------------------------------------------------------------------------------------
 

Citar
<instant name="Feitiço" words="voodoo" lvl="50" mana="10" prem="1" range="3" needtarget="1" blockwalls="1" exhaustion="1000" needlearn="0" event="script">
<vocation id="5"/>
<vocation id="6"/>
<vocation id="7"/>
<vocation id="8"/>

 

aqui você edita o nome da spell, as palavras pra ela sair, level, custo de mana, se é preciso ser premium pra usar, o range dela, e as vocações que podem usá-la.

OBS: se vc quiser que essa spell seja ganha em uma quest (por se tratar de algo bastante apelativo), é só colocar needlearn = "1" e fazer uma quest pra ganhar a spell (tem no meu Darkness Pact Quest uma quest de ganhar Spell, é só ir lá no meu perfil e procurar o tópico).

Essa spell não serve somente pra ATS, use a criatividade pra criar uma história e fazer ela se encaixar... foque nos elementos de RPG e tcharam, está feito!.

Façam bom uso e espero que não saiam postando em outros lugares sem os devidos créditos. Abraços do lobinho pra vcs

PS: a foto ficou meio bosta mas vou postar mesmo assim 
V9jrCxH.png

 

Eu (sorc) ataquei a zuera e tomei o dano de volta e ainda saiu esse efeitinho bonito. 

Espero que tenham gostado e usem essa spell como base pra fazer outras coisas maravilhosas pra esse fórum  :esquecido: 
E não esqueça de clicar em "gostei" caso tenha curtido a idéia.

Ahhh, e antes que eu me esqueça dos agradecimentos:
@ViitinG por me ajudar a testar
@CreatServer por me dar a idéia

@MaXwEllDeN por me orientar a trocar a table pelo storage possibilitando que o script fosse possível.

  • Respostas 31
  • Visualizações 4.3k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • sim, eu já tinha feito ela a um mês e meio atrás mas tava com um problema pra resolver e hoje eu fui testar uma solução que o Max tinha me proposto. Não deu certo mas daí eu consegui adaptar a dica de

  • fico feliz que vcs tenham curtido haha eu achei esse script muito insano... perfeito pra uma vocação que eu tava pensando em criar que seria uma espécie de Shaman ou Macumbeiro 

  • auhuheuha tudo graças à você que me ajudou a ficar testando a spell hoje de manhã <3 vlw por tudo jovem!

Postado
  • Autor

sim, eu já tinha feito ela a um mês e meio atrás mas tava com um problema pra resolver e hoje eu fui testar uma solução que o Max tinha me proposto. Não deu certo mas daí eu consegui adaptar a dica dele pra outra coisa e acabou funcionando. Então agradeçam ao Max por ser um gênio auheuhauhuhe

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo