GS-Zone

Sistema de Nobleza Ir al Indice

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

5

Nota » 08 Nov 2011 14:03

SERVIDOR:

Busca

  1.  ElseIf EsDios(name) Then
  2.         UserDarPrivilegioLevel = PlayerType.Dios


abajo pone

  1. ElseIf noble(name) Then
  2.         UserDarPrivilegioLevel = PlayerType.noble


Busca



abajo pone



busca

  1. Function EsDios(ByVal name As String) As Boolean


arriba pone

  1. Public Function noble(ByVal UserIndex As Integer) As Boolean
  2. noble = UserList(UserIndex).flags.noble = 1
  3. End Function


busca

  1. UserList(UserIndex).flags.Muerto = CByte(UserFile.GetValue("FLAGS", "Muerto"))


abajo pone

  1. UserList(UserIndex).flags.noble = CByte(UserFile.GetValue("FLAGS", "Noble"))
  2.  


busca en el sub loaduserinit

  1. If UserList(UserIndex).flags.Muerto = 0 Then
  2.     UserList(UserIndex).Char = UserList(UserIndex).OrigChar
  3. Else
  4.     UserList(UserIndex).Char.body = iCuerpoMuerto
  5.     UserList(UserIndex).Char.Head = iCabezaMuerto
  6.     UserList(UserIndex).Char.WeaponAnim = NingunArma
  7.     UserList(UserIndex).Char.ShieldAnim = NingunEscudo
  8.     UserList(UserIndex).Char.CascoAnim = NingunCasco
  9. End If


abajo pone

  1. If UserList(UserIndex).flags.noble = 0 Or 1 Then
  2. UserList(UserIndex).flags.noble = UserFile.GetValue("FLAGS", "Noble")
  3. End If


busca en el Sub saveUser

  1. Call WriteVar(UserFile, "FLAGS", "Muerto", CStr(UserList(UserIndex).flags.Muerto))
  2.  


abajo pone

  1. Call WriteVar(UserFile, "FLAGS", "Noble", CStr(UserList(UserIndex).flags.noble))
  2.  


busca

  1. Else
  2.                         Stat = Stat & " <CIUDADANO>"
  3.                         ft = FontTypeNames.FONTTYPE_CITIZEN
  4.                     End If
  5.                 End If


abajo pone

  1. If UserList(UserIndex).flags.noble = 1 Then
  2.                           ft = FontTypeNames.FONTTYPE_GM
  3.                         Stat = Stat & " <Noble>"
  4.                          End If
  5.                          


busca en el Sub resetuserflags



abajo pone



busca

  1. Ping                    '/PING


abajo pone

  1. noble                 '/NOBLE


busca

  1.    
  2.         Case ClientPacketID.Ping                    '/PING
  3.             Call HandlePing(UserIndex)
  4.            


abajo pone

  1. Case ClientPacketID.noble
  2.             Call HandleEsNoble(UserIndex)


busca

  1. ''
  2. ' Handle the "Ping" message
  3. '
  4. ' @param userIndex The index of the user sending the message
  5.  
  6. Public Sub HandlePing(ByVal UserIndex As Integer)
  7. '***************************************************
  8. 'Author: Lucas Tavolaro Ortiz (Tavo)
  9. 'Last Modification: 12/24/06
  10. 'Show guilds messages
  11. '***************************************************
  12.     With UserList(UserIndex)
  13.         'Remove Packet ID
  14.         Call .incomingData.ReadByte
  15.        
  16.         Call WritePong(UserIndex)
  17.     End With
  18. End Sub



abajo pone


  1. Public Sub HandleEsNoble(ByVal UserIndex As Integer)
  2. With UserList(UserIndex) 'By Frann
  3. 'Removemos PacketId asadsa
  4. Call .incomingData.ReadInteger
  5.  
  6. If UserList(UserIndex).flags.Muerto = 1 Then
  7. Call WriteConsoleMsg(UserIndex, "Estás muerto", FontTypeNames.FONTTYPE_INFO)
  8. End If
  9.  
  10. If UserList(UserIndex).flags.noble = 1 Then
  11. Call WriteConsoleMsg(UserIndex, "Ya eres un noble", FontTypeNames.FONTTYPE_INFO)
  12. End If
  13.  
  14. If UserList(UserIndex).Stats.ELV > 50 Then
  15. Call WriteConsoleMsg(UserIndex, "Necesitas ser nivel 50 o superior", FontTypeNames.FONTTYPE_INFO)
  16. End If
  17.  
  18. Dim Gemota As Obj
  19. Gemota.ObjIndex = 9
  20. Gemota.amount = 1
  21. If Not TieneObjetos(9, 1, UserIndex) Then
  22. Call WriteConsoleMsg(UserIndex, "Necesitas X para ser noble", FontTypeNames.FONTTYPE_INFO)
  23. End If
  24.  
  25. Dim Gemi As Obj
  26. Gemi.ObjIndex = 10
  27. Gemi.amount = 1
  28. If Not TieneObjetos(10, 1, UserIndex) Then
  29. Call WriteConsoleMsg(UserIndex, "Necesitas X para ser noble", FontTypeNames.FONTTYPE_INFO)
  30. End If
  31.  
  32. Dim gem As Obj
  33. gem.ObjIndex = 11
  34. gem.amount = 1
  35. If Not TieneObjetos(11, 1, UserIndex) Then
  36. Call WriteConsoleMsg(UserIndex, "Necesitas X para ser Noble", FontTypeNames.FONTTYPE_INFO)
  37. End If
  38.  
  39. Dim geem As Obj
  40. geem.ObjIndex = 519
  41. geem.amount = 1
  42. If Not TieneObjetos(519, 1, UserIndex) Then
  43. Call WriteConsoleMsg(UserIndex, "Necesitas X para ser Noble", FontTypeNames.FONTTYPE_INFO)
  44. End If
  45.  
  46. If TieneObjetos(9, 1, UserIndex) Then
  47. If TieneObjetos(10, 1, UserIndex) Then
  48. If TieneObjetos(11, 1, UserIndex) Then
  49. If TieneObjetos(519, 1, UserIndex) Then
  50.  If UserList(UserIndex).flags.noble = 0 Then
  51.     UserList(UserIndex).flags.noble = 1
  52. Call WriteVar(CharPath & UserList(UserIndex).name & ".chr", "FLAGS", "Noble", UserList(UserIndex).flags.noble)
  53. Call WriteConsoleMsg(UserIndex, "Ahora eres un noble, ¡Felicidades!", FontTypeNames.FONTTYPE_TALK)
  54. Call QuitarObjetos(9, 1, UserIndex)
  55. Call QuitarObjetos(10, 1, UserIndex)
  56. Call QuitarObjetos(11, 1, UserIndex)
  57. Call QuitarObjetos(519, 1, UserIndex)
  58. End If
  59. End If
  60. End If
  61. End If
  62. End If
  63. End With
  64. End Sub



CLIENTE:

Busca

  1. Ping                    '/PING


abajo pone

  1. noble                   '/NOBLE


busca

  1.  
  2. ''
  3. ' Writes the "Ping" message to the outgoing data buffer.
  4. '
  5. ' @remarks  The data is not actually sent until the buffer is properly flushed.
  6.  
  7. Public Sub WritePing()
  8. '***************************************************
  9. 'Author: Juan Martín Sotuyo Dodero (Maraxus)
  10. 'Last Modification: 26/01/2007
  11. 'Writes the "Ping" message to the outgoing data buffer
  12. '***************************************************
  13.     'Prevent the timer from being cut
  14.     If pingTime <> 0 Then Exit Sub
  15.    
  16.     Call outgoingData.WriteByte(ClientPacketID.Ping)
  17.    
  18.     ' Avoid computing errors due to frame rate
  19.     Call FlushBuffer
  20.     DoEvents
  21.    
  22.     pingTime = GetTickCount
  23. End Sub


abajo pone

  1. Public Sub WriteEsNoble()
  2. Call outgoingData.WriteInteger(ClientPacketID.noble)
  3. End Sub


busca

  1.  
  2.             Case "/PING"
  3.                 Call WritePing


abajo pone

  1.    Case "/NOBLE"
  2.                 Call WriteEsNoble
  3.            


Se tienen que crear un nuevo pj para loguear.

lo tenia echo para un user haci que lo libero
Faltaba 1 cosa pero no me acuerdo que, si lo implementan avisenme si surge algun error
Última edición por •RiPER el 08 Nov 2011 14:35, editado 1 vez en total

Imagen
•Yogui•
50
Newbie [4]
Registrado: Agosto 2011
Ubicación: Por AHI
Mensajes: 114

Nota » 08 Nov 2011 14:15

¿Y qué te ganas siendo noble?

Porque tenes que dar como 7 objetos ¿y solo para ser noble y no recibir nada?

:S

Imagen

Imagen

TE AMO SKYFUN SOS MI FANNNNNNNNNNNNNNNNNNNNN
HAO Staff
409
Dragon Ancestral [2]
Registrado: Años de membresía
Ubicación: Buenos Aires
Mensajes: 2745
Aportes: 28
Premios: 1
Embajador (1)

Nota » 08 Nov 2011 14:24

SimP escribió:¿Y qué te ganas siendo noble?

Porque tenes que dar como 7 objetos ¿y solo para ser noble y no recibir nada?

:S


Es a eleccion de cada uno el poner las cosas, el te deja el sistema de nobleza, ahora que ganas depende de vos ^.^
Aguante River Plate ! ! !
909
Moderador
Registrado: Años de membresíaAños de membresíaAños de membresía
Ubicación: Villa adelina, Vicente Lopez.
Mensajes: 14428
Aportes: 305
Premios: 10
Señor Moderador (3) Señor Reglamento (1) Aportes (2) Embajador (3) Detector de Bugs (1)

Nota » 08 Nov 2011 14:30

Yo eso lo hice para un chabon, se puede modificar todo es como una base modificas lo que queres, blabalbla

Edit: Tambien yo hice que hay unas quests especiales para los nobles y otras para cualquiera

Imagen
•Yogui•
50
Newbie [4]
Registrado: Agosto 2011
Ubicación: Por AHI
Mensajes: 114

Nota » 08 Nov 2011 14:56

te faltó el playertype noble, y en el resetflags o info no pongas .noble = 0

saludos y gracias ^^

LyRan escribió:Buenos Dias amigos y programadores de Gs Zone, Me gustaria pedirle la amabilidad de una ayuda con un cliente editado para mi Ao casero, Osea me explico, yo juego Ao con varios amigos y ellos todos usan cheat y no me gusta eso me gustaria que alguien me ayudara a crear un cliente editado con auto poteo de ambas potas a la ves ya sea que se alla gastado Mana lanzando algun hechis y comienze a potear solo hasta estar completamente el Mana, igual para la salud y poteo rapido para ambos.
mAnco programEr
806
Dragon Ancestral [1]
Registrado: Años de membresíaAños de membresía
Ubicación: Bolivia
Mensajes: 2305
Aportes: 109


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