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.
@  knuxx : (22 abril 2019 - 01:38 GMT) :v
@  Makeer : (22 abril 2019 - 01:19 GMT) https://imgur.com/a/A79RHZ3 :sad:
@  knuxx : (21 abril 2019 - 23:38 GMT) https://i.imgur.com/CaxFgFN.jpg :wub:
@  RageZone Bot : (21 abril 2019 - 22:53 GMT) Novo tópico solicitaão de placa ddtank postado em Solicitação de Placa(s) por herocraazii
@  Cabra Chapada : (21 abril 2019 - 21:25 GMT) oi
@  Solk : (21 abril 2019 - 17:09 GMT) :ph34r:
@  rugal : (21 abril 2019 - 15:59 GMT) oi
@  Makeer : (21 abril 2019 - 15:45 GMT) oi '-'
@  TheCash : (21 abril 2019 - 15:33 GMT) oi
@  Portugues : (21 abril 2019 - 14:41 GMT) bom dia
@  Makeer : (21 abril 2019 - 13:05 GMT) ban dia
@  RageZone Bot : (21 abril 2019 - 02:02 GMT) Novo tópico HTML Launcher postado em GC [ Pedidos ] por knuxx
@  knuxx : (21 abril 2019 - 01:20 GMT) Qual a boa
@  herocraazii : (21 abril 2019 - 01:05 GMT) pf
@  herocraazii : (21 abril 2019 - 00:59 GMT) alguem que programa php pra me ajudar ?
@  knuxx : (21 abril 2019 - 00:58 GMT) oi
@  Thezero : (21 abril 2019 - 00:17 GMT) to em casa não
@  Thezero : (21 abril 2019 - 00:17 GMT) @herocraazii só de manha
@  Solk : (20 abril 2019 - 23:04 GMT) oi '-'
@  Makeer : (20 abril 2019 - 23:02 GMT) oi '-'
@  TheCash : (20 abril 2019 - 23:02 GMT) oi '-'
@  Solk : (20 abril 2019 - 22:52 GMT) '-' q flash back aq agr
@  Sr Dio : (20 abril 2019 - 22:50 GMT) isso acontecer comigo direto
@  Sr Dio : (20 abril 2019 - 22:49 GMT) e so uma dica
@  Sr Dio : (20 abril 2019 - 22:49 GMT) @herocraazii amigo como em todas as areas se nao esta funfando começa tudo denovo e basico isso cara sempre tem um detalha que vc pode te deixando passar
@  herocraazii : (20 abril 2019 - 22:32 GMT) tou a 3 dias tentando
@  Campones : (20 abril 2019 - 22:31 GMT) Por que quando mais tentar, mais você vai fica tentando, tentando é não vai sair do lugar, até mesmo refaça todos os procedimentos
@  Campones : (20 abril 2019 - 22:31 GMT) Cara, uma coisa que aprendi... Quando não está conseguindo fazer algo, da um tempo, pensa, fica relaxado é começa novamente
@  herocraazii : (20 abril 2019 - 21:03 GMT) AJUDEM PF
@  RageZone Bot : (20 abril 2019 - 20:54 GMT) Novo tópico placa de lendario postado em Canal Usuário (Ouvidoria) por herocraazii
@  herocraazii : (20 abril 2019 - 20:47 GMT) faltei aula faltei trabalho so falta isso pra termina
@  herocraazii : (20 abril 2019 - 20:47 GMT) ja me lenhei tentando configura
@  herocraazii : (20 abril 2019 - 20:47 GMT) pode me ajudar por tv ?
@  Thezero : (20 abril 2019 - 20:45 GMT) Configura certinho isso ai
@  Thezero : (20 abril 2019 - 20:44 GMT) mds
@  Thezero : (20 abril 2019 - 20:44 GMT) @herocraazii o erro tá o iis
@  herocraazii : (20 abril 2019 - 20:38 GMT) que saco vei povo n ajuda
@  RageZone Bot : (20 abril 2019 - 20:20 GMT) Novo tópico erro ao logar postado em DDTank [ Suporte ] por herocraazii
@  RageZone Bot : (20 abril 2019 - 20:05 GMT) Novo tópico cirei sever de gc season eternal na maquina vitual mais na hora de entrar no sever nao entra postado em Season Eternal por marcoscg1
@  Solk : (20 abril 2019 - 18:03 GMT) Noite pesadona chars '-' https://www.youtube....h?v=ehcVomMexkY
@  angaro192 : (20 abril 2019 - 17:52 GMT) falei de modo geral do forum, e o cara se doeu.
@  Solk : (20 abril 2019 - 17:39 GMT) Pelo que eu to vendo o fórum aceita gifs no avatar por 150x250 pelo menos as que eu testei foram '-'
@  rugal : (20 abril 2019 - 17:06 GMT) kkkkkkkk
@  Solk : (20 abril 2019 - 17:05 GMT) @xdsurvivor to tão pasmo quanto
@  xdsurvivor : (20 abril 2019 - 17:04 GMT) que mundo eu tava
@  xdsurvivor : (20 abril 2019 - 17:04 GMT) caramba solk de adm
@  Solk : (20 abril 2019 - 17:03 GMT) essa gente inventa cada coisa
@  xdsurvivor : (20 abril 2019 - 17:03 GMT) k
@  rugal : (20 abril 2019 - 17:00 GMT) K
@  angaro192 : (20 abril 2019 - 16:50 GMT) @Thezero vo nem falar mais nada, deve ser tpm
@  Thezero : (20 abril 2019 - 16:31 GMT) xo sangue sugas
@  Thezero : (20 abril 2019 - 16:31 GMT) se for um membro conhecido e que ja contruiou muito
@  Thezero : (20 abril 2019 - 16:31 GMT) eu fazia questao de da db
@  Thezero : (20 abril 2019 - 16:29 GMT) e o erro vermelho no emulador mostra oque falta tmb
@  Thezero : (20 abril 2019 - 16:27 GMT) flash decompile ta ai
@  Thezero : (20 abril 2019 - 16:27 GMT) @herocraazii se vira ai po
@  Thezero : (20 abril 2019 - 16:27 GMT) Zero
@  Thezero : (20 abril 2019 - 16:26 GMT) @angaro192 qual e sua contribuição com ddtank
@  RageZone Bot : (20 abril 2019 - 13:47 GMT) Novo tópico Equipe ddtank postado em Recanto dos Dragões por herocraazii
@  Lime Serenity : (20 abril 2019 - 12:23 GMT) bom bom

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.907 posts
    • Tempo online: 56d 4h 7m 44s

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



#2
OFFLINE   Vinícius Mortality

Vinícius Mortality

    Ragezoner

  • Super Membro
  • 252 posts
    • Tempo online: 6d 12h 54m 39s

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.907 posts
    • Tempo online: 56d 4h 7m 44s

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

#4
OFFLINE   tDarkFall

tDarkFall

    Desenvolvedor

  • Fundador






  • 2.531 posts
    • Tempo online: 189d 15h 50m 8s

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 54m 39s

@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.531 posts
    • Tempo online: 189d 15h 50m 8s

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 54m 39s

@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