Ir para conteúdo

Seja bem-vindo ao RageZone Brasil
Registre-se para obter acesso aos recursos do fórum. Ao se cadastrar e logar no fórum, você poderá criar e ler tópicos, responder em tópicos existentes, dar reputação, enviar mensagens privadas, postar atualizações de status, gerenciar seu perfil e deixar como quiser, e muito mais. Se você já tem uma conta, logue-se nesta tela mesmo, se não, clique aqui para se cadastrar gratuitamente!

Alternar chat Chat Abrir o chat em uma nova janela

Fiquem atentos as regras do chat, pois caso ocorra algo fora das regras, a ação será tomada sem aviso prévio.
 
Caso altere seu avatar mas o mesmo não mude no chat, recarregue a página utilizando o atalho CTRL + F5.
Se for novato, você precisará de 5 posts para usar o chat e as áreas de suporte.
@  RageZone Bot : (18 setembro 2018 - 23:25 GMT) Novo tópico Alguem sabe porque a tela fica assim ddt 3.0 postado em DDTank 3.0 por BrunoBera
@  RageZone Bot : (18 setembro 2018 - 22:32 GMT) Novo tópico Tela Cadastro! AJUDA postado em DDTank [ Tutoriais ] por BrunoBera
@  TheCash : (18 setembro 2018 - 21:59 GMT) :angry:
@  TheCash : (18 setembro 2018 - 21:54 GMT) :mad:
@  Cronos Remember : (18 setembro 2018 - 21:50 GMT) :confused:
@  IShynro : (18 setembro 2018 - 21:26 GMT) Depois de anos de volta a area gc, só tem briga UAHSUAHS pqp
@  Solk : (18 setembro 2018 - 20:53 GMT) @MinatoNamikaze O site não e meu originalmente ele é season 2 @radar não lembro ao certo mais alem da permissão você deve colocar justamente o nome do servidor na part de config do site
@  MinatoNamikaze : (18 setembro 2018 - 17:35 GMT) B) :cool:
@  angaro192 : (18 setembro 2018 - 17:22 GMT) :mad: :mad:
@  TheCash : (18 setembro 2018 - 17:09 GMT) :mad:
@  Von : (18 setembro 2018 - 16:49 GMT) Mensagem duplicou
@  Von : (18 setembro 2018 - 16:49 GMT) ue
@  Von : (18 setembro 2018 - 16:49 GMT) Misericórdia, GC demais e.e
@  RageZone Bot : (18 setembro 2018 - 15:32 GMT) Novo tópico Grand Chase Play! postado em Recrutamento de Equipes por ArrowCol
@  MinatoNamikaze : (18 setembro 2018 - 14:26 GMT) @enctype tem razão @radar para você resolver esse error, basta executar uma query que foi disponivel junto com o site, e tem precisa dar permissão ao Site no SQL, qualquer coisa me chama privado.
@  enctype : (18 setembro 2018 - 13:18 GMT) @radar manda print da linha 6 da index.php, isso é erro de query na hora de selecionar tabela e coluna
@  radar : (18 setembro 2018 - 13:02 GMT) @solk To editando seu site tbm mas da esse erro Warning: mssql_query() [function.mssql-query]: message: Nome de objeto 'ConnectStatusDB' inválido. (severity 16) in C:\AppServ\www\index.php on line 6 "" Sabe se é alguma permissão ?Tudo config certinho"
@  enctype : (18 setembro 2018 - 12:10 GMT) Alguém que manja de metin2?
@  enctype : (18 setembro 2018 - 12:09 GMT) Helou :D
@  MinatoNamikaze : (18 setembro 2018 - 10:03 GMT) @Solk Ainda Quando eu terminar posto mais prints, ainda não fiz nada, só gostei do layout para editar, vou deixar um pouco top. https://imgur.com/k4KJcdb
@  MinatoNamikaze : (18 setembro 2018 - 10:02 GMT) @Solk Peço-lhe permissão para editar o seu site para usar no o Season 2, vou postar no forum. https://imgur.com/azWW5TI
@  Solk : (18 setembro 2018 - 09:26 GMT) :unsure:
@  RageZone Bot : (18 setembro 2018 - 03:43 GMT) Novo tópico Files 4.1 postado em DDTank [ Pedidos ] por chensouza
@  RageZone Bot : (17 setembro 2018 - 21:19 GMT) Novo tópico Grand Chase Brasil postado em Recrutamento de Equipes por Mirotic
@  TheCash : (17 setembro 2018 - 20:45 GMT) :angry:
@  RageZone Bot : (17 setembro 2018 - 11:58 GMT) Novo tópico XML2Query postado em DDTank [ Desenvolvimentos ] por Kudryavka
@  Thalys : (17 setembro 2018 - 11:10 GMT) https://image.prntsc...xm2_Mh9o8gQ.png
@  RageZone Bot : (16 setembro 2018 - 22:51 GMT) Novo tópico Nível de Char postado em GC [ Suporte/Dúvidas ] por thedeath
@  TheCash : (16 setembro 2018 - 22:16 GMT) :mad:
@  RageZone Bot : (16 setembro 2018 - 21:25 GMT) Novo tópico Tela de Servidores postado em GC [ Suporte/Dúvidas ] por thedeath
@  angaro192 : (16 setembro 2018 - 21:01 GMT) Boa
@  Solk : (16 setembro 2018 - 21:01 GMT) Boa noite chars :rolleyes: https://www.youtube....mIsj46g&t=1637s
@  Solk : (16 setembro 2018 - 19:56 GMT) tem sim
@  angaro192 : (16 setembro 2018 - 19:55 GMT) Nesse erro, tem vários erros, kkk
@  RageZone Bot : (16 setembro 2018 - 19:50 GMT) Novo tópico Um problema no GameServer postado em GC [ Suporte / Dúvidas ] por lMRlAsura
@  JeffzSplush : (16 setembro 2018 - 19:40 GMT) '-'
@  Solk : (16 setembro 2018 - 19:40 GMT) :mad:
@  angaro192 : (16 setembro 2018 - 19:32 GMT) :mad:
@  TheCash : (16 setembro 2018 - 19:22 GMT) :mad:
@  RageZone Bot : (16 setembro 2018 - 17:31 GMT) Novo tópico Adicionar Missão postado em GC [ Suporte / Dúvidas ] por thedeath
@  Solk : (16 setembro 2018 - 17:19 GMT) https://i.upimg.com/Hk0icNnd7
@  Solk : (16 setembro 2018 - 17:02 GMT) @TheCash te mandei o mp.
@  Solk : (16 setembro 2018 - 17:02 GMT) @TheCash tenta ai
@  TheCash : (16 setembro 2018 - 16:37 GMT) :mellow:
@  MinatoNamikaze : (16 setembro 2018 - 16:36 GMT) Boa tarde Chars ! https://www.youtube....h?v=aq8Hy4Xg07E
@  Solk : (16 setembro 2018 - 16:35 GMT) :unsure:
@  TheCash : (16 setembro 2018 - 16:28 GMT) :angry:
@  angaro192 : (16 setembro 2018 - 15:50 GMT) Bom
@  Solk : (16 setembro 2018 - 10:37 GMT) Dia chars '-' https://www.youtube....h?v=zKCrSN9oXgQ
@  Solk : (16 setembro 2018 - 09:57 GMT) k
@  angaro192 : (16 setembro 2018 - 09:54 GMT) Server de gunbound ja nem vale mais a pena, porque lança em um dia, e no mesmo dia já tem ainbot virado no satan
@  Violet Everg... : (16 setembro 2018 - 02:23 GMT) codecaved only the IP
@  Violet Everg... : (16 setembro 2018 - 02:23 GMT) the packed one
@  Violet Everg... : (16 setembro 2018 - 02:23 GMT) i codecaved the main.exe
@  Violet Everg... : (16 setembro 2018 - 02:22 GMT) igort was right
@  Violet Everg... : (16 setembro 2018 - 02:22 GMT) https://imgur.com/rBDEs2c
@  RageZone Bot : (15 setembro 2018 - 23:40 GMT) Novo tópico GUNBOUND REVOLUTION WC SEASON 1 postado em Desenvolvimento por imds
@  RageZone Bot : (15 setembro 2018 - 23:01 GMT) Novo tópico editar item no shop postado em DDTank [ Solicitação de tutoriais ] por Luiscarlos309
@  TheCash : (15 setembro 2018 - 18:07 GMT) :mad:
@  RageZone Bot : (15 setembro 2018 - 15:47 GMT) Novo tópico Sistema VIP postado em GC [ Pedidos ] por thedeath

Foto

Filtrar Mensagem de baixo calão

- - - - - Tutorial

  • Por favor, faça o login para responder
6 respostas neste tópico

#1
OFFLINE   SkelletonX

SkelletonX

    Membro da Staff

  • Super Moderador






  • 1.899 posts
    • Tempo online: 55d 7h 5m 56s

Prêmios do membro

           

Acabei criando essa função para os Players que gosta de xingar rsrs, quando escrevem no chat algum palavrão da lista

ele pode ser kikado ou banido do servidor.

 

Capturar.png

 

Criei uma Classe para as funções usadas:

 

Please Login HERE or Register HERE to see this link!

 

Tutorial para colocar no DDTank II (Tem que saber Basico de C#)

é so colocar no dir da GameServer: Game.Server.Managers cria uma arquivo com nome FilterMsg.cs

e cola oque esta na pastebin acima.

Depois procure o SceneChatHandler Que fica em Game.Server.Packets.Client e cole debaixo da linha

SPacketIn.WriteString(text);

 

Capturar.png

 

 

 

e chamem o FilterManager da classe, FilterMsg.FilterManager(client, 1, text); e coloca na linha de baixo

 

Capturar.png

 

Depois disso, na pasta do emulador cria um aquivo .txt com nome FilterText

 

Capturar.png

 

dentro dele você coloca as palavras para ser filtrada exemplo abaixo:

 

Capturar.png

 

Agora vou explicar um pouco do FilterMsg.FilterManager(client, 1, text);

 

FilterMsg.FilterManager(GameClient client, int typeC, string Text);

 

Client é a variavel da GameClient.

 

FilterMsg.FilterManager((GameClient client, int typeC, string Text);

 

1 = Kickar player do servidor

2 = Banir do Servidor o player por 5 Minutos

 

FilterMsg.FilterManager((GameClient client, int typeC, string Text);

 

Você vai colocar variavel do Texto do Player

 

Done!.

 

 

 

 

 

 

 


  • SlimShady e Vinícius Mortality curtiram isso


CGD8IbE.jpg


#2
OFFLINE   Vinícius Mortality

Vinícius Mortality

    Ragezoner

  • Super Membro
  • 252 posts
    • Tempo online: 6d 12h 30m 36s

Ficou bem da hora, continua assim que tu chega longe!

 

Dei uma refatorada na sua classe, se quiser usar, ou até mesmo pra aprendizado, etc. Está aqui:

Please Login HERE or Register HERE to see this link!

 

Essa classe ta fazendo a mesma coisa, apenas mudei as formas de fazer, e apliquei algumas boas práticas, se quiser umas dicas, pode contar comigo :)

 

Da pra melhorar ainda mais, porém precisa adicionar mais arquivos.

 

A indentação ta com muitos espaços por conta de um bug no GitHub, mas nada que atrapalhe, só você mesmo indentar.

 

Pra utilizar, você pode fazer com a inicialização da instância da classe em uma variável, e então chamando posteriormente o método que quer:

 

var msgFilter = new MessageFilter(client);

 

// Expulsa jogador do servidor, faz a mesma coisa que o 1 do seu switch.

msgFilter.KickPlayer(text);

// Bani jogador do servidor, faz a mesma coisa que o 2 do seu switch.

msgFilter.BanPlayer(text);

 

Ou fazendo tudo direto, sem usar uma variável:

 

// Expulsa jogador do servidor, faz a mesma coisa que o 1 do seu switch.

new MessageFilter(client).KickPlayer(text);

// Bani jogador do servidor, faz a mesma coisa que o 2 do seu switch.

new MessageFilter(client).BanPlayer(text);

 

Porém se for utilizar ambos os métodos (KickPlayer e BanPlayer), a primeira opção é o certo, claro.


Editado por Vinícius Mortality, 25 julho 2018 - 02:56 .


#3
OFFLINE   SkelletonX

SkelletonX

    Membro da Staff

  • Super Moderador






  • 1.899 posts
    • Tempo online: 55d 7h 5m 56s

Prêmios do membro

           

o seu jeito fico bem bacana, na real eu fiz bem rapido, mas da para fazer algo mais completo que eu fiz.


  • tDarkFall curtiu isso

CGD8IbE.jpg


#4
OFFLINE   tDarkFall

tDarkFall

    Desenvolvedor

  • Fundador





  • 2.519 posts
    • Tempo online: 188d 33m 28s

Prêmios do membro

                     

@Vinícius Mortality

O único cuidado é que nem sempre os projetos do emulador está com o .NET Framework 4.6.1, sendo assim as novas funções como métodos declarados em Lambda serão reconhecidos (como o construtor no caso).

Em geral, achei legal como adaptou o código :)

 

#TOPIC

Boa ideia de projeto, por meio deste, dá pra estudar bem como funciona a comunicação do cliente com o servidor e os retornos do mesmo.


  • Vinícius Mortality curtiu isso

CPU: AMD FX™-6100 Six-Core Processor
CPU Cooler: Evercool Buffalo
GPU: nVidia GeForce GT 630
MB: ASUS MSA78L-M LX3
RAM: Kingston HyperX FURY 8GB 2008.8MHz

 

 


#5
OFFLINE   Vinícius Mortality

Vinícius Mortality

    Ragezoner

  • Super Membro
  • 252 posts
    • Tempo online: 6d 12h 30m 36s

@tDarkFall É esqueci de mencionar isso kkkkk, e ainda também tem a questão da versão do Visual Studio que dependendo da versão não funciona.

@SkelletonX Qualquer coisa se der erro por você não usar o C# 7, troca a body expression para bloco:

 

public MessageFilter(GameClient client) => _client = client;

 

Pra essa:

 

public MessageFilter(GameClient client)

{

_client = client;

}


  • tDarkFall curtiu isso


#6
OFFLINE   tDarkFall

tDarkFall

    Desenvolvedor

  • Fundador





  • 2.519 posts
    • Tempo online: 188d 33m 28s

Prêmios do membro

                     

@Vinícius Mortality

Exato, é bom o post porque caso alguém teste o código e não saiba como colocar o C# 7 ou não queira fazer upgrade do .NET Framework por algo no dedicado (existem casos kkkk).

Lambda em métodos e propriedades é algo lindo demais, só não uso nos meus projetos porque são baseados para Mono Linux e pra rodar em alguns PCs antigos, ai acabam não suportando o .NET 4.6.1


  • Vinícius Mortality curtiu isso

CPU: AMD FX™-6100 Six-Core Processor
CPU Cooler: Evercool Buffalo
GPU: nVidia GeForce GT 630
MB: ASUS MSA78L-M LX3
RAM: Kingston HyperX FURY 8GB 2008.8MHz

 

 


#7
OFFLINE   Vinícius Mortality

Vinícius Mortality

    Ragezoner

  • Super Membro
  • 252 posts
    • Tempo online: 6d 12h 30m 36s

@tDarkFall Acho que está confundindo body expression com lambda, mas é fácil de confundir, a sintaxe é praticamente idêntica, porem as 2 tem finalidades diferentes.


  • SkelletonX curtiu isso






Tópicos que também usam as tags Tutorial:

0 usuário(s) está(ão) lendo este tópico

0 membros, 0 visitantes, 0 membros anônimos