我正在使用ActionScript 3中的拖放游戏。
当我点击新游戏时,对象保持匹配,而不是原始位置。
如何在新游戏开始时重置其位置?
var dragArray:Array = [square_word, circle_word, triangle_word];
var matchArray:Array = [squareMatch, circleMatch, triangleMatch];
var posArray:Array = [ {x:276, y:207}, {x:443, y:207}, {x:107, y:207} ];
var dragGame:DragGame = new DragGame(stage, dragArray, matchArray, posArray);
dragGame.addEventListener(DragGame.MATCH_MADE, onMatch);
dragGame.addEventListener(DragGame.NO_MATCH, onFlub);
dragGame.addEventListener(DragGame.ALL_DONE, onDone);
function onMatch(event:Event):void {
var matchSound:Sound = new MatchSound();
matchSound.play();
}
function onFlub(event:Event):void {
var flubSound:Sound = new FlubSound();
flubSound.play();
}
function onDone(event:Event):void {
var applause:Sound = new Applause();
applause.play();
}
答案 0 :(得分:0)
如果posArray是square_word,circle_word,triangle_word的原始位置,你只需要在DragGame的构造函数中使用posArray在dragArray中设置对象的x和y;
如果不是
使用变量originalPos在star star game之前保持dragArray中对象的原始位置。 originalPos可以是字典,比如
originalPos[square_word] = {x:100, y:100};
当您开始新游戏时,将originalPos传递给DragGames的构造函数,然后您可以使用originalPos中的数据设置quare_word,circle_word,triangle_word的x和y。