Inform e Glulx/appendici/Appendice B - I messaggi della libreria
Appendice B - I messaggi della libreria
[modifica | modifica sorgente]Inform dà sempre, per ogni azione effettuata dal giocatore, una risposta di default che può però essere personalizzata come spiegato alla fine del paragrafo 4.6 del manuale. In questo modo è possibile evitare di andare a modificare direttamente le librerie, azione che, oltre che pericolosa per Inform in sé, non è legale (non è possibile cioè modificare e distribuire le librerie senza l’autorizzazione dei rispettivi autori – Graham Nelson per Inform e Giovanni Riccardi per Infit). Spesso però, quando si devono personalizzare dei messaggi di sistema, occorre conoscere le funzioni interne di Infit, che sono quelle elencate nella guida di Infit presente all’interno del file infit25.zip.
Una precisazione: nella guida, l’elenco di queste funzioni è rappresentato in questo modo:
(itorthem) obj: ...
(thatorthose) obj: ...
(cthatorthose) obj: ...
(isorare) obj: ...
(cisorare) obj: ...
.
.
.
dove con obj
s’intende l'oggetto al quale si riferiscono le funzioni di stampa. Quello che forse non è ancora chiaro ad alcuni di voi, è come usarle in un listato Inform. Il seguente esempio dovrebbe chiarire meglio quello che sto cercando di dire:
Drop: print_ret (The)noun," scivola attraverso uno dei cunicoli e ", (itorthem) noun, " perdi rapidamente di vista.";
la funzione itorthem
stampa lo
, la
, li
, le
a seconda del genere (maschile o femminile) e il numero (singolare o plurale). Questo fa sì che Inform "capisca" il tipo di oggetto con cui ha a che fare, e stampi così a video il relativo messaggio corretto dopo che il giocatore lo posa (drop
) per terra. Ecco alcuni esempi:
dizionario
➨ posa il dizionario
➨ Il dizionario scivola attraverso uno dei cunicoli e lo perdi...
mappa
➨ posa la mappa
➨ la mappa scivola attraverso uno dei cunicoli e la perdi...
lingotti
➨ posa i lingotti
➨ i lingotti scivolano attraverso uno dei cunicoli e li perdi...
pergamene
➨ le pergamene scivolano attraverso uno dei cunicoli e le perdi...
e così via; obj
va inteso quindi come un termine generico, che è stato qui sostituito con noun
.
Altra cosa da ricordare durante la definizione di un oggetto, è che va assolutamente specificato, a livello di attributo, se esso è femminile (has female
) o plurale (has pluralname
); se invece è maschile (has male
), si può anche non specificare nulla, perché questo valore è già impostato di default. Occorre anche specificare il relativo articolo: se ad esempio definisco un oggetto che si chiama gradini, dovrò specificare che il suo articolo sarà dei, come accade nel seguente esempio:
Object -> steps "gradini scolpiti nella roccia" with article "dei", . . .
Tuttavia, non sempre è necessario specificare l’articolo ogni volta che si definisce un nuovo oggetto. Se date un’occhiata al listato di Ruins, vi renderete ben presto conto che la maggior parte di essi saranno privi dell’articolo in questione. L’unica eccezione è data da un oggetto con l’attributo proper
(in genere il giocatore stesso, definito in Inform come player’s object, oppure un oggetto nel quale il giocatore dovrà trasformarsi, come ad esempio il facocero – warthog – definito in Ruins), perché il suo nome è visto come proprio di persona e non ha mai, di conseguenza, bisogno dell’articolo.
Segue ora l’elenco completo di tutti i messaggi della libreria italiana[1], definiti all’interno del file Italian.h[2].
Note
[modifica | modifica sorgente]- ↑ N. B.: i messaggi contrassegnati dal simbolo
[G]
sono relativi a Glulx. - ↑ Relativi alla versione 6.11.