Ir para conteúdo

[Spell] Change Corpse


digo1040

Posts Recomendados

  • 2 weeks later...

Todos os xtibianos q n conseguiram por a magia a funcionar em seu ot 8.4 maioria sendo ot fox ! e por que o sistema do map fox na funciona com true e false e sim com yes e no entao aki esta o script correto ^^. pls + rep so novato!

 

changecorpse.lua

 

 

 

--< Digaao >--

local config = {

storage = 12456, -- storage que salva o delay da magia

time = 2 * 60, -- tempo que deve esperar para usar a magia em segundos

player = yes, -- funciona com player true/false

monster = no, -- funciona com monstros true/false

npc = no, -- funciona com npc true/false

chance = 80, -- numero de 1 a 100 representando a chance de sucesso

}

function onCastSpell(cid, var)

 

local function doSend(pos1, pos2, num)

doSendDistanceShoot(getCreaturePosition(pos1), getCreaturePosition(pos2), 4)

doSendDistanceShoot(getCreaturePosition(pos2), getCreaturePosition(pos1), 4)

if type(num) == "number" and num == 1 then

if math.random(1, 100) <= config.chance then

local pp1 = getCreaturePosition(pos1)

local pp2 = getCreaturePosition(pos2)

doTeleportThing(pos2, pp1)

doTeleportThing(pos1, pp2)

else

doPlayerSendCancel(cid, "Opps que azar, tente denovo!")

end

end

return true

end

 

local target = getCreatureTarget(cid)

 

if type(target) ~= "number" or target == 0 then

doPlayerSendCancel(cid, "Você precisa selecionar alguma creature para fazer isso!")

return false

end

 

if (config.player == false and isPlayer(target)) or (isPlayer(target) and getPlayerAccess(target) > getPlayerAccess(cid)) or (config.monster == false and isMonster(target)) or (config.npc == false and isNpc(target)) then

doPlayerSendCancel(cid, "Voce nao pode fazer isso com essa criatura!")

return false

end

 

if getPlayerStorageValue(cid, config.storage) > os.time() then

doPlayerSendCancel(cid, "Voce so pode utilizar essa magia a cada 2 minutos!")

return false

else

for i = 1, 7 do

addEvent(doSend, i*250, cid, target, 0)

end

addEvent(doSend, 4*500, cid, target, 1)

setPlayerStorageValue(cid, config.storage, os.time() + config.time)

end

 

return true

end

 

 

 

Esse esta certo espero ter ajudado. Abraço

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

Todos os xtibianos q n conseguiram por a magia a funcionar em seu ot 8.4 maioria sendo ot fox ! e por que o sistema do map fox na funciona com true e false e sim com yes e no entao aki esta o script correto ^^. pls + rep so novato!

 

-Bom, inicialmente não conheço ot fox, ela foi um pedido que me fizeram.

-E true e false são operadores lógicos padrões da linguagem lua.

-E os itens que voce modificou, conforme pode-se perceber no scripts, eles são comparados com os operadores lógicos true/false.

Link para o comentário
Compartilhar em outros sites

  • 1 month later...

ei tem como colocar essa magia pra atravessar magic wall rune quando o player estiver trapado com magic wall ele fala a magia e troca de lugar com o player....??????????

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

diagao teria como faser para tipo troka de posiçao mas o outro player ser mandado para outro lugar?

 

eu vou onde ele estava e ele vai para um buraco dimencional(x.y.z ke criei em meu servidor) teria como faser isso?

Link para o comentário
Compartilhar em outros sites

Por favor alguem pode me ajudar? eu queria q o player troque de lado mesmo estando trapado com magic wall aquela runa de trap...

Link para o comentário
Compartilhar em outros sites

  • 3 months later...

A magia funcionou beleza, só tem um probleminha (ela passa pela parede). Se tem um player na arena e um fora (com skull), o player usa no que esta dentro da area e vai pra ela.

Como retira a magia de passar por parede?

Link para o comentário
Compartilhar em outros sites

  • 9 months later...
×
×
  • Criar Novo...