ループに問題があります。もぐらたたきゲームです。まず、ほくろのさまざまな穴の位置を生成する for ループがあります。ループが(1)数値を生成する(2)生成を停止する(3)生成されたばかりの数値に基づいて、関数を実行するようにしたい。関数の実行が完了したら、(4) 別の数を生成する 2 番目のラウンドを開始し、9 ラウンド続きます。ここにコードがあります。
var molePosX:Array = [166.90, 494.8, 810.7];
var molePosY:Array = [282.55, 512.45, 730.35];
var moleInUse:Boolean = false;
if (moleInUse == false){
for(var i:uint = 1; i<10; i++){
var randomHole:Number = Math.floor(Math.random()*10)+1; //Generate 10 number
trace(randomHole);
}
}
switch (randomHole){
case 1: trace("1");
moleRun(molePosX[0],molePosY[0]);
break;
case 2: trace("2");
moleRun(molePosX[1],molePosY[0]);
break;
case 3: trace("3");
moleRun(molePosX[2],molePosY[0]);
break;
case 4: trace("4");
moleRun(molePosX[0],molePosY[1]);
break;
case 5: trace("5");
moleRun(molePosX[1],molePosY[1]);
break;
case 6: trace("6");
moleRun(molePosX[2],molePosY[1]);
break;
case 7: trace("7");
moleRun(molePosX[0],molePosY[2]);
break;
case 8: trace("8");
moleRun(molePosX[1],molePosY[2]);
break;
case 9: trace("9");
moleRun(molePosX[2],molePosY[2]);
break;
case 10: trace("10");
break;
}
function moleRun(xPos:Number,yPos:Number){
moleInUse = true;
var mole2:Mole = new Mole();
mole2.x = xPos;
mole2.y = yPos;
addChild(mole2);
moleInUse = false;
}
ありがとうございます!