Postado Novembro 9, 2017 7 anos como o próprio titulo já diz, estou com uma magia de NTO on o player ataca o outro e leva para outro local por alguns segundos e depois volta. problema que ao fazer isso e levar o player, lá na nova posição o mesmo continua a usar a mesma magia, assim bugando a spell e acontece que eles acabam não voltando para suas antigas cordenadas. sei que expliquei meio complicado más é isso. Script function onCastSpell(cid, var) local Tile1 = {x=1019, y=892, z=7} -- onde o player sera teleportado local Tile2 = {x=1019, y=889, z=7} -- onde o player target teleportado local from1,to1 = {x=1013, y=885, z=7},{x=1025, y=885, z=7} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from2,to2 = {x=1013, y=896, z=7},{x=1025, y=896, z=7} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from3,to3 = {x=1514, y=1262, z=7},{x=1504, y=1253, z=7} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from4,to4 = {x=1013, y=885, z=7},{x=1025, y=896, z=7} -- ponto 1 ao ponto 2 da area local from5,to5 = {x=979, y=911, z=7},{x=994, y=918, z=7} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from6,to6 = {x=1156, y=1192, z=7},{x=1172, y=1172, z=7} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from7,to7 = {x=664, y=1096, z=7},{x=685, y=1104, z=7} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from8,to8 = {x=1553, y=1254, z=7},{x=1562, y=1262, z=7} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from9,to9 = {x=1133, y=1039, z=12},{x=972, y=873, z=12} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from10,to10 = {x=1133, y=1039, z=11},{x=972, y=873, z=11} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local from11,to11 = {x=1133, y=1039, z=10},{x=972, y=873, z=10} -- ponto 1 ao ponto 2 da area em que ele sera teleportado local pos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local targetpos = getCreaturePosition(target) local time = 30 -- tempo para voltar em segundos if isInRange(pos, from1, to1) or isInRange(pos, from2, to2) or isInRange(pos, from3, to3) or isInRange(pos, from4, to4) or isInRange(pos, from5, to5) or isInRange(pos, from6, to6) or isInRange(pos, from7, to7) or isInRange(pos, from8, to8) or isInRange(pos, from9, to9) or isInRange(pos, from10, to10) or isInRange(pos, from11, to11) then doPlayerSendCancel(cid, "Você nao pode usar a parada!") return FALSE end local function Teleport_Player(cid) doTeleportThing(cid, pos) end local function Teleport_Target(target) doTeleportThing(target, targetpos) end if isPlayer(target) then doTeleportThing(cid, Tile1) doTeleportThing(target, Tile2) doSendMagicEffect(pos, 196) doSendMagicEffect(targetpos, 196) addEvent(Teleport_Player, time*1000, cid) addEvent(Teleport_Target, time*1000, target) doCreatureSay(cid, "Parada Magica", TALKTYPE_MONSTER) else doPlayerSendCancel(cid, "A Parada so funciona em players!") end end quem poder me ajudar dou aquele REP+ maroto, isso irá facilitar mt a minha vida
Postado Novembro 9, 2017 7 anos local config = { time = 30 -- tempo para voltar em segundos storage = 8585, player_go = {x=1019, y=892, z=7}, -- onde o player sera teleportado target_go = {x=1019, y=889, z=7}, -- onde o player target teleportado pos = { {{x=1013, y=885, z=7},{x=1025, y=885, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1013, y=896, z=7},{x=1025, y=896, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1514, y=1262, z=7},{x=1504, y=1253, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1013, y=885, z=7},{x=1025, y=896, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=979, y=911, z=7},{x=994, y=918, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1156, y=1192, z=7},{x=1172, y=1172, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=664, y=1096, z=7},{x=685, y=1104, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1553, y=1254, z=7},{x=1562, y=1262, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1133, y=1039, z=12},{x=972, y=873, z=12}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1133, y=1039, z=11},{x=972, y=873, z=11}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1133, y=1039, z=10},{x=972, y=873, z=10}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado } } local function teleport_all(cid, player_effect, player_pos, target, target_effect, target_pos) doTeleportThing(cid, player_pos) doTeleportThing(target, target_pos) doSendMagicEffect(player_effect, CONST_ME_TELEPORT) doSendMagicEffect(target_effect, CONST_ME_TELEPORT) end function onCastSpell(cid, var) local player_pos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local target_pos = getCreaturePosition(target) if getPlayerStorageValue(cid, config.storage) - os.time() > 0 then doPlayerSendCancel(cid, "Colldown!") return false end for x = 1, #config.pos do if isInRange(player_pos, config.pos[x][1], config.pos[x][2]) then doPlayerSendCancel(cid, "Você nao pode usar a parada!") return false end end if isPlayer(target) then teleport_all(cid, player_pos, config.player_go, target, target_pos, config.target_go) addEvent(teleport_all, config.time * 1000, cid, getCreaturePosition(cid), player_pos, target, getCreaturePosition(target), target_pos) setPlayerStorageValue(cid, config.storage, os.time() + (config.time + 2)) doCreatureSay(cid, "Parada Magica", TALKTYPE_MONSTER) else doPlayerSendCancel(cid, "A Parada so funciona em players!") end end STYLLER OT 2022
Postado Novembro 9, 2017 7 anos Autor 1 hora atrás, luanluciano93 disse: local config = { time = 30 -- tempo para voltar em segundos storage = 8585, player_go = {x=1019, y=892, z=7}, -- onde o player sera teleportado target_go = {x=1019, y=889, z=7}, -- onde o player target teleportado pos = { {{x=1013, y=885, z=7},{x=1025, y=885, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1013, y=896, z=7},{x=1025, y=896, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1514, y=1262, z=7},{x=1504, y=1253, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1013, y=885, z=7},{x=1025, y=896, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=979, y=911, z=7},{x=994, y=918, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1156, y=1192, z=7},{x=1172, y=1172, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=664, y=1096, z=7},{x=685, y=1104, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1553, y=1254, z=7},{x=1562, y=1262, z=7}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1133, y=1039, z=12},{x=972, y=873, z=12}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1133, y=1039, z=11},{x=972, y=873, z=11}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado {{x=1133, y=1039, z=10},{x=972, y=873, z=10}}, -- ponto 1 ao ponto 2 da area em que ele sera teleportado } } local function teleport_all(cid, player_effect, player_pos, target, target_effect, target_pos) doTeleportThing(cid, player_pos) doTeleportThing(target, target_pos) doSendMagicEffect(player_effect, CONST_ME_TELEPORT) doSendMagicEffect(target_effect, CONST_ME_TELEPORT) end function onCastSpell(cid, var) local player_pos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local target_pos = getCreaturePosition(target) if getPlayerStorageValue(cid, config.storage) - os.time() > 0 then doPlayerSendCancel(cid, "Colldown!") return false end for x = 1, #config.pos do if isInRange(player_pos, config.pos[x][1], config.pos[x][2]) then doPlayerSendCancel(cid, "Você nao pode usar a parada!") return false end end if isPlayer(target) then teleport_all(cid, player_pos, config.player_go, target, target_pos, config.target_go) addEvent(teleport_all, config.time * 1000, cid, getCreaturePosition(cid), player_pos, target, getCreaturePosition(target), target_pos) setPlayerStorageValue(cid, config.storage, os.time() + (config.time + 2)) doCreatureSay(cid, "Parada Magica", TALKTYPE_MONSTER) else doPlayerSendCancel(cid, "A Parada so funciona em players!") end end e onde coloco o tempo para poder usar a magia novamente? pq se eu por em spells.xml não adianta. msm eu colocando 300000 o player vai poder continuar usando ela constantemente
Postado Novembro 9, 2017 7 anos Eu coloquei o tempo que demora pra acabar o spell + 2 segundos ... setPlayerStorageValue(cid, config.storage, os.time() + (config.time + 2)) STYLLER OT 2022
Postado Novembro 10, 2017 7 anos Autor 19 horas atrás, luanluciano93 disse: Eu coloquei o tempo que demora pra acabar o spell + 2 segundos ... setPlayerStorageValue(cid, config.storage, os.time() + (config.time + 2)) quando o player usa a spell simplesmente ele fala ela, como se ela não tivesse no servidor
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.