Inform e Glulx/Inform e ancora Inform/Gli NPC (o PNG in italiano): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: sostituzione tag obsoleti |
mNessun oggetto della modifica |
||
Riga 2:
Sostanzialmente, '''i ''Non Player Characters'' o ''Personaggi Non Giocatori'' (da qui in poi PNG) altro non sono che tutti quei personaggi inclusi nel gioco all’infuori del giocatore stesso''' (il sacerdote mummificato in Ruins, tanto per fare un esempio, è uno di questi). Osserviamo ora il funzionamento del seguente esempio:
<source>La signora Bindi
di Vincenzo Scarpa e Paolo Lucchesi
Avventura d'esempio per gestire un NPC.
Versione 1 -- Numero di serie 051016
Inform v6.30 -- Libreria 6/11 -- Infit v2.5 S
Corridoio
Sei in un lungo corridoio che prosegue verso nord.
>n
Corridoio
Sei in un lungo corridoio. A ovest c'è una porta aperta.
>o
Soggiorno
Questa è una stanza molto grande. Alla tua sinistra, una finestra dà sulla strada e davanti a te puoi vedere un grosso tavolo in noce circondato ai lati da quattro sedie.
Puoi anche vedere un giornale qui.
>esamina la signora Bindi
È molto bella.
>bacia la signora Bindi
Non credi che la signora Bindi sia interessata alle tue attenzioni.
>chiedi alla signora Bindi del giornale
"È il giornale di oggi."</source>
La signora Bindi è il nostro PNG per eccellenza, poiché reagisce ai comandi "sociali" (grazie alla proprietà <code>life</code> che in un oggetto di questo tipo deve essere sempre presente). Ma non è finita:
<source>>z
Il tempo passa.
>z
Il tempo passa.
>z
Il tempo passa.
>z
Il tempo passa.
>z
Il tempo passa.
La signora Bindi si dirige verso est.
></source>
dopo altri cinque turni, la signora Bindi esce dal soggiorno e si dirige verso est. Proviamo allora a seguirla:
<source>>e
Corridoio
La signora Bindi si dirige verso nord.
>n
Corridoio
Sei in un lungo corridoio. Verso nord puoi vedere una porta aperta che dà sulla cucina.
Puoi vedere la signora Bindi qui.
La signora Bindi si dirige verso nord.
>n
Cucina
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.
La signora Bindi è qui, intenta a fare le pulizie. Non sembra essere molto contenta.
Puoi anche vedere un frigorifero (che è chiuso) e una forchetta qui.
>esamina il frigo
È tutto sporco di sugo di pomodoro.
>chiedi alla signora Bindi del pomodoro
"Dovrei fare più attenzione a quello che faccio. A volte sono così distratta..."
></source>
In poche parole, dopo dieci turni dall’inizio del gioco la signora Bindi si sposta dal soggiorno in cucina, indipendentemente da quello che il giocatore sta facendo. E questo accade naturalmente anche se quest’ultimo non si trova nel soggiorno:
<source>Soggiorno
Questa è una stanza molto grande. Alla tua sinistra, una finestra dà sulla strada e davanti a te puoi vedere un grosso tavolo in noce circondato ai lati da quattro sedie.
C'è la signora Bindi qui, seduta sul sofà.
>prendi il giornale
Preso.
>e
Corridoio
>n
Corridoio
Sei in un lungo corridoio. Verso nord puoi vedere una porta aperta che dà sulla cucina.
>leggi il giornale
Nessuna notizia interessante.
>z
Il tempo passa.
>z
Il tempo passa.
>z
Il tempo passa.
>z
Il tempo passa.
>z
Il tempo passa.
La signora Bindi arriva qui.
>parla alla signora Bindi del giornale
"È il giornale di oggi."
La signora Bindi si dirige verso nord.
></source>
Interessante, vero? Ma non è ancora finita. Guardate cosa accade se ci troviamo in cucina quando la signora Bindi arriva:
<source>Cucina
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.
Puoi vedere un frigorifero (che è chiuso) e una forchetta qui.
>esamina il frigorifero
Sembra essere piuttosto robusto.
>apri il frigorifero
Ora hai aperto il frigorifero.
>g
Cucina
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.
Puoi vedere un frigorifero (che è vuoto) e una forchetta qui.
Una normale forchetta.
>prendi la forchetta
Presa.
>i
Stai portando:
una forchetta
>z
Il tempo passa.
>z
Il tempo passa.
>z
Il tempo passa.
La signora Bindi arriva qui.
La signora Bindi chiude il frigorifero sporcandolo con le mani imbrattate di sugo di pomodoro.
>g
Cucina
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.
La signora Bindi è qui, intenta a fare le pulizie. Non sembra essere molto contenta.
Puoi anche vedere un frigorifero (che è chiuso) qui.
>esamina il frigorifero
È tutto sporco di sugo di pomodoro.
></source>
Prima del suo arrivo, il frigorifero in questione è pulito e chiuso. Noi lo apriamo, e quando lei arriva in cucina, lo chiude e lo sporca. Un PNG può quindi modificare anche lo stato di uno o più oggetti che non devono, tra l’altro, trovarsi necessariamente nella stanza in cui esso si trova (grazie all’istruzione <code>objectloop</code> spiegata nel [[Inform e Glulx/RUINS, l'avventura comincia/L'incrocio di Xibalbá (ma è davvero così pauroso)?|paragrafo 4.10]]). Senza contare che, tramite l’istruzione <code>move</code>, può addirittura prenderli e spostarli (si potrebbe, per assurdo, far sì che al suo arrivo in cucina, la signora Bindi prendesse - se presente - la forchetta e la mettesse nel frigorifero). A ogni modo, al ventiduesimo turno il nostro PNG esce dalla cucina ritornando nuovamente al soggiorno:
<source>Cucina
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.
La signora Bindi è qui, intenta a fare le pulizie. Non sembra essere molto contenta.
Puoi anche vedere un frigorifero (che è chiuso) e una forchetta qui.
La signora Bindi si dirige verso sud.
>esamina il frigorifero
Sembra essere piuttosto robusto.
>s
Corridoio
>s
Corridoio
>o
Soggiorno
Questa è una stanza molto grande. Alla tua sinistra, una finestra dà sulla strada e davanti a te puoi vedere un grosso tavolo in noce circondato ai lati da quattro sedie.
La signora Bindi è qui, intenta a guardare la televisione.
Puoi anche vedere un giornale qui.
>chiedi alla signora Bindi del frigorifero
È di nuovo pulito ora.
></source>
Il frigorifero adesso è di nuovo pulito e sono tutti felici e contenti<ref>La creazione di movimenti relativamente sofisticati per i personaggi non giocatori può essere semplificata con l’utilizzo della libreria <code>MoveClass.h</code>. Ulteriori informazioni sul suo utilizzo potete trovarle nel prossimo paragrafo.</ref>.
|