jueves, 18 de julio de 2013

7 .-. 2D. Sprites. Hacer un HUD. Radar.

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