Postado Março 22, 2017 8 anos Agora, xImTheBear disse: Mas se eu fosse atacado e a maozinha desativasse, eu poderia pegar pk com minhas magias de area em outros players que estivessem upando no local, entao ele me mataria sem pegar frags, seria uma forma de abusar do bug, ele me atacava e desativava meu nom-pvp dai me deixava upando, meu char catava pk com magia de area então ele me matava... hm... entendi, é... realmente, acho que automático ficaria com essa falha ;S, a não ser que ele ataca-se apenas quem atacou ele... mas... acho que isso ficaria meio complicado
Postado Março 22, 2017 8 anos Então podemos colocar um outro método. Fazemos um onCombat para não pegar magias em área... e fizemos um onTarget para caso o jogador queira atacar realmente o outro jogador, o safe mode ser desativado automaticamente... function onSay(cid, words, param) local storage = 742867 setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) <= 0 and 1 or 0) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"[Safe Mode] Agora seu sistema PvP está "..(getPlayerStorageValue(cid, storage) <= 0 and "desativado" or "ativado")..".") return true end creaturescript function onCombat(cid, target) local storage = 742867 if isPlayer(cid) and isPlayer(target) and getPlayerStorageValue(cid, storage) > 0 then -- secure ativado n ataca ngm return false end return true end function onTarget(cid, target) local storage = 742867 if isPlayer(cid) and isPlayer(target) and getPlayerStorageValue(cid, storage) > 0 then setPlayerStorageValue(cid, storage, 0) -- desativar caso eu der target em alguém end return true end não esqueça de registrar os eventos no login e tal... se precisar de alguma ajuda só me avisar.
Postado Março 22, 2017 8 anos Autor 9 minutos atrás, Vodkart disse: Então podemos colocar um outro método. Fazemos um onCombat para não pegar magias em área... e fizemos um onTarget para caso o jogador queira atacar realmente o outro jogador, o safe mode ser desativado automaticamente... function onSay(cid, words, param) local storage = 742867 setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) <= 0 and 1 or 0) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"[Safe Mode] Agora seu sistema PvP está "..(getPlayerStorageValue(cid, storage) <= 0 and "desativado" or "ativado")..".") return true end creaturescript function onCombat(cid, target) local storage = 742867 if isPlayer(cid) and isPlayer(target) and getPlayerStorageValue(cid, storage) > 0 then -- secure ativado n ataca ngm return false end return true end function onTarget(cid, target) local storage = 742867 if isPlayer(cid) and isPlayer(target) and getPlayerStorageValue(cid, storage) > 0 then setPlayerStorageValue(cid, storage, 0) -- desativar caso eu der target em alguém end return true end Vou testar e já retorno em minutos, obg... Quais tags eu colocaria em creaturescripts? Estou usando as seguintes tags que era do ultimo script Creaturescripts.xml <event type="statschange" name="PvPStats" event="script" value="pvplayer.lua"/> <event type="target" name="PvPTarget" event="script" value="pvplayer.lua"/> <event type="login" name="PvPLogin" event="script" value="pvplayer.lua"/> talkactions.xml <talkaction words="!pvp" event="script" value="pvplayer.lua"/> E o personagem ao usar magia de area está pegando pk, não funcionou, fiz algo errado? Editado Março 22, 2017 8 anos por xImTheBear (veja o histórico de edições)
Postado Março 22, 2017 8 anos <event type="combat" name="SafeCombat" event="script" value="safemode.lua"/> <event type="target" name="SafeTarget" event="script" value="safemode.lua"/> e registra no login.lua registerCreatureEvent(cid, "SafeCombat") registerCreatureEvent(cid, "SafeTarget")
Postado Março 22, 2017 8 anos Autor 3 minutos atrás, Vodkart disse: <event type="combat" name="SafeCombat" event="script" value="safemode.lua"/> <event type="target" name="SafeTarget" event="script" value="safemode.lua"/> e registra no login.lua registerCreatureEvent(cid, "SafeCombat") registerCreatureEvent(cid, "SafeTarget") Funcionou corretamente! Muito obrigado!
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.