LastFightingOperREC=Array(0,0)
    //前一次操作记录
    ExistPet(0) = -1
    //战斗在存在宠物
    LRCatchPetArr(2) = 0
    While fighting>0
        Plugin EnterBattleTimeArray(1)=GetSysInfo.GetTime()
        EnterBattleTimeMs=EnterBattleTimeArray(1)-EnterBattleTimeArray(0)
        //------------------------------------------------
        //操作分析
        //
        If fighting=1
            ActTex = "角色操作"
        ElseIf fighting=3
            ActTex = "宠物操作"
        ElseIf fighting=2
            ActTex = "等待"
        ElseIf fighting=-1
            ActTex = "世界地图画面"
        ElseIf fighting=0
            ActTex = "非战斗"
        Else 
            ActTex = fighting
        EndIf 
        //ChangeContent "Tex2", "计时:" & EnterBattleTimeMs
        //ChangeContent "Tex3", ActTex
        //ChangeContent "Tex4", "修正:" & Join(MapMonCr,",")
        //根据前一操作判断宠物是否死亡 - 连续角色操作,可再加操作相隔时间大于3秒限际
        If fighting=1 and LastFightingOperREC(0)=1
            // and EnterBattleTimeMs-LastFightingOperREC(1)>3000
            If PetIsDeathB<=0
                Gosub 检查宠物生命值是否为0
                If PetHpIsZero>0
                    PetIsDeathB=PetIsDeathB+1
                    If PetIsDeathB>0
                        //MsgBox "宠物死亡",0,"PetIsDeathB"
                        Gosub 宠物忠诚减10
                    EndIf 
                EndIf 
            EndIf 
        EndIf 
        If fighting=1 and LastFightingOperREC(0)=1 and EnterBattleTimeMs-LastFightingOperREC(1)<3000
            //MsgBox fighting & "|" & LastFightingOperREC(0) & "|" & EnterBattleTimeMs-LastFightingOperREC(1)
            Gosub 游戏特殊BUG消除Fr
            //Framework程序Flash播放器有效
            MapMonCr = Array(0,-30*Int(2*Rnd))
            //鼠标怪物不中怪物,用随机函数尝试
        EndIf 
        If fighting=3 and LastFightingOperREC(0)=3 and EnterBattleTimeMs-LastFightingOperREC(1)<3000
            Gosub 游戏特殊BUG消除Fr
            MapMonCr = Array(0,-30*Int(2*Rnd))
        EndIf 
        If EnterBattleTimeMs<15
            FightingCount = FightingCount+1
            ChangeContent "Tex5", "战斗:" & CStr(FightingCount)
            ChangeContent "Tex6", "精英:" & CStr(EliteFightingCount)
            ChangeContent "Tex7", "宠忠诚:" & PetFidelity
            ChangeContent "Tex8", "抓宠:" & LRCatchPetArr(1) & "/" & LRCatchPetArr(0)
        EndIf 
        If fighting<>2 And EnterBattleTimeMs>2000
            LastFightingOperREC=Array(fighting,EnterBattleTimeMs)
            //记录前一个有效操作(角色/宠物)与时间
        EndIf 
        //------------------------------------------------
        If fighting=1
            If EnterBattleTimeMs>5000
                //检查前等待0.5秒,防止前排HP MP 状态检查不正确.
                Delay 1000
            EndIf 
            //宠物攻击下不需检查,角色操作下检查
            Gosub 检查战斗中的前排生命值
            Gosub 检查战斗中的前排法力值
            Gosub 检查战斗中的后排生命法力值
            If CharacherAtFont>0
                If HpPosUnknow(0)<=0
                    CharacherHpLow=FrontHpLow
                    CharacherMpLow=FrontMpLow
                EndIf 
                If HpPosUnknow(1)<=0
                    PetHpLow=BackHpLow
                    PetMpLow=BackMpLow
                EndIf 
            Else 
                If HpPosUnknow(1)<=0
                    CharacherHpLow=BackHpLow
                    CharacherMpLow=BackMpLow
                EndIf 
                If HpPosUnknow(0)<=0
                    PetHpLow=FrontHpLow
                    PetMpLow=FrontMpLow
                EndIf 
            EndIf 
            //完成以上检查HP MP 状态
            //
            If EnterBattleTimeMs<=5000 And EliteMonster=0
                //战斗前5秒检查是否有精英怪物
                Gosub 检查战斗中是否有精英怪物
                If LRCatchPetArr(1)<=LRCatchPetArr(0)
                    Gosub 找宝宝测试S
                    //ChangeContent "Tex8", "找宝宝:" & Join(ExistPet,",")