Postado Maio 3, 2014 11 anos Iae galera do Tibia King. Bom vamos a o que interessa, galera eu proucurei em vários lugares mas não encontrei essa spell. Tipo assim eu uso a spell no target e esse player que estava sendo atacado vai para uma outra dimensão (outro local) e depois de um certo tempo o player volta para o mesmo local.
Postado Maio 3, 2014 11 anos olha cara, eu pensei em várias coisas mas a maioria delas vai bugar o seu servidor, então eu decidi fazer uma coisa que eu nunca fiz antes (e não sei se é possível) que foi salvar a posição num storage. Caso isso funcione, só vai faltar a função teleportback que eu não consegui pensar em como fazer mas em todo caso vou disponibilizar o script pra quem for tentar te ajudar: Nota 1: Não usem "for" na área teleportada pra encontrar o player porque se mais de um player usar essa magia ao mesmo tempo corre o risco dos targets serem trocados local combat = createCombatObject() local config = { exhaustStorage = 1338010, -- storage do exhaust exhaustTime = 5, -- Seconds duration = 20, -- tempo em segundos que ele vai ficar na outra dimensão postorage = 1338011 -- storage que vai salvar a posição do target (isso é possível?) } function teleportback(cid, var, targetpos, target) if isPlayer(target.uid) then doTeleportThing(target, getPlayerStorageValue(target.uid, config.postorage)) doPlayerSendTextMessage(target.uid,25, "You are back, time for a twist!") end end function onCastSpell(cid, var) local mypos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local targetpos = getCreaturePosition(target) local place = {x = 160, y=54, z= 7} setPlayerStorageValue(target.uid, config.postorage, targetpos) if not exhaustion.get(cid, config.exhaustStorage) then if isPlayer(cid) and isPlayer(target.uid) then doPlayerSendTextMessage(cid,25, "You teleported ".. getCreatureName(target.uid) ..". He will be back in "..config.duration.." seconds.") doTeleportThing(target, place) doSendDistanceShoot(mypos, targetpos, CONST_ANI_ENERGYBALL) doSendMagicEffect(targetpos, CONST_ME_ENERGYHIT) doPlayerSendTextMessage(target.uid,25, "You have been teleported by ".. getCreatureName(cid) ..". You'll be back in "..config.duration.." seconds.") addEvent(teleportback, config.duration*1000, cid, var, targetpos, target) exhaustion.set(cid, config.exhaustStorage, config.exhaustTime) else doPlayerSendCancel(cid, "You can only use this spell in players!") return false else doPlayerSendCancel(cid, "You have to wait " .. exhaustion.get(cid, config.exhaustStorage) .. " seconds to send player to another dimension!") return false end end doCombat(cid, combat, var) return true end Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Maio 3, 2014 11 anos Autor Em 03/05/2014 em 11:20, xWhiteWolf disse: olha cara, eu pensei em várias coisas mas a maioria delas vai bugar o seu servidor, então eu decidi fazer uma coisa que eu nunca fiz antes (e não sei se é possível) que foi salvar a posição num storage. Caso isso funcione, só vai faltar a função teleportback que eu não consegui pensar em como fazer mas em todo caso vou disponibilizar o script pra quem for tentar te ajudar: Nota 1: Não usem "for" na área teleportada pra encontrar o player porque se mais de um player usar essa magia ao mesmo tempo corre o risco dos targets serem trocados local combat = createCombatObject() local config = { exhaustStorage = 1338010, -- storage do exhaust exhaustTime = 5, -- Seconds duration = 20, -- tempo em segundos que ele vai ficar na outra dimensão postorage = 1338011 -- storage que vai salvar a posição do target (isso é possível?) } function teleportback(cid, var, targetpos, target) if isPlayer(target.uid) then doTeleportThing(target, getPlayerStorageValue(target.uid, config.postorage)) doPlayerSendTextMessage(target.uid,25, "You are back, time for a twist!") end end function onCastSpell(cid, var) local mypos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local targetpos = getCreaturePosition(target) local place = {x = 160, y=54, z= 7} setPlayerStorageValue(target.uid, config.postorage, targetpos) if not exhaustion.get(cid, config.exhaustStorage) then if isPlayer(cid) and isPlayer(target.uid) then doPlayerSendTextMessage(cid,25, "You teleported ".. getCreatureName(target.uid) ..". He will be back in "..config.duration.." seconds.") doTeleportThing(target, place) doSendDistanceShoot(mypos, targetpos, CONST_ANI_ENERGYBALL) doSendMagicEffect(targetpos, CONST_ME_ENERGYHIT) doPlayerSendTextMessage(target.uid,25, "You have been teleported by ".. getCreatureName(cid) ..". You'll be back in "..config.duration.." seconds.") addEvent(teleportback, config.duration*1000, cid, var, targetpos, target) exhaustion.set(cid, config.exhaustStorage, config.exhaustTime) else doPlayerSendCancel(cid, "You can only use this spell in players!") return false else doPlayerSendCancel(cid, "You have to wait " .. exhaustion.get(cid, config.exhaustStorage) .. " seconds to send player to another dimension!") return false end end doCombat(cid, combat, var) return true end [03/05/2014 15:12:13] [Error - LuaScriptInterface::loadFile] data/spells/scripts/obito/mangekyou kamui.lua:17: unexpected symbol near '?' [03/05/2014 15:12:13] [Warning - Event::loadScript] Cannot load script (data/spells/scripts/obito/mangekyou kamui.lua) [03/05/2014 15:12:13] data/spells/scripts/obito/mangekyou kamui.lua:17: unexpected symbol near '?' Deu esse erro .' ajuda ae pliz .'
Postado Maio 3, 2014 11 anos logico que deu erro cara, vc não leu nada doque eu te falei? o script não tá completo, é só a logica que a pessoa que for te ajudar tem que seguir.. eu não sei como fazer pra voltar de uma forma que não bugue, mas enfim, o erro é aqui: -- storage que vai salvar a posição do target (isso é possível?) tira o (isso é possível?) Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Maio 15, 2014 11 anos Queria tanto esse script, mas aqui nao funcionou :\. Estou desesperado procurando por esse script.
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.