Else
FHPMiss=0
EndIf
EndIf
Gosub DEBUGKEY
If ((debugon=1045 or debugon=995) and CharacherHpPositionY<=0) or LastDebugKey=191
MsgBox "前排生命条找不到:" & CharacherHpPositionX & "|" & CharacherHpPositionY,0,"检查战斗中(前排)的生命值"
EndIf
If FrontHpLow<0
//已经用道具~则跳过一次检测 - 已经更改!失效
FrontHpLow=FrontHpLow+1
Else
//ChangeContent "Tex5", "前:"CharacherHpPositionX & "|" & CharacherHpPositionY
If debugon=1045 or debugon=995
MsgBox "GetPixelColor(" & CharacherHpPositionX & "," & CharacherHpPositionY & ")=" & GetPixelColor(CharacherHpPositionX,CharacherHpPositionY),0,"检查战斗中的角色(前排)生命值"
EndIf
FrontHpLow=0
//IfColor 630,408,0000ff,2
If ColorCompare(GetPixelColor(CharacherHpPositionX+1,CharacherHpPositionY),"DEDFDE",15)
//IfColor 630+hppercent,408,ff,2
If ColorCompare(GetPixelColor(CharacherHpPositionX+hppercent,CharacherHpPositionY+3),"0000ff",15)
FrontHpLow=0
Else
FrontHpLow=1
EndIf
HpPosUnknow(0)=0
Else
If HpPosUnknow(0)>=2
FHPMiss=1
//MsgBox "FHPMiss"
Else
HpPosUnknow(0)=HpPosUnknow(0)+1
EndIf
EndIf
EndIf
Return
Sub 检查战斗中的前排法力值
If FrontMpLow<0
//已经用道具则跳过
FrontMpLow=FrontMpLow+1
Else
//IfColor 630,415,ad3031,0
If ColorCompare(GetPixelColor(CharacherHpPositionX+1,CharacherHpPositionY),"DEDFDE",15)
//IfColor 630+mppercent,415,ad3031,0
If ColorCompare(GetPixelColor(CharacherHpPositionX+mppercent,CharacherHpPositionY+10),"AD3031",15)
FrontMpLow=0
Else
FrontMpLow=1
EndIf
EndIf
EndIf
Return
Sub 检查战斗中的后排生命法力值
If PetHpPositionY<=0 or BHPMiss>0
VBSCall FindColor(701,400,719,491,"DEDFDE",PetHpPositionX,PetHpPositionY)
//MessageBox PetHpPositionY
If (ColorCompare(GetPixelColor(PetHpPositionX+40,PetHpPositionY+12),"DEDFDE",15)<=0 or ColorCompare(GetPixelColor(PetHpPositionX,PetHpPositionY),"DEDFDE",15)<=0)
BHPMiss=1
//MsgBox "BHPMiss"
Else
BHPMiss=0
EndIf
EndIf
If (debugon=1045 or debugon=995) and PetHpPositionY<=0
MsgBox "后排生命条找不到",0,"检查战斗中的宠物(后排)生命值"
EndIf
If BackHpLow<0
//如果宠物已经使用道具或治疗
BackHpLow=BackHpLow+1
Else
BackHpLow=0
//ChangeContent "Tex6", "前:"PetHpPositionX & "|" & PetHpPositionY
//IfColor 713,486,dedfde,2
If debugon=1045 or debugon=995
MsgBox "GetPixelColor(713,"& PetHpPositionY & "=" & GetPixelColor(PetHpPositionX,PetHpPositionY),0,"检查战斗中的宠物生命值"
EndIf
If ColorCompare(GetPixelColor(PetHpPositionX+1,PetHpPositionY),"dedfde",15)
//IfColor 713+hppercent,489,ff,2
If ColorCompare(GetPixelColor(PetHpPositionX+pethppercent,PetHpPositionY+3),"0000FF",15)
BackHpLow=0
Else
BackHpLow=1
EndIf
HpPosUnknow(1)=0
Else
//未检查到生命条2次,第3次重新查找
If HpPosUnknow(1)>=2
BHPMiss=1
Else
HpPosUnknow(1)=HpPosUnknow(1)+1
EndIf
EndIf
EndIf
//---------后排法力足够检查----------
If BackMpLow<0
//如果宠物已经使用道具或治疗
BackMpLow=BackMpLow+1
Else
BackMpLow=0
//IfColor 713,486,dedfde,2