GS-Zone

Sistema de Premios Ir al Indice

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

3

Nota » 21 Jun 2011 16:32

El codigo consiste dar un premio a el usuario elejido en el PanelGm.

SERVIDOR

buscar:

  1.    LoginExistingChar       'OLOGIN
  2.  

Arriba ponen:



Buscan:

  1.        Case ClientPacketID.LoginExistingChar       'OLOGIN
  2.             Call HandleLoginExistingChar(UserIndex)

Arriba ponen

  1.        Case ClientPacketID.frmPremio
  2.             Call HandlePremio(UserIndex)


Busca:

  1. Private Sub HandleLoginExistingChar(ByVal UserIndex As Integer)


Arriba ponen:

  1. Private Sub HandlePremio(ByVal userindex As Integer)
  2.  
  3. 'Declaracion
  4. Dim buffer As New clsByteQueue
  5. Dim UserName As String
  6. Dim tUser As Integer
  7. Dim Premio As Obj
  8. 'Declaracion
  9.  
  10. If UserList(userindex).incomingData.length < 3 Then
  11. Err.raise UserList(userindex).incomingData.NotEnoughDataErrCode
  12. Exit Sub
  13. End If
  14.    
  15. On Error GoTo Errhandler
  16. With UserList(userindex)
  17.  
  18. Call buffer.CopyBuffer(.incomingData)
  19.        
  20. Call buffer.ReadByte
  21.            
  22. UserName = buffer.ReadASCIIString()
  23.        
  24. tUser = NameIndex(UserName)
  25.  
  26. 'PRIVILEJIOS
  27. If .flags.Privilegios And PlayerType.User Then  'ojo, solo para gms
  28. Call WriteConsoleMsg(userindex, "Apa intentando cosas raras nono.", FontTypeNames.FONTTYPE_INFOBOLD)
  29. Exit Sub   'evitamos que siga la rutina
  30. End If
  31. 'PRIVILEJIOS
  32.  
  33. 'Que le daremos?
  34. Premio.amount = 1 ' Cantidad de Objetos
  35. Premio.ObjIndex = 402 'Numero de Objetos
  36. 'Que le daremos?
  37.  
  38. 'Metemos la copa en el inventario del otro
  39. Call MeterItemEnInventario(tUser, Premio
  40. 'Metemos la copa en el inventario del otro
  41.        
  42. 'Texto de la Consola
  43. Call SendData(SendTarget.ToAll, 0, PrepareMessageConsoleMsg("El Game Master " & .name & " le ha entregado una Espada Mata Dragones a " &
  44.  
  45. UserList(tUser).name & " por haber defendido su honor en el evento.", FontTypeNames.FONTTYPE_CONSEJO))
  46. Call WriteConsoleMsg(tUser, "El Game Master " & .name & " te ha entregado un premio por haber defendido tu honor.",
  47.  
  48. FontTypeNames.FONTTYPE_CENTINELA)
  49.  'Texto de la Consola
  50.  
  51. Call .incomingData.CopyBuffer(buffer)
  52. End With
  53.    
  54. Errhandler:
  55. error = Err.Number
  56. On Error GoTo 0
  57.    
  58. Set buffer = Nothing
  59.    
  60. If error <> 0 Then _
  61. Err.raise error
  62.  
  63. End Sub


CLIENTE:

Buscamos:

  1.    LoginExistingChar       'OLOGIN


Arriba Ponemos:



Buscamos:

  1. Public Sub WriteLoginExistingChar()
  2.  

Arriba Ponemos:

  1. Public Sub WritePremio(ByVal UserName As String)
  2.     With outgoingData
  3.         Call .WriteByte(ClientPacketID.Premio)
  4.        
  5.         Call .WriteASCIIString(UserName)
  6.     End With
  7. End Sub


Ahora en el frmPanelGM creamos un gboton le hacemos doble click y ponemos:

  1.    Dim Nick As String
  2.  
  3.     Nick = cboListaUsus.Text
  4.    
  5.     If LenB(Nick) <> 0 Then _
  6.         Call WritePremio(Nick)


Y así pueden agregar mas premios es re facil espero que sirva :) .

Imagen
(L)AO(L)
7
Newbie [5]
Registrado: Años de membresía
Mensajes: 150
Aportes: 5

Nota » 21 Jun 2011 19:44

Esta bueno, yo no lo utilizaré, pero a muchos les va a funcionar...

Esperemos que vayas progresando y hagas códigos mas desarrollados.

Saludos ^^

¿Tu área de especialidad es Graficación o Mapeación? Te presento el proyecto serio que esperabas para trabajar...

~ Para que aprendas ~
821
Dragon Ancestral [2]
Registrado: Años de membresía
Mensajes: 2707
Aportes: 98

Nota » 21 Jun 2011 21:04

Luuq escribió:Esta bueno, yo no lo utilizaré, pero a muchos les va a funcionar...

Esperemos que vayas progresando y hagas códigos mas desarrollados.

Saludos ^^


Esa es la idea ahora voy a armar un plus .

Imagen
(L)AO(L)
7
Newbie [5]
Registrado: Años de membresía
Mensajes: 150
Aportes: 5


Volver a AO 0.12.x

¿Quién está conectado?

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