Postado Janeiro 4, 2014 11 anos O tópico foi movido para a área correta, preste mais atenção da próxima vez! Leia as regras do fórum: http://tibiaking.com/forum/topic/1281-regras-gerais/?p=7680 Este tópico foi movido: De: "OTServ → Scripting → Actions e TalkActions" Para: "OTServ → Programação Open Tibia → Códigos Prontos" Bruno Carvalho / Ex-Administrador TibiaKing [email protected] Em 26/12/2016 em 03:47, Spraypaint disse: A força da alienação vem dessa fragilidade dos indivíduos, quando apenas conseguem identificar o que os separa e não o que os une. -miltinho
Postado Maio 14, 2015 10 anos correções: -Script não executa duas vezes agora Fixo. Arquivo Lua para trabalhar correto com 0.3.6 Agregado a proteção contra spam. Lua (uma vez que ele conta como talkaction não tem cheque sem som) Abra talkaction.cpp de fontes yur e busca para: código: if(!talkAction || (talkAction->getChannel() != -1 && talkAction->getChannel() != channelId)) return false; e substituí-lo com: if(!talkAction) { for(TalkActionsMap::iterator it = talksMap.begin(); it != talksMap.end(); ++it) { if(it->first == "illegalWords") { talkAction = it->second; break; } } if(talkAction && talkAction->isScripted()) return talkAction->executeSay(creature, words, "", channelId); return false; } else if(talkAction->getChannel() != -1 && talkAction->getChannel() != channelId) return false; Compilar seu servidor agora. Ir para talkactions / talkactions.xml e adicione: <talkaction words="illegalWords" event="script" value="blocklinks.lua"/> NOTA: Não mudar as palavras = "illegalWords" ou não vai funcionar .. Criar "blocklinks.lua" em talkactions / scripts e cole que neste arquivo: function getFixedText(cid, text, replace) local wrongWords = {"otservlist.org", "ots-list.pl", "google.br", "83.17.165.189", "hopto.org", "no-ip.org", ".com"} local lowerText = string.lower(text) local noSpaceText = string.gsub(string.gsub(string.gsub(lowerText, "%s", ""), "%p", ""),"-", "") for w = 1, #wrongWords do wordLen = string.len(wrongWords[w]) for p = 1, string.len(text) do if(string.sub(lowerText, p, p+wordLen-1) == wrongWords[w]) then text = string.sub(text, 1, p-1) .. string.rep(replace, wordLen) .. string.sub(text, p+wordLen) end end end if(string.lower(text) == lowerText) then for c = 1, #wrongWords do if(string.find(noSpaceText, string.gsub(string.gsub(wrongWords[c], "%p", ""),"-", "")) ~= nil) then return "I want to post forbidden links.." end end end return text end --[[Channels which are not added to block: 1 - Party Channel 2 - Channel for Staff members 3 - Rule Violation Channel 4 - Channel for Counselors/Tutors 65536 - Private Chat Channel <-- Private Chat cannot be blocked with this script ]]-- local blocked_channels = {5,8,9} --Game-Chat, Real Chat, Help Channel local trade_channels = {6,7} --All trade channels <- These are also blocked local replace = "°" --Symbols which are shown instead of forbidden links -> ° local delay = {16246,5} -- {empty_storage, lenght of muted} function onSay(cid, words, param, channel) local fixedWords = getFixedText(cid, words, replace) if words ~= fixedWords and getPlayerAccess(cid) == 0 then if getPlayerStorageValue(cid,delay[1]) > os.time() then return doPlayerSendCancel(cid,"You are still muted for ".. getPlayerStorageValue(cid,delay[1])-os.time() .." seconds.") end setPlayerStorageValue(cid,delay[1],os.time()+delay[2]) if channel == CHANNEL_DEFAULT then doCreatureSay(cid, fixedWords, TALKTYPE_SAY) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden.") return true elseif isInArray(trade_channels, channel) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden on the trade channel.") return true elseif isInArray(blocked_channels, channel) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden.") doPlayerSendChannelMessage(cid, getCreatureName(cid), fixedWords, TALKTYPE_CHANNEL_Y, channel) return true end end return false end Creditos Summ. . Suporte: http://tibiaking.com/forum/topic/18201-executavelant-dvallitemsotb/ ola amigo mas ja tentei procurar o talkaction.cpp cara não sie onde encontar Editado Maio 14, 2015 10 anos por alexandre2014 (veja o histórico de edições)
Postado Maio 14, 2015 10 anos Ótimo parabéns... Tem como ajuda pra source TFS 1.0 ? 10.76* Meu talkactions.cpp : TalkAction* talkAction = dynamic_cast<TalkAction*>(event); if (!talkAction) { return false;
Postado Novembro 5, 2015 9 anos eu nao tou achando aki n NTO PANZER SERVIDOR 24H http://narutopanzer.blogspot.com.br/RATE EXP 999 DBO SERVIDOR 24H http://dbowtf.ddns.net/RATE EXP 400
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.