variable_exists in GM Studio

Scripts e snippets scritti in GameMaker Language (gml)
Rispondi
BotaniciTraffici
Membro attivo
Messaggi: 348
Iscritto il: 31/01/2014, 12:38
Specialità: Programmazione
Uso: GM:Studio 1.4 Master
Contatta:

variable_exists in GM Studio

Messaggio da BotaniciTraffici »

Con GM Studio le funzioni variable_local_exists e variable_global_exists non possono più essere utilizzate.

Il sistema che vado a proporre ci permette di controllare se una qualsiasi variabile esiste o meno, come abbiamo fatto prima di Studio.

Creiamo una room che deve partire per primissima e nel suo creation code inseriamo il codice:

Codice: Seleziona tutto

global.variabili=ds_list_create();
// Qui inseriamo nella lista il nome di ogni variabile che vorremo poi controllare
ds_list_add(global.variabili,"variabile1");
ds_list_add(global.variabili,"global.variabile1");
ds_list_add(global.variabili,"nomeistanza.variabile1");
//Poi passiamo direttamente alla room successiva
room_goto_next();
Se durante il gioco vogliamo aggiungere una variabile da controllare in futuro dovremo semplicemente aggiungere un'altro elemento alla lista

Codice: Seleziona tutto

ds_list_add(global.variabili,"variabile2");
Quando vogliamo controllare se una variabile esiste cerchiamo il suo nome all'interno della lista. Se la variabile non esiste ci verrà restituito -1, altrimenti la sua posizione nella lista.

Codice: Seleziona tutto

if (ds_list_find_index(global.variabili,"variabile_da_cercare")==-1) {
   // La variabile non esiste
   }
   else {
   // La variabile esiste
   }
Ricordiamoci a fine gioco di eliminare la lista

Codice: Seleziona tutto

ds_list_destroy(global.variabili);

Avatar utente
legogo
Membro attivo
Messaggi: 346
Iscritto il: 03/02/2014, 16:57
Specialità: fastidioso
Uso: GM:Studio 1.4 Free
Località: Cuneo(CN)
Contatta:

Re: variable_exists in GM Studio

Messaggio da legogo »

Non so quel che hai scritto, ma lo ho trovato interessante....

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti