Simple question, but I don't have a galaxy compiler to check.
Does galaxy support double arrays for variables? If not, is there a simple way to go about making something similar?
Thanks!
In script you can actively change the size of the array, which is an awesome freedom you don't get while using the GUI. You don't have to make an array the size of 1000 to put 5 units in because you don't know who many there are going to be :)
And don't tell me unit groups, that was just an example for all you technical people out there.
Um, no it's not. Unless Galaxy isn't as much like C# as I thought. (Which is very possible. I avoid Galaxy as much as I can, because I map to NOT code)
Edit: Oh wow I worded that first post wrong. My bad. I don't mean actively change the size of the array itself, I mean you can define arrays based on what you need. You still have to use integers, not variables when specifying the length.
And do they have Array Lists in Galaxy? Or is that Java, not C#? I haven't actually written code for months, I can't even remember :S
Thanks for the help! and sorry for the delay, I've been gone on a trip.
So what you're saying zelda (and possibly TacoManStan) is that if you define variable fixed[3] randomfixed; that you can then make it a fixed[xxx] later?
If so how do you go about doing that? I've run into problems when going outside the array.
No, that isn't the way that arrays work in Galaxy. I think TacoManStan was saying he worded his initial post badly so it sounded like he was saying that.
My understanding is that all arrays are static in Galaxy. In order to have arrays that could adjust their size in the middle of execution, we would need to have pointers for dynamic memory allocation (because an array is really just a pointer to the first element in the array). No pointers means no dynamic arrays.
In short: all arrays in Galaxy must be defined to a constant size when you instantiate them, and that size can never change. So, make sure you declare it to be large enough to hold whatever data you need, but not much larger than that because you will start wasting a lot of resources.
Simple question, but I don't have a galaxy compiler to check. Does galaxy support double arrays for variables? If not, is there a simple way to go about making something similar? Thanks!
If by double array you mean TempVar[i][ii]
then yes you can do this all day long........ should really try simple stuff like this prior to asking ... takes like 1 second to do
if you mean something else completely then ... knowing how to program in over 6 languages you have lost me with the term ... "double array"
Rollback Post to RevisionRollBack
Skype
KageNinpo = SN
My Libraries
DialogLeaderboard & TeamSort
My Projects
SPACEWAR Tribute
Infinite TD
Well I re-read my first post, and it isn't just poorly worded, it's just plain wrong.
You can access data from the array with a variable/constant, but not define one. What I was saying in the first post is that you can set the size of an array based on what you need, which is just plain incorrect. To be honest I'm not sure why I said that... it was probably late, and I was probably really tired.
But yeah, what everyone else has been saying :D
Rollback Post to RevisionRollBack
Great to be back and part of the community again!
To post a comment, please login or register a new account.
Simple question, but I don't have a galaxy compiler to check. Does galaxy support double arrays for variables? If not, is there a simple way to go about making something similar? Thanks!
@Juxtapozition: Go
Yup. You can have anything up to 4-dimensions if you want. Like Variable [1] [1] [1] [1]. That would be a huge variable O.o
Copied this from the FAQ, felt it was relevant for you to know:
"Galaxy is only capable of addressing 2 MB worth of data..." "Avoid doing things like int[100][500] as it actually allocates 50,000 ints."
@Louberg: Go
Indeed. It's unwise to use any more space than you need. You can always bump up the array size if you run out of space.
In script you can actively change the size of the array, which is an awesome freedom you don't get while using the GUI. You don't have to make an array the size of 1000 to put 5 units in because you don't know who many there are going to be :)
And don't tell me unit groups, that was just an example for all you technical people out there.
Great to be back and part of the community again!
Your statement is false, my dear tacomanstan
Go play Antioch Chronicles Remastered!
Also, coming soon, Antioch Episode 3: Thoughts in Chaos!
Dont like mapster's ugly white? Try Mapster's Classic Skin!
@Alevice: Go
Um, no it's not. Unless Galaxy isn't as much like C# as I thought. (Which is very possible. I avoid Galaxy as much as I can, because I map to NOT code)
Edit: Oh wow I worded that first post wrong. My bad. I don't mean actively change the size of the array itself, I mean you can define arrays based on what you need. You still have to use integers, not variables when specifying the length.
And do they have Array Lists in Galaxy? Or is that Java, not C#? I haven't actually written code for months, I can't even remember :S
Great to be back and part of the community again!
Thanks for the help! and sorry for the delay, I've been gone on a trip.
So what you're saying zelda (and possibly TacoManStan) is that if you define variable fixed[3] randomfixed; that you can then make it a fixed[xxx] later? If so how do you go about doing that? I've run into problems when going outside the array.
And also Array Lists are Java. lol
@Juxtapozition: Go
No, that isn't the way that arrays work in Galaxy. I think TacoManStan was saying he worded his initial post badly so it sounded like he was saying that.
My understanding is that all arrays are static in Galaxy. In order to have arrays that could adjust their size in the middle of execution, we would need to have pointers for dynamic memory allocation (because an array is really just a pointer to the first element in the array). No pointers means no dynamic arrays.
In short: all arrays in Galaxy must be defined to a constant size when you instantiate them, and that size can never change. So, make sure you declare it to be large enough to hold whatever data you need, but not much larger than that because you will start wasting a lot of resources.
@Juxtapozition: Go
If by double array you mean TempVar[i][ii]
then yes you can do this all day long........ should really try simple stuff like this prior to asking ... takes like 1 second to do
if you mean something else completely then ... knowing how to program in over 6 languages you have lost me with the term ... "double array"
what part of he didnt have a galaxy compiler to check you didnt unerstand
Go play Antioch Chronicles Remastered!
Also, coming soon, Antioch Episode 3: Thoughts in Chaos!
Dont like mapster's ugly white? Try Mapster's Classic Skin!
anyway, i think it is good to know how it works.
(not sure about const syntax, but i think you get it)
is really 10*15=150 integers. So we can define
and use it like that:
good to know, because we can store many more data structures in flat arrays (like heaps, bt-trees, kd-trees...) using simple arithmetics.
Thanks everybody. I was kinda wondering because I thought you did have to have a set number for the array size.
Well I re-read my first post, and it isn't just poorly worded, it's just plain wrong.
You can access data from the array with a variable/constant, but not define one. What I was saying in the first post is that you can set the size of an array based on what you need, which is just plain incorrect. To be honest I'm not sure why I said that... it was probably late, and I was probably really tired.
But yeah, what everyone else has been saying :D
Great to be back and part of the community again!