Hello Everybody,:beer2:
I´m very confused with this peace of code During the runtime It somehow changed content of constant i have created.
here is fla:
var _currentBlock:Tetris_Shape;
trace(Tetris_Shape._POS_IN_GRID); **[COLOR=Red]//output 3,1,3,2,3,3,3,4,3,1,3,2,3,3,2,3,2,1,2,2,2,3,3,3,3,3,3,2,2,2,2,3,2,3,3,3,3,2,2,4,[COLOR=RoyalBlue]2,3,3,3,4,3,3,2,[/COLOR]3,3,2,3,2,2,1,2[/COLOR]**
var someArray:Array = Tetris_Shape.rewriteBlockData(5, Tetris_Shape._POS_IN_GRID);
trace(Tetris_Shape._POS_IN_GRID);**[COLOR=Red] //output 3,1,3,2,3,3,3,4,3,1,3,2,3,3,2,3,2,1,2,2,2,3,3,3,3,3,3,2,2,2,2,3,2,3,3,3,3,2,2,4,[COLOR=RoyalBlue]2,2,2,3,2,4,3,3,[/COLOR]3,3,2,3,2,2,1,2[/COLOR]**
and here is as:
package {
public class Tetris_Shape {
public static const _POS_IN_GRID:Array = new Array(
[[3,1],[3,2],[3,3],[3,4]],
[[3,1],[3,2],[3,3],[2,3]],
[[2,1],[2,2],[2,3],[3,3]],
[[3,3],[3,2],[2,2],[2,3]],
[[2,3],[3,3],[3,2],[2,4]],
[[2,3],[3,3],[4,3],[3,2]],
[[3,3],[2,3],[2,2],[1,2]]
);
public static function rewriteBlockData (number:uint, carrier:Array):Array {
var mirroredNumbers:Array = new Array(5,4,3,2,1,0);
var easyNum:uint;
for(var i:uint = 0; i<4; i++){
easyNum = carrier[number]*[0];
carrier[number]*[0] = mirroredNumbers[carrier[number]*[1]];
carrier[number]*[1] = easyNum;
}
return carrier;
}
}
}
Thank you for eventually responses >:)