Postado Janeiro 16, 2016 9 anos Autor @Xagah mesmo com a troca continua aparecendo isto na distro ! [16/01/2016 11:43:39] [Error - TalkAction Interface] [16/01/2016 11:43:39] data/talkactions/scripts/broadcastmsg.lua:onSay [16/01/2016 11:43:39] Description: [16/01/2016 11:43:39] data/talkactions/scripts/broadcastmsg.lua:33: bad argument #2 to 'find' (string expected, got table) [16/01/2016 11:43:39] stack traceback: [16/01/2016 11:43:39] [C]: in function 'find' [16/01/2016 11:43:39] data/talkactions/scripts/broadcastmsg.lua:33: in function <data/talkactions/scripts/broadcastmsg.lua:1>
Postado Janeiro 16, 2016 9 anos Mano, testei aqui sem a função forbid e funcionou certinho. Ainda estou tentando inserí-la. Por enquanto ela fica assim: function onSay(cid, words, param, channel) 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', -- } 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 -- --local forbid, param2 = false, param:lower() -- 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, '['..getPlayerLevel(cid)..'] '..param..'') return true end The Last Man Standing - 100% funcional
Postado Janeiro 16, 2016 9 anos Autor @Xagah deu certo, sem erros na distro, o unico problema é que só consegui usar o comando com o ADM, quando 1 player fala não aparece para o server agora com o adm ficou tipo assim: 15:43 [ADM] Striker: [12] boa tarde mais ja vou te dar mais 1 rep, por ficou legal, se poder só corrigir pros players conseguirem tbm agradeço mt !!! Editado Janeiro 16, 2016 9 anos por Micheel15 (veja o histórico de edições)
Postado Janeiro 16, 2016 9 anos Bom, para 'players' a função no final não vai funcionar mesmo. Muda seu 'script' pra isto aqui. function onSay(cid, words, param, channel) 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 } 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 doCreatureSay(cid,param,TALKTYPE_BROADCAST) return true end Agora vai. Testado aqu. The Last Man Standing - 100% funcional
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.