记忆游戏中两张牌匹配时出现文本

时间:2019-05-25 18:12:53

标签: actionscript-3 flash air jquery-animate adobe

我创建了一个带有音乐作曲家图片的记忆游戏,翻转了卡片,以便您与正确的作曲家匹配,我要做的是每次玩家正确匹配作曲家名称时,就会出现作曲家名称。 并且一旦播放器与所有作曲家匹配,就会出现“您赢了”的消息,我该怎么办?

这是游戏的图片

Here is an image of the game

*颜色是动画片段的名称,并且在其中每帧都有每个作曲家的照片,而在最后一帧则有一张照片用于向下翻转的图片 * color_match是类名

enter code here package {
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.utils.Timer;
public class color_match extends Sprite {
    private var first_tile:colors;
    private var second_tile:colors;
    private var pause_timer:Timer;
    var colordeck:Array = new Array(1,1,2,2,3,3,4,4,5,5,6,6);
    public function color_match() {
        for (x=1; x<=4; x++) {
            for (y=1; y<=3; y++) {
                var random_card = Math.floor(Math.random()*colordeck.length);
                var tile:colors = new colors();
                tile.col = colordeck[random_card];
                colordeck.splice(random_card,1);
                tile.gotoAndStop(9);
                tile.x = (x-1)*115;
                tile.y = (y+1)*120;
                tile.addEventListener(MouseEvent.CLICK,tile_clicked);
                addChild(tile);
            }
        }
    }
    public function tile_clicked(event:MouseEvent) {
        var clicked:colors = (event.currentTarget as colors);
        if (first_tile == null) {
            first_tile = clicked;
            first_tile.gotoAndStop(clicked.col);
        }
        else if (second_tile == null && first_tile != clicked) {
            second_tile = clicked;
            second_tile.gotoAndStop(clicked.col);
            if (first_tile.col == second_tile.col) {
                pause_timer = new Timer(1000,1);
                pause_timer.addEventListener(TimerEvent.TIMER_COMPLETE,remove_tiles);
                pause_timer.start();
            }
            else {
                pause_timer = new Timer(1000,1);
                pause_timer.addEventListener(TimerEvent.TIMER_COMPLETE,reset_tiles);
                pause_timer.start();
            }
        }
    }
    public function reset_tiles(event:TimerEvent) {
        first_tile.gotoAndStop(9);
        second_tile.gotoAndStop(9);
        first_tile = null;
        second_tile = null;
        pause_timer.removeEventListener(TimerEvent.TIMER_COMPLETE,reset_tiles);
    }
    public function remove_tiles(event:TimerEvent) {
        removeChild(first_tile);
        removeChild(second_tile);
        first_tile = null;
        second_tile = null;
        pause_timer.removeEventListener(TimerEvent.TIMER_COMPLETE,remove_tiles);
    }
}

}

0 个答案:

没有答案