I D R A
Ipertesto Dinamico per Racconti d'Avventura

Manuale dell'autore
rev 1.0, © 2000 Enrico Colombini

 

qui puoi scaricare IDRA con il manuale

qui puoi visitare il sito ufficiale dell'autore Enrico Colombini con esempi e giochi scaricabili


Programmazione evoluta

CAP 6

1

Sfondo variabile

7

Link dal frame di controllo

2

Pagine e nomi di pagina

8

Variabili locali

3

Ricordare una pagina

9

Risparmiare variabili

4

Pagine temporanee

10

File multipli

5

Costanti

11

Riferimenti al documento

6

Funzioni

 

 

 

Pagine temporanee

Se una pagina viene presentata con la funzione mostra() anziché con vai(), non è necessario memorizzare la pagina di provenienza per poterci tornare: Idra la ricorderà automaticamente.

Anzi, in realtà dal suo punto di vista sarà come se la pagina non fosse affatto cambiata.

Per esempio, se diverse pagine contengono questa stessa riga:

scelta("Chiama aiuto via radio", "mostra(SOS)")

al lettore verrà proposta una normale scelta:

Facendo clic su questa scelta verrà eseguita l'istruzione JavaScript mostra(SOS) che richiamerà la pagina SOS(); quest'ultima potrebbe ad esempio contenere:

function SOS() {
  testo("<br>")
  titolo("Centro soccorso stellare")
  testo("Siamo spiacenti, l'assicurazione risulta non pagata.")
  continua("ridisegna()")
}

Il lettore vedrà quindi:

Facendo clic su "Continua" verrà però eseguita la funzione ridisegna(): essa ridisegnerà la pagina corrente, cioè appunto quella dalla quale si proveniva.

Lo stesso accade ad esempio se si salva la situazione: questa pagina SOS() è a tutti gli effetti una pagina fantasma che non sposta il 'segnalibro' dalla pagina corrente.

È importante usare ridisegna() invece che aggiorna() nelle pagine chiamate con mostra() perché aggiorna() esegue le istruzioni contenute nella pagina, mentre ridisegna() si limita a riproporla sul video com'era prima.

In queste pagine temporanee è bene non cambiare il valore delle variabili di gioco.

La funzione mostra(), a differenza di vai(), non chiamaIntestazione() PiePagina(); per questo motivo la prima linea dell'esempio fa uno stacco iniziale con <br>.

La stessa mostra() è anche usata da Idra stesso per presentare i propri messaggi, relativi ad esempio al salvataggio su disco.