SA-MP Forums Archive
Dynamic Variable Naming / Variable Variables / Indirect Variable Access - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Dynamic Variable Naming / Variable Variables / Indirect Variable Access (/showthread.php?tid=348239)



Dynamic Variable Naming / Variable Variables / Indirect Variable Access - Redgie - 04.06.2012

I've been told this is impossible in C so I have very little hope it's possible in P, but what I'm trying to do is use this for a textdraw system, whereby the name the variable containing the textdraw is referenced dynamically, such as:

Storing the Textdraw Variable names
pawn Code:
new Array[1][1] = {
{"ArrayName"}
};
Referencing the Variable Name
pawn Code:
new Text:Array[0][0] = TextDrawCreate(blaa blaa);
Obviously this doesn't work, but any idea on a system that would achieve similar results? What I'm trying to achieve is a none-static system, otherwise applying the textdraw effects has to be done on individual textdraw names which is not an option...

If this isn't a clear enough explanation, it is somewhat achieved with PHP's $$Variable system.


Re: Dynamic Variable Naming / Variable Variables / Indirect Variable Access - ViniBorn - 04.06.2012

Is this?
pawn Code:
new Text:TextDrawID[2];

TextDrawID[0] = TextDrawCreate(...);
TextDrawID[1] = TextDrawCreate(...);



Re: Dynamic Variable Naming / Variable Variables / Indirect Variable Access - MP2 - 04.06.2012

He means using a string as a variable name, I assume. No this isn't possible as far as I know, as variable names are only pre-compile, they 'disappear' (for lack of a better word..) at compile time.


Re: Dynamic Variable Naming / Variable Variables / Indirect Variable Access - Redgie - 04.06.2012

Yeah that's what I thought. Only alternative I've been able to come up with so swap the variable names with array indexes, but going to experiment with this tomorrow.