Inform e Glulx/Inform e ancora Inform/Le estensioni (o librerie aggiuntive): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 1:
==Le estensioni (o librerie aggiuntive)==
Nonostante Inform sia un linguaggio di programmazione orientato alle avventure testuali, a mano mano che si diventa più bravi nella programmazione (unita ovviamente alla stesura delle storie), si arriva a un certo punto che Inform, di default, non basta più. Si vuole ottenere sempre di più, arrivando a voler gestire eventi sempre più complessi e a questo punto si è obbligati a dover scegliere fra due strade diverse: la prima, quella forse più facile e intuitiva, è quella di scrivere del codice "ad hoc"; la seconda, invece, è quella di utilizzare le '''estensioni''' (chiamate anche '''librerie aggiuntive''')<ref>Per alcune di queste, il compilatore produce una serie di warning durante la fase di compilazione; non dovete tuttavia preoccuparvi perché l’eseguibile prodotto è comunque perfettamente funzionante.</ref>. Fra queste ultime, mi preme ricordare:
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/scenic.h scenic.h]''' (
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/fnote.h fnote.h]''' (
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/dmenus.h dmenus.h]''' (
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/command_it.h command_it.h]''', da me scritta, che è un menu (annidato) di aiuto per i comandi;
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/wtalk_it.h
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/flags_it.h
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/pname.h pname.h]''' (scritta da Neil Cerutti), che ci permette di risolvere le ambiguità dell'input del giocatore quando la stessa parola di dizionario si riferisce a più di un oggetto;
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/smartcantgo_it.h
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/doors.h doors.h]'''
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/easydoors.h easydoors.h]'''
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/style.h style.h]'''
*'''la''' '''[http://it.wikibooks.org/wiki/Inform_e_Glulx/Inform_e_ancora_Inform/Le_estensioni_(o_librerie_aggiuntive)/boxclever.h boxclever.h]'''
Bene. Le estensioni appena viste possono essere considerate le "principali". Ne esistono naturalmente molte altre<ref>Quelle qui elencate sono tutte contenute all’interno del file [http://www.vincenzoscarpa.it/inform/manuale/estensioni_inform.zip estensioni_inform.zip]. Le altre, invece, sono tutte scaricabili all’indirizzo [http://www.inform-fiction.org/extensions/index.html http://www.inform-fiction.org/extensions/index.html]; molte di queste però, prima di essere usate, devono essere necessariamente tradotte in italiano (su permesso, ovviamente, dei rispettivi autori).</ref> che, anche se non indispensabili, possono comunque essere molto utili. Fra queste, mi preme almeno ricordare:
*'''la betatest.h''', scritta da Marnie Parker, che facilita il betatesting del gioco dando la possibilità di commentare l'avventura mentre la si gioca, registrando il tutto in un file di testo;
*'''la cyoa.h''', scritta da Paolo Lucchesi, che permette di creare delle avventure testuali a scelte multiple (più conosciute da alcuni come libri-game);
*'''la daemons.h''', scritta da Andrew Plotkin e Roger Firth, che permette di creare dei daemon da poter eseguire in ordine di priorità;
*'''l’easyout.h''', scritta da Gabriele Brami, che verifica la presenza di proprietà direzionali in una stanza stampando poi la direzione e la destinazione;
*'''la Io.h''', scritta dal sottoscritto che, come avete già avuto modo di vedere dal capitolo 2, ci viene incontro nella gestione dell’input-output dei dati;
*'''l’Italian3.h''', una modifica (realizzata da Paolo Lucchesi) del file originale Italian.h contenuto in Infit che permette l'uso della narrativa in prima persona (oltre alla normale narrativa in seconda persona);
*'''la math.h''', scritta da Matt Albrecht, che mette a disposizione una serie di utilissime funzioni matematiche;
*'''le mfs library''', scritte da Giancarlo Niccolai per tutti coloro che sono interessati a creare dei giochi di ruolo in Inform;
*'''la mininf.h''', scritta da Ignazio Di Napoli e Marco Falcinelli, appositamente studiata per creare avventure giocabili facilmente su palmari, cellulari e console;
*'''la moveclass.h''', scritta da Neil James Brown e Alan Trewartha, che permette di spostare i personaggi non giocatori lungo percorsi prestabiliti, calcolati oppure random;
*'''la printslow.h''', scritta da David Cornelson, che ci permette di modificare la velocità di stampa del testo;
*'''la scanner.h''', scritta da Alessandro Schillaci e Paolo Lucchesi, che elenca tutte le "istanze" di una classe presenti all'interno delle locazioni adiacenti alla locazione attuale senza spostarsi "fisicamente";
*'''la tutor.h''', scritta da Paolo Lucchesi per gestire i suggerimenti nel corso di un’avventura (per capire come utilizzarla date un’occhiata al listato di [http://www.vincenzoscarpa.it/inform/manuale/listati_inform.zip Villa Morgana]);
*'''l’untouchable.h''', che permette di utilizzare un nuovo attributo denominato "untouchable" per caratterizzare quegli oggetti che pur essendo in vista non possono essere maneggiati dal giocatore perchè irraggiungibili (ad esempio un uccello in cima un albero);
*'''l’utility.h''', scritta da L. Ross Raszewski, che contiene delle funzioni molto utili;
*'''la wtellask.h''', disponibile anche in inglese e scritta da Paolo Lucchesi, utilissima per definire dei Personaggi Non Giocatori che possano rispondere in maniera più efficace e funzionale a dei comandi come "<tt>chiedi al personaggio del [argomento]</tt>" e "<tt>parla al personaggio del [argomento]</tt>".
Line 32 ⟶ 38:
[[Categoria:Inform e Glulx|Inform e ancora Inform|Le estensioni (o librerie aggiuntive)]]
{{Avanzamento|100%|
|