You could do it the old "Basic" way.
Use a string and break the string down with system "text" expressions.
This way you can build a (Q , d) array.
If u set the string as a private variable, this variable is differend for each instance, there is the (d) depht in your string.
The (Q) Que is the position in the string.
Now i dont know if u know how the acces system expressions. So excuse me for "over explaining".
Give an object a private variable called TheQue, type "text", intial value "0"
I allways give it a value at layout startup, so when you restart the layout, everything gets reset, and its polite to yourself to define variables in the events sheet. But thats up to you.
Now just for this lil "tutorial" make one system event "always"
Make a new action, acces the private variable 'TheQue' to change its value.
Now where u normal would type a value. We will put a system expression. Thats easy as:
On the bottom of the wizzard u find the objects listed again, including the system object.
Click system object. Now you have all expressions listed for the system object listed.
Look for text.
There u see "get left substring". Clicking it will bring "left(String, Count)" in the value field.
String got to be the private variable 'TheQue'. You get that out of the expressions, and the same way, of the object u gave the private variable to. This will give you something like "Sprite.Value('Variable name')", where Variable name will be TheQue. ('TheQue').
Count will be 1 for the first character in the string.
So to get the first in Que, it will be something like
left(Sprite.Value('TheQue''),1)
To add to the Que. Lets assume your initial value is numeric. Look voor the system expression "convert value to string" This returns "str(Value)" .. where u change value to ur value, or the value as an expression as getting a global variable, or private variable, even object.X or object.angle.
so add to the Que will be.
Sprite.Value('TheQue'') + str(value)
delete the first in Que will be
right(String, (len(String)-1))
or in your case
right(Sprite.Value('TheQue'') , (len(Sprite.Value('TheQue'') )-1))
Hope this helped you, or gave you a new direction to work to.
j0h