Inform e Glulx/Inform e ancora Inform/Le estensioni (o librerie aggiuntive)/flags it.h

Wikibooks, manuali e libri di testo liberi.
Indice del libro

flags_it.h[modifica]

La flags_it.h (scritta da Alessandro Schillaci), ci dà la possibilità di stampare a video dei messaggi di aiuto sulla base del numero dei capitoli[1] e delle mosse effettuate. Per usarla, occorre scaricare il file estensioni_inform.zip[2], decomprimere quest’ultimo in una directory qualsiasi, andare nella directory flags, copiare il file flags_it.h in "C:\Inform\libraries" (se state usando WIDE) o "C:\Programmi\Jif\lib\Contrib" (se state usando Jif) e, infine, copiare il file flags_it_test.inf in "C:\Inform" (se state usando WIDE) o "C:\Programmi\Jif\Games" (se state usando Jif). Vediamo adesso come funziona:

Esempio di utilizzo della libreria flagsit.h
Esercizio 1
Alessandro Schillaci

Versione 1 -- Numero di serie 050823
Inform v6.30 -- Libreria 6/11  --  Infit v2.5    S

Oscurità
È completamente buio, e non riesci a vedere niente.

>i
Stai portando:
  un accendino

>z
Il tempo passa.

>z
Il tempo passa.

Messaggio di aiuto per il 3 turno del capitolo 1

>

Come potete facilmente notare, alla terza mossa qualsiasi effettuata dal giocatore, appare il primo messaggio di aiuto. Alla decima mossa, Inform stampa a video un secondo messaggio di aiuto:

>z
Il tempo passa.

Forse dovrei accendere l'accendino

>

che ci suggerisce di accendere l’accendino. Proviamo allora a farlo:

>accendi l'accendino
Con uno scatto del pollice, accendi l'accendino. 
Ora riesci a vedere la stanza intorno a te...

Una stanza vuota
Questa è la stanza dell'esercitazione. 
La stanza non ha porte, se non quelle della tua immaginazione.

Puoi vedere un foglio di carta qui.

>

Questo sistema di helping è molto utile nel caso in cui il giocatore sia bloccato in un punto qualsiasi del gioco e non sappia più come andare avanti. Occorre tuttavia notare che i due messaggi di aiuto sono di due tipi diversi: il primo, infatti, appare indipendentemente da quello che il giocatore sta facendo, mentre il secondo appare solo se dopo 10 mosse il giocatore non ha ancora acceso l’accendino. D’altra parte, i due messaggi vengono "attivati" da due diverse istruzioni:

setMessage(1,3,"Messaggio di aiuto per il 3 turno del capitolo 1^");
setMessageFlag(1,10,"Forse dovrei accendere l'accendino^",2);

Nel primo caso, il parametro 1 è il numero del capitolo, mentre il parametro 3 è il numero dei turni; nel secondo, come prima, il valore 1 è il numero del capitolo, il valore 10 è il numero dei turni mentre l’ultimo valore (il 2) è il numero del flag successivo. Volendo, potete scegliere se usare uno solo o entrambi i tipi di messaggi; a ogni modo, ulteriori informazioni sul suo utilizzo potete trovarle nei commenti dell’esempio stesso.

Note[modifica]

  1. Un’avventura testuale può essere intesa come costituita da un insieme di locazioni (se consideriamo la sola struttura del programma) o anche da capitoli (se consideriamo invece la storia di per sé). In Ruins, per esempio, il primo capitolo potrebbe essere costituito dall’inizio del gioco fino all’apertura dell’entrata della piramide, il secondo dalla discesa dei gradini fino al ritrovamento della chiave e così via...
  2. Questo file (così come listati_inform.zip) è soggetto a continui aggiornamenti da parte del sottoscritto. Quindi, di tanto in tanto, scaricatelo per verificare al suo interno i nuovi contenuti (se presenti).