Postado Janeiro 16, 2016 10 anos Analisando o 'script' do @vankk vi que está perfeito. Houve algum erro? Se sim, pegue no 'console' (tela preta) o erro e cole-o aqui. No mais, vá no arquivo: data > talkactions > 'talkactions.xml' Abra-o e na última linha adicione: <talkaction log="yes" words="!broad" event="script" value="broadcastpremiun.lua"/> Depois vá na pasta: Data > talkactions > scripts E crie o arquivo 'broadcastpremiun' e salve-o no formato '.lua'. E pronto. Teste aí. The Last Man Standing - 100% funcional
Postado Janeiro 16, 2016 10 anos Autor sim, está perfeito, só que eu gostaria de trocar ele de storage. para premium account, pois meu sistema donate era de storage mais a uns dias atraz deu problema então mudei para premium normal agora a donate é contada nos dias de premium normal do tibia, gostaria de saber se poderia alterar para premium, e como ficaria alterado grato e já está reputado pela ajuda !!!
Postado Janeiro 16, 2016 10 anos local config = { dias = 1, -- Número de Dias para pode usar a função exhaustionStorage = 16785, exhaustionTime = 120, -- segundos char = 100 --maximo de letras na msg } local list = { 'dot','.com','.net','servegame','hopto','ip','no-ip','.org','whore','slut','fuck','mother','fucker','hopto','ass','cock','pussy', } function onSay(cid, words, param, channel) if (getPlayerPremiumDays(cid) < config.dias) then doPlayerSendCancel(cid, 'Only vips can use this command.') return true end if param == '' then doPlayerSendCancel(cid, 'Command requires a message.') return true end if exhaustion.check(cid, config.exhaustionStorage) then doPlayerSendCancel(cid, 'You can not use this command yet['..exhaustion.get(cid, config.exhaustionStorage)..'].') return true else exhaustion.set(cid, config.exhaustionStorage, config.exhaustionTime) end local forbid, param2 = false, param:lower() for i = 1, #list do if string.find(param2, list) ~= nil then forbid = true break end end if forbid then doPlayerSendCancel(cid, 'Your message contains a forbidden word.') return true end if string.len(param) >= char then doPlayerSendCancel(cid, 'Your message is too long.') return true end doPlayerBroadcastMessage(cid, param) return true end Mudei ali no 'script' do @vankk The Last Man Standing - 100% funcional
Postado Janeiro 16, 2016 10 anos Autor @Xagah deu esse problema quando tentei enviad a msg nem apareceu para todos, alterei poca coisa no script, ele está assim ! [16/01/2016 09:13:50] [Error - TalkAction Interface] [16/01/2016 09:13:50] data/talkactions/scripts/broadcastmsg.lua:onSay [16/01/2016 09:13:50] Description: [16/01/2016 09:13:50] data/talkactions/scripts/broadcastmsg.lua:32: bad argument #2 to 'find' (string expected, got table) [16/01/2016 09:13:50] stack traceback: [16/01/2016 09:13:50] [C]: in function 'find' [16/01/2016 09:13:50] data/talkactions/scripts/broadcastmsg.lua:32: in function <data/talkactions/scripts/broadcastmsg.lua:12> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ script tá assim local config = { dias = 1, -- Número de Dias para pode usar a função exhaustionStorage = 16785, exhaustionTime = 120, -- segundos char = 100 --maximo de letras na msg } local list = { 'dot','.com','.net','servegame','hopto','ip','no-ip','.org','whore','slut','fuck','mother','fucker','hopto','ass','cock','pussy', } function onSay(cid, words, param, channel) if (getPlayerPremiumDays(cid) < config.dias) then doPlayerSendCancel(cid, 'Somente donates pode usar esse comando.') return true end if param == '' then doPlayerSendCancel(cid, 'Command requires a message.') return true end if exhaustion.check(cid, config.exhaustionStorage) then doPlayerSendCancel(cid, 'Voce nao pode usar esse comando ainda, espere ['..exhaustion.get(cid, config.exhaustionStorage)..'] segundos.') return true else exhaustion.set(cid, config.exhaustionStorage, config.exhaustionTime) end local forbid, param2 = false, param:lower() for i = 1, #list do if string.find(param2, list) ~= nil then forbid = true break end end if forbid then doPlayerSendCancel(cid, 'Your message contains a forbidden word.') return true end if string.len(param) >= char then doPlayerSendCancel(cid, 'Your message is too long.') return true end doPlayerBroadcastMessage(cid, param) return true end <talkaction log="yes" words="/bmsg" event="script" value="broadcastmsg.lua"/> gostaria que aparece-se o level tbm do player que estiver falando pro defalut se puder colacar isso agradeço mt !
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.