Todo sobre AO
 
ÍndiceFAQBuscarMiembrosGrupos de UsuariosRegistrarseConectarse

Comparte | 
 

 Cartel de invisibilidad

Ver el tema anterior Ver el tema siguiente Ir abajo 
AutorMensaje
Agus
Admin


Mensajes : 69
Fecha de inscripción : 01/07/2008

MensajeTema: Cartel de invisibilidad   Jue Jul 03, 2008 6:05 am

Este código muestra un mensaje en la pantalla del tiempo que le resta al hechizo de invisibilidad, como en el servidor Tierras Perdidas, nada más que este código es enviado por el servidor en el tiempo que corresponde, por lo tanto si uno está invisible durante el tiempo que el servidor está pausado (por ejemplo, en un WorldSave), el tiempo estará sincronizado con el del servidor y no informará de valores inexactos.

Primera parte: SERVIDOR 0.11.5

En el módulo General (General.bas), reemplazamos el Sub EfectoInvisibilidad por el siguiente:

Código:
 
Public Sub EfectoInvisibilidad(ByVal UserIndex As Integer)
Dim TiempoTranscurrido As Long
If UserList(UserIndex).Counters.Invisibilidad < IntervaloInvisible Then
UserList(UserIndex).Counters.Invisibilidad = UserList(UserIndex).Counters.Invisibilidad + 1
TiempoTranscurrido = (UserList(UserIndex).Counters.Invisibilidad * frmMain.GameTimer.Interval)
If TiempoTranscurrido Mod 1000 = 0 Or TiempoTranscurrido = 40 Then
If TiempoTranscurrido = 40 Then
Call SendData(SendTarget.ToIndex, UserIndex, 0, "INVI" & ((IntervaloInvisible * frmMain.GameTimer.Interval) / 1000))
Else
Call SendData(SendTarget.ToIndex, UserIndex, 0, "INVI" & (((IntervaloInvisible * frmMain.GameTimer.Interval) / 1000) - (TiempoTranscurrido / 1000)))
End If
End If
Else
UserList(UserIndex).Counters.Invisibilidad = 0
UserList(UserIndex).flags.Invisible = 0
If UserList(UserIndex).flags.Oculto = 0 Then
Call SendData(SendTarget.ToIndex, UserIndex, 0, "||Has vuelto a ser visible." & FONTTYPE_INFO)
Call SendData(SendTarget.ToMap, 0, UserList(UserIndex).Pos.Map, "NOVER" & UserList(UserIndex).Char.CharIndex & ",0")
Call SendData(SendTarget.ToIndex, UserIndex, 0, "INVI0")
End If
End If
End Sub


Segunda parte: CLIENTE 0.11.5

En el módulo Mod_Declaraciones (Declares.bas), al final del mismo, colocamos:
Código:
 
Public CartelInvisibilidad As Integer

Luego, en el módulo Mod_TCP (TCP.bas), buscamos:
Código:
 
sData = UCase$(Rdata)

Y justo abajo de esa línea colocamos lo siguiente:
Código:
 
If Left$(sData, 4) = "INVI" Then CartelInvisibilidad = Right$(sData, Len(sData) - 4)

Finalmente, en el módulo Mod_TileEngine (TileEngine.bas), buscamos:
Código:
 
If IScombate Then Call Dialogos.DrawText(260, 260, "MODO COMBATE", vbRed)

Y justo abajo de esa línea colocamos lo siguiente:
Código:
 
If CartelInvisibilidad Then Call Dialogos.DrawText(260, 520, CartelInvisibilidad & " segundos restantes de Invisibilidad", vbCyan)
Volver arriba Ir abajo
Ver perfil de usuario http://recompilacionao.forosactivos.com
 
Cartel de invisibilidad
Ver el tema anterior Ver el tema siguiente Volver arriba 
Página 1 de 1.
 Temas similares
-
» Nuevos detalles de Call of Juarez: The Cartel
» Call of Juarez the cartel
» Call of Juarez: El Cartel del juego 7 minutos previa
» Que puedo ponerle a un cartel para apoyar a mi amiga que me gusta en su partido de basquet?
» Fauces Temibles

Permisos de este foro:No puedes responder a temas en este foro.
 :: Argentum Online :: Programación :: 0.11.5-
Cambiar a: