JS实现仙剑翻牌记忆力小游戏(3)

disp('message','show');
        setClass(message,'message_' + type);
        setOpacity(message, opacity);
        setPosition(message, 'left', 0);
        setPosition(message, 'top', 390);

if(type=='start'){
            bgsound(type, true);
        }else{
            bgsound(type);
        }

var et = setInterval(function(){
            var message_left = getPosition(message,'left');
            processed = processed + 25;

if(processed>=500 && processed<=750){
                opacity = opacity+10;
                setPosition(message, 'left', message_left + 30);
                setOpacity(message, opacity);
            }else if(processed>=soundtime[type] && processed<=soundtime[type]+250){
                opacity = opacity-10;
                setPosition(message, 'left', message_left + 35);
                setOpacity(message, opacity);
            }else if(processed>soundtime[type]+250){
                disp('message','hide');
                clearInterval(et);
                if(typeof(callback)!='undefined'){
                    callback();
                }
            }

},25);
    }


    // 翻牌
    turn = function(id){
        if(is_lock==1){
            return ;
        }

var key = parseInt(id.replace('card',''));
   
        if(leveldata[key]['turn']==0){ // 未翻开
            if(first==-1){  // 第一次翻
                turn_animate(key);
                first = key;
                leveldata[key]['turn'] = 1;
            }else{  // 第二次翻
                turn_animate(key);
                leveldata[key]['turn'] = 1;
                check_turn(key);
            }
        }

}


    // 检查是否翻牌成功
    check_turn = function(key){
        is_lock = 1;

if(leveldata[first]['cardno']==leveldata[key]['cardno']){ // 配对成功
            matchnum ++;

if(matchnum==cardnum){
                var et = setTimeout(function(){
                    message('success', levelup);
                }, 225);
            }

first = -1;
            is_lock = 0;

}else{ // 配对失败,将翻开的牌翻转

var et = setTimeout(function(){
                    turn_animate(first);
                    leveldata[first]['turn'] = 0;
                    turn_animate(key);
                    leveldata[key]['turn'] = 0;

first = -1;
                   
                    if(is_over==0){
                        is_lock = 0;
                    }

}, 300);
        }
    }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/f6e1fa3c9fa876335238266061c36e03.html