usare una variabile nel nome di una variabile

Scripts e snippets scritti in GameMaker Language (gml)
Rispondi
Barnack
Membro attivo
Messaggi: 341
Iscritto il: 03/09/2013, 13:26
Specialità: Programmazione
Uso: GM:Studio 1.4 Pro
Contatta:

usare una variabile nel nome di una variabile

Messaggio da Barnack »

È un po' strana come cosa... Cerco di spiegarvi cosa mi servirebbe ma non riesco a fare...
Nel programma che sto facendo i dati vengono presi quando necessita da diversi files .ini
Ad esempio
var_w5hp => ini_open(weapons), ini_read_real(5,hp,0)
Quindi w è una variabile, ovver var_selectedclass, 5 un'altra che implica anche una classe, ovvero var_usedweapon.
Nella visualizzazione statistiche (classica dabella da rpg dove vedi le statistiche dell'oggetto equipaggiato a confronto con quelle dell'oggetto selezionato) avrei bisogno di una variabile il cui nome contenga delle variabili.
ES:
if var_selectedclass = "w"
draw_text(640,32,"HP +"var_w(var_usedweapon)hp)
come l'ho scritto ora ovviamente non funziona...
c'è un modo per farlo?

Utilizzo
GM: Studio Pro
C++ terminale
Batch
Jaschif

Spoiler
C++ WinApi / DirectX
C#



Avatar utente
gameplay_extreme
GMI VIP
Messaggi: 3824
Iscritto il: 13/11/2010, 16:23
Uso: GM:Studio 2
Contatta:

Re: usare una variabile nel nome di una variabile

Messaggio da gameplay_extreme »

esempio:
a = 5
b5 = 10 (il cinque cambia con il cambiare di a)

execute_string("b"+string(a)+"=10")

non compatibile con studio per motivi di differente compilazione
Immagine
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!

iscriviti qui gratuitamente a GMI !
Spoiler
- Una curiosità: come mai quell' ordine ?
- Perché formava una scaletta molto carina da vedere.


"ah ah...grazie alla annotazione scientifica ti ho fregato!"
(come disse la calcolatrice al display)

Avatar utente
Xxshark888xX
Membro d'elite
Messaggi: 1497
Iscritto il: 30/05/2012, 19:17
Specialità: Un poco di tutto
Uso: GM:Studio 1.4 Pro
Località: Earth
Contatta:

Re: usare una variabile nel nome di una variabile

Messaggio da Xxshark888xX »

Se ho ben capito cosa vuoi ottenere, potresti crearti degli script...
Contatti
Steam
Facebook

Gif
Spoiler
Immagine
Immagine
Immagine
Immagine

Barnack
Membro attivo
Messaggi: 341
Iscritto il: 03/09/2013, 13:26
Specialità: Programmazione
Uso: GM:Studio 1.4 Pro
Contatta:

Re: usare una variabile nel nome di una variabile

Messaggio da Barnack »

gameplay_extreme ha scritto:esempio:
a = 5
b5 = 10 (il cinque cambia con il cambiare di a)

execute_string("b"+string(a)+"=10")

non compatibile con studio per motivi di differente compilazione
Il succo di ciò sarebbe che con execute string il simbolo "+" non fa che aggiungere il contenuto di una variabile al testo lineare? :fapensare:
Se sì è perfetto, ora lo provo, grazie mille

Utilizzo
GM: Studio Pro
C++ terminale
Batch
Jaschif

Spoiler
C++ WinApi / DirectX
C#



Jak
Admin
Messaggi: 12355
Iscritto il: 19/08/2009, 16:20
Specialità: Programmazione 3D
Uso: GM:Studio 2
Contatta:

Re: usare una variabile nel nome di una variabile

Messaggio da Jak »

Secondo me stai sbagliando proprio ragionamento.
Leggiti sul manuale array e ds_list e capirai che quello che stai facendo è solo fatica sprecata e ci sono sistemi migliori per fare ciò che vuoi e, con un po di lavoro ed in base a cosa vuoi fare, pure con salvataggio automatico di tutto ;)
(parlo delle funzioni json, per gestire un'inventario sono molto utili)
Già che ci sei guardati tutte le data structure, le più importanti ed utili sono le ds_list, le ds_map, e le ds_grid ma per cominciare guardati gli array (ci metti un niente a passare dagli array alle ds_list/ds_grid e capisci un po di concetti utili)
Time to feel, time to believe
Dare to see what may come of our future
Lift your head, broaden your gaze
Speak your mind and your thoughts they will follow you

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti