Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Pascal - Personaggio che si muove sotto controllo
Forum - Pascal - Personaggio che si muove sotto controllo

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Progman (Normal User)
Newbie


Messaggi: 16
Iscritto: 26/02/2013

Segnala al moderatore
Postato alle 19:30
Venerdì, 02/08/2013
Salve a tutti,
vorrei sapere come creare un personaggio (es. un omino) che si possa muovere sotto comando.
Grazie

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 12:04
Sabato, 03/08/2013
Ciao!

Che comandi devi gestire ? (Da mouse, tastiera, da disco ecc.)
L' omino è disegnato in modalità grafica o da terminale?

PM Quote
Avatar
GN (Member)
Guru


Messaggi: 772
Iscritto: 30/04/2011

Segnala al moderatore
Postato alle 12:07
Sabato, 03/08/2013
Non conosco pasca, ma sicuramente ci saranno delle librerie grafiche, quindi ti consiglio di trovarne una e studiarla; solitamente, per lo sviluppo di un gioco la logica è questa: si scrive un loop che ogni volta cancella la superficie di disegno, la ridisegna, e legge l'input del giocatore. In pseudocodice, ecco una vaga idea di quello di cui hai bisogno:
Codice sorgente - presumibilmente Pascal

  1. Variabili: x, y (interi)
  2. Inizio loop
  3.   Disegna_sfondo()
  4.   Disegna_personaggio(x, y) //disegna l'omino nella posizione specificata dalle coordinate
  5.   Se Tasto_premuto(FrecciaSu) Allora y = y - 1
  6.   Se Tasto_premuto(FrecciaGiù) Allora y = y + 1
  7.   Se Tasto_premuto(FrecciaSinistra) Allora x = x - 1
  8.   Se Tasto_premuto(FrecciaDestra) Allora x = x + 1
  9. Fine loop


PM Quote
Avatar
Progman (Normal User)
Newbie


Messaggi: 16
Iscritto: 26/02/2013

Segnala al moderatore
Postato alle 12:40
Sabato, 03/08/2013
Intanto grazie a tutti. Comunque voglio gestire comandi da tastiera attraverso readkey. Preferibilmente vorrei usare la uses crt, ma mi rendo conto che forse è meglio la init graph. Per me è uguale

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 13:02
Sabato, 03/08/2013
Dichiara una funzione che disegna il personaggio su certe cootdinate sulo schermo, con uno specifico colore.
Quindi, quando intercetti il comando, richiami la funzione con le vecchie coordinate e colore uguale allo sfondo - canceli l' omino - poi disegni il  personaggio sulle nuove cordinate.

Ultima modifica effettuata da Poggi Marco il 03/08/2013 alle 13:05
PM Quote
Avatar
Progman (Normal User)
Newbie


Messaggi: 16
Iscritto: 26/02/2013

Segnala al moderatore
Postato alle 0:06
Domenica, 04/08/2013
Ok grazie mille!! :)
Comunque scusa se rompo un pochinino, ma vorrei farti un'altra domanda sempre inerente a questo discorso:
posso in qualche modo creare una struttura dati in modo che tutti i componenti del personaggio(testa, braccia ecc.) si muovano con una sola istruzione, senza aggiornarne uno per volta?
Grazie e scusa

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 0:28
Domenica, 04/08/2013
Certamente si.
Sicuramente puoi raggrupparli in un record
( http://www.pierotofy.it/pages/guide/Guida_Pascal/Il_tipo_d ... )
Oppure, definisci un oggetto
( http://www.pierotofy.it/pages/guide/Guida_Pascal/Le_classi/ )
In questo modo hai il vantaggio di unire i dati e funzioni.

Che compilatore utilizzi?  

PM Quote
Avatar
Progman (Normal User)
Newbie


Messaggi: 16
Iscritto: 26/02/2013

Segnala al moderatore
Postato alle 0:41
Domenica, 04/08/2013
ho a disposizione  dev pascal,free pascal e turbo pascal con dosbox(quest'ultimo però ha dei problemi, perché dopo la prima esecuzione di un programma si deve chiudere tutto e poi riaprire)

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 11:42
Domenica, 04/08/2013
Con il free pascal è possibile definire delle classi ( variabili che contengono dati e sottoprogrammi )
- http://www.freepascal.org/docs-html/ref/refch6.html -

Se ben utilizzati, questi meccanismi sono un valido aiuto per la gestione sicura e controllata dei dati.
Di contro si ha una maggiore  " complessità strutturale " del programma.
Per maggiori chiarimenti: http://it.wikipedia.org/wiki/Programmazione_orientata_agli ...

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo