Mais uma spell que achei muito interessante, e vou compartilhar ;D
local combat = createCombatObject()
local config = {
notAllowed = {"training monk", "Slaktaren", "Admin"},
exhaustStorage = 1338,
exhaustTime = 5, -- Seconds
slowStorage = 1339,
slowTime = 3, -- Seconds
slowSpeed = 100, -- Speed will be set to 100 when swaping for slowTime seconds.
}
function effect(cid, var, targetpos, mypos, target)
doSendMagicEffect(mypos, CONST_ME_ENERGYHIT)
doSendMagicEffect(targetpos, CONST_ME_ENERGYHIT)
end
function slowed(cid, speed)
doChangeSpeed(cid, getPlayerStorageValue(cid, config.slowStorage) - getCreatureSpeed(cid))
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_MAGIC_GREEN)
end
function onUseWeapon(cid, var)
setPlayerStorageValue(cid, config.slowStorage, getCreatureSpeed(cid))
local mypos = getCreaturePosition(cid)
local target = getCreatureTarget(cid)
local targetpos = getCreaturePosition(target)
if not exhaustion.get(cid, config.exhaustStorage) then
for _,v in ipairs(config.notAllowed) do
if string.find(getCreatureName(target):lower(), v) then
doPlayerSendCancel(cid, "You can't swap " .. getCreatureName(target) .. "!")
doSendMagicEffect(mypos, CONST_ME_POFF)
return false
else
doTeleportThing(cid, targetpos)
doTeleportThing(target, mypos)
doChangeSpeed(cid, -getCreatureSpeed(cid)+config.slowSpeed)
doSendDistanceShoot(mypos, targetpos, CONST_ANI_ENERGYBALL)
doSendDistanceShoot(targetpos, mypos, CONST_ANI_ENERGYBALL)
addEvent(effect, 150, cid, var, targetpos, mypos, target)
addEvent(slowed, config.slowTime * 1000, cid, speed)
exhaustion.set(cid, config.exhaustStorage, config.exhaustTime)
end
end
else
doPlayerSendCancel(cid, "You have to wait " .. exhaustion.get(cid, config.exhaustStorage) .. " seconds to swap positions again!")
return false
end
doCombat(cid, combat, var)
return true
end
Obs: Se quiser usar como magia só trocar onUseWeapon por OnCastSpells
Fotos:
Posição Atual:
Posição Após usar a Magia: Informações: -Sistema ótimo para configurar do seu jeito -Proibição de usar magias em tais pessoas
Créditos:
Gatupojk