Dim Hwnd
Call 注册插件
Call 绑定窗口
Rem kaishi
hp = 70 //保护血量百分比
mp = 30 //保护蓝量百分比
Call 保护
a = dm.GetColor(276, 36) //获取怪物名称框颜色
b = dm.GetColor(273, 34) //获取怪物血量底线颜色
If AC(A, "B1B1B1") = 1 OR AC(A, "CE6262") Then //如果怪物没人打或怪物是自己的则 AC为自定义函数实现两个颜色比较
If AC(B, "CE1302") = 1 Then //判断怪物是否死亡 如果没死则
dm.keypress 49
Delay 250
End If
End If
If AC(B, "CE1302") = 0 Then //如果怪物已经死亡则
dm.keypress 192
end if
Delay 100
Goto kaishi
Sub 保护
hp1 = HP + 63
mp1 = MP / 100 * 92 + 72
hpC = dm.GetColor(hp1, 34)
If ac(hpC, "414130") = 1 Then
DM.KEYPRESS 56
Delay 250
End If
MPC = dm.GetColor(mp1, 43)
If AC(MPC, "414130") = 1 Then
DM.KEYPRESS 55
Delay 250
End If
End Sub
Sub 打怪
End Sub
Sub 注册插件
PutAttachment ".\data","*.*"
set ws=createobject("Wscript.Shell")
ws.run "regsvr32 .\data\dm.dll /s"
set ws=nothing
Delay 1500
Set dm = CreateObject("dm.dmsoft")
ver = dm.Ver()
If len(ver) = 0 Then
MessageBox "创建对象失败,检查系统是否禁用了vbs脚本权限"
EndScript
End If
hwnd = dm.GetForegroundWindow()
End Sub
Sub 绑定窗口
dm_ret = dm.BindWindow(hwnd,"normal","normal","normal",0)
End Sub
Function AC(A, B)//判断两个颜色是否相同 接近或不同 (1 两个颜色相同 2 两个颜色接近 0 两个颜色不同)
L1 = LEN(trim(cstr(A)))
L2 = LEN(trim(cstr(B)))
If L1 < 6 Then
For I = 1 To 6 - L1
A="0"&A
Next
End If
If L2 < 6 Then
For I = 1 To 6 - L1
B="0"&B
Next
End If
A1 = INT("&H"&MID(A, 1, 2))
A2 = INT("&H"&MID(A, 3, 2))
A3 = INT("&H"&MID(A, 5, 2))
B1 = INT("&H"&MID(B, 1, 2))
B2 = INT("&H"&MID(B, 3, 2))
B3 = INT("&H"&MID(B, 5, 2))
If ABS(B1 - A1) < 5 AND ABS(B2 - A2) < 5 AND ABS(B3 - A3) < 5 Then
AC = 1
//两个颜色相同
ElseIf ABS(B1 - A1) < 50 AND ABS(B2 - A2) < 50 AND ABS(B3 - A3) < 50 Then
AC = 2
//两个颜色接近
Else
AC = 0
//两个颜色不同
End If
End Function |