Oppure

Loading
16/03/10 18:45
Ocentral
vorrei che qualcuno mi dicesse un modo per creare snake.

Solo l'algoritmo.


Grazie.
aaa
16/03/10 19:19
XBarboX
aspetta ma vuoi farlo comandato dall'utente oppure con I.A. dal pc?
aaa
16/03/10 19:31
Ocentral
IN realta' sarebbe meglio dall'utente dato che il computer .a quello che penso,compie gli stessi algoritmi.:pat:
aaa
16/03/10 20:15
XBarboX
Guarda che qui quello che ha capito male sei te!

1)Algoritmo = serie di istruzioni . Se non erro serie di istruzioni è parecchio diverso da "comandare un serpente con i tasti della tastiera"... Tu non avevi specificato nulla.

2)I.A. = Intelligenza artificiale . Un programma come snake potrebbe essere comandato dal pc con I.A. al posto di un'utente... Ed è anche più difficile da fare.

3)Non fare lo sbruffone, io ti aiuto volentieri ma almeno non sfottere la gente perchè non sa leggere nel pensiero.
aaa
16/03/10 21:26
TheKaneB
beh, Snake è un gioco completo.

Anche volendo tralasciare l'AI, abbiamo:
- Grafica
- Suoni
- Input
- Level design
- Menu e interfaccia utente
- Gestione punteggi e record

Ciascuno di questi elementi va implementato, e per implementarli ci vogliono tutta una serie di strutture e di algoritmi (anche molto diversi tra loro). Quindi la tua domanda è un po' generica :)

Fatta questa premessa, quali argomenti (tra quelli che ho citato), vorresti approfondire?

Ciao!
aaa
17/03/10 15:14
Ocentral
in realta' non volevo fare lo sbruffone.
Forse mi sono spiegato male:
quello che io voglio e' sapere come disegnare il serpente.
aaa
18/03/10 0:14
TheKaneB
per disegnare il serpente dovrai prima di tutto avere una sua rappresentazione schematica.

Supponiamo che il serpente sia rappresentato da una serie di "quadratini neri" dentro una matrice che rappresenta il livello.

Per ciascun quadratino dovrai disegnare una piccola immagine (in gergo, uno "sprite";) che raffigura un segmento del corpo del serpente.

Considerando che il serpente sarà aggrovigliato in vario modo, dovrai fare degli sprite differenziati per i quadratini dei tratti orizzontali, per quelli verticali, 4 per la testa (con le 4 possibili direzioni), 4 per la coda e 4 per gli angoli (che si formano quando il serpente cambia direzione). Poi l'algoritmo che sceglierà lo sprite giusto sarà molto semplice, per ogni quadratino ti basterà controllare i quadratini adiacenti:

- Se hai un solo quadratino è la testa o la coda. La posizione del quadratino adiacente (nord, sud, ovest, est) ti darà la direzione della testa/coda (giù, su, destra, sinistra)
- Se hai 1 quadratino adiacente a destra e 1 a sinistra è un pezzo orizzontale
- Se ne hai 1 sopra e 1 sotto, è un pezzo verticale
- Se ne hai 1 sopra e 1 a sinistra è uno degli angoli (e così via per gli altri 3 angoli)

Se gli sprite sono disegnati bene, la loro unione darà l'immagine perfetta del serpentone con tutte le sue curve. L'importante è fare combaciare bene il disegno lungo i bordi, e per queste cose ci vuole un grafico bravo, non un programmatore ;)

enjoy!
aaa
18/03/10 6:19
XBarboX
Ma se usa il pascal credo che sia un po' difficile farlo con le immagini. Non basterebbe disegnare dei quadratini verdi nelle coordinate giuste?
aaa