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