Inform e Glulx/Inform e ancora Inform/Gli NPC (o PNG in italiano): differenze tra le versioni

m
nessun oggetto della modifica
m (Bot: sostituzione tag obsoleti)
mNessun oggetto della modifica
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
{| style="width:100%;" class="wikitable"
di Vincenzo Scarpa e Paolo Lucchesi
|<code>La signora Bindi<br>
Avventura d'esempio per gestire un NPC.
di Vincenzo Scarpa e Paolo Lucchesi<br>
 
Avventura d'esempio per gestire un NPC.<br><br>
Versione 1 -- Numero di serie 051016<br>
Inform v6.30 -- Libreria 6/11 &nbsp;--&nbsp; Infit v2.5 &nbsp;&nbsp;&nbsp;S<br><br>
 
Corridoio<br>
Corridoio
Sei in un lungo corridoio che prosegue verso nord.<br><br>
Sei in un lungo corridoio che prosegue verso nord.
>n<br><br>
 
Corridoio<br>
>n
Sei in un lungo corridoio. A ovest c'è una porta aperta.<br><br>
Corridoio
>o<br><br>
Sei in un lungo corridoio. A ovest c'è una porta aperta.
Soggiorno<br>
 
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.<br><br>
>o
C'è la signora Bindi qui, seduta sul sofà.<br><br>
 
Puoi anche vedere un giornale qui.<br><br>
Soggiorno
>esamina la signora Bindi<br>
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.
È molto bella.<br><br>
 
>bacia la signora Bindi<br>
Non credi cheC'è la signora Bindi sia interessataqui, alleseduta tuesul attenzionisofà.<br><br>
 
>chiedi alla signora Bindi del giornale<br>
Puoi anche vedere un giornale qui.
"È il giornale di oggi."</code>
 
|}
>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
{| style="width:100%;" class="wikitable"
Il tempo passa.
|<code>>z<br>
 
Il tempo passa.<br><br>
>z<br>
Il tempo passa.<br><br>
 
>z<br>
>z
Il tempo passa.<br><br>
Il tempo passa.
>z<br>
 
Il tempo passa.<br><br>
>z<br>
Il tempo passa.<br><br>
 
La signora Bindi si dirige verso est.<br><br>
>z
></code>
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
{| style="width:100%;" class="wikitable"
 
|<code>>e<br><br>
Corridoio<br><br>
 
Puoi vedere la signora Bindi qui.<br><br>
LaPuoi vedere la signora Bindi si dirige verso nordqui.<br><br>
 
>n<br><br>
La signora Bindi si dirige verso nord.
Corridoio<br>
 
Sei in un lungo corridoio. Verso nord puoi vedere una porta aperta che dà sulla cucina.<br><br>
>n
Puoi vedere la signora Bindi qui.<br><br>
 
La signora Bindi si dirige verso nord.<br><br>
Corridoio
>n<br><br>
Sei in un lungo corridoio. Verso nord puoi vedere una porta aperta che dà sulla cucina.
Cucina<br>
 
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.<br><br>
Puoi vedere la signora Bindi qui.
La signora Bindi è qui, intenta a fare le pulizie. Non sembra essere molto contenta.<br><br>
 
Puoi anche vedere un frigorifero (che è chiuso) e una forchetta qui.<br><br>
La signora Bindi si dirige verso nord.
>esamina il frigo<br>
 
È tutto sporco di sugo di pomodoro.<br><br>
>n
>chiedi alla signora Bindi del pomodoro<br>
 
"Dovrei fare più attenzione a quello che faccio. A volte sono così distratta..."<br><br>
Cucina
></code>
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
{| style="width:100%;" class="wikitable"
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.
|<code>Soggiorno<br>
 
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.<br><br>
C'è la signora Bindi qui, seduta sul sofà.<br><br>
 
Puoi anche vedere un giornale qui.<br><br>
>prendiPuoi ilanche vedere un giornale<br> qui.
 
Preso.<br><br>
>prendi il giornale
>e<br><br>
Preso.
Corridoio<br><br>
 
>n<br><br>
>e
Corridoio<br>
 
Sei in un lungo corridoio. Verso nord puoi vedere una porta aperta che dà sulla cucina.<br><br>
Corridoio
>leggi il giornale<br>
 
Nessuna notizia interessante.<br><br>
>n
>z<br>
 
Il tempo passa.<br><br>
Corridoio
>z<br>
Sei in un lungo corridoio. Verso nord puoi vedere una porta aperta che dà sulla cucina.
Il tempo passa.<br><br>
 
>z<br>
>leggi il giornale
Il tempo passa.<br><br>
Nessuna notizia interessante.
>z<br>
 
Il tempo passa.<br><br>
>z<br>
Il tempo passa.<br><br>
 
La signora Bindi arriva qui.<br><br>
>z
>parla alla signora Bindi del giornale<br>
Il tempo passa.
"È il giornale di oggi."<br><br>
 
La signora Bindi si dirige verso nord.<br><br>
>z
></code>
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
{| style="width:100%;" class="wikitable"
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.
|<code>Cucina<br>
 
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.<br><br>
Puoi vedere un frigorifero (che è chiuso) e una forchetta qui.<br><br>
 
>esamina il frigorifero<br>
>esamina il frigorifero
Sembra essere piuttosto robusto.<br><br>
Sembra essere piuttosto robusto.
>apri il frigorifero<br>
 
Ora hai aperto il frigorifero.<br><br>
>apri il frigorifero
>g<br><br>
Ora hai aperto il frigorifero.
Cucina<br>
 
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.<br><br>
>g
Puoi vedere un frigorifero (che è vuoto) e una forchetta qui.<br><br>
 
>esamina la forchetta<br>
Cucina
Una normale forchetta.<br><br>
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.
>prendi la forchetta<br>
 
Presa.<br><br>
Puoi vedere un frigorifero (che è vuoto) e una forchetta qui.
>i<br>
 
Stai portando:<br>
&nbsp;&nbsp;una>esamina la forchetta<br><br>
Una normale forchetta.
>z<br>
 
Il tempo passa.<br><br>
>prendi la forchetta
>z<br>
Presa.
Il tempo passa.<br><br>
 
>z<br>
>i
Il tempo passa.<br><br>
Stai portando:
La signora Bindi arriva qui.<br><br>
&nbsp;&nbsp;una forchetta
La signora Bindi chiude il frigorifero sporcandolo con le mani imbrattate di sugo di pomodoro.<br><br>
 
>g<br><br>
>z
Cucina<br>
Il tempo passa.
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.<br><br>
 
La signora Bindi è qui, intenta a fare le pulizie. Non sembra essere molto contenta.<br><br>
>z
Puoi anche vedere un frigorifero (che è chiuso) qui.<br><br>
Il tempo passa.
>esamina il frigorifero<br>
 
È tutto sporco di sugo di pomodoro.<br><br>
>z
></code>
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
{| style="width:100%;" class="wikitable"
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.
|<code>Cucina<br>
 
Questa è la cucina della signora Bindi, piuttosto stretta ma completa.<br><br>
La signora Bindi è qui, intenta a fare le pulizie. Non sembra essere molto contenta.<br><br>
 
Puoi anche vedere un frigorifero (che è chiuso) e una forchetta qui.<br><br>
Puoi anche vedere un frigorifero (che è chiuso) e una forchetta qui.
La signora Bindi si dirige verso sud.<br><br>
 
>esamina il frigorifero<br>
La signora Bindi si dirige verso sud.
Sembra essere piuttosto robusto.<br><br>
 
>s<br><br>
>esamina il frigorifero
Corridoio<br><br>
Sembra essere piuttosto robusto.
>s<br><br>
 
Corridoio<br><br>
>s
>o<br><br>
 
Soggiorno<br>
Corridoio
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.<br><br>
 
La signora Bindi è qui, intenta a guardare la televisione.<br><br>
>s
Puoi anche vedere un giornale qui.<br><br>
 
>chiedi alla signora Bindi del frigorifero<br>
Corridoio
È di nuovo pulito ora.<br><br>
 
></code>
>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>.