Sistema Habla global 13.0 (NUEVO)

Ir abajo

Sistema Habla global 13.0 (NUEVO)

Mensaje por Zankur el 18/2/2014, 4:55 am

Bueno les traigo un sistema de habla global, ya se que hay varios de estos sistemas, pero la mayoria de sistema habla global para 13.0 Estan Incompletos o no funcionan directamente, les traigo este sistema que fue extrayendo de un par de aos y mas o menos lo hice pasable es funcional.

Servidor :

Buscamos :

Código:
Consultation

Abajo agregamos:

Código:
GlobalMessage
    GlobalStatus

Buscamos:

Código:
Case ClientPacketID.Consultation
            Call HandleConsultation(UserIndex)

Abajo ponemos:


Código:
Case ClientPacketID.GlobalMessage
            Call HandleGlobalMessage(UserIndex)
         
        Case ClientPacketID.GlobalStatus
            Call HandleGlobalStatus(UserIndex)

Abajo de todo el modulo "Protocol" ponemos:

Código:
''
' Handles the "GlobalMessage" message.
'
' @param    userIndex The index of the user sending the message.
 
Private Sub HandleGlobalMessage(ByVal UserIndex As Integer)
'***************************************************
'Author: Mariano acevedo (ZankuR)
'Last Modification: 10/02/2014
'
'***************************************************
 
    Dim buffer As New clsByteQueue
 
    With UserList(UserIndex)
 
        Call buffer.CopyBuffer(.incomingData)
     
        'Remove packet ID
        Call buffer.ReadByte
     
        Dim message As String
     
        message = buffer.ReadASCIIString()
     
        If GlobalActivado = 1 Then
            Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("[" & .name & "] " & message, FontTypeNames.FONTTYPE_INFOBOLD))
        Else
            Call WriteConsoleMsg(UserIndex, "Global> Por el momento no esta desactivado el sistema de habla global disculpen gracias...", FontTypeNames.FONTTYPE_INFO)
        End If
     
        Call .incomingData.CopyBuffer(buffer)
     
    End With
 
    Set buffer = Nothing
 
End Sub
 
''
' Handles the "GlobalStatus" message.
'
' @param    userIndex The index of the user sending the message.
 
Private Sub HandleGlobalStatus(ByVal UserIndex As Integer)
'***************************************************
'Author: Mariano acevedo (ZankuR)
'Last Modification: 10/2/2014
'
'***************************************************
 
    With UserList(UserIndex)
     
        'Remove packet ID
        Call .incomingData.ReadByte
     
        If .flags.Privilegios > PlayerType.Consejero Then
            If GlobalActivado = 1 Then
                GlobalActivado = 0
                Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("Global> El global ha sido desactivado.", FontTypeNames.FONTTYPE_SERVER))
            Else
                GlobalActivado = 1
                Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("Global> El global ha sido activado.", FontTypeNames.FONTTYPE_SERVER))
            End If
        End If
     
    End With
 
End Sub

En el modulo declaraciones ponemos:

Código:
Public GlobalActivado As Byte

LISTO EL SERVIDOR

CLIENTE :

Buscamos:

Código:
Consulta

Y abajo ponemos:

Código:
GlobalMessage
    GlobalStatus

Buscamos:

Código:
Case "/TELEPLOC"
                Call WriteWarpMeToTarget

Arriba ponemos:

Código:
Case "/ACTIVARGLOBAL"
                Call WriteGlobalStatus
         
            Case "/GLOBAL"
                If notNullArguments Then
                    Call WriteGlobalMessage(ArgumentosRaw)
                Else
                    'Avisar que falta el parametro
                    Call ShowConsoleMsg("Escriba un mensaje.")
                End If

Abajo de todo el modulo "Protocol" ponemos:

Código:
''
' Writes the "GlobalStatus" message to the outgoing data buffer.
'
' @remarks  The data is not actually sent until the buffer is properly flushed.
 
Public Sub WriteGlobalStatus()
'***************************************************
'Author: Mariano acevedo (ZankuR)
'Last Modification: 10/02/2014
'Writes the "GlobalStatus" message to the outgoing data buffer
'***************************************************
    Call outgoingData.WriteByte(ClientPacketID.GlobalStatus)
End Sub
 
''
' Writes the "GlobalMessage" message to the outgoing data buffer.
'
' @remarks  The data is not actually sent until the buffer is properly flushed.
 
Public Sub WriteGlobalMessage(ByVal Message As String)
'***************************************************
'Author: Mariano acevedo (ZankuR)
'Last Modification: 10/02/2014
'Writes the "GlobalMessage" message to the outgoing data buffer
'***************************************************
    With outgoingData
        Call .WriteByte(ClientPacketID.GlobalMessage)
        Call .WriteASCIIString(Message)
    End With
End Sub

PH : Si quieren tener un anti flod de cada 5 o los segundo que quieran pongan asi

buscar en el server

Código:
 If GlobalActivado = 1 Then
            Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("[" & .name & "] " & message, FontTypeNames.FONTTYPE_INFOBOLD))
        Else
            Call WriteConsoleMsg(UserIndex, "Global> El sistema de habla global esta desactivado, intenta en unos momentos.", FontTypeNames.FONTTYPE_INFO)
        End If

remplazalo por :

Código:
If Not (GetTickCount() - .ultimoglobal) < (intervalo_global * 1000) Then
        If GlobalActivado = 1 Then
            Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("[" & .Name & "] " & message, FontTypeNames.FONTTYPE_INFOBOLD))
            .ultimoglobal = GetTickCount()
        Else
            Call WriteConsoleMsg(UserIndex, "Global> El sistema de habla global esta desactivado, intenta en unos momentos.", FontTypeNames.FONTTYPE_INFO)
        End If
    Else
        Call WriteConsoleMsg(UserIndex, "Debes esperar unos segundos antes de poder enviar otro mensaje global.", FontTypeNames.FONTTYPE_INFO)
    End If

Despues buscamos :

Código:
  Char As Char 'Define la apariencia

Arriba ponemos :

Código:
ultimoGlobal as long

mod declaraciones :

Código:
Public CONST INTERVALO_GLOBAL AS INTEGER = 7

y en el sub ConnectUser

Código:
Userlist(userindex).ultimoglobal = GetTickCount()

Testeado y funcional , digamos es una copilacion de varios sistemas global en 1 bueno espero que le guste , saludoss.
avatar
Zankur
Nivel 6
Nivel 6

¿BANEADO? : No.
Premios : Ninguno.
Cantidad de envíos : 306
Localización : españa
Fecha de inscripción : 17/12/2012

Ver perfil de usuario

Volver arriba Ir abajo

Re: Sistema Habla global 13.0 (NUEVO)

Mensaje por Sativa el 18/2/2014, 7:54 pm

Es identico a este, le agregaste el anti flod

http://www.gs-zone.org/sistema_de_habla_global_tl4Y.html

Buen aporte.
avatar
Sativa
Retirado
Retirado

¿BANEADO? : No.
Premios : Ninguno.
Cantidad de envíos : 2871
Fecha de inscripción : 26/05/2010

Ver perfil de usuario

Volver arriba Ir abajo

Re: Sistema Habla global 13.0 (NUEVO)

Mensaje por Lekasak el 18/2/2014, 8:32 pm

Lo que tiene que ver con el procedimiento del código binario no lo leí detenidamente porque me embola. Pero vi las variables y me dio cosa tanto derroche de ram.
Habría que cambiar por ejemplo:
UltimoGlobal as Integer
Public Const INTERVALO_GLOBAL AS Static = 7 'o sino Byte

Y usar el globalactivado como boolean.


Igual muy bueno. Seguí así!
avatar
Lekasak
Nivel 32
Nivel 32

¿BANEADO? : No.
Premios :
[1º Puesto] ¿Cuanto sabés del foro?.


Miembro honorario
Cantidad de envíos : 5639
Edad : 20
Localización : villa maipu
Fecha de inscripción : 02/02/2011

Ver perfil de usuario

Volver arriba Ir abajo

Re: Sistema Habla global 13.0 (NUEVO)

Mensaje por Zankur el 18/2/2014, 8:46 pm

Si es el mismo solamente de anti flod pero lo puse todo junto asi tiene ya todo completito..
avatar
Zankur
Nivel 6
Nivel 6

¿BANEADO? : No.
Premios : Ninguno.
Cantidad de envíos : 306
Localización : españa
Fecha de inscripción : 17/12/2012

Ver perfil de usuario

Volver arriba Ir abajo

Re: Sistema Habla global 13.0 (NUEVO)

Mensaje por Nethird el 18/2/2014, 10:22 pm

Gracias por el aporte!! Coincido con Lekasak, pero muchisimas gracias Razz



Spoiler:

Spoiler:
[/color]
Escuchalo:
Spoiler:



¡Escuchá la radio acá!
Spoiler:




[/i]
avatar
Nethird
Administrador
Administrador

¿BANEADO? : No.
Premios : Ninguno.
Cantidad de envíos : 9850
Edad : 21
Localización : Entre 4 paredes
Fecha de inscripción : 25/12/2009

Ver perfil de usuario http://www.ao-sender.com.ar

Volver arriba Ir abajo

Re: Sistema Habla global 13.0 (NUEVO)

Mensaje por zeoban69 el 10/12/2016, 9:30 pm

Probe unos cuantos y no me fueron, Pero este si Bro Smile

Gracias Por El aporte!

Un Saludo!

zeoban69
Nivel 4
Nivel 4

¿BANEADO? : No.
Premios : Ninguno.
Cantidad de envíos : 170
Localización : ruby
Fecha de inscripción : 08/11/2012

Ver perfil de usuario

Volver arriba Ir abajo

Re: Sistema Habla global 13.0 (NUEVO)

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.