GS-Zone

Sistema de pasajes con timer Ir al Indice

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

4

Nota » 16 Ene 2012 18:51

Hola gente miren estoy tratando de haer un sistema de barcon con timer. El sistema consiste en que el usuario compra un pasaje hacia, no se nix-bander, el usuario es sumoneado a un barco osea un mapa y para llegar a destino tardarà x tiempo. Bueno yo eh hecho algo asì me basè en el sistema de pasajes de Mithrandir

Bueno acà va el code:

  1. Call SendData(toindex, UserIndex, 0, "||¡¡Estas muerto!! Solo podes usar items cuando estas vivo." & FONTTYPE_INFO)
  2. Exit Sub
  3. End If
  4. 'Se asegura que el target es un npc
  5. If 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.     Exit Sub
  8. End If
  9. 'Si no es pirata no seguimos JUMP!
  10. If Npclist(UserList(UserIndex).flags.TargetNPC).NPCtype <> eNPCType.Pirata Then
  11.     Call SendData(SendTarget.toindex, UserIndex, 0, "||Primero debes hacer click sobre el pirata." & FONTTYPE_INFO)
  12. Exit Sub
  13. End If
  14. 'Distancia ^^
  15. If Distancia(Npclist(UserList(UserIndex).flags.TargetNPC).Pos, UserList(UserIndex).Pos) > 3 Then
  16.     Call SendData(SendTarget.toindex, UserIndex, 0, "||Estás demasiado lejos del pirata." & FONTTYPE_INFO)
  17. Exit Sub
  18. End If
  19. 'No es de aca :$
  20. If Not UserList(UserIndex).Pos.Map = Obj.DesdeMapa Then
  21.     Call SendData(SendTarget.toindex, UserIndex, 0, "||No has logrado viajar, verifica su punto de partida!" & FONTTYPE_INFO)
  22. Exit Sub
  23. End If
  24. 'Mapa inválido
  25. If Not MapaValido(Obj.HastaMapa) Then
  26.     Call SendData(SendTarget.toindex, UserIndex, 0, "||El pasaje lleva hacia un mapa que ya no esta disponible! Disculpa las molestias." & FONTTYPE_INFO)
  27. Exit Sub
  28. End If
  29.  
  30. Public Sub Barco()
  31. Call WarpUserChar(UserIndex, Obj.MapaBarco, True)
  32. Call sendata(SendataTarget.toindex, UserIndex, 0, "||Has sido llevado al barco, tu viaje tardarà " & MinutosBarco & " minutos." & FONTTYPE_INFO)
  33.     Exit Sub
  34. End Sub
  35. Public Sub LLegoDestino()
  36.     Call WarpUserChar(UserIndex, Obj.HastaMapa, Obj.HastaX, Obj.HastaY, True)
  37.     Call SendData(SendTarget.toindex, UserIndex, 0, "||Has viajado por varios días, te sientes exhausto!" & FONTTYPE_INFO)
  38.     UserList(UserIndex).Stats.MinAGU = 0
  39.     UserList(UserIndex).Stats.MinHam = 0
  40.     Call EnviarHambreYsed(UserIndex)
  41.     Call QuitarUserInvItem(UserIndex, Slot, 1)
  42.     Call UpdateUserInv(False, UserIndex, Slot)
  43. Exit Sub
  44. End Sub
  45.  
  46.  


Y el timer
  1. Public TimeBarco As Integer
  2.  
  3. Private Sub tBarco_Timer()
  4. On Error Resume Next
  5. If TimeBarco = 3 Then
  6. If TimeBarco = -3 Then
  7. Call LLegoDestino
  8. End If
  9. Exit Sub
  10. End Sub


Yo queria pregunta si esto està bien porque creo que no va a funcionar xD
Usuario Registrado
90
Newbie [3]
Registrado: Diciembre 2011
Mensajes: 81

Nota » 16 Ene 2012 21:07

Para que un timer que causa lag ???

Imagen
Ninja en progreso
929 (+5)
Dragon Ancestral [5]
Registrado: Años de membresía
Ubicación: • olivos •
Mensajes: 4103
Aportes: 13

Nota » 16 Ene 2012 21:48

No creo, pero igual me gusta asì queda no se como màs rol ademas ya tengo el barco armado y lo dejo ya preparado por si lo quiera agregar en algùn otro proyecto.
Usuario Registrado
90
Newbie [3]
Registrado: Diciembre 2011
Mensajes: 81

Nota » 17 Ene 2012 14:08

Podes usar el Sub pasarsegundo, asi no generas lag con el timer.

Imagen
Imagen
Rosario Central
250
Aprendiz [1]
Registrado: Agosto 2011
Mensajes: 239


Volver a AO 0.11.5

¿Quién está conectado?

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