Bien, vamos con nuestro siguiente objetivo. Crear un radar de proximidad para enemigos que se muestren en él cuando se encuentren a menos de cierta distancia de nosotros.
Emplearemos la misma técnica de sprites, esta vez tendremos un radar fijo de fondo y unos puntitos de colores que nos indicarán la presencia de enemigos que podrán ser verdes, amarillos o rojos
en función del estado de alerta del enemigo, por ejemplo. Los estados de alerta los haremos aleatorios.
Para esto vamos a crear una clase "Enemigo" ya sabeis, botón derecho en el explorador de soluciones, Agregar, Clase, y de nombre le poneis "Enemigo". Entonces copiais en ella este código.
Imports Microsoft.DirectX
Public Class Enemigo
Private posicion As Vector3
Private alerta As Byte
Public ReadOnly Property POS
Get
Return posicion
End Get
End Property
Public Property ESTADO
Get
Return alerta
End Get
Set(value)
alerta = value
End Set
End Property
Public Sub Muevete(ByRef adonde As Vector3)
Try
posicion = adonde
Catch ex As Exception
End Try
End Sub
End Class
Básicamente la clase tiene un propiedad POS que indica la posición del enemigo, otra propiedad estado que nos va a permitir saber como de alerta está:
0 - Estado Reposo, (el enemigo no se entera) color verde.
1 - Estado SobreAviso, (el enemigo está alertado pero no sabe donde estamos) amarillo.
2 - Estado Alerta, (el enemigo sabe donde estamos y atacará). En rojo.
Con él metodo de Muevete movemos al enemigo a una nueva posición (también lo podeis hacer con el SET de la propiedad POS).
No hay comentarios:
Publicar un comentario