import FMSkeletonExtend from "../../../FrameWork/Component/FMSkeletonExtend";
import { ryw_Event } from "../../../FrameWork/Event/EventEnum";
import EventMgr from "../../../FrameWork/Event/EventMgr";
import Common from "../../../FrameWork/Util/Common";
import Common5 from "../../../Platform/th/Common5";
import Game from "../../../Scripts/WenZiRes/ui/Game";


const {ccclass, property} = cc._decorator;

@ccclass
export default class NewClass extends cc.Component {
    @property(cc.Node)
    private timeNode:cc.Node = null; 
    @property(cc.Node)
    private gameNode:cc.Node = null; 
    @property(cc.Node)
    private content:cc.Node = null;  
    @property(cc.Node)
    private failNode:cc.Node = null; 
    bundle = null
    onLoad () { 
        this.bundle = Common5.gameConfig.zmGameConfig[Common5.selectGameNum].bundle
        Common.Type = 0;
        Common.subLevel = 0;
        Common.GameSubTipConfigs=[Common5.gameConfig.zmGameConfig[Common5.selectGameNum].toolTip]
        Common.GameSubAnswerConfigs=[Common5.gameConfig.zmGameConfig[Common5.selectGameNum].answer]
         this.node.getChildByName('bg').active = false;
    }

    start () { 
        EventMgr.onEvent_custom(ryw_Event.timeOut, (tab) => {
           this.func_fail(); 
        }, this);
        this.setTimeNode(); 

        this.content.children.forEach(p=>{ 
            this.gameNodeOn(p); 
        }) 
        this.gameNodeOn(this.gameNode.getChildByName('chongzi'))
        this.gameNodeOn(this.gameNode.getChildByName('deye').getChildByName('pingzi'))

        this.gameStop = true;
        let deye = this.gameNode.getChildByName('deye');
        let deyePos = this.gameNode.getChildByName('deyePos').getPosition();
        this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).loop = true;
        this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).animation = '1zoulu';
        deye.x = this.node.width + 150;
        //这里需要同步播放语音:老铁们,今天捕获野生大美女一枚
        //       播放美女语音:救救我吧
        cc.tween(this.gameNode.getChildByName('deye'))
            .to(2.0,{x:deyePos.x, y:deyePos.y})
            .call(()=>{ 
                this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).loop = true;
                this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).animation = '4daiji';
                this.playEffectYuYin('老铁们',3.8,()=>{
                    this.playEffectYuYin('救救我吧', 1.5,()=>{
                        this.gameStop = false;
                    })
                }) 
            })
        .start()
    } 
    setTimeNode(){
        let worldPos = this.timeNode.getPosition()
        Game.ins.setTimePos(worldPos.x,worldPos.y)
        Game.ins.setTimeScale(0.7)
    }
    
    private gameNodeOn(p:cc.Node){ 
        p.on(cc.Node.EventType.TOUCH_START, this.touchStart, this);
        p.on(cc.Node.EventType.TOUCH_MOVE, this.touchMove, this);
        p.on(cc.Node.EventType.TOUCH_END, this.touchEnd, this);
        p.on(cc.Node.EventType.TOUCH_CANCEL, this.touchEnd, this);
    }
    private gameNodeOff(p:cc.Node){
        p.off(cc.Node.EventType.TOUCH_START, this.touchStart, this);
        p.off(cc.Node.EventType.TOUCH_MOVE, this.touchMove, this);
        p.off(cc.Node.EventType.TOUCH_END, this.touchEnd, this);
        p.off(cc.Node.EventType.TOUCH_CANCEL, this.touchEnd, this);
    }

    
    private currDrop:any = null;
    private isTouched:boolean = false; 
    private touchTime = Date.now();
    private oldPos:cc.Vec2 = null;
    private oldIndex:number = -1; 
    private gameStop = false;

    private touchStart(event: cc.Event.EventTouch){ 
        if(this.isTouched) return; 
        if(this.gameStop) return; 
        this.isTouched = true; 
        Common5.playEffect('click') 
        let node = event.target as cc.Node;   
        this.currDrop = node;
        this.oldPos = this.currDrop.getPosition(); 
        this.oldIndex = this.currDrop.zIndex; 
        //this.currDrop.zIndex = cc.macro.MAX_ZINDEX; 
        this.touchTime = Date.now();
        this.gameNode.parent.getChildByName('tools').getComponent(cc.ScrollView).enabled = false;
    } 
    private touchMove(event: cc.Event.EventTouch){  
        if(this.currDrop == null) return;  
        if(this.gameStop) return;    
        let nodeLoc = event.getLocation()
        let nodePos = event.target.parent.convertToNodeSpaceAR(nodeLoc)  
        this.currDrop.setPosition(nodePos);  
    }

 
    private isCao = false;
    private isMutou = false;
    private isChanzi = false;
    private isDaxiang = false;
    private isBu = false;
    private isShengzi = false;
    private isLangyabang = false;
    private isKaorou = false;
    private isChuan = false;
    private isYaoshui = false;
    private isJieshui = false;
    private isHeshui = false;

    //判断火是否点燃
    isHuoBurn = false;

    private touchEnd(event: cc.Event.EventTouch){   
        this.gameNode.parent.getChildByName('tools').getComponent(cc.ScrollView).enabled = true; 
        if(this.currDrop == null) return;  
        if(this.gameStop) return; 

        /* 草 ok */if(this.currDrop.name == 'cao' && !this.isCao){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('deye').getChildByName('zuiba'), this.currDrop)){
                
                this.isCao = true;
                this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).loop = true; 
                this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).animation = '5caoyao';
                cc.tween(this.gameNode.getChildByName('deye'))
                    .delay(1.0)
                    .call(()=>{
                        let posNew = this.gameNode.getChildByName('deyeNew').getPosition();
                        this.gameNode.getChildByName('deye').setPosition(posNew);
                        this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).loop = false; 
                        this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).animation = '6tucaoyao';
                        this.playEffectYinxiao('德爷吐草药', 1.0)
                    })
                    .delay(1.0)
                    .call(()=>{
                        let posOld = this.gameNode.getChildByName('deyePos').getPosition();
                        this.gameNode.getChildByName('deye').setPosition(posOld);
                        this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).loop = true; 
                        this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).animation = '4daiji';

                        //this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = false;
                        //this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '2daiji+yaocao'; 
                    })
                    .delay(1.0)
                    .call(()=>{
                        this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = true;
                        this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '9dou+caoyao'; 
                    })
                    .delay(1.0)
                    .call(()=>{
                        this.playEffectYuYin('非你不嫁', 3.0, ()=>{
                            // this.isCao = true;
                            //this.gameNode.getChildByName('wuyun').active = true;
                            this.wuyun_pro();
                        })
                    })
                    
                .start();

            }else{
                this.isTouched = false;
            }
        }
        /* 木头 ok */else if(this.currDrop.name == 'mutou' && !this.isMutou){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('mucai'), this.currDrop)){
                this.gameNode.getChildByName('mucai').active = true;
                this.gameNode.getChildByName('mucai').getComponent(FMSkeletonExtend).loop = true;
                this.gameNode.getChildByName('mucai').getComponent(FMSkeletonExtend).animation = '1mucai'
                this.isTouched = false;
                this.isMutou = true;
            }else{
                this.isTouched = false;
            }
        }
        /* 铲子,少砸美女的音效+挖坑的音效 */else if(this.currDrop.name == 'chanzi' && !this.isChanzi){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('lieheng').getChildByName('kongdi'), this.currDrop) && !this.isDaxiang){
                this.gameNode.getChildByName('lieheng').active = false;
                this.gameNode.getChildByName('daxiang').active = true;
                this.gameNode.getChildByName('daxiang').getComponent(FMSkeletonExtend).animation = '1wakeng' 
                this.playEffectYinxiao('挖土', 0.9)
                this.isDaxiang = true;
                cc.tween(this.gameNode.getChildByName('daxiang'))
                    .delay(0.6)
                    .call(()=>{ 
                        this.playEffectYinxiao('挖土', 0.9)
                    })
                    .delay(0.6)
                    .call(()=>{ 
                        this.playEffectYinxiao('挖土', 0.9)
                    })
                    .delay(0.6)
                    .call(()=>{ 
                        this.playEffectYinxiao('挖土', 0.9)
                    })
                    .delay(0.6)
                    .call(()=>{  
                    })
                    .delay(0.6)
                    .call(()=>{  
                    })
                    .call(()=>{
                        this.isTouched = false;
                    })
                .start();
            }else if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop) ){
                this.gameStop = true;
                let oldLoop = this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop
                let oldAni = this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation
                this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = false;
                this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '8+chanzi'
                this.playEffectYinxiao('铲子狼牙棒打人', 2.0)
                cc.tween(this.gameNode.getChildByName('meinv'))
                    .delay(1.0)
                    .call(()=>{
                        this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = oldLoop;
                        this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = oldAni;
                        this.playEffectYuYin('干嘛砸人家',2.4,()=>{
                           this.func_fail();
                        })
                    })
                .start();
                //这里会有铲子砸头
                //这里美女会说:干嘛砸人家
                //这里会失败
                this.isTouched = false;
            }
            else{
                this.isTouched = false;
            }
        }
        /* 布 少一个美女尖叫音效 */else if(this.currDrop.name == 'bu' && !this.isBu && this.isDaxiang){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('daxiang'), this.currDrop)){
                this.gameNode.getChildByName('daxiang').getComponent(FMSkeletonExtend).animation = '3gaibu'
                this.gameStop = true;
                cc.tween(this.gameNode.getChildByName('daxiang'))
                    .delay(1.0)
                    .call(()=>{
                        this.gameNode.getChildByName('daxiang').getComponent(FMSkeletonExtend).animation = '5daxiang'
                        this.playEffectYinxiao('大象叫', 2.4)
                    })
                    .delay(3.0)
                    .call(()=>{
                        //美女尖叫
                        //失败
                        //this.isTouched = false;
                        this.playEffectYinxiao('美女尖叫',2.3,()=>{
                           this.func_fail();
                        })
                    })
                .start()
            }else{
                this.isTouched = false;
            }
        }
        /* 绳子 ok */else if(this.currDrop.name == 'shengzi' ){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('shuzi'), this.currDrop) && !this.isShengzi){
                this.gameNode.getChildByName('yang').active = true;
                this.gameNode.getChildByName('yang').getComponent(FMSkeletonExtend).animation = 'shenzi'
                cc.tween(this.gameNode.getChildByName('yang'))
                    .delay(1.0)
                    .call(()=>{
                        this.gameNode.getChildByName('yang').getComponent(FMSkeletonExtend).animation = 'shenzi+yangrou'
                        //这里会说德爷我来了
                        this.playEffectYuYin('上吊来了', 2.0)
                    })
                    .delay(2.0)
                    .call(()=>{
                        this.gameNode.getChildByName('yang').getChildByName('rou1').active = true;
                        this.gameNode.getChildByName('yang').getComponent(FMSkeletonExtend).animation = 'shenzi'
                        this.gameNodeOn(this.gameNode.getChildByName('yang').getChildByName('rou1'))
                        this.isTouched = false;
                        this.isShengzi = true;
                    })
                .start()


            }else if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop)){
                this.gameNode.getChildByName('shengzi').active = true;
                this.gameNode.getChildByName('shengzi').getComponent(FMSkeletonExtend).animation = 'chou';
                this.playEffectYinxiao('绳子抽打',3.0);
                this.gameStop = true;
                cc.tween(this.gameNode.getChildByName('shengzi'))
                    .delay(1.0)
                    .call(()=>{
                        //美女会说抽人家干嘛
                        //失败
                        //this.isTouched = false;
                        this.playEffectYuYin('干嘛抽人家', 2.5, ()=>{
                           this.func_fail();
                        })
                    })
                .start()
            }else{
                this.isTouched = false;
            }
        }
        /* 狼牙棒 缺少相应的音效 */else if(this.currDrop.name == 'langyabang'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop) && this.currDrop.getChildByName('langyabang').active){
                this.gameNode.getChildByName('bangzi1').active = true;
                this.playEffectYinxiao('铲子狼牙棒打人', 2.0)
                this.gameStop = true;
                cc.tween(this.gameNode.getChildByName('bangzi1'))
                    .delay(1.0)
                    .call(()=>{
                        //美女说干嘛打人家
                        //失败
                        //this.isTouched = false;
                        this.playEffectYuYin('干嘛砸人家', 2.5, ()=>{
                           this.func_fail()
                        })
                    })
                .start();
            }else if(Common5.checkContainsNode(this.gameNode.getChildByName('shitou').getChildByName('area'), this.currDrop) && this.currDrop.getChildByName('langyabang').active && !this.isLangyabang){
                this.gameNode.getChildByName('bangzi2').active = true; 
                this.playEffectYinxiao('磨铁棒', 2.0)
                this.isLangyabang = true;
                cc.tween(this.gameNode.getChildByName('bangzi2'))
                    .delay(2.0)
                    .call(()=>{
                        this.gameNode.getChildByName('bangzi2').getComponent(FMSkeletonExtend).loop = false;
                        this.gameNode.getChildByName('bangzi2').getComponent(FMSkeletonExtend).animation = '2bileizhen'
                    })
                    .delay(1.5)
                    .call(()=>{ 
                        //this.gameNode.getChildByName('bangzi2').getComponent(FMSkeletonExtend).animation = '2bileizhen'
                        this.gameNode.getChildByName('bangzi2').active = false;
                        this.content.getChildByName('langyabang').getChildByName('langyabang').active = false
                        this.content.getChildByName('langyabang').getChildByName('bileizhen').active = true
                        //this.gameNode.getChildByName('bangzi3').active = true;
                        this.isTouched = false;
                    })
                .start();
            }else if(Common5.checkContainsNode(this.gameNode.getChildByName('shitou').getChildByName('area'), this.currDrop) 
                    && this.currDrop.getChildByName('bileizhen').active 
                    && !this.gameNode.getChildByName('bangzi3').active )
            {
                this.gameNode.getChildByName('bangzi3').active = true;
                this.isTouched = false;
            }
            else{
                this.isTouched = false;
            }

        }
        /* 羊肉1 ok */else if(this.currDrop.name == 'rou1'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('kaoroumugan'), this.currDrop)){
                this.currDrop.active = false;
                this.gameNode.getChildByName('kaoroumugan').active = true;
                if(this.isHuoBurn){
                    cc.tween(this.gameNode.getChildByName('kaoroumugan'))
                        .delay(0.5)
                        .call(()=>{
                            this.gameNode.getChildByName('kaoroumugan').getChildByName('yangrou').getComponent(FMSkeletonExtend).animation = 'yangrou2' 
                        })
                        .delay(3.0)
                        .call(()=>{
                            this.gameNode.getChildByName('kaoroumugan').getChildByName('yangrou').active = false;
                            this.gameNode.getChildByName('kaoroumugan').getChildByName('kaorou').active = true;
                            this.gameNodeOn(this.gameNode.getChildByName('kaoroumugan').getChildByName('kaorou'))
                            this.isTouched = false;
                        })
                    .start()
                }else{
                    this.isTouched = false;
                }
            }else{
                this.isTouched = false;
            }
        }
        /* 烤肉 ok */else if(this.currDrop.name == 'kaorou'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop)){
                this.currDrop.active = false;
                this.isKaorou = true;
                this.gameNode.getChildByName('kaoroumugan').active = false;
                this.playEffectYuYin('做牛做马', 3.0, ()=>{
                    this.wuyun_pro();
                })
                //美女吃完烤肉,会发誓
            }else{
                this.isTouched = false;
            }
        }
        /* 割草的刀 ok */else if(this.currDrop.name == 'liandao'){
            if(this.gameNode.getChildByName('cao').active && Common5.checkContainsNode(this.gameNode.getChildByName('cao'), this.currDrop)){
                this.gameNode.getChildByName('liandao').active = true;
                cc.tween(this.gameNode)
                    .delay(2.0)
                    .call(()=>{
                        this.gameNode.getChildByName('cao').active = false;
                        this.gameNode.getChildByName('liandao').active = false;
                        this.gameNodeOn(this.gameNode.getChildByName('chuan'));
                        this.isTouched = false;
                    })
                .start()
            }else{
                this.isTouched = false;
            }
        }
        /*船 ok*/else if(this.currDrop.name == 'chuan'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('bg').getChildByName('shui'), this.currDrop) && !this.isChuan){
                this.gameNode.getChildByName('chuan').active = false;
                this.gameNode.getChildByName('chuan1').active = true;
                //如果美女治好了腿,吃了肉,就跳到船上,船开
                //播放 我先走了,有缘再见。
                //游戏成功
                this.isTouched = false;
                this.isChuan = true;
            }else{
                this.isTouched = false;
            }
        }
        /*头盔*/else if(this.currDrop.name == 'toukui'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('bg').getChildByName('shui'), this.currDrop) && !this.isYaoshui){
                this.isYaoshui = true;
                this.gameNode.getChildByName('maozi').active = true;
                cc.tween(this.gameNode.getChildByName('maozi'))
                    .delay(1.0)
                    .call(()=>{
                        this.gameNodeOn(this.gameNode.getChildByName('maozi'))
                        this.isTouched = false;
                    })
                .start()
            }else if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop) && !this.isHuoBurn)
            {
                this.playEffectYuYin('湿湿的', 2.3)
                this.isTouched = false;
            }else if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop) && this.isHuoBurn){
                this.gameNode.getChildByName('meinv').getChildByName('toukui').active = true;
                this.isTouched = false;
            }
            // else if(Common5.checkContainsNode(this.gameNode.getChildByName('yikecao').getChildByName('area'), this.currDrop)){
            //     this.gameNode.getChildByName('maozi1').active = true;
            //     this.gameNodeOn(this.gameNode.getChildByName('maozi1'))
            //     this.isJieshui = true;
            //     this.isTouched = false;
            // }
            else{//yikecao
                this.isTouched = false;
            }
        }
        /* 接水的帽子 */
        // else if(this.currDrop.name == 'maozi1'){
        //     if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop)){
        //         this.currDrop.active = false; 
        //         this.isTouched = false;
        //     }else{
        //         this.isTouched = false;
        //     }
        // }
        /* 装满海水的帽子 缺少语音 */else if(this.currDrop.name == 'maozi'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop)){
                this.currDrop.active = false;
                this.gameStop = true;
                this.isHeshui = true;
                this.playEffectYuYin('真解渴啊', 1.2, ()=>{
                    //this.func_fail
                    //this.tucaihong();
                    this.isTouched = false;
                }) 
            }else{
                this.isTouched = false;
            }
        }
        /* 信号枪 */else if(this.currDrop.name == 'qiang'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('bg'), this.currDrop)){
                this.currDrop.active = false;
                this.gameStop = true;
                this.gameNode.getChildByName('qiang').active = true;
                this.playEffectYinxiao('信号弹',1.5)
                cc.tween(this.gameNode)
                    .delay(1.0)
                    .call(()=>{
                        this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).loop = false;
                        this.gameNode.getChildByName('deye').getComponent(FMSkeletonExtend).animation = '7shangfeiji'
                        this.playEffectYinxiao('直升机_1', 3.0)
                    })
                    .delay(3.0)
                    .call(()=>{
                        this.gameNode.getChildByName('deye').active = false;
                        this.playEffectYuYin('别扔下我',2.2,()=>{
                           this.func_fail();
                        })
                    })
                .start();
            }else{
                this.isTouched = false;
            }
        }
        
        /* 德爷腰间的矿泉水瓶 */else if(this.currDrop.name == 'pingzi'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop)){
                //播放:味道怪怪
                this.gameStop = true;
                this.playEffectYuYin('这味道怪怪的',1.2,()=>{
                    this.tucaihong();
                    // let oldAni = this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation
                    // let oldLoop = this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop;
                    // this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = true;
                    // this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '5outu'
                    // cc.tween(this.gameNode.getChildByName('meinv'))
                    //     .delay(2.0)
                    //     .call(()=>{
                    //         this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = oldLoop;
                    //         this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = oldAni
                    //     })
                    //     .delay(1.0)
                    //     .call(()=>{
                    //         this.isTouched = false;
                    //        this.func_fail()
                    //     })
                    // .start()
                })
                this.currDrop.active = false;
            }
            else{
                this.isTouched = false;
            }
        }
        /* 虫子 */else if(this.currDrop.name == 'chongzi'){
            if(Common5.checkContainsNode(this.gameNode.getChildByName('meinv').getChildByName('area'), this.currDrop)){
                
                //播放:高蛋白,但是吃不饱的
                this.playEffectYuYin('高蛋白',2.2,()=>{
                    
                    this.isTouched = false;
                })
                this.currDrop.active = false;
            }
            else{
                this.isTouched = false;
            }
        }
        /* 美女 */
        if(this.currDrop.name == 'meinv'){
            let d = Common5.makeNodeDistance_custom(this.currDrop, this.gameNode.getChildByName('chuan1'))
            if(d < 100){
                this.gameNode.getChildByName('chuan1').active = false;
                this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = false;
                this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '7shangchuan';

                console.log('stop==============')
                this.gameStop = true;
                this.playEffectYuYin('有缘再见', 3.0, ()=>{
                    Game.ins.showSuccess()
                })
            }else{
                this.isTouched = false;
            }
        }
        else{
            this.isTouched = false;
        }
       
        this.currDrop.setPosition(this.oldPos)
        this.currDrop.zIndex = this.oldIndex;
        this.currDrop = null;
        this.oldPos = null;
        this.gameStop = false;
        this.detect();
    }

 
    private wuyun_pro(){
        this.gameNode.getChildByName('wuyun').active = true;
        //如果木头已经摆好,且没有点燃 
        if(this.gameNode.getChildByName('bangzi3').active){
            this.gameNode.getChildByName('wuyun').getComponent(FMSkeletonExtend).animation = '3pibileizhen'
        }
        else if(this.isMutou && this.gameNode.getChildByName('mucai').getComponent(FMSkeletonExtend).animation == '1mucai'){
            console.log('pihuo');
            this.gameNode.getChildByName('wuyun').getComponent(FMSkeletonExtend).animation = '2picaihuo' 
        }else{ 
            this.gameNode.getChildByName('wuyun').getComponent(FMSkeletonExtend).animation = '1piren'
        }

        this.playEffectYinxiao('打雷声_1', 1.0)
        cc.tween(this.gameNode.getChildByName('deye'))
            .delay(2.0)
            .call(()=>{
                this.gameNode.getChildByName('wuyun').active = false;
                //如果木头已经摆好,且没有点燃
                if(this.gameNode.getChildByName('bangzi3').active){
                    //闪电给了避雷针
                }
                else if(this.isMutou && this.gameNode.getChildByName('mucai').getComponent(FMSkeletonExtend).animation == '1mucai'){
                    this.gameNode.getChildByName('mucai').getComponent(FMSkeletonExtend).loop = true;
                    this.gameNode.getChildByName('mucai').getComponent(FMSkeletonExtend).animation = '2huoyan'
                    this.isHuoBurn = true 
                    
                    this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = true;
                    this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '3daiji+yaocao'; 

                    if(this.isHuoBurn && this.gameNode.getChildByName('kaoroumugan').active){
                        cc.tween(this.gameNode.getChildByName('kaoroumugan'))
                            .delay(0.5)
                            .call(()=>{
                                this.gameNode.getChildByName('kaoroumugan').getChildByName('yangrou').getComponent(FMSkeletonExtend).animation = 'yangrou2' 
                            })
                            .delay(3.0)
                            .call(()=>{
                                this.gameNode.getChildByName('kaoroumugan').getChildByName('yangrou').active = false;
                                this.gameNode.getChildByName('kaoroumugan').getChildByName('kaorou').active = true;
                                this.gameNodeOn(this.gameNode.getChildByName('kaoroumugan').getChildByName('kaorou'))
                            })
                        .start()
                    }

                }else{
                    //闪电给了美女
                    this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '6zhamao'
                    //失败
                    cc.tween(this.gameNode.getChildByName('meinv'))
                        .delay(1.0)
                        .call(()=>{
                            this.gameStop = true;
                           this.func_fail();
                        })
                    .start()
                }
                this.isTouched = false;
            })
        .start()
    }
    private tucaihong(){
        let oldAni = this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation
        let oldLoop = this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop;
        this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = true;
        this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '5outu'
        cc.tween(this.gameNode.getChildByName('meinv'))
            .delay(2.0)
            .call(()=>{
                this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).loop = oldLoop;
                this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = oldAni
            })
            .delay(1.0)
            .call(()=>{
                this.isTouched = false;
                //this.func_fail
               this.func_fail();
            })
        .start()
    }
    
    private isZhengchang = false;
    private detect(){
          if(this.isCao && this.isKaorou && !this.isZhengchang){
            this.isZhengchang = true
            this.gameNode.getChildByName('meinv').getComponent(FMSkeletonExtend).animation = '4daiji+zhengchang';
          }

          if(this.isCao && this.isKaorou && this.isHeshui && this.gameNode.getChildByName('chuan1').active){
            this.gameNodeOn(this.gameNode.getChildByName('meinv')) 
          }

    }
    
    private func_fail(){
        console.log('游戏结束==================================')
        this.gameStop = true;
        this.failNode.active = true;
        this.failNode.getChildByName('w').active = true;
        this.failNode.getChildByName('w').scale = 0.1
        cc.tween(this.failNode.getChildByName('w'))
            .to(1.0, {scale:1.2})
            .delay(0.5)
            .call(()=>{
                // cc.director.loadScene("WordScene");
                Game.ins.showFail()
            })
        .start()
        
    } 

    private isPlayEffect = true; 
    private totalScore = 0; 
    private playEffectYuYin(name, time, cb=null){
        //休得无礼1300
        this.isPlayEffect = true;
        Common5.playEffectCustom(this.bundle,'sound/语音/' + name)
        cc.tween(this.gameNode)
            .delay(time)
            .call(()=>{
                this.isPlayEffect = true;
                if(cb != null){
                    cb();
                }
            })
        .start();
    }
 
    private playEffectYinxiao(name, time, cb=null){
        //休得无礼1300
        this.isPlayEffect = true;
        Common5.playEffectCustom(this.bundle,'sound/音效/' + name)
        cc.tween(this.gameNode.getChildByName('bg'))
            .delay(time)
            .call(()=>{
                this.isPlayEffect = true;
                if(cb != null){
                    cb();
                }
            })
        .start();
    }
    
}