Io separerei l'elaborazione "logica" da quella grafica. Cioè prima cercherei di far funzionare il gioco dentro una struttura dati, poi cercherei di dare un "vestito" grafico ai dati.
Per quanto riguarda la parte dati, io proverei ad usare un array di Point, dove conservare le coordinate x,y di ogni singolo pezzetto dello snake. Così facendo non è difficile determinare la collisione dello snake con se stesso: basta infatti verificare che la coordinata della testa coincida con una delle coordinate del corpo. Le mele le metterei in un altro array di Point, facilitando anche in questo caso la rilevazione di collisione.
Una volta realizzata correttamente la parte dati andrei a implementare il paint di una PictureBox o di un Panel.

Rispondi quotando