Otimo script, porém voce poderia deixa-lo mais formatado...
Abraços
Por brenomadlan, 18 de abr. de 2010 em Actions e Talkactions
info
Grupo: Cavaleiro
Registrado: 27/02/10
Posts: 159
Reputação: +14
Char no Tibia: Natsu McDonald

Otimo script, porém voce poderia deixa-lo mais formatado...
Abraços
info
Grupo: Campones
Registrado: 21/03/10
Posts: 78
Reputação: +17
Char no Tibia: Dragonlordez

Pow da pra bota code
assim n da nem vontade de ler ![]()
info
Grupo: Conde
Registrado: 07/05/08
Posts: 612
Reputação: +12
Char no Tibia: leviana luciferiana

da pra colocar também os créditos do criador do script?
se não me engano ja postaram esse script do Gesior aqui no fórum.
Esse script ja existe eu adaptei ele e criei um script que vc digita /jail Player_Name,Numero_da_Cela e o cara é teleportado para quela cela fiz ate uma ilha com a cadeia haha ficou perfect ![]()
info
Grupo: Artesão
Registrado: 15/01/12
Posts: 100
Reputação: +9
Char no Tibia: Leon Of Pandoria

Vlws aew Já to usando o script no meu OT
;D
info
Grupo: Conde
Registrado: 17/07/11
Posts: 705
Reputação: +108

Esse script já existe faz anos, eu pessoalmente já tenho ele desde de um dos primeiros ot servers a serem criados, ele vem em todos os ot servers cara, não é um system útil, pois você não acrescentou nada, só ensinou a mexer, do qual quer pessoa poderia fazer sozinho, sem explicação nenhuma, como eu.
Esse system não é de sua autoria e acho que ele veio com o primeiro ot server a ser criado.
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK, colocou seu nome no system mais velho do mundo?
Cara se toca, esse system existe a mais tempo que você descobriu o tibia.
Editado Janeiro 16 por HisashiItYamaguti
info
Grupo: Campones
Registrado: 11/01/10
Posts: 12
Reputação: +6
Char no Tibia: Breve um mapa novo xD
Oi, primeiramente eu sou novo aqui e decidi ajudar o Xtibia com um script bem legal.
Então vamos começar...
-Você digita /jail (e o nome do player)que ele será automaticamente teleportado para a cadeia.
-Para remover o player da cadeia é só digitar /unjail (e o nome do player) que ele sera teleportado automaticamente para um lugar desejado.
1º-Abra a pasta do seu OT e vá em: data\talkactions\talkactions.xml
2ºAdicione em duas linhas estes códigos:
<talkaction words="/jail" script="Cadeia.lua"/>
<talkaction words="/unjail" script="Cadeia.lua"/>
3º Agora vá para : data\talkactions\scripts
4º Copie e cole qualquer arquivo .lua e renomeie para Cadeia
5º Apague tudo o que tem dentro do arquivo e cole isto:
-- Sistema adaptado por FreaksOT --
-- Tempo em segundos que alguém ficará na prisão --
default_jail = 300
-- O group ID da permissão para alguém manda o outro para a cadeia. --
grouprequired = 3
-- StorageValue that the player gets --
jailedstoragevalue_time = 1338
jailedstoragevalue_bool = 1339
-- POSICAO DA CADEIA: --
jailpos = { x = 1196, y = 1112, z =7 }
-- POSICAO DO LUGAR QUE ELE VOLTARÁ (RECOMENDADO TEMPO): --
unjailpos = { x = 1196, y = 1100, z =7 }
-- auto kicker, dont edit
jail_list = {}
jail_list_work = 0
function checkJailList(param)
addEvent(checkJailList, 1000, {})
for targetID,player in ipairs(jail_list) do
if isPlayer(player) == TRUE then
if getPlayerStorageValue(player, jailedstoragevalue_time) < os.time() then
doTeleportThing(player, unjailpos, TRUE)
setPlayerStorageValue(player, jailedstoragevalue_time, 0)
setPlayerStorageValue(player, jailedstoragevalue_bool, 0)
table.remove(jail_list,targetID)
doPlayerSendTextMessage(player,MESSAGE_STATUS_CONSOLE_ORANGE,'Você foi chutado da prisão! Até logo')
end
else
table.remove(jail_list,targetID)
end
end
end
function onSay(cid, words, param)
if jail_list_work == 0 then
jail_list_work = addEvent(checkJailList, 1000, {})
end
if param == '' and (words == '!unjail' or words == '/unjail') then
if getPlayerStorageValue(cid, jailedstoragevalue_time) > os.time() then
doPlayerSendTextMessage ( cid, MESSAGE_INFO_DESCR, 'Você está preso até ' .. os.date("%H:%M:%S", getPlayerStorageValue(cid, jailedstoragevalue_time)) .. ' (Agora são: ' .. os.date("%H:%M:%S", os.time()) .. ').')
else
if getPlayerStorageValue(cid, jailedstoragevalue_bool) == 1 then
table.insert(jail_list,cid)
doPlayerSendTextMessage ( cid, MESSAGE_INFO_DESCR, 'Você vai ser expulso da prisão em um segundo.')
else
doPlayerSendTextMessage ( cid, MESSAGE_INFO_DESCR, 'Você não está preso.')
end
end
return TRUE
end
local jail_time = -1
for word in string.gmatch(tostring(param), "(%w+)") do
if tostring(tonumber(word)) == word then
jail_time = tonumber(word)
end
end
local isplayer = getPlayerByName(param)
if isPlayer(isplayer) ~= TRUE then
isplayer = getPlayerByName(string.sub(param, string.len(jail_time)+1))
if isPlayer(isplayer) ~= TRUE then
isplayer = getPlayerByName(string.sub(param, string.len(jail_time)+2))
if isPlayer(isplayer) ~= TRUE then
isplayer = getPlayerByName(string.sub(param, string.len(jail_time)+3))
end
end
end
if jail_time ~= -1 then
jail_time = jail_time * 60
else
jail_time = default_jail
end
if words == '!jail' or words == '/jail' then
if getPlayerGroupId ( cid ) >= grouprequired then
if isPlayer(isplayer) == TRUE then
doTeleportThing(isplayer, jailpos, TRUE)
setPlayerStorageValue(isplayer, jailedstoragevalue_time, os.time()+jail_time)
setPlayerStorageValue(isplayer, jailedstoragevalue_bool, 1)
table.insert(jail_list,isplayer)
doPlayerSendTextMessage ( cid, MESSAGE_INFO_DESCR, 'Você está preso '.. getCreatureName(isplayer) ..' até ' .. os.date("%H:%M:%S", getPlayerStorageValue(isplayer, jailedstoragevalue_time)) .. ' (Agora são: ' .. os.date("%H:%M:%S", os.time()) .. ').')
doPlayerSendTextMessage ( isplayer, MESSAGE_INFO_DESCR, 'Você foi preso por '.. getCreatureName(cid) ..' até ' .. os.date("%H:%M:%S", getPlayerStorageValue(isplayer, jailedstoragevalue_time)) .. ' (Agora sao: ' .. os.date("%H:%M:%S", os.time()) .. ').')
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "O player com este nome não existe ou está offline.")
return FALSE
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não pode libertar outros jogadores.")
return FALSE
end
elseif words == '!unjail' or words == '/unjail' then
if getPlayerGroupId ( cid ) >= grouprequired then
if isPlayer(isplayer) == TRUE then
doTeleportThing(isplayer, unjailpos, TRUE)
setPlayerStorageValue(isplayer, jailedstoragevalue_time, 0)
setPlayerStorageValue(isplayer, jailedstoragevalue_bool, 0)
table.remove(jail_list,targetID)
doPlayerSendTextMessage(isplayer,MESSAGE_STATUS_CONSOLE_ORANGE,getCreatureName(cid) .. 'vou deixar você sair da prisão!')
doPlayerSendTextMessage ( cid, MESSAGE_INFO_DESCR, 'Voce está solto '.. getCreatureName(isplayer) ..'.')
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "O player com este nome não existe ou está offline.")
return FALSE
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não pode libertar outros jogadores.")
return FALSE
end
end
return FALSE
end
6º Vamos entender o script:
Acompanhe a legenda abaixo:
Vermelho - Posição da cadeia.
Azul - Posição do lugar que o player vai sair da cadeia (recomendo que seja o templo).
Verde - Tempo (em segundos, no caso 300 segundos, ou seja, 5 minutos) que o player vai ficar na cadeia.
Prontinho, agora você já tem sua cadeia funcionando. Agora avaliem o tópico, o script e vote na enquente.
Valeu a todos, um abraço e muitíssimo obrigado.