DevClub


Você não está conectado. Conecte-se ou registre-se

Photo

Filtro de palavrões

Ver o tópico anterior Ver o tópico seguinte Ir para baixo  Mensagem [Página 1 de 1]

Renanr

Renanr
Novato
A pedido de Marakgarin

Server~Side
Procure:
Código:
Public Party(1 To MAX_PARTYS) As PartyRec
Public Options As OptionsRec

Abaixo ponha:
Código:
Public WordList As Double
Public Wordfilter() As String

No fim do modGameLogic adicione:
Código:
Public Sub LoadWordfilter()
Dim i
ReDim Wordfilter(Val(GetVar(App.Path & "\wordfilter.ini", "WORDFILTER", "maxwords")))
If FileExist("wordfilter.ini") Then
WordList = Val(GetVar(App.Path & "\wordfilter.ini", "WORDFILTER", "maxwords"))
If WordList >= 1 Then
For i = 1 To WordList
Wordfilter(i) = LCase(GetVar(App.Path & "\wordfilter.ini", "WORDFILTER", "word" & i))
Next i
End If
Else
Call MsgBox("Wordfilter.INI could not be found. Please make sure it exists.")
WordList = 0
End If
End Sub
Public Function SwearCheck(TextToSay As String) As Boolean
Dim i
Dim SayText As String
SayText = LCase(TextToSay)
SwearCheck = False
If WordList <= 0 Then Exit Function
For i = 1 To WordList
If InStr(1, SayText, Wordfilter(i), vbBinaryCompare) > 0 Then
SwearCheck = True
End If
Next i
End Function

Procure:
Código:
Private Sub HandleSayMsg(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
    Dim Msg As String
    Dim i As Long
    Dim Buffer As clsBuffer
    Set Buffer = New clsBuffer
    Buffer.WriteBytes Data()
    Msg = Buffer.ReadString

    ' Prevent hacking
    For i = 1 To Len(Msg)
        ' limit the ASCII
        If AscW(Mid$(Msg, i, 1)) < 32 Or AscW(Mid$(Msg, i, 1)) > 126 Then
            ' limit the extended ASCII
            If AscW(Mid$(Msg, i, 1)) < 128 Or AscW(Mid$(Msg, i, 1)) > 168 Then
                ' limit the extended ASCII
                If AscW(Mid$(Msg, i, 1)) < 224 Or AscW(Mid$(Msg, i, 1)) > 253 Then
                    Mid$(Msg, i, 1) = ""
                End If
            End If
        End If
    Next

Abaixo ponha:
Código:
Call LoadWordfilter
            If SwearCheck(Msg) = True Then
            Call PlayerMsg(index, "Por favor, utilize linguagem adequada.", Red)
            Exit Sub
            End If

Procure:
Código:
Private Sub HandleEmoteMsg(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
    Dim Msg As String
    Dim i As Long
    Dim Buffer As clsBuffer
    Set Buffer = New clsBuffer
    Buffer.WriteBytes Data()
    Msg = Buffer.ReadString

    ' Prevent hacking
    For i = 1 To Len(Msg)

        If AscW(Mid$(Msg, i, 1)) < 32 Or AscW(Mid$(Msg, i, 1)) > 126 Then
            Exit Sub
        End If

    Next

Abaixo adicione:
Código:
Call LoadWordfilter
            If SwearCheck(Msg) = True Then
            Call PlayerMsg(index, "Por favor, utilize linguagem adequada.", Red)
            Exit Sub
            End If

Procure:
Código:
Private Sub HandleBroadcastMsg(ByVal index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)
    Dim Msg As String
    Dim s As String
    Dim i As Long
    Dim Buffer As clsBuffer
    Set Buffer = New clsBuffer
    Buffer.WriteBytes Data()
    Msg = Buffer.ReadString

    ' Prevent hacking
    For i = 1 To Len(Msg)

        If AscW(Mid$(Msg, i, 1)) < 32 Or AscW(Mid$(Msg, i, 1)) > 126 Then
            Exit Sub
        End If

    Next

Abaixo ponha:
Código:
Call LoadWordfilter
            If SwearCheck(Msg) = True Then
            Call PlayerMsg(index, "Por favor, utilize linguagem adequada.", Red)
            Exit Sub
            End If

Agora vá até o servidor e crie um arquivo chamado wordfilter.ini e adicione o seguinte:
Código:
[WORDFILTER]
maxwords=97
word1=merda
word2=puta
word3=fdp
word4=filho da puta
word5=f.d.p
word6=corno
word7=bosta
word8=fd.p
word9=f.dp
word10=filho da egua
word11=filho da égua
word12=filho da púta
word13=púta
word14=p.ú.t.a
word15=p.ú.ta
word16=p.úta
word17=p.út.a
word18=pú.t.a
word19=pú.ta
word20=motherfucker
word21=motherfuck
word22=mother fuck
word23=mother fucker
word24=lixoso
word25=filho duma puta
word26=biscat
word27=biscate
word28=arrombado
word29=cú
word30=dbz lixo
word31=dbzlixo
word32=dbz war lixo
word33=dbzwar lixo
word34=dbz warlixo
word35=dblixo
word36=db lixo
word37=jogolixo
word38=dbz forces
word39=dbzforces
word40=forces games
word41=forcesgames
word42=viciados dbz
word43=dbz viciados
word44=viciadosdbz
word45=dbzviciados
word46=dbviciados
word47=db viciados
word48=dbzinfinity
word49=dbinfinity
word50=db infinity
word51=dbz infinity
word52=infinity games
word53=infinitygames
word54=games infinity
word55=gamesinfinity
word56=ultrax
word57=dbzultrax
word58=dbz ultrax
word59=db ultrax
word60=dbultrax
word61=buceta
word62=chana
word63=caralho
word64=vsf
word65=vai se fude
word66=vaisefude
word67=vai.se.fude
word68=karalho
word69=krl
word70=vai-se-fude
word71=dbzultra
word72=dbz-ultra
word73=dbz ultra
word74=Dragon Ball Ultra
word75=Dragon Ball z Ultra
word76=ultra
word77=dragon ball z forces
word78=dragon ball forces
word79=dragon ball viciados
word80=dragon ball z viciados
word81=viciados dragon ball z
word82=viciados dragon ball
word83=dragon ball infinity
word84=dragon ball z infinity
word85=infinity dragon ball z
word86=infinity dragon ball
word87=fudeu
word88=foda-se
word89=fude
word90=fodase
word91=fodac
word92=fodace
word93=fudi
word94=dragonballultrax
word95=porra
word96=viado
word97=desgraçado
PS: Edite como quiser.

É isso.
Créditos; Desconhecido & Renanr

Math320

avatar
Novato
Esse sistema de Filtro seria mais conveniente para nao permitir publicaçaoes de outro dbz no jogo bom tutorial valeu ae e +1 pela colaboraçao

Convidado

avatar
Convidado
''Gosti'' hu3 muito bom enfim não irei testar ,+1 Crédito thank's

Marakgarin

avatar
Novato
vlw aeeee

Dark Angel

Dark Angel
Membro
Obrigado por postar o Sistema, irá ajudar muitas pessoas. E como disse o Math "esse sistema de filtro seria mais conveniente para nao permitir publicaçaoes de outro dbz no jogo". +1 Credito.

Convidado

avatar
Convidado
Acho que seria melhor colocar no próprio client.
Ai no caso não ficaria : Você não pode digitar essa mensagem ou algo do tipo e sim:
"Pablo Says: A seu filho da #$0&!**$#"
Além do que não precisaria de um bloco de notas ou algo do tipo para tal.
Mesmo assim, obrigado pelo seu excelente trabalho caro Renan.

Conteúdo patrocinado


Ver o tópico anterior Ver o tópico seguinte Ir para o topo  Mensagem [Página 1 de 1]

Permissões neste sub-fórum
Não podes responder a tópicos