¿Macro para Colisión en VBA?

Estoy programando un "juego" en visual basic, donde muevo un barco, sin embargo deseo que al colisionar con un objeto o hacer contacto con un muro. El barco No avanza más.

Aquí pueden observar el barco y los cuadros que son transparentes (se aprecian las líneas solamente)

Son los muros donde no quiero que avanza y todo tenga colisión.

Los puntos verdes son puntos donde puede colisionar sin que sea "game over"

Digamos punto de partida y punto de llegada.

¿

¿Algún consejo?

Este es el código :

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 38 Then
    Bote.Top = Bote.Top - 10
    Bote.Picture = BoteARR.Picture
End If
If KeyCode = 40 Then
    Bote.Top = Bote.Top + 10
    Bote.Picture = BoteABJ.Picture
End If
If KeyCode = 37 Then
    Bote.Left = Bote.Left - 10
    Bote.Picture = BoteIZQ.Picture
End If
If KeyCode = 39 Then
    Bote.Left = Bote.Left + 10
    Bote.Picture = BoteDER.Picture
End If
End Sub

De ser posible me gustaria insertarlo en un Userform de excel.

Si necesitan alguna información más me avisan

Añade tu respuesta

Haz clic para o