GS-Zone

Comando /CIRUJIA (Reparado) Ir al Indice

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

3

Nota » 31 Jul 2010 04:27

Bueno, antes que todo les quiero avisar que estoy conciente de que el Codigo este se encuentra ya en el foro. El problema es que no es funcional debido a que estaba alojado en un lugar donde no debia ir y ademas que se le asignaban dos cabezas diferentes y si salias, al logear nuevamente tenias otra cabeza (Ni la de la cirujia, tampoco la que ya tenian).

El codigo lo dejare tanto para 0.11.5 como para 0.11.2

Arrancamos con 0.11.5

Todo en el servidor:

Buscamos:



Y debajo colocamos:

  1. Case "/CIRUJIA"
  2.            
  3.                 If UserList(UserIndex).flags.Muerto = 1 Then
  4.                     Call SendData(SendTarget.ToIndex, UserIndex, 0, "||¡¡Estas muerto!!" & FONTTYPE_INFO)
  5.                 ElseIf UserList(UserIndex).flags.TargetNPC = 0 Then
  6.                     Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Primero tenes que seleccionar un personaje, hace click izquierdo sobre el." & FONTTYPE_INFO)
  7.                 ElseIf Distancia(Npclist(UserList(UserIndex).flags.TargetNPC).Pos, UserList(UserIndex).Pos) > 10 Then
  8.                     Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Estas demasiado lejos." & FONTTYPE_INFO)
  9.                 ElseIf Npclist(UserList(UserIndex).flags.TargetNPC).NPCtype <> eNPCType.Cirujano Then
  10.                     Exit Sub
  11.                 Else
  12.                 Call SendData(SendTarget.ToIndex, UserIndex, 0, "||" & vbWhite & "°" & "Espero que te guste tu nueva cara!" & "°" & str(Npclist(UserList(UserIndex).flags.TargetNPC).Char.CharIndex))
  13.                 End If
  14.  
  15.     Select Case UserList(UserIndex).Raza
  16.         Case "Humano"
  17.  
  18.         Select Case UserList(UserIndex).Genero
  19.  
  20.            
  21.             Case "Hombre"
  22.                 UserList(UserIndex).Char.Head = RandomNumber(1, 30)
  23.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  24.                
  25.  
  26.  
  27.             Case "Mujer"
  28.                 UserList(UserIndex).Char.Head = RandomNumber(1, 7) + 69
  29.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head              
  30.         End Select
  31.  
  32.  
  33.  
  34.         Case "Elfo"
  35.        
  36.         Select Case UserList(UserIndex).Genero
  37.             Case "Hombre"
  38.                 UserList(UserIndex).Char.Head = RandomNumber(1, 13) + 100
  39.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  40.                  
  41.             Case "Mujer"
  42.                 UserList(UserIndex).Char.Head = RandomNumber(1, 7) + 169
  43.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  44.                
  45.         End Select
  46.        
  47.  
  48.  
  49.         Case "Elfo oscuro"
  50.        
  51.         Select Case UserList(UserIndex).Genero
  52.             Case "Hombre"
  53.                 UserList(UserIndex).Char.Head = RandomNumber(1, 8) + 201
  54.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  55.  
  56.  
  57.  
  58.             Case "Mujer"
  59.                 UserList(UserIndex).Char.Head = RandomNumber(1, 11) + 269
  60.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  61.          
  62.         End Select
  63.  
  64.        
  65.        
  66.         Case "Enano"
  67.        
  68.         Select Case UserList(UserIndex).Genero
  69.        
  70.             Case "Hombre"
  71.        
  72.                 UserList(UserIndex).Char.Head = RandomNumber(1, 5) + 300
  73.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  74.                
  75.  
  76.             Case "Mujer"
  77.                 UserList(UserIndex).Char.Head = RandomNumber(1, 3) + 369
  78.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  79.                
  80.         End Select
  81.  
  82.        
  83.         Case "Gnomo"
  84.        
  85.         Select Case UserList(UserIndex).Genero
  86.        
  87.             Case "Hombre"
  88.                 UserList(UserIndex).Char.Head = RandomNumber(1, 6) + 400
  89.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  90.                
  91.  
  92.  
  93.             Case "Mujer"
  94.                 UserList(UserIndex).Char.Head = RandomNumber(1, 5) + 469
  95.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  96.                
  97.         End Select
  98.     End Select
  99.  
  100. Call WriteVar(CharPath & UCase(UserList(UserIndex).name) & ".chr", "INIT", "Head", str(UserList(UserIndex).OrigChar.Head))
  101. Call ChangeUserChar(SendTarget.ToMap, 0, UserList(UserIndex).Pos.Map, UserIndex, UserList(UserIndex).Char.Body, UserList(UserIndex).Char.Head, UserList(UserIndex).Char.Heading, UserList(UserIndex).Char.WeaponAnim, UserList(UserIndex).Char.ShieldAnim, UserList(UserIndex).Char.CascoAnim)
  102.          
  103.  
  104. Exit Sub


Buscamos:



Y agregamos



(*) La X sera igual al ultimo que este dentro del enum +1. Ejemplo: El ultimo es Gobernador = 11 entonces X = 12 (Cirujano = 12)

Listo Terminado 0.11.5

Ahora 0.11.2

Buscamos:



Y le agregamos abajo:

  1. Case "/CIRUJIA"
  2.            
  3.                 If UserList(UserIndex).flags.Muerto = 1 Then
  4.                     Call SendData(ToIndex, UserIndex, 0, "||¡¡Estas muerto!!" & FONTTYPE_INFO)
  5.                 ElseIf UserList(UserIndex).flags.TargetNPC = 0 Then
  6.                     Call SendData(ToIndex, UserIndex, 0, "||Primero tenes que seleccionar un personaje, hace click izquierdo sobre el." & FONTTYPE_INFO)
  7.                 ElseIf Distancia(Npclist(UserList(UserIndex).flags.TargetNPC).Pos, UserList(UserIndex).Pos) > 10 Then
  8.                     Call SendData(ToIndex, UserIndex, 0, "||Estas demasiado lejos." & FONTTYPE_INFO)
  9.                 ElseIf Npclist(UserList(UserIndex).flags.TargetNPC).NPCtype <> eNPCType.Cirujano Then
  10.                     Exit Sub
  11.                 Else
  12.                 Call SendData(ToIndex, UserIndex, 0, "||" & vbWhite & "°" & "Espero que te guste tu nueva cara!" & "°" & str(Npclist(UserList(UserIndex).flags.TargetNPC).Char.charindex))
  13.                 End If
  14.  
  15.     Select Case UserList(UserIndex).Raza
  16.         Case "Humano"
  17.  
  18.         Select Case UserList(UserIndex).Genero
  19.  
  20.            
  21.             Case "Hombre"
  22.                 UserList(UserIndex).Char.Head = RandomNumber(1, 30)
  23.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  24.                
  25.  
  26.  
  27.             Case "Mujer"
  28.                 UserList(UserIndex).Char.Head = RandomNumber(1, 7) + 69
  29.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  30.         End Select
  31.  
  32.  
  33.  
  34.         Case "Elfo"
  35.        
  36.         Select Case UserList(UserIndex).Genero
  37.             Case "Hombre"
  38.                 UserList(UserIndex).Char.Head = RandomNumber(1, 13) + 100
  39.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  40.                  
  41.             Case "Mujer"
  42.                 UserList(UserIndex).Char.Head = RandomNumber(1, 7) + 169
  43.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  44.                
  45.         End Select
  46.        
  47.  
  48.  
  49.         Case "Elfo oscuro"
  50.        
  51.         Select Case UserList(UserIndex).Genero
  52.             Case "Hombre"
  53.                 UserList(UserIndex).Char.Head = RandomNumber(1, 8) + 201
  54.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  55.  
  56.  
  57.  
  58.             Case "Mujer"
  59.                 UserList(UserIndex).Char.Head = RandomNumber(1, 11) + 269
  60.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  61.          
  62.         End Select
  63.  
  64.        
  65.        
  66.         Case "Enano"
  67.        
  68.         Select Case UserList(UserIndex).Genero
  69.        
  70.             Case "Hombre"
  71.        
  72.                 UserList(UserIndex).Char.Head = RandomNumber(1, 5) + 300
  73.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  74.                
  75.  
  76.             Case "Mujer"
  77.                 UserList(UserIndex).Char.Head = RandomNumber(1, 3) + 369
  78.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  79.                
  80.         End Select
  81.  
  82.        
  83.         Case "Gnomo"
  84.        
  85.         Select Case UserList(UserIndex).Genero
  86.        
  87.             Case "Hombre"
  88.                 UserList(UserIndex).Char.Head = RandomNumber(1, 6) + 400
  89.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  90.                
  91.  
  92.  
  93.             Case "Mujer"
  94.                 UserList(UserIndex).Char.Head = RandomNumber(1, 5) + 469
  95.                 UserList(UserIndex).OrigChar.Head = UserList(UserIndex).Char.Head
  96.                
  97.         End Select
  98.     End Select
  99.  
  100. Call WriteVar(CharPath & UCase(UserList(UserIndex).Name) & ".chr", "INIT", "Head", str(UserList(UserIndex).OrigChar.Head))
  101. Call ChangeUserChar(ToMap, 0, UserList(UserIndex).Pos.Map, UserIndex, UserList(UserIndex).Char.Body, UserList(UserIndex).Char.Head, UserList(UserIndex).Char.Heading, UserList(UserIndex).Char.WeaponAnim, UserList(UserIndex).Char.ShieldAnim, UserList(UserIndex).Char.CascoAnim)
  102.          
  103.  
  104. Exit Sub


Buscamos:



Y Debajo agregamos:



(*) X es igual al ultimo Tipo de NPC mas 1. En este caso seria 12

Terminamos 0.11.2

Ahora Vamos a crear el NPC:

Este paso es el mismo para ambas verciones.

NPC:

[NPCX]
Name=Cara
NpcType=12
Desc=Oye, tu cara es fea, hacete una cirujia. Escribe /CIRUJIA y yo escojere la mejor para ti
Head=11
Body=49
Heading=3
Attackable=0
Comercia=0
Hostile=0


Reemplazen la X por el ultimo NPC que tienen en el archivo NPC.dat y recuerden modificar el maximo de NPC...

Bueno eso es to, eso es to, eso es todo amigos!

Saludos!

Imagen
Imagen
Imagen
Emociona hasta las lágrimas la lucha de este guerrero;
40 millones de huevos en un solo corazón.
Deja la vida por River. River para él es la vida.
Gracias Matias Jesus por tanto.
RATA BLANCA RIVER PLATE
290 (+2)
Moderador AO
Señor Moderador (3) Señor Reglamento (1) Aportes (2) Embajador (3) Detector de Bugs (1)
Premios: 10
Registrado: Años de membresíaAños de membresíaAños de membresía
Ubicación: Villa adelina, Vicente Lopez.
Mensajes: 13474
Aportes: 298

Nota » 31 Jul 2010 04:41

LLega a andar voy a tu casa y te ago un monumento.

Saludos.

EDIT: Anda joshaaaa sos un groso franeg gracias. ^^

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 » 31 Jul 2010 12:48

Lindo Aporte Franeg :D, gracias por arreglarlo :D...

Saludos...

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


Volver a AO 0.11.5

¿Quién está conectado?

Usuarios navegando por este Foro: Lekasak y 0 invitados