Problem with sending arguments through a function.

In my game, I have a 3 dimensional array called threeWay. In the update event, you can see in the code below that if a coordinate is set to true, then it will perform the function called DrawTheMesh with the inputs of x, y, and z. Unforunatly, when I ask the function to do something (located at the “do stuff here” portion of the code), it thinks the the inputs x, y, and z are objects, not boolean numbers. I tested it by asking it to print variable x during gameplay, and it claimed that x was an object! Does anyone have any idea why?

var threeWay : boolean[,,] = new boolean[6,6,6];

function Update () {
for(/*var*/ z=0;z<6;z++) {
for(/*var*/ y=0;y<6;y++) {
for(/*var*/ x=0;x<6;x++) {

if(threeWay[x,y,z] == true)
{
DrawTheMesh(x,y,z);
}
}}}}

function DrawTheMesh(x,y,z) {
//do stuff here
}

Aren't x,y and z integers? I say this because you are iterating through them in the for loop?

1 Answer

1

Try this:

function DrawTheMesh(x : boolean, y : boolean, z : boolean) {
//do stuff here
}

Thank you very much. I have spent 2 days trying to solve this, never realizing that the answer was so simple.