xCandyx 0 Postado Agosto 20, 2009 Share Postado Agosto 20, 2009 Hail ~~XTIBIA~~ Gostaria de saber como eu fasso um comando "/jail" que manda os player's para a prisao? Vlw! Link para o comentário https://xtibia.com/forum/topic/118823-comando-jail/ Compartilhar em outros sites More sharing options...
Benefactor 8 Postado Agosto 20, 2009 Share Postado Agosto 20, 2009 Amigo deveria procurar antes de sair criando tópicos mas, vou lhe dar uma forcinha. va na pasta data/talkactions/script, copie um arquivo e renomeie para prisao, depois abra e substitua por isso: function onSay(cid,words,param) jailpos = {x=160, y=49, z=5} unjailpos = {x=160, y=54, z=7} target = getPlayerByName(param) local access = getPlayerAccess(cid) if access >= 3 then if isPlayer(getPlayerByName(param)) == 1 then jailer = getPlayerName(cid) doPlayerSendTextMessage(target,25,'You got jailed by '..jailer..' for 30 minutes.') doTeleportThing(target,jailpos) doPlayerSendTextMessage(cid,21,"You just jailed "..param..".") local a = {cid=cid, target=target, param=param, jailpos=jailpos, unjailpos=unjailpos} addEvent(onTime,30*60*1000,a) end end end Posição não qual o player vai quando o GM ou GOD da o comando Posição na qual o player vai automaticamente depois de 30 minutos preso Access minima para poder executar o comando que no caso eh de GM Depois vá em talkaction.xml, e adicione esta Tag: <talkaction words="/jail" script="prisao.lua" /> Pronto rápido e fácil. Créditos: 100% ADM LOLZ Tópico: Clique aqui Link para o comentário https://xtibia.com/forum/topic/118823-comando-jail/#findComment-781291 Compartilhar em outros sites More sharing options...
xCandyx 0 Postado Agosto 20, 2009 Autor Share Postado Agosto 20, 2009 Amigo deveria procurar antes de sair criando tópicos mas, vou lhe dar uma forcinha.va na pasta data/talkactions/script, copie um arquivo e renomeie para prisao, depois abra e substitua por isso: function onSay(cid,words,param) jailpos = {x=160, y=49, z=5} unjailpos = {x=160, y=54, z=7} target = getPlayerByName(param) local access = getPlayerAccess(cid) if access >= 3 then if isPlayer(getPlayerByName(param)) == 1 then jailer = getPlayerName(cid) doPlayerSendTextMessage(target,25,'You got jailed by '..jailer..' for 30 minutes.') doTeleportThing(target,jailpos) doPlayerSendTextMessage(cid,21,"You just jailed "..param..".") local a = {cid=cid, target=target, param=param, jailpos=jailpos, unjailpos=unjailpos} addEvent(onTime,30*60*1000,a) end end end Posição não qual o player vai quando o GM ou GOD da o comando Posição na qual o player vai automaticamente depois de 30 minutos preso Access minima para poder executar o comando que no caso eh de GM Depois vá em talkaction.xml, e adicione esta Tag: <talkaction words="/jail" script="prisao.lua" /> Pronto rápido e fácil. Créditos: 100% ADM LOLZ Tópico: Clique aqui Caraaa,eu fiis tudo isso aii! Neeem deuu! =/ Link para o comentário https://xtibia.com/forum/topic/118823-comando-jail/#findComment-781536 Compartilhar em outros sites More sharing options...
rockstar96 4 Postado Agosto 20, 2009 Share Postado Agosto 20, 2009 (editado) Crie um arquivo LUA chamado de prison.lua em data/talkactions/scripts adicione isto ao seu conteúdo, sem mais nada: function onSay(cid, words, param, channel) --Config t = string.explode(param, ",") time = t[2] player = getPlayerByNameWildcard(t[1]) --Posição que o player será mandado jailPosition = {x=1, y=1, z=1} --Posição que será mandado após terminar o tempo preso jailExitPosition = {x=1, y=1, z=1} --Mensagem que será enviada ao jogador message = "You have been jailed by ".. getCreatureName(cid) .."." --Tempo padrão em minutos, se não colocado vírgula(/jail Player,tempo) defaultTime = 5 --//Config if not time then doTeleportThing(player, jailPosition) addEvent(doTeleportThing, defaultTime * 60 * 1000, player, jailExitPosition) doSendMagicEffect(jailPosition, CONST_ME_TELEPORT) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, message) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You jailed ".. t[1] .." for ".. t[2] or defaultTime ..".") elseif(t[1] and t[2]) ~= nil then doTeleportThing(player, jailPosition) addEvent(doTeleportThing, time * 60 * 1000, player, jailExitPosition) doSendMagicEffect(jailPosition, CONST_ME_TELEPORT) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, message) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You jailed ".. t[1] .." for ".. t[2] or defaultTime ..".") else doPlayerSendCancel(cid, "This command requires param.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) end return true end E adicione esta tag em data/talkactions/talkactions.xml: <talkaction access="5" words="/jail" script="prison.lua"/> O 5 você muda para o access necessário para usar a talkaction. O script tem funções configuráveis, só ler o script. Para usá-lo, diga: /jail NomeDoPlayer,tempo Ou senão, para ativar o tempo padrão, definido no script, diga somente: /jail NomeDoPlayer Eu que fiz, se não funcionar fique certo que não estou muito ativo ultimamente =/ Tchau. Editado Agosto 20, 2009 por iRockStar Link para o comentário https://xtibia.com/forum/topic/118823-comando-jail/#findComment-781565 Compartilhar em outros sites More sharing options...
Posts Recomendados