幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!
看不懂啊 有木有教程....
大佬你哪个三系剑士的取色能不能也整个可以复制的
大佬腻害 谢谢大佬
这是剑灵的大佬吗
感谢分享
照着写吗有点难了 能给个TXT的么
大佬能看看这个虚幻三的怎么改虚幻四还能接着用么
SetTitleMatchMode, 2
id:=WinExist("剑灵 ahk_class LaunchUnrealUWindowsClient")
BindWindow(id) ; Unbind Window using Bindwindow(0)
SetKeyDelay,10
; #Include
full_command_line := DllCall("GetCommandLine", "str")
if not (A_IsAdmin or RegExMatch(full_command_line, " /restart(?!S)"))
{
try
{
if A_IsCompiled
Run *RunAs "%A_ScriptFullPath%" /restart
else
Run *RunAs "%A_AhkPath%" /restart "%A_ScriptFullPath%"
}
ExitApp
}
MsgBox,
IniRead,tj,取色值.txt,选项,t键
IniRead,zq,取色值.txt,选项,转圈
if(zq=err){
zq=800
}
StringReplace, tj, tj,{tab},tab,a
gosub,菜单
StringReplace, tj, tj,tab,{tab},a
F12::
v_Enable:=!v_Enable
If (v_Enable=0){
SetTimer, Label, Off
ToolTip, 关
}Else{
SetTimer, Label, 0
ToolTip, 开
}
Return
Label2:
if not(ok:=FindText(20, 49, 1911,510, 0.1, 0.1, Text)){
;~ ControlSend,, {left down},剑灵 ahk_class LaunchUnrealUWindowsClient
send {left down}
Sleep,100
;~ ControlSend,, {left up},剑灵 ahk_class LaunchUnrealUWindowsClient
send {left up}
}
Return
F8::
v_Enable1:=!v_Enable1
If (v_Enable1)=0 {
SetTimer, Label2, Off
}Else{
SetTimer, Label2, %zq%
}
Return
Label:
t1:=A_TickCount
Text:="|*77$38.zwDrwbw1a7zcy0P0zt7bwbDzNtsPTzmSQ4zzwrblDzzDs6E7zvy0I8zyTzZDDzbzBmNztznAWTyywr8bzi99GPzzCSGQzzbkAUTzvi66Dzznz0zzzwU"
Text5:="|*144$13.zzU0mGQ76339VIMYAIac1k5sEAzzzzk0807zz" ;交任务卷轴
Text1:="|*82$29.zzzzzibn0TA3a0zE26NzYwC7l8wk3U0943r/ktziL60TRgDbwX+E1sC4yTU01wzA03tzzzzrw" ;勇猛任务的“选择”
Text2:="|*73$56.zzzzjvjvzz7z03wswtzwzUDzDb00zDzny05rzzXy01yxtU7tTk0zDSTzyrzvy2560TAy0100BUDrjU0TjrPzttztznxo0QzDyTwzRTqTtzjzA7LxDzC3znzo0Tzzzzyzxzy" ;入手书信
Text3:="|*102$27.zzxzw0Ac3s7ltw1iTD0EW0805TbCSv1s06DzDyZ0/bxah00spjjrKhnUW00wDzzU" ;书信勇猛
Text4:="|*96$43.k01xq03s00yG01zbkz9zVzk1zlz7zz3zsznz000wE01btyQ800k00Arzbs007vznwzDnts3y001szbzDnwwDzzbtyQY01nvzAmPgv00DtRrQ001xivDyTwyrRbyTyyPinyDSQ800kTUCA008" ;接任务勇猛
if (ok:=FindText(20, 20, 2100,426, 0.1, 0.1, Text))
ControlSend,, %tj%,剑灵 ahk_class LaunchUnrealUWindowsClient
else {
if (ok:=FindText(1473,52, 1924,1106, 0.1, 0.1, Text5)){
WinActivate,剑灵 ahk_class LaunchUnrealUWindowsClient
X:=ok.1.x, Y:=ok.1.y
sleep 300
send,{alt down}
sleep 30
click ,%X%,%Y%
sleep 30
send,{alt up}
}
else if (ok:=FindText(334,670, 857,1081, 0.1, 0.1, Text4))
ControlSend,, f,剑灵 ahk_class LaunchUnrealUWindowsClient
else if (ok:=FindText(873,50, 1928,1102, 0.1, 0.1, Text3)){
WinActivate,剑灵 ahk_class LaunchUnrealUWindowsClient
X:=ok.1.x+220, Y:=ok.1.y,
sleep 300
click ,%X%,%Y%
}
else if (ok:=FindText(873,50, 1928,1102, 0.1, 0.1, Text2)){
WinActivate,剑灵 ahk_class LaunchUnrealUWindowsClient
X:=ok.1.x, Y:=ok.1.y
sleep 300
click ,%X%,%Y%
}
else if not (ok:=FindText(1505,49, 1928,1104, 0.3, 0.3, Text1))
ControlSend,, j,剑灵 ahk_class LaunchUnrealUWindowsClient
sleep 300
}
Return
;===== Copy The Following Functions To Your Own Code Just once =====
;--------------------------------
; FindText - Capture screen image into text and then find it
;--------------------------------
; X1, Y1 --> the search scope's upper left corner coordinates
; X2, Y2 --> the search scope's lower right corner coordinates
; err1, err0 --> Fault tolerance percentage of text and background (0.1=10%)
; Text --> can be a lot of text parsed into images, separated by "|"
; ScreenShot --> if the value is 0, the last screenshot will be used
; FindAll --> if the value is 0, Just find one result and return
; JoinText --> if the value is 1, Join all Text for combination lookup
; offsetX, offsetY --> Set the Max text offset for combination lookup
; ruturn --> the function returns a second-order array
; containing all lookup results, Any result is an associative array
; {1:X, 2:Y, 3:W, 4:H, x:X+W//2, y:Y+H//2, id:Comment},
; if no image is found, the function returns 0.
; All coordinates are relative to Screen, colors are in RGB format,
; and combination lookup must use uniform color mode
;--------------------------------
FindText( x1, y1, x2, y2, err1, err0, text, ScreenShot:=1
, FindAll:=1, JoinText:=0, offsetX:=20, offsetY:=10 )
{
local ; Unaffected by Super-global variables
bch:=A_BatchLines
SetBatchLines, -1
x:=(x1<x2 ? x1:x2), y:=(y1<y2 ? y1:y2)
, w:=Abs(x2-x1)+1, h:=Abs(y2-y1)+1
, xywh2xywh(x,y,w,h,x,y,w,h,zx,zy,zw,zh)
if (w<1 or h1 or A_Index>1)
err1:=0.1, err0:=0.05
if (JoinText)
{
j:=info[1], mode:=j.8, color:=j.9, n:=j.10
, w1:=-1, h1:=j.3, comment:="", v:="", i:=0
Loop, % num
{
j:=info[A_Index], w1+=j.2+1, comment.=j.11
Loop, 7
NumPut((A_Index=1 ? StrLen(v)
: A_Index=6 and err1 and !j.12 ? Round(j.4*err1)
: A_Index=7 and err0 and !j.12 ? Round(j.5*err0)
: j[A_Index]), input, 4*(i++), "int")
v.=j.1
}
ok:=PicFind( mode,color,n,offsetX,offsetY
, bits,sx,sy,sw,sh,gs,ss,v,s1,s0
, input,num*7,allpos,allpos_max )
Loop, % ok
pos:=NumGet(allpos, 4*(A_Index-1), "uint")
, rx:=(pos&0xFFFF)+zx, ry:=(pos>>16)+zy
, arr.Push( {1:rx, 2:ry, 3:w1, 4:h1
, x:rx+w1//2, y:ry+h1//2, id:comment} )
}
else
{
For i,j in info
{
mode:=j.8, color:=j.9, n:=j.10, comment:=j.11
, w1:=j.2, h1:=j.3, v:=j.1
Loop, 7
NumPut((A_Index=1 ? 0
: A_Index=6 and err1 and !j.12 ? Round(j.4*err1)
: A_Index=7 and err0 and !j.12 ? Round(j.5*err0)
: j[A_Index]), input, 4*(A_Index-1), "int")
ok:=PicFind( mode,color,n,offsetX,offsetY
, bits,sx,sy,sw,sh,gs,ss,v,s1,s0
, input,7,allpos,allpos_max )
Loop, % ok
pos:=NumGet(allpos, 4*(A_Index-1), "uint")
, rx:=(pos&0xFFFF)+zx, ry:=(pos>>16)+zy
, arr.Push( {1:rx, 2:ry, 3:w1, 4:h1
, x:rx+w1//2, y:ry+h1//2, id:comment} )
if (ok and !FindAll)
Break
}
}
if (err1=0 and err0=0 and num=1 and !arr.MaxIndex())
{
k:=0
For i,j in info
k+=(!j.12)
IfEqual, k, 0, Break
}
else Break
}
SetBatchLines, %bch%
return, arr.MaxIndex() ? arr:0
}
; Bind the window so that it can find images when obscured
; by other windows, it's equivalent to always being
; at the front desk. Unbind Window using Bindwindow(0)
BindWindow(window_id:=0, set_exstyle:=0, get:=0)
{
static id, old, Ptr:=A_PtrSize ? "UPtr" : "UInt"
if (get)
return, id
if (window_id)
{
id:=window_id, old:=0
if (set_exstyle)
{
WinGet, old, ExStyle, ahk_id %id%
WinSet, Transparent, 255, ahk_id %id%
Loop, 30
{
Sleep, 100
WinGet, i, Transparent, ahk_id %id%
}
Until (i=255)
}
}
else
{
if (old)
WinSet, ExStyle, %old%, ahk_id %id%
id:=old:=0
}
}
xywh2xywh(x1,y1,w1,h1, ByRef x,ByRef y,ByRef w,ByRef h
, ByRef zx:="", ByRef zy:="", ByRef zw:="", ByRef zh:="")
{
SysGet, zx, 76
SysGet, zy, 77
SysGet, zw, 78
SysGet, zh, 79
left:=x1, right:=x1+w1-1, up:=y1, down:=y1+h1-1
left:=leftzx+zw-1 ? zx+zw-1:right
up:=upzy+zh-1 ? zy+zh-1:down
x:=left, y:=up, w:=right-left+1, h:=down-up+1
}
GetBitsFromScreen(x, y, w, h, ScreenShot:=1
, ByRef zx:="", ByRef zy:="", ByRef zw:="", ByRef zh:="")
{
local ; Unaffected by Super-global variables
static hBM, oldzx, oldzy, oldzw, oldzh, bits:=[]
static Ptr:=A_PtrSize ? "UPtr" : "UInt"
static init:=!GetBitsFromScreen(0,0,0,0,1)
if (!ScreenShot)
{
zx:=oldzx, zy:=oldzy, zw:=oldzw, zh:=oldzh
return, bits
}
bch:=A_BatchLines, cri:=A_IsCritical
Critical
if (zw<1 or zholdzw or zh>oldzh or !hBM)
{
DllCall("DeleteObject", Ptr,hBM), hBM:="", bpp:=32
VarSetCapacity(bi, 40, 0), NumPut(40, bi, 0, "int")
NumPut(zw, bi, 4, "int"), NumPut(-zh, bi, 8, "int")
NumPut(1, bi, 12, "short"), NumPut(bpp, bi, 14, "short")
hBM:=DllCall("CreateDIBSection", Ptr,0, Ptr,&bi
, "int",0, Ptr "*",ppvBits, Ptr,0, "int",0, Ptr)
Scan0:=(!hBM ? 0:ppvBits), Stride:=((zw*bpp+31)//32)*4
bits.1:=Scan0, bits.2:=Stride
oldzx:=zx, oldzy:=zy, oldzw:=zw, oldzh:=zh
x:=zx, y:=zy, w:=zw, h:=zh
}
if (hBM) and !(w<1 or h<1)
{
win:=DllCall("GetDesktopWindow", Ptr)
hDC:=DllCall("GetWindowDC", Ptr,win, Ptr)
mDC:=DllCall("CreateCompatibleDC", Ptr,hDC, Ptr)
oBM:=DllCall("SelectObject", Ptr,mDC, Ptr,hBM, Ptr)
DllCall("BitBlt",Ptr,mDC,"int",x-zx,"int",y-zy,"int",w,"int",h
, Ptr,hDC, "int",x, "int",y, "uint",0x00CC0020|0x40000000)
DllCall("ReleaseDC", Ptr,win, Ptr,hDC)
if (id:=BindWindow(0,0,1))
WinGet, id, ID, ahk_id %id%
if (id)
{
WinGetPos, wx, wy, ww, wh, ahk_id %id%
left:=x, right:=x+w-1, up:=y, down:=y+h-1
left:=leftwx+ww-1 ? wx+ww-1:right
up:=upwy+wh-1 ? wy+wh-1:down
x:=left, y:=up, w:=right-left+1, h:=down-up+1
}
if (id) and !(w<1 or h<1)
{
hDC2:=DllCall("GetDCEx", Ptr,id, Ptr,0, "int",3, Ptr)
DllCall("BitBlt",Ptr,mDC,"int",x-zx,"int",y-zy,"int",w,"int",h
, Ptr,hDC2, "int",x-wx, "int",y-wy, "uint",0x00CC0020|0x40000000)
DllCall("ReleaseDC", Ptr,id, Ptr,hDC2)
}
DllCall("SelectObject", Ptr,mDC, Ptr,oBM)
DllCall("DeleteDC", Ptr,mDC)
}
Critical, %cri%
SetBatchLines, %bch%
return, bits
}
PicInfo(text)
{
static info:=[]
IfNotInString, text, $, return
if (info[text])
return, info[text]
v:=text, comment:="", e1:=e0:=0, set_e1_e0:=0
; You Can Add Comment Text within The
if RegExMatch(v,"]*)>",r)
v:=StrReplace(v,r), comment:=Trim(r1)
; You can Add two fault-tolerant in the [], separated by commas
if RegExMatch(v,"[([^]]*)]",r)
{
v:=StrReplace(v,r), r1.=","
StringSplit, r, r1, `,
e1:=r1, e0:=r2, set_e1_e0:=1
}
StringSplit, r, v, $
color:=r1, v:=r2 "."
StringSplit, r, v, .
w1:=r1, v:=base64tobit(r2), h1:=StrLen(v)//w1
if (w1<1 or h1>5&1) . (i>>4&1)
. (i>>3&1) . (i>>2&1) . (i>>1&1) . (i&1)
s:=StrReplace(s,A_LoopField,v)
}
ListLines, %lls%
StringCaseSense, Off
s:=SubStr(s,1,InStr(s,"1",0,0)-1)
s:=RegExReplace(s,"[^01]+")
return, s
}
bit2base64(s)
{
s:=RegExReplace(s,"[^01]+")
s.=SubStr("100000",1,6-Mod(StrLen(s),6))
s:=RegExReplace(s,".{6}","|$0")
Chars:="0123456789+/ABCDEFGHIJKLMNOPQRSTUVWXYZ"
. "abcdefghijklmnopqrstuvwxyz"
SetFormat, IntegerFast, d
lls:=A_ListLines=0 ? "Off" : "On"
ListLines, Off
Loop, Parse, Chars
{
i:=A_Index-1, v:="|" . (i>>5&1) . (i>>4&1)
. (i>>3&1) . (i>>2&1) . (i>>1&1) . (i&1)
s:=StrReplace(s,v,A_LoopField)
}
ListLines, %lls%
return, s
}
ASCII(s)
{
if RegExMatch(s,"$(d+).([w+/]+)",r)
{
s:=RegExReplace(base64tobit(r2),".{" r1 "}","$0`n")
s:=StrReplace(StrReplace(s,"0","_"),"1","0")
}
else s=
return, s
}
; You can put the text library at the beginning of the script,
; and Use PicLib(Text,1) to add the text library to PicLib()'s Lib,
; Use PicLib("comment1|comment2|...") to get text images from Lib
PicLib(comments, add_to_Lib:=0, index:=1)
{
static Lib:=[]
SetFormat, IntegerFast, d
if (add_to_Lib)
{
re:="]*)>[^$]+$d+.[w+/]+"
Loop, Parse, comments, |
if RegExMatch(A_LoopField,re,r)
{
s1:=Trim(r1), s2:=""
Loop, Parse, s1
s2.="_" . Ord(A_LoopField)
Lib[index,s2]:=r
}
Lib[index,""]:=""
}
else
{
Text:=""
Loop, Parse, comments, |
{
s1:=Trim(A_LoopField), s2:=""
Loop, Parse, s1
s2.="_" . Ord(A_LoopField)
Text.="|" . Lib[index,s2]
}
return, Text
}
}
PicN(Number, index:=1)
{
return, PicLib(RegExReplace(Number,".","|$0"), 0, index)
}
; Use PicX(Text) to automatically cut into multiple characters
; Can't be used in ColorPos mode, because it can cause position errors
PicX(Text)
{
if !RegExMatch(Text,"|([^$]+)$(d+).([w+/]+)",r)
return, Text
w:=r2, v:=base64tobit(r3), Text:=""
c:=StrLen(StrReplace(v,"0"))<=StrLen(v)//2 ? "1":"0"
wz:=RegExReplace(v,".{" w "}","$0`n")
SetFormat, IntegerFast, d
While InStr(wz,c)
{
While !(wz~="m`n)^" c)
wz:=RegExReplace(wz,"m`n)^.")
i:=0
While (wz~="m`n)^.{" i "}" c)
i++
v:=RegExReplace(wz,"m`n)^(.{" i "}).*","$1")
wz:=RegExReplace(wz,"m`n)^.{" i "}")
if (v!="")
Text.="|" r1 "$" i "." bit2base64(v)
}
return, Text
}
; Screenshot and retained as the last screenshot.
ScreenShot(x1:="", y1:="", x2:="", y2:="")
{
if (x1+y1+x2+y2="")
n:=150000, x:=y:=-n, w:=h:=2*n
else
x:=(x1<x2 ? x1:x2), y:=(y1<y2 ? y1:y2)
, w:=Abs(x2-x1)+1, h:=Abs(y2-y1)+1
xywh2xywh(x,y,w,h,x,y,w,h,zx,zy,zw,zh)
GetBitsFromScreen(x,y,w,h,1,zx,zy,zw,zh)
}
; Get the RGB color of a point from the last screenshot.
; If the point to get the color is beyond the range of
; Screen, it will return White color (0xFFFFFF).
ScreenShot_GetColor(x,y)
{
bits:=GetBitsFromScreen(0,0,0,0,0,zx,zy,zw,zh)
return, (xzx+zw-1 or yzy+zh-1 or !bits.1)
? "0xFFFFFF" : Format("0x{:06X}",NumGet(bits.1
+(y-zy)*bits.2+(x-zx)*4,"uint")&0xFFFFFF)
}
; Identify a line of text or verification code
; based on the result returned by FindText()
; Return Association array {ocr:Text, x:X, y:Y}
OcrOK(ok, offsetX:=20, offsetY:=20)
{
ocr_Text:=ocr_X:=ocr_Y:=min_X:=""
For k,v in ok
x:=v.1
, min_X:=(A_Index=1 or xmax_X ? x : max_X)
While (min_X!="" and min_X<=max_X)
{
LeftX:=""
For k,v in ok
{
x:=v.1, y:=v.2, w:=v.3, h:=v.4
if (xoffsetY
Continue
; Get the leftmost X coordinates
if (LeftX="" or xoffsetX ? "*":"") . LeftOCR
; Update min_X for next search
min_X:=LeftX+LeftW
}
return, {ocr:ocr_Text, x:ocr_X, y:ocr_Y}
}
; Sort the results returned by FindText() from left to right
; and top to bottom, ignore slight height difference
SortOK(ok, dy:=10)
{
if !IsObject(ok)
return, ok
SetFormat, IntegerFast, d
ypos:=[]
For k,v in ok
{
x:=v.x, y:=v.y, add:=1
For k2,v2 in ypos
if Abs(y-v2)len0 ? len1 : len0;
//----------------------
// Generate Lookup Table
for (j=0; j<num; j+=7)
{
o=o1=o2=input[j]; w2=input[j+1]; h2=input[j+2];
for (y=0; y<h2; y++)
{
for (x=0; x<w2; x++)
{
i=(mode==3) ? y*Stride+x*4 : y*sw+x;
if (text[o++]=='1')
s1[o1++]=i;
else
s0[o2++]=i;
}
}
}
// Color Position Mode
// This mode is not support combination lookup
// only used to recognize multicolored Verification Code
if (mode==3)
{
c=(c/w1)*Stride+(c%w1)*4;
sx1=sx+sw-w1; sy1=sy+sh-h1;
for (y=sy; y<=sy1; y++)
{
for (x=sx; x<=sx1; x++)
{
o=y*Stride+x*4; e1=err1; e0=err0;
j=o+c; rr=Bmp[2+j]; gg=Bmp[1+j]; bb=Bmp[j];
for (i=0; i<max; i++)
{
if (in && (--e1)<0)
goto NoMatch3;
}
if (i<len0)
{
j=o+s0[i]; r=Bmp[2+j]-rr; g=Bmp[1+j]-gg; b=Bmp[j]-bb;
if (3*r*r+4*g*g+2*b*b<=n && (--e0)<0)
goto NoMatch3;
}
}
allpos[ok++]=y<=allpos_max)
goto Return1;
NoMatch3:
continue;
}
}
goto Return1;
}
// Generate Two Value Image
o=sy*Stride+sx*4; j=Stride-4*sw; i=0;
if (mode==0) // Color Mode
{
rr=(c>>16)&0xFF; gg=(c>>8)&0xFF; bb=c&0xFF;
for (y=0; y<sh; y++, o+=j)
for (x=0; x<sw; x++, o+=4, i++)
{
r=Bmp[2+o]-rr; g=Bmp[1+o]-gg; b=Bmp[o]-bb;
ss[i]=(3*r*r+4*g*g+2*b*b<=n) ? 1:0;
}
}
else if (mode==1) // Gray Threshold Mode
{
c=(c+1)*128;
for (y=0; y<sh; y++, o+=j)
for (x=0; x<sw; x++, o+=4, i++)
ss[i]=(Bmp[2+o]*38+Bmp[1+o]*75+Bmp[o]*15<c) ? 1:0;
}
else if (mode==2) // Gray Difference Mode
{
for (y=0; y<sh; y++, o+=j)
{
for (x=0; x>7;
ss[i]=0;
}
}
sx1=sw-2; sy1=sh-2;
for (y=1; y<=sy1; y++)
for (x=1; xj || gs[i+1]>j
|| gs[i-sw]>j || gs[i+sw]>j
|| gs[i-sw-1]>j || gs[i-sw+1]>j
|| gs[i+sw-1]>j || gs[i+sw+1]>j )
ss[i]=1;
}
}
else // (mode==4) Color Difference Mode
{
r=(c>>16)&0xFF; g=(c>>8)&0xFF; b=c&0xFF;
rr=(n>>16)&0xFF; gg=(n>>8)&0xFF; bb=n&0xFF;
r_min=r-rr; g_min=g-gg; b_min=b-bb;
r_max=r+rr; g_max=g+gg; b_max=b+bb;
for (y=0; y<sh; y++, o+=j)
for (x=0; x=r_min && r=g_min && g=b_min && b<=b_max) ? 1:0;
}
}
// Start Lookup
sx1=sw-w1; sy1=sh-h1;
for (y=0; y<=sy1; y++)
{
for (x=0; x<=sx1; x++)
{
o=y*sw+x; e1=err1; e0=err0;
if (e0==len0)
{
for (i=0; i<len1; i++)
if (ss[o+s1[i]]!=1 && (--e1)<0)
goto NoMatch1;
}
else
{
for (i=0; i<max; i++)
{
if (i<len1 && ss[o+s1[i]]!=1 && (--e1)<0)
goto NoMatch1;
if (i<len0 && ss[o+s0[i]]!=0 && (--e0)7)
{
x1=x+w1-1; y1=y-offsetY; if (y1<0) y1=0;
for (j=7; j<num; j+=7)
{
o2=input[j]; w2=input[j+1]; h2=input[j+2];
len21=input[j+3]; len20=input[j+4];
err21=input[j+5]; err20=input[j+6];
sx2=sw-w2; i=x1+offsetX; if (i<sx2) sx2=i;
sy2=sh-h2; i=y+offsetY; if (i<sy2) sy2=i;
for (x2=x1; x2<=sx2; x2++)
{
for (y2=y1; y2<=sy2; y2++)
{
o1=y2*sw+x2; e1=err21; e0=err20;
for (i=0; i<len21; i++)
{
if (ss[o1+s1[o2+i]]!=1 && (--e1)<0)
goto NoMatch2;
}
if (e0!=len20)
{
for (i=0; i<len20; i++)
if (ss[o1+s0[o2+i]]!=0 && (--e0)<0)
goto NoMatch2;
}
goto MatchOK;
NoMatch2:
continue;
}
}
goto NoMatch1;
MatchOK:
x1=x2+w2-1;
}
}
//------------------
allpos[ok++]=(sy+y)<=allpos_max)
goto Return1;
// Clear the image that has been found
for (i=0; i<len1; i++)
ss[o+s1[i]]=0;
NoMatch1:
continue;
}
}
Return1:
return ok;
}
*/
;================= The End =================
F11::
MsgBox,按F12切换开关,F8切换旋转`n `n仅为1920*1080分辨率制作。且界面需按以下说明调节。`n按O打开游戏设置`n游戏/界面/无视因分辨率对界面大小的调节打√,界面大小调整为95。`n图像/画面亮度调节为50。`n视频教程B站搜索“飘渺闪电”
return
菜单:
Menu,Tray,NoStandard
Menu,Tray,DeleteAll
Menu,Tray,Add,&暂停/启用,zt
Menu,Tray,Add,&设置,用户界面
Menu,Tray,Add,&退出,tc
用户界面:
Gui, Add, Text, x10 y32 w80 h20 +Center, 打怪快捷键
Gui, Add, Text, x30 y10 w100 h20 +Center, F11查看简要说明
Gui, Add, Text, x10 y55 w130 h20 +Center, 转圈速度,填越大越慢
Gui, Add, Text, x20 y77 w130 h20 , 如200~2000
Gui, Add, Edit, x85 y76 w50 h20 Lowercase vzq -Multi, %zq%
Gui, Add, Edit, x85 y30 w50 h20 Lowercase vtj -Multi, %tj%
Gui, Add, Button, x50 y105 w70 h30 g确定, 确定
; Generated using SmartGuiXP Creator mod 4.3.29.0
Gui, Show, Center w150 h140, 刷勇猛
Return
GuiClose:
Gui Destroy
return
确定:
Gui,Submit ,NoHide
StringReplace, tj, tj,tab,{tab},a
IniWrite,%tj%,取色值.txt,选项,t键
IniWrite,%zq%,取色值.txt,选项,转圈
MsgBox 设置已保存
return
zt:
Suspend,Toggle
Pause,Toggle
tzxh=1
return
tc:
ExitApp
return
剑灵虚幻四了还能用么
谢谢分享?