0
因此,我對AS3真的很陌生,我試圖找出一個解決方案來結束我爲匹配遊戲創建的函數。當所有卡在陣列中用完時,我想讓功能結束。最簡單的方法是什麼?在AS3中結束包含數組的函數的最佳方法
private var games:Object = {
easy:{
tiledeck:[1,1,2,2]
,xOffset:450
,yOffset:320
,incrementX:200
,incrementY:200
,columns:2
,rows:2
}
,hard:{
tiledeck:[1,1,2,2,3,3,4,4]
,xOffset:235
,yOffset:320
,incrementX:200
,incrementY:200
,columns:4
,rows:2
}
};
public function KT(game:String){
buttonMode = true
var gameConfig = games[game];
var tiledeck:Array = gameConfig.tiledeck.concat();
for (var x=1; x<=gameConfig.columns; x++){
for (var y=1; y<=gameConfig.rows; y++){
var random_card = Math.floor(Math.random() * tiledeck.length);
var tile:animalTile = new animalTile();
tile.animal = tiledeck[random_card];
tiledeck.splice(random_card,1);
tile.gotoAndStop(5);
tile.x = (x - 1) * gameConfig.incrementX + gameConfig.xOffset;
tile.y = (y - 1) * gameConfig.incrementY + gameConfig.yOffset;
tile.addEventListener(MouseEvent.CLICK,tile_clicked);
addChild(tile);
}
}
}
你是什麼意思「陣列中所有的牌都用完了」?你的意思是什麼時候發行結束了?因爲我不知道你打算做什麼樣的紙牌遊戲,所以我有點難以幫你 – axelduch 2014-10-19 14:17:08
嗯,它不是已經結束了嗎?您的for循環是您函數中的最後一個語句....否則,您可以始終使用* return; *結束函數。 – Fygo 2014-10-19 23:18:12
這是一個匹配的紙牌遊戲。用戶選擇兩張卡進行匹配,並且該陣列持有用於匹配的卡。我在主時間線中設置了一個後退按鈕,以便在選擇時返回到開始屏幕。我遇到的問題是,如果用戶在完成該功能之前點擊返回按鈕,瓷磚仍會保留在開始菜單的屏幕上。所以我需要殺死這個功能,只要點擊這個按鈕。 – Rezonance 2014-10-20 01:02:35