Histórico de Curtidas
-
keilost1 recebeu reputação de Cat em [Function] Account StorageDesculpa reviver o tópico, porém eu estava criando o evento de natal, e fui utilizar a função, e reparei que quando ela seta a primeira storage, vai tudo beleza, mas quando usa UPDATE na função, a logica e a sintaxe está incorreta:
db.executeQuery("UPDATE `account_storage` SET `value` = " .. accid .. " WHERE `key`=" .. key .. " LIMIT 1');")
Aonde o certo é:
db.executeQuery("UPDATE `account_storage` SET `value` = " .. value .. " WHERE `key`=" .. key .. " AND `account_id` = " .. accid .. " LIMIT 1;")
Repare que removi um ') do final e troquei o valor do campo value por value, antes estava accid e adicionei um AND onde filtra pela conta do player.
Segue a função corrigida para os preguiçosos:
function setAccountStorageValue(accid, key, value) local getvalue = db.getResult("SELECT `value` FROM `account_storage` WHERE `account_id` = " .. accid .. " and `key` = " .. key .. " LIMIT 1;") if(getvalue:getID() ~= -1) then db.executeQuery("UPDATE `account_storage` SET `value` = " .. value .. " WHERE `key`=" .. key .. " AND `account_id` = " .. accid .. " LIMIT 1;") getvalue:free() return 1 else db.executeQuery("INSERT INTO `account_storage` (`account_id`, `key`, `value`) VALUES (" .. accid .. ", " .. key .. ", '"..value.."');") return 1 end end
-
keilost1 recebeu reputação de Cain Jorge em [Talkaction] Deletar playerO comando é simples, ele funciona para deletar player e retirar o delete, vocês podem dizer "o rule violation já faz a função de deletar", no caso do meu ot não tinha o rule violation, então estou passando o conteúdo para o Tibia King pois achei útil para mim.
Vamos ao script:
Em talkactions/scripts crie um arquivo chamado deleteplayer.lua e então coloque esse conteúdo dentro:
function onSay(cid, words, param) local t = string.explode(param, ",") if(t == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") return true end local pid = getCreatureByName("".. t[1] .."") if isPlayer(pid) then doRemoveCreature(pid) end if t[2] == 1 then db.executeQuery("UPDATE `players` SET `deleted` = '1' WHERE `players`.`name` ='".. t[1] .."';") doPlayerSendTextMessage(cid, 27, "Player ".. t[1] .." foi deletado.") end if t[2] == 0 then db.executeQuery("UPDATE `players` SET `deleted` = '0' WHERE `players`.`name` ='".. t[1] .."';") doPlayerSendTextMessage(cid, 27, "O delete do player ".. t[1] .." foi retirado.") end return true end No seu talkactions.xml coloque:
Como funciona o comando?
Para deletar o player:
/delete Nome,1
Para remover o delete:
/delete Nome,0
Corrigido a query, havia esquecido de remover a tabela `otserv` (que é a que eu usava)
Créditos:
Keilost
-
keilost1 recebeu reputação de Fanfas em [Function] Account StorageDesculpa reviver o tópico, porém eu estava criando o evento de natal, e fui utilizar a função, e reparei que quando ela seta a primeira storage, vai tudo beleza, mas quando usa UPDATE na função, a logica e a sintaxe está incorreta:
db.executeQuery("UPDATE `account_storage` SET `value` = " .. accid .. " WHERE `key`=" .. key .. " LIMIT 1');")
Aonde o certo é:
db.executeQuery("UPDATE `account_storage` SET `value` = " .. value .. " WHERE `key`=" .. key .. " AND `account_id` = " .. accid .. " LIMIT 1;")
Repare que removi um ') do final e troquei o valor do campo value por value, antes estava accid e adicionei um AND onde filtra pela conta do player.
Segue a função corrigida para os preguiçosos:
function setAccountStorageValue(accid, key, value) local getvalue = db.getResult("SELECT `value` FROM `account_storage` WHERE `account_id` = " .. accid .. " and `key` = " .. key .. " LIMIT 1;") if(getvalue:getID() ~= -1) then db.executeQuery("UPDATE `account_storage` SET `value` = " .. value .. " WHERE `key`=" .. key .. " AND `account_id` = " .. accid .. " LIMIT 1;") getvalue:free() return 1 else db.executeQuery("INSERT INTO `account_storage` (`account_id`, `key`, `value`) VALUES (" .. accid .. ", " .. key .. ", '"..value.."');") return 1 end end
-
keilost1 recebeu reputação de KotZletY em [TFS 1.X] getExperienceForLevelE aí galera do TK....
Estou passando meu OT para TFS 1.2 (OTXSERVER) e estou criando algumas funções para suprir a necessidade de alguns scripts....
Segue a função
function getExperienceForLevel(level) level = level - 1 return ((50 * level * level * level) - (150 * level * level) + (400 * level)) / 3 end
-
keilost1 recebeu reputação de gcmcorrea em [City War Event] Luta pela sobrevivênciaFake? Criado em 2011? Amigão, esse script é do demonbholder, da globalots, todo mundo aqui sabe que esse evento é do global war, quem quiser dá uma olhadinha no facebook do Global War e vai ver de quem é o script, você é uma farsa cara, você dá nojo.
http://prntscr.com/3t7t9m
-
keilost1 recebeu reputação de Andreeyyy em Anunciar NewstickerE aí galera do TK,
Estou trazendo mais uma inovação para o Tibia King, é o sistema de anunciar as ultimas 5 newstickers postadas no site!
Vamos ao código, em globalevents.xml adicione:
<globalevent name="information" interval="1800000" event="script" value="autobroadcast.lua"/> Ele vai anunciar de 30 em 30 minutos as mensagens, lembrando que não anuncia todas de uma vez, ele sorteia uma das 5.
Em globalevents/scripts adicione um arquivo lua com o nome de autobroadcast e coloque isso dentro do conteúdo:
function onThink(interval, lastExecution) local result = db.getResult("SELECT text FROM `z_news_tickers` ORDER by date DESC LIMIT 0,5") local sorteado = math.random(1, 5) local news = {} if result:getID() == -1 then return false end repeat if result:getID() ~= -1 then table.insert(news, result:getDataString("text")) end until not result:next() if not news[sorteado] then return false end doBroadcastMessage("News: " .. string.sub(news[sorteado], 1, 150) .. "", MESSAGE_EVENT_ADVANCE) return TRUE end Pronto, já estará funcionando seu sistema (se sua tabela de newsticker não for z_news_tickers é só mudar.
Créditos:
Keilost
Globalwar
-
keilost1 recebeu reputação de JujuLady em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de Wakon em [TFS 1.X] getExperienceForLevelE aí galera do TK....
Estou passando meu OT para TFS 1.2 (OTXSERVER) e estou criando algumas funções para suprir a necessidade de alguns scripts....
Segue a função
function getExperienceForLevel(level) level = level - 1 return ((50 * level * level * level) - (150 * level * level) + (400 * level)) / 3 end
-
keilost1 recebeu reputação de Christopher17288 em getTownList()E aí galera do TK....
Estou passando meu OT para TFS 1.2 (OTXSERVER) e estou criando algumas funções para suprir a necessidade de alguns scripts, quando me deparei com o problema de listar as cidades no meu comando fly, não existia a função getTownList(), se existe alguma função que faça isso, me desculpe eu não encontrei, então segue o código:
function townExists(townId) local t = Town(townId) return t ~= nil and true or false end function getTownList() local listtowns = {} setmetatable(listtowns, {__index=table}) local town while townExists(#listtowns+1) do town = Town(#listtowns+1) listtowns:insert({id=town:getId(), name=town:getName()}) end return listtowns end
Para os novatos (não que eu não seja rs), você pode utilizar da seguinte forma:
local str = "Cidades disponiveis para viajar: \n" for i, town in ipairs(getTownList()) do str = str .. town.name .. "\n" end player:showTextDialog(1950, str)
Vai ser printado algo como isto:
Por hoje é só pessoal, beijos!
-
keilost1 recebeu reputação de Vodkart em getTownList()E aí galera do TK....
Estou passando meu OT para TFS 1.2 (OTXSERVER) e estou criando algumas funções para suprir a necessidade de alguns scripts, quando me deparei com o problema de listar as cidades no meu comando fly, não existia a função getTownList(), se existe alguma função que faça isso, me desculpe eu não encontrei, então segue o código:
function townExists(townId) local t = Town(townId) return t ~= nil and true or false end function getTownList() local listtowns = {} setmetatable(listtowns, {__index=table}) local town while townExists(#listtowns+1) do town = Town(#listtowns+1) listtowns:insert({id=town:getId(), name=town:getName()}) end return listtowns end
Para os novatos (não que eu não seja rs), você pode utilizar da seguinte forma:
local str = "Cidades disponiveis para viajar: \n" for i, town in ipairs(getTownList()) do str = str .. town.name .. "\n" end player:showTextDialog(1950, str)
Vai ser printado algo como isto:
Por hoje é só pessoal, beijos!
-
keilost1 recebeu reputação de Wakon em getTownList()E aí galera do TK....
Estou passando meu OT para TFS 1.2 (OTXSERVER) e estou criando algumas funções para suprir a necessidade de alguns scripts, quando me deparei com o problema de listar as cidades no meu comando fly, não existia a função getTownList(), se existe alguma função que faça isso, me desculpe eu não encontrei, então segue o código:
function townExists(townId) local t = Town(townId) return t ~= nil and true or false end function getTownList() local listtowns = {} setmetatable(listtowns, {__index=table}) local town while townExists(#listtowns+1) do town = Town(#listtowns+1) listtowns:insert({id=town:getId(), name=town:getName()}) end return listtowns end
Para os novatos (não que eu não seja rs), você pode utilizar da seguinte forma:
local str = "Cidades disponiveis para viajar: \n" for i, town in ipairs(getTownList()) do str = str .. town.name .. "\n" end player:showTextDialog(1950, str)
Vai ser printado algo como isto:
Por hoje é só pessoal, beijos!
-
keilost1 recebeu reputação de davidvietro em (Resolvido)Duvida/pedido idle-timeOlá, desculpe pela demora, só fui me lembrar do Tibia King hoje rsrs...
Eu não testei, vê se deu certo:
function mudarVis(uid) look = getCreatureLookDirection(uid) look = look < 3 and look + 1 or 0 doCreatureSetLookDirection(uid, look) addEvent(mudarVis, 2000, uid) end local events1 = {} local trainerst = 456488 function onStepIn(cid) events1[getPlayerGUID(cid)] = addEvent(mudarVis, 1000, cid) doPlayerSendTextMessage(cid, 27, "Bem-vindo a sua sala de treinamento, você será movimentado automaticamente para que continue treinando!") setPlayerStorageValue(cid,trainerst,1) return true end function onStepOut(cid) stopEvent(events1[getPlayerGUID(cid)]) setPlayerStorageValue(cid,trainerst,-1) return true end Isso você coloca em movements/scripts e as tags abaixo em movements.xml
<!--Trainer--> <movevent type="StepIn" actionid="13549" event="script" value="train.lua" /> <movevent type="StepOut" actionid="13549" event="script" value="train.lua" />
Em creaturescripts/idle.lua vai ter essa linha (se não for exatamente igual me manda):
if(getTileInfo(getCreaturePosition(cid)).noLogout or getCreatureNoMove(cid) or getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_ALLOWIDLE) then return true end Você deve alterar para:
if(getTileInfo(getCreaturePosition(cid)).noLogout or getCreatureNoMove(cid) or getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_ALLOWIDLE) or getPlayerStorageValue(cid,456488) == 1) then return true end -
keilost1 recebeu reputação de rafanasser em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de samlecter em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de Sentsuizan em (Resolvido)Duvida/pedido idle-timeOlá, desculpe pela demora, só fui me lembrar do Tibia King hoje rsrs...
Eu não testei, vê se deu certo:
function mudarVis(uid) look = getCreatureLookDirection(uid) look = look < 3 and look + 1 or 0 doCreatureSetLookDirection(uid, look) addEvent(mudarVis, 2000, uid) end local events1 = {} local trainerst = 456488 function onStepIn(cid) events1[getPlayerGUID(cid)] = addEvent(mudarVis, 1000, cid) doPlayerSendTextMessage(cid, 27, "Bem-vindo a sua sala de treinamento, você será movimentado automaticamente para que continue treinando!") setPlayerStorageValue(cid,trainerst,1) return true end function onStepOut(cid) stopEvent(events1[getPlayerGUID(cid)]) setPlayerStorageValue(cid,trainerst,-1) return true end Isso você coloca em movements/scripts e as tags abaixo em movements.xml
<!--Trainer--> <movevent type="StepIn" actionid="13549" event="script" value="train.lua" /> <movevent type="StepOut" actionid="13549" event="script" value="train.lua" />
Em creaturescripts/idle.lua vai ter essa linha (se não for exatamente igual me manda):
if(getTileInfo(getCreaturePosition(cid)).noLogout or getCreatureNoMove(cid) or getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_ALLOWIDLE) then return true end Você deve alterar para:
if(getTileInfo(getCreaturePosition(cid)).noLogout or getCreatureNoMove(cid) or getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_ALLOWIDLE) or getPlayerStorageValue(cid,456488) == 1) then return true end -
keilost1 recebeu reputação de Angeles em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de Tiago12345 em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de Sematico em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de Ser Luck em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de daniofordon em Anunciar NewstickerE aí galera do TK,
Estou trazendo mais uma inovação para o Tibia King, é o sistema de anunciar as ultimas 5 newstickers postadas no site!
Vamos ao código, em globalevents.xml adicione:
<globalevent name="information" interval="1800000" event="script" value="autobroadcast.lua"/> Ele vai anunciar de 30 em 30 minutos as mensagens, lembrando que não anuncia todas de uma vez, ele sorteia uma das 5.
Em globalevents/scripts adicione um arquivo lua com o nome de autobroadcast e coloque isso dentro do conteúdo:
function onThink(interval, lastExecution) local result = db.getResult("SELECT text FROM `z_news_tickers` ORDER by date DESC LIMIT 0,5") local sorteado = math.random(1, 5) local news = {} if result:getID() == -1 then return false end repeat if result:getID() ~= -1 then table.insert(news, result:getDataString("text")) end until not result:next() if not news[sorteado] then return false end doBroadcastMessage("News: " .. string.sub(news[sorteado], 1, 150) .. "", MESSAGE_EVENT_ADVANCE) return TRUE end Pronto, já estará funcionando seu sistema (se sua tabela de newsticker não for z_news_tickers é só mudar.
Créditos:
Keilost
Globalwar
-
keilost1 deu reputação a Wakon em [TALKACTION] Staff no helpTópico aprovado e movido a área correta, obrigado por compartilhar.
Não seria melhor uma storage por player talvez?
-
keilost1 recebeu reputação de Reds em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de Wend II em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de Pinduca da RBC em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)
-
keilost1 recebeu reputação de Wakon em [TALKACTION] Staff no helpE aí galera do TK,
Hoje vim trazer um script idiota simples e que é util para os tutores do meu servidor, onde eles utilizam um comando e anuncia a seguinte mensagem:
00:13 O Tutor Keilost está no Help Channel respondendo duvidas.
Ele tem uma limitação de 15 minutos para usar novamente, ah e fiz uma funçãozinha que ele identifica qual group é do player, caso um GM queria usar, CM, whatever...
Vamos ao código:
Em talkactions/talkactions.xml coloque a seguinte tag:
<talkaction log="yes" words="/anunciar" access="2" event="script" script="staffbroad.lua"/> Agora em talkactions/scripts crie um arquivo lua chamado staffbroad e coloque o seguinte conteudo:
function getNameGroup(group) local groups = {"Player", "Tutor", "Senior Tutor", "Gamemaster", "Community Manager", "Administrador"} return groups[group] end function onSay(cid, words, param, channel) local gbb = 82389239 if getPlayerStorageValue(cid, gbb) - os.time() > 0 then doPlayerSendTextMessage(cid, 27, "O comando só pode ser executado de 15 em 15 minutos.") return true end doBroadcastMessage("O "..getNameGroup(getPlayerGroupId(cid)).." "..getPlayerName(cid).." está no Help Channel respondendo duvidas.") setPlayerStorageValue(cid, gbb, os.time() + 15 * 60) return true end Bom é isso, qualquer duvida podem perguntar aqui
Créditos
Keilost(eu)