Ir para conteúdo
  • Cadastre-se

Action%2FTalkaction [TFS 0.4 e OTX] Bloqueando IPs/links no Default/Trade/Help/Private


Posts Recomendados

Informação

Não importa o que a pessoa digite, ela em hipótese nenhuma conseguirá falar. Exemplo: azhaurn.servegame.com

azhaurn...servegame....com
azhaurn!!! serve game!!! com
a z h a u r n servegame c o m

Se ela digitar tipo assim, mesmo assim, não conseguirá falar.

 

Instalando

blocklinks.lua

local blockedLinks = {'PALAVRA 1', 'PALAVRA 2', 'PALAVRA 3', 'PALAVRA 4'}

local muteStorage = 16246
local muteTime = 2 -- EM SEGUNDOS
-- END OF CONFIG --

local blockedLinksData = {}
local separator = '[ !\t%$%^%+%-%.%%_,<>]*'
for _, linkText in pairs(blockedLinks) do
    local data = {}
    data.link = linkText

    data.preg = '.*'
    for c in string.gmatch(linkText, '.') do
        if(c == '.') then
            data.preg = data.preg .. '.*'
        else
            data.preg = data.preg .. c .. separator
        end
    end
    data.preg = data.preg .. '.*'

    table.insert(blockedLinksData, data)
end

function isLegalMessage(words)
    for _, blockedLink in pairs(blockedLinksData) do
        if(string.match(words, blockedLink.preg) ~= nil) then
            return false, blockedLink.link
        end
    end
    return true, ''
end

function onSay(cid, words, param, channel)
    words = words .. ' ' .. param
    local legalMessage, forbiddenLink = isLegalMessage(
string.lower(words))

    if(not legalMessage) then
        local muteStorageValue = getPlayerStorageValue(cid, muteStorage)
        if(muteStorageValue > os.time()) then
            doPlayerSendCancel(cid, 'You are still muted for ' .. muteStorageValue-os.time() .. ' seconds.')
            return true
        end
        setPlayerStorageValue(cid, muteStorage, os.time()+muteTime)

        if(channel == CHANNEL_DEFAULT) then
            doCreatureSay(cid, '...', TALKTYPE_SAY)
        end
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Link: ' .. forbiddenLink .. ' PROIBIDO.')
        return true
    end
    return false
end
talkactions.xml
<talkaction words="illegalWords" default="1" script="blocklinks.lua"/>

Modificando

Em local blockedLinks = acrescente o link ou a palavra que você quer que a pessoa não consiga falar.
 

Créditos

  • Gesior.pl
Editado por Larissa Azhaurn (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Em nome da comunidade do TK, muito obrigado pela contribuição! :wow:
Seu tópico de conteúdo foi aprovado e será movido para a seção adequada. Você ganhou 1 REP+!

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites
  • 6 months later...

Desculpe, mas deu para divulgar mesmo assim novo. s e r v e g a me . c o m  , normalmente, teria como me ajudar? Estou tentando aprendendo script e estou no começo ainda ^^

Criador, a procura de mapper e scripter para server de tibia 8.6 DEDICADO

 

| IP: real-world.servegame.com | XP: 650 | Baiak EDITED (PRÓPRIO) | DEDICADO 24horas Online | Aberto 10.12.15 |

logo.png

Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por Sphynx1
      Olá comunidade.
      Eu criei um script a madrugada passada para tentar ajudar um amigo que usa 'OTX' porém dá um erro bizarro no 'lib/compat.lua' e a função 'doAddPlayerOutfit' retorna valor 'NIL'. Eu não sei como resolver, mas está funcionando perfeitamente no 'TFS 0.4'. Espero que alguém em algum lugar do tempoespaço possa se beneficiar desse script já que os que encontrei estão todos muito feios e confusos.

      1. Acesse a pasta 'data/talkactions/scripts' e crie um novo 'arquivo.lua' chamado 'addonpresent.lua', dentro adicione o conteúdo abaixo.
      function onSay(cid, words, param, channel) local maleOutfits = {["citizen"] = {128}, ["mage"] = {130}, ["knight"] = {131}, ["nobleman"] = {132}, ["summoner"] = {133}, ["warrior"] = {134} } local femaleOutfits = {["citizen"] = {136}, ["mage"] = {138}, ["knight"] = {139}, ["nobleman"] = {140}, ["summoner"] = {141}, ["warrior"] = {142} } local mensagens = {"Você recebeu o seu addon e consumiu o item bônus para isto.", "Verifique o que você digitou e tente novamente, parametros inválidos.", "Você não possui o item necessário para receber um addon.", "Certifique-se que você digitou o nome do addon corretamente e tente mais uma vez."} local efeitinga = {[1] = {name = CONST_ME_POFF}, [2] = {name = CONST_ME_CAKE}, [3] = {name = CONST_ME_HEARTS}, [4] = {name = CONST_ME_GIFT_WRAPS} -- efeitos que seram exibidos } local param = string.lower(param) if not isPremium(cid) then doCreatureSay(cid, "Você não possui Premium Account, portanto não poderá utilizar o item de addon.", TALKTYPE_ORANGE_1) -- MSG que será exibida p/ o nao premium return true end if getPlayerItemCount(cid, 6497) > 0 then -- 6497 é o ID do item que será usado por você, se for maior que 0 a quanidade na sua bag então if param ~= "" and maleOutfits[param] and femaleOutfits[param] then doPlayerRemoveItem(cid, 6497, 1) -- o item 6497 será consumido doCreatureSay(cid, mensagens[1], TALKTYPE_ORANGE_1) for k, v in pairs(efeitinga) do doSendMagicEffect(getCreaturePosition(cid), v.name) end if getPlayerSex(cid) == 0 then doPlayerAddOutfit(cid, femaleOutfits[param][1], 3) elseif getPlayerSex(cid) == 1 then doPlayerAddOutfit(cid, maleOutfits[param][1], 3) end else doCreatureSay(cid, mensagens[2], TALKTYPE_ORANGE_1) end else doCreatureSay(cid, mensagens[3], TALKTYPE_ORANGE_1) end return true end  
      2. Regresse até 'data/talkactions' e abra o arquivo 'talkactions.xml', dentro adicione o conteúdo abaixo.
      <talkaction words="!addon" event="script" value="addonpresent.lua"/>  
       
    • Por Movie
      Tentei fazer esse talkactions , mas não deu certo , alguém poderia me ajudar ?
       

       
         
       
    • Por eviltox
      Olá galera, tenho um problema com um script gringo.    
      Então a Função do Script é Ficar Mudando o Addon e sua cor Continuamente.
      O único problema do script até agora é a hora que o player desloga.   
       
      Então esse é o meu pedido, Gostaria de adicionar um OnLogout ou um meio de encerrar o script quando o player desloga(não entendo muito de script, mas acho que é isso que falta, se não for agradeço em adicionarem oque falta. *(Versão do TFS 0.3.1)*     
       
      O Script é esse:
      O Erro é esse:
      Dês de já, Agradeço. Darei Rep+ Para quem ajudar, mesmo que não funcione. Grato   
    • Por rolas69
      Estou com problema no talkaction /attr.
       
      Uso TFS 0.4 que veio sem o talk.
       
      Adicionei com a tag <talkaction log="yes" words="/attr" access="5" script="attr.lua"/> mas sempre dava "unknown comand". Quando mudei pra <talkaction log="yes" words="/attr" access="5" event="function" value="thingProporties"/>, parou de dar erro e aparece o efeito do script, mas nada acontece com o item/teleporte etc...
      O script adicionado é esse:



       
      Na segunda tag, o comando usado sem erro é por ex. /attr set attack 20.
       
      Algm sabe o que pode estar errado?
    • Por jonatasfl
      Ola, galera preciso de um talkaction que faça o seguinte, quando o player alcançar lvl 160 ele ganhara um item para sua vocação, achei um talkaction ele funciona e tudo mas ele só da o item se vc nao tiver promotion, caso vc for Master sorcerer e etc vc n ganha o item, e eu queria que ganhasse, tem como alguem me ajudar? vou postar o script que eu tenho. 
       
         
                  no talkactions.xml    
      Desculpe estar sem os créditos, não lembro quem criou o script.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo