GS-Zone

Sistema de Retos 1vs1 Ir al Indice

Moderadores: Moderadores de Argentum, Especialistas de Argentum, Especialistas de Programación

16

Nota » 07 Sep 2010 07:50

Este es como el qe aporté en 12.x, pero más organizadito y funcional(testeado) =D

busca

  1. Call WriteMultiMessage(VictimIndex, eMessages.UserKill, AttackerIndex)


abajo pone

  1.        If UserList(AttackerIndex).flags.EnReto = 1 Then
  2.         UserList(AttackerIndex).Stats.GLD = UserList(AttackerIndex).Stats.GLD + retos.oro
  3.         Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("El usuario " & UserList(AttackerIndex).name & " ha ganado el reto.", FontTypeNames.FONTTYPE_INFO))
  4.          Call TirarTodo(VictimIndex)
  5.          Call WarpUserChar(VictimIndex, 1, 50, 50, True)
  6.          Call WarpUserChar(AttackerIndex, 1, 50, 50, True)
  7.          retos.hayReto = 0
  8.          retos.oro = 0
  9.          retos.retadorA= ""
  10.          retos.retadorB= ""
  11.         frmmain.timerretos.enabled = false
  12.         End If


busca

  1. Private Sub HandleMeditate(byval userindex as integer)


arribap one

  1. Private Sub HandleNicoRetos(ByVal userindex As Integer)
  2. Rem Sistema de Retos 1vs1 (/RETAR)
  3. Rem 18/08/2010
  4. Rem para Nico (A)
  5.  
  6.     If UserList(userindex).incomingData.length < 3 Then
  7.         Err.Raise UserList(userindex).incomingData.NotEnoughDataErrCode
  8.         Exit Sub
  9.     End If
  10.    
  11. On Error GoTo Errhandler
  12.    
  13.         'This packet contains strings, make a copy of the data to prevent losses if it's not complete yet...
  14.         Dim buffer As New clsByteQueue
  15.         Call buffer.CopyBuffer(.incomingData)
  16.        
  17.         'Remove packet ID
  18.         Call buffer.ReadByte
  19.        
  20.         Dim userneim As String
  21.         Dim auser As Integer
  22.         Dim oro As Long
  23.        
  24.         userneim = buffer.ReadASCIIString
  25.         auser = NameIndex(userneim)
  26.         oro = buffer.ReadLong
  27.        
  28.         If auser <= 0 Then      
  29.       call writeconsolemsg(userindex, "Usuario Offline", fonttypenames.fonttype_info)
  30.         elseIf UserList(userindex).flags.Muerto Then
  31.         Call WriteConsoleMsg(userindex, "Estás muerto", FontTypeNames.FONTTYPE_INFO)
  32.        elseIf UserList(auser).flags.Muerto Then
  33.         Call WriteConsoleMsg(userindex, "Está muerto", FontTypeNames.FONTTYPE_INFO)
  34.      elseIf UserList(userindex).Counters.Pena > 0 Then
  35.       Call WriteConsoleMsg(userindex, "Estás preso", FontTypeNames.FONTTYPE_INFO)
  36.       elseIf UserList(auser).Counters.Pena > 0 Then
  37.       Call WriteConsoleMsg(userindex, "Está preso", FontTypeNames.FONTTYPE_INFO)
  38.     elseIf MapInfo(UserList(userindex).Pos.Map).Pk = True Then
  39.       Call WriteConsoleMsg(userindex, "No puedes solicitarle a alguien duelear si no estas en una zona segura!", FontTypeNames.FONTTYPE_INFO)
  40.    elseIf MapInfo(UserList(auser).Pos.Map).Pk = True Then
  41.       Call WriteConsoleMsg(userindex, "No puedes solicitarle a alguien duelear si él no esta en una zona segura!", FontTypeNames.FONTTYPE_INFO)
  42.      elseIf oro > UserList(userindex).Stats.GLD Then
  43.       Call WriteConsoleMsg(userindex, "No puedes retar por mas de el oro qe tienes!", FontTypeNames.FONTTYPE_INFOBOLD)
  44.      elseIf oro > UserList(auser).Stats.GLD Then
  45.       Call WriteConsoleMsg(userindex, "El otro usuario no tiene el oro suficiente!", FontTypeNames.FONTTYPE_INFOBOLD)
  46.      elseIf Retos.hayReto = 1 Then
  47.       Call WriteConsoleMsg(userindex, "Ya hay un reto en marcha, espere a que finalize!", FontTypeNames.FONTTYPE_INFO)
  48.     elseIf UserList(userindex).Stats.ELV < 35 Then
  49.       Call WriteConsoleMsg(userindex, "Minimo nivel para duelear : 35", FontTypeNames.FONTTYPE_INFO)
  50.     elseIf UserList(auser).Stats.ELV < 35 Then
  51.       Call WriteConsoleMsg(userindex, "No puedes retar a alguien menor de nivel 35!", FontTypeNames.FONTTYPE_INFO)
  52.       elseif oro < 200000 Then
  53.      Call WriteConsoleMsg(userindex, "No puedes retar por menos de 200000 monedas!", FontTypeNames.FONTTYPE_INFOBOLD)
  54.      elseIf UserList(userindex).flags.recibiosolicitud = 1 Then
  55.      Call WriteConsoleMsg(userindex, "No puedes retar a alguien si te solicitaron duelear!", FontTypeNames.FONTTYPE_INFO)
  56.      elseIf UserList(auser).flags.recibiosolicitud = 1 Then
  57.      Call WriteConsoleMsg(userindex, "No puedes retar a alguien si le solicitaron duelear!", FontTypeNames.FONTTYPE_INFO)
  58.      elseIf UserList(userindex).flags.enviosolicitud = 1 Then
  59.      Call WriteConsoleMsg(userindex, "No puedes retar a alguien si ya solicitaste duelear!", FontTypeNames.FONTTYPE_INFO)
  60.      elseIf UserList(auser).flags.enviosolicitud = 1 Then
  61.      Call WriteConsoleMsg(userindex, "No puedes retar a alguien si a ese envio solicitud de duelear a otro usuario!", FontTypeNames.FONTTYPE_INFO)
  62. else
  63.      
  64.     UserList(auser).flags.recibiosolicitud = 1
  65.     retos.oro = oro
  66.     UserList(userindex).flags.enviosolicitud = 1
  67.  
  68.    Retos.RetadorA = userindex
  69.    Retos.RetadorB= auser
  70.    
  71.     Call WriteConsoleMsg(auser, "El usuario " & UserList(userindex).name & " de nivel " & UserList(userindex).Stats.ELV & " y de clase " & UserList(userindex).clase & UserList(userindex).raza & " te ha retado a un duelo de modalidad 1 vs 1 por " & Retos.oro & " monedas de oro y por los items del inventario, si deseas aceptar teclea /ACEPTAR " & UserList(userindex).name & "", FontTypeNames.FONTTYPE_INFO)
  72.    
  73.             Call UserList(userindex).incomingData.CopyBuffer(buffer)
  74.    
  75. Errhandler:
  76.     Dim error As Long
  77.     error = Err.Number
  78. On Error GoTo 0
  79.    
  80.     'Destroy auxiliar buffer
  81.     Set buffer = Nothing
  82.    
  83.     If error <> 0 Then _
  84.         Err.Raise error
  85.  
  86.  
  87. End Sub
  88.  
  89. Private Sub HandleNicoAceptar(ByVal userindex As Integer)
  90. Rem *************************************
  91. Rem Sistema de Retos 1vs1 (/RETAR)
  92. Rem 18/08/2010
  93. Rem para Nico (A)
  94. Rem *************************************
  95.  
  96.     If UserList(userindex).incomingData.length < 3 Then
  97.         Err.Raise UserList(userindex).incomingData.NotEnoughDataErrCode
  98.         Exit Sub
  99.     End If
  100.    
  101. On Error GoTo Errhandler
  102.    
  103.         'This packet contains strings, make a copy of the data to prevent losses if it's not complete yet...
  104.         Dim buffer As New clsByteQueue
  105.         Call buffer.CopyBuffer(.incomingData)
  106.        
  107.         'Remove packet ID
  108.         Call buffer.ReadByte
  109.        
  110.         Dim userneim As String
  111.         Dim auser As Integer
  112.        
  113.         userneim = buffer.ReadASCIIString
  114.         auser = NameIndex(userneim)
  115.        
  116.         If auser <= 0 Then
  117.         call writeconsolemsg(userindex, "Usuario Offline.", fonttypenames.fonttype_infobold)        
  118.         elseIf UserList(auser).flags.enviosolicitud = 0 Then
  119.         Call WriteConsoleMsg(userindex, "Ese usuario no mando solicitud de reto", FontTypeNames.FONTTYPE_INFO)
  120.    elseIf UserList(userindex).flags.recibiosolicitud = 0 Then
  121.          Call WriteConsoleMsg(userindex, "Nadie te ofreció reto", FontTypeNames.FONTTYPE_INFO)
  122. else
  123.          
  124.          retos.hayReto = 1
  125.          
  126.          Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("El usuario " & UserList(userindex).name & " y " & UserList(auser).name & " van a combatir en un reto por " & retos.oro & " monedas de oro.", FontTypeNames.FONTTYPE_INFO))
  127.          
  128.          Dim xplayerwan, yplayerwan, xplayerchu, yplayerchu As Byte
  129.          
  130.          xplayerwan = val(GetVar(App.Path & "server.ini", "INIT", "PosXdelPlayerUno"))
  131.          yplayerwan = val(GetVar(App.Path & "server.ini", "INIT", "PosYdelPlayerUno"))
  132.          xplayerchu = val(GetVar(App.Path & "server.ini", "INIT", "PosXdelPlayerDos"))
  133.          yplayerchu = val(GetVar(App.Path & "server.ini", "INIT", "PosYdelPlayerDos"))
  134.        
  135.          
  136.          Call WarpUserChar(userindex, 275, xplayerwan, yplayerwan, True)
  137.          Call WarpUserChar(auser, 275, xplayerchu, yplayerchu, True)
  138.          
  139.          UserList(userindex).Stats.GLD = UserList(userindex).Stats.GLD - retos.oro
  140.          UserList(auser).Stats.GLD = UserList(auser).Stats.GLD - retos.oro
  141.          
  142.          UserList(userindex).flags.EnReto = 1
  143.          UserList(auser).flags.EnReto = 1
  144.           frmmain.timerRETOS.enabled = true
  145.  
  146.             Call UserList(userindex).incomingData.CopyBuffer(buffer)
  147.    
  148. Errhandler:
  149.     Dim error As Long
  150.     error = Err.Number
  151. On Error GoTo 0
  152.    
  153.     'Destroy auxiliar buffer
  154.     Set buffer = Nothing
  155.    
  156.     If error <> 0 Then _
  157.         Err.Raise error
  158.  
  159. End Sub


crear un timer, con estas propiedades(en el frmmain)

Name = TimerRetos
Interval = 60000
Enabled = False


de código le ponemos

  1. if hayReto = 0 then exit sub
  2. If Retos.Counter < 5 then
  3. retos.counter = retos.counter + 1
  4. else
  5. call warpuserchar(retos.retadorA, 1 , 50 , 50, true)
  6. call warpuserchar(retos.retadorB, 1, 50 , 50, true
  7. call senddata(sendtarget.toall, 0, preparemessageconsolemsg("El duelo entre " & userlist(retador1).name & " Y " & userlist(retador2).name & " ha llegado a los 5 minutos sin ningún ganador!.", fonttypenames.fonttype_talk)
  8. userlist(retos.retadorA).stats.gld = userlist(retos.retadorA).stats.gld + retos.Oro
  9. userlist(retos.retadorB).stats.gld = userlist(retos.retadorB).stats.gld + retos.Oro
  10. timerRETOS.enabled = false
  11. retos.hayreto = 0
  12. retos.retadorA = 0
  13. Retos.RetadoRB = 0
  14. end if




anda al modulo declaraciones y abajo de option explicit pone

  1. Public Type Reto
  2. hayReto As Byte
  3. retadorA as integer
  4. retadorB as integer
  5. oro As Long
  6. counter as byte
  7. End Type
  8.  
  9. Public retos As Reto


busca



Y arriba poner...

  1. if userlist(userindex).flags.enreto = 1 then
  2. call senddata(sendtarget.toall, 0 , preparemessageconsolemsg("El usuario " & userlist(userindex).name & " ha deslogeado en reto", fonttypenames.fonttype_talk)
  3. call warpuserchar(userindex, 1 , 50 , 50)
  4.   frmmain.timerRETOS.enabled = false
  5. end if


buscar

  1.        Case ClientPacketID.Meditate                '/MEDITAR
  2.             Call HandleMeditate(userindex)


abajo pone

  1.        Case ClientPacketID.Retar                '/RETO
  2.             Call HandleNicoRetos(userindex)
  3.  
  4.         Case ClientPacketID.AReto                '/ACEPTAR
  5.             Call HandleNicoAceptar(userindex)


busca

  1.    Meditate                '/MEDITAR


abajo pone

  1.    Retar                '/RETO
  2.     AReto               '/ACEPTAR


busca



abajo pone

  1. EnReto as byte
  2. recibioSolicitud as byte
  3. envioSolicitud as byte


listo el sv

CLIENTE

busca

  1.    Meditate                '/MEDITAR


abajo pone

  1.    Retar                '/RETO
  2.     AReto               '/ACEPTAR


Busca

  1.            Case "/PENAS"
  2.                 If notNullArguments Then
  3.                     Call WritePunishments(ArgumentosRaw)
  4.                 Else
  5.                     'Avisar que falta el parametro
  6.                     Call ShowConsoleMsg("Faltan parámetros. Utilice /penas NICKNAME.")
  7.                 End If


abajo pone

  1.            Case "/RETAR"
  2.                  If notNullArguments And CantidadArgumentos >= 2 Then
  3.                     If ArgumentosAll(1) > 200000000000 Then
  4.                         Call ShowConsoleMsg("Solo se retar por un máximo de 200000000000 monedas de oro.")
  5.                     Else
  6.                         Call WriteNicoRetos(ArgumentosAll(0), ArgumentosAll(1))
  7.                     End If
  8.                  End If
  9.  
  10.             Case "/ACEPTAR"
  11.                 If notNullArguments Then
  12.                     Call WriteNicoAceptar(ArgumentosRaw)
  13.                 Else
  14.                     'Avisar que falta el parametro
  15.                     Call ShowConsoleMsg("Faltan parámetros. Utilice /ACEPTAR NICKNAME.")
  16.                 End If


busca

  1. Public Sub WritePunishments(ByVal UserName As String, byval oro as long)
  2. '***************************************************
  3. 'Author: Juan Martín Sotuyo Dodero (Maraxus)
  4. 'Last Modification: 05/17/06
  5. 'Writes the "Punishments" message to the outgoing data buffer
  6. '***************************************************
  7.     With outgoingData
  8.         Call .WriteByte(ClientPacketID.Punishments)
  9.        
  10.         Call .WriteASCIIString(UserName)
  11.        
  12.     End With
  13. End Sub



arriba pone

  1. Public Sub WriteNicoRetos(ByVal UserNeim As String, byval Oro as Long)
  2. '***************************************************
  3.  
  4. '***************************************************
  5.     With outgoingData
  6.         Call .WriteByte(ClientPacketID.REto)
  7.        
  8.         Call .WriteASCIIString(Userneim)
  9.         call .writelong(oro)
  10.     End With
  11. End Sub
  12.  
  13. Public Sub WriteNicoAceptarByVal UserNeim As String)
  14.  
  15.     With outgoingData
  16.         Call .WriteByte(ClientPacketID.AReto)
  17.        
  18.         Call .WriteASCIIString(UserNeim)
  19.     End With
  20. End Sub


/RETAR NICK ORO
/ACEPTAR NICK


si quieren hacerlo con un form, tienen que poner.. 2 text box (nombres txtNick y txtOro) y un label, commandbutton, o image y le hacen doble click y ponen

  1. call parseusercommand("/RETAR " & txtNick.text & " " & txtOro.text)


nos re vimos

maTih.-
Última edición por maTih.- el 08 Sep 2010 21:15, editado 1 vez en total

mAnco programEr
302
Oraculo [5]
Registrado: Años de membresía
Ubicación: Bolivia
Mensajes: 1994
Aportes: 90

Nota » 07 Sep 2010 14:45

Esa Matih, muchisimas gracias por Aportarlo para esta versión, no hay muchos cambios, pero en definitiba sirve... :D :D :D...

Saludos
Xtreem

Imagen
By Francoxe
^[ Inbooker Ao ]^ Busca Programador con mucha exp.
35
Oraculo [2]
Embajador (1)
Premios: 1
Registrado: Años de membresía
Mensajes: 1355
Aportes: 5

Nota » 07 Sep 2010 15:01

Bien ahí sin utilizar los Exit Sub, pero te olvidaste de cerrar los bloques If xD

"El patriotismo es un egoísmo en masa."

-Grafiti del Mayo Francés
La venganza es un placer
215
Moderador Global
Campeón de Truco (1)
Premios: 1
Registrado: 5 Años de membresía!
Mensajes: 7953
Aportes: 26

Nota » 07 Sep 2010 16:58

ArzenaTh escribió:Bien ahí sin utilizar los Exit Sub, pero te olvidaste de cerrar los bloques If xD


Tenes razón, igual esta bien hecho en sí el código.

Muy buen aporte.

Imagen
:!: :!: :!: :!:
18 (+5)
Oraculo [1]
Registrado: Años de membresía
Mensajes: 1194
Aportes: 13

Nota » 08 Sep 2010 12:58

Mejor que el que postearon el otro Dia :O
BUENISIMO TE FELICITO.
Implementando...
SKA-P <Intentando Programar>
Newbie [3]
Registrado: Años de membresía
Mensajes: 70
Aportes: 1

Nota » 08 Sep 2010 20:38

ArzenaTh escribió:Bien ahí sin utilizar los Exit Sub, pero te olvidaste de cerrar los bloques If xD


siempre se me pasa algo ajajja ahora lo arreglo..

II XTREEM II escribió:Esa Matih, muchisimas gracias por Aportarlo para esta versión, no hay muchos cambios, pero en definitiba sirve... :D :D :D...

Saludos
Xtreem



si, igual este esta mucho mejor hecho, usa un timer para que no duren 16586 horas los duelos, (5 minutos), use un type asi esta mucho mas organizado, si deslogeas en reto te lleva a ulla, aca usas el buffer y no lo lees con el incomigdata(que puede que se rompa todo) en fin esta mejor hecho que el otro y cualculo que sin bugs, usas dos variables retadorA y retadorB para indentificar INDEX de los usuarios en reto , usas La variable enreto, para no usar el odioso mapinfo(map).numusers =P y esto

  1.         Dim xplayerwan, yplayerwan, xplayerchu, yplayerchu As Byte
  2.          
  3.          xplayerwan = val(GetVar(App.Path & "server.ini", "INIT", "PosXdelPlayerUno"))
  4.          yplayerwan = val(GetVar(App.Path & "server.ini", "INIT", "PosYdelPlayerUno"))
  5.          xplayerchu = val(GetVar(App.Path & "server.ini", "INIT", "PosXdelPlayerDos"))
  6.          yplayerchu = val(GetVar(App.Path & "server.ini", "INIT", "PosYdelPlayerDos"))
  7.        
  8.          
  9.          Call WarpUserChar(userindex, 275, xplayerwan, yplayerwan, True)
  10.          Call WarpUserChar(auser, 275, xplayerchu, yplayerchu, True)


como lo hice para un amigo, carga las posiciones desde el server ini , pueden borrar todo eso y dejarlo asi

  1.         Call WarpUserChar(userindex, 275, 55, 77, True)'275 MAPA, 55 X, 77 Y
  2.          Call WarpUserChar(auser, 275, 33,66, True) '275 MAPA, 33 X, 66 Y


Nethird escribió:Mejor que el que postearon el otro Dia :O
BUENISIMO TE FELICITO.
Implementando...



nose si mejor, son cosas distintas =P, esto es un sistema de retos, el otro una sala de duelos, en fin son cosas diferentes =P

nos vemos

off : cuando termine el 2vs2 con form lo aporto o edito aca

maTih.-

mAnco programEr
302
Oraculo [5]
Registrado: Años de membresía
Ubicación: Bolivia
Mensajes: 1994
Aportes: 90

Nota » 08 Sep 2010 21:07

maTih.- escribió:
ArzenaTh escribió:Bien ahí sin utilizar los Exit Sub, pero te olvidaste de cerrar los bloques If xD


siempre se me pasa algo ajajja ahora lo arreglo..

II XTREEM II escribió:Esa Matih, muchisimas gracias por Aportarlo para esta versión, no hay muchos cambios, pero en definitiba sirve... :D :D :D...

Saludos
Xtreem



si, igual este esta mucho mejor hecho, usa un timer para que no duren 16586 horas los duelos, (5 minutos), use un type asi esta mucho mas organizado, si deslogeas en reto te lleva a ulla, aca usas el buffer y no lo lees con el incomigdata(que puede que se rompa todo) en fin esta mejor hecho que el otro y cualculo que sin bugs, usas dos variables retadorA y retadorB para indentificar INDEX de los usuarios en reto , usas La variable enreto, para no usar el odioso mapinfo(map).numusers =P y esto

  1.         Dim xplayerwan, yplayerwan, xplayerchu, yplayerchu As Byte
  2.          
  3.          xplayerwan = val(GetVar(App.Path & "server.ini", "INIT", "PosXdelPlayerUno"))
  4.          yplayerwan = val(GetVar(App.Path & "server.ini", "INIT", "PosYdelPlayerUno"))
  5.          xplayerchu = val(GetVar(App.Path & "server.ini", "INIT", "PosXdelPlayerDos"))
  6.          yplayerchu = val(GetVar(App.Path & "server.ini", "INIT", "PosYdelPlayerDos"))
  7.        
  8.          
  9.          Call WarpUserChar(userindex, 275, xplayerwan, yplayerwan, True)
  10.          Call WarpUserChar(auser, 275, xplayerchu, yplayerchu, True)


como lo hice para un amigo, carga las posiciones desde el server ini , pueden borrar todo eso y dejarlo asi

  1.         Call WarpUserChar(userindex, 275, 55, 77, True)'275 MAPA, 55 X, 77 Y
  2.          Call WarpUserChar(auser, 275, 33,66, True) '275 MAPA, 33 X, 66 Y


Nethird escribió:Mejor que el que postearon el otro Dia :O
BUENISIMO TE FELICITO.
Implementando...



nose si mejor, son cosas distintas =P, esto es un sistema de retos, el otro una sala de duelos, en fin son cosas diferentes =P

nos vemos

off : cuando termine el 2vs2 con form lo aporto o edito aca

maTih.-


eih mati muy buen codigo pero corregi. te falto declarar counter as integer , tambien arregla retador1 y retador2 por A y B pero = da variable no definida nose porq

Imagen
Si la vida te da la espalda robale la billetera.
68
Destructor de Mentes [5]
Registrado: Años de membresíaAños de membresía
Ubicación: Argentina
Mensajes: 725
Aportes: 2

Nota » 08 Sep 2010 21:14

en donde te tira variable no definida

corregido el counter as byte

maTih.-

mAnco programEr
302
Oraculo [5]
Registrado: Años de membresía
Ubicación: Bolivia
Mensajes: 1994
Aportes: 90

Nota » 08 Sep 2010 21:54

maTih.- escribió:en donde te tira variable no definida

corregido el counter as byte

maTih.-


en el timerretos esta linea Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("El duelo entre " & UserList(retador1).name & " Y " & UserList(retador2).name & " ha llegado a los 5 minutos sin ningún ganador!.", FontTypeNames.FONTTYPE_TALK))

Corrregi el 1 y el 2 y le puse A y B y sigue dando variable no definida (?)

Imagen
Si la vida te da la espalda robale la billetera.
68
Destructor de Mentes [5]
Registrado: Años de membresíaAños de membresía
Ubicación: Argentina
Mensajes: 725
Aportes: 2

Nota » 08 Sep 2010 22:06

Muy buen aporte, te destacas bn en todas las versiones xD.

Pds: Es una adaptacion de uno tuyo de 12.x o me equiboco??

Saludos.

No a la S.O.P.A! - Si a la P.O.L.E.N.T.A!

Imagen
Imagen
Staff Zeiked-Games
260
Narnia AO StaffDragon Ancestral [3]
Usuario omnipresente (1) Embajador (2)
Premios: 3
Registrado: Años de membresía
Ubicación: Castelar
Mensajes: 3194
Aportes: 57

Nota » 09 Sep 2010 09:07

Me tira error en el timer (SERVIDOR)

la linea:

If hayReto = 0 Then Exit Sub

en HayReto ya me figate si estaba en el type y si nose que onda :P

Imagen



La carpeta está 100% llena (100 de 100 mensajes guardados)

Imagen
Usuario Baneado
Destructor de Mentes [8]
Registrado: Años de membresía
Mensajes: 861
Aportes: 4

Nota » 09 Sep 2010 11:17

maTih.-
Samke escribió:Muy buen aporte, te destacas bn en todas las versiones xD.

Pds: Es una adaptacion de uno tuyo de 12.x o me equiboco??

Saludos.


este lo hice de 0 para un amigo del msn, igual es parecido al otro pero como ya explique son cosas diferentes.

CrashKEN escribió:Me tira error en el timer (SERVIDOR)

la linea:

If hayReto = 0 Then Exit Sub

en HayReto ya me figate si estaba en el type y si nose que onda :P


un error mio.. la variable HayReto esta dentro de un bloque type entonces tenes que ubicar el type adelante , quedando asi

if retos.hayreto = 0 then exit sub

comodin escribió:
maTih.- escribió:en donde te tira variable no definida

corregido el counter as byte

maTih.-


en el timerretos esta linea Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("El duelo entre " & UserList(retador1).name & " Y " & UserList(retador2).name & " ha llegado a los 5 minutos sin ningún ganador!.", FontTypeNames.FONTTYPE_TALK))

Corrregi el 1 y el 2 y le puse A y B y sigue dando variable no definida (?)


lo mismo que para crashken, esta dentro de un type esa variable entonces va asi..

retos.retadorA

y retos.RetadorB

maTih.-

mAnco programEr
302
Oraculo [5]
Registrado: Años de membresía
Ubicación: Bolivia
Mensajes: 1994
Aportes: 90

Nota » 09 Sep 2010 19:52

mathi en alguna parte del
  1. Private Sub HandleNicoAceptar(ByVal UserIndex As Integer)

hay un exit sub mal ya que tira muchas veces no me acuerdo que texto

Imagen
Si la vida te da la espalda robale la billetera.
68
Destructor de Mentes [5]
Registrado: Años de membresíaAños de membresía
Ubicación: Argentina
Mensajes: 725
Aportes: 2

#NotaEste post ha sido eliminado por Franeg95 en 13 Sep 2010 16:43.
Razón: Respuesta innecesaria, no aporta nada de nada

Nota » 13 Sep 2010 18:52

Buenisimo aporte, se nota que sabes mucho pero mucho de VB, te felicito estas a fondo.

Saludos.
216
Counter Strike TeamDragon Ancestral [1]
Registrado: Años de membresíaAños de membresía
Mensajes: 2524
Aportes: 7

Siguiente

Volver a AO 0.13.x

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados