按键精灵+大漠插件 打boss(脚本demo4)

野生程序猿-杂烧4年前随意分享657

前面介绍了大漠插件,这里再来个复杂点的,这个是4开刷副本

//初始化数据

//地图信息
//副本坐标
ditux = -230
dituy = -190
//难度坐标
nandux = -320
nanduy = 70

//角度力度
jiaodu = 20
lidu = 30
jiaodutiaohao=0

Set dm = createobject("dm.dmsoft")
hwnd = dm.GetMousePointWindow()

Delay 5500

base_path = dm.GetBasePath()

dm_ret = dm.BindWindow(hwnd, "gdi", "windows", "windows", "0")
dm_ret = dm.SetPath(base_path)
dm_ret = dm.SetDict(0,"jiaodu.txt")


Rem 开始循环检查进入副本


//激活窗口
Call Plugin.WindowEx5_01.SendMouse(hwnd, 3, 100, 100) //鼠标中击
//Call Plugin.WindowEx5_01.SendMouse(hwnd, 0, 22, 22)
Delay 200
//Call Plugin.WindowEx5_01.SendMouse(hwnd, 0, 75, 175)	
Call Plugin.WindowEx5_01.SendMouse(hwnd, 1, 22, 22)	
//Call Plugin.WindowEx5_01.SetFakeActive(hwnd, 0)

Delay 1200


//出错  确定


//副本空白  主号设置副本
	dm_ret = dm.FindPic(0,0,1920,1080,"D:\DDT\cs1\suijiditu.bmp","000000",0.9,0,myx1,myy1)
	
	If myx1 > 0 And myy1 > 0 Then 
		
	
		Delay 200
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 0, myx1, myy1)
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 1, myx1, myy1)
		
		Delay 800
		//选择地图
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 0, myx1+ditux, myy1+dituy)
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 1, myx1+ditux, myy1+dituy)
		
		//选择难度
		Delay 800
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 0, myx1+nandux, myy1+nanduy)
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 1, myx1+nandux, myy1+nanduy)

		//选择难度
		Delay 800
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 0, myx1-125, myy1+133)
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 1, myx1-125, myy1+133)
		
	End If
	





//准备按钮 付好准备
	dm_ret = dm.FindPic(0, 0, 1920, 1080, "D:\DDT\cs1\zhunbei.bmp", "000000", 0.9, 0, myxks, myyks)
	
	If myxks > 0 And myyks > 0 Then 
		Delay 800
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 0, myxks, myyks)
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 1, myxks, myyks)	
		jiaodutiaohao=0 //初始化调角度
		
	End If
	
	
//开始按钮 开始
	dm_ret = dm.FindPic(0, 0, 1920, 1080, "D:\DDT\cs1\kaishi.bmp", "000000", 0.9, 0, myxks, myyks)
	
	If myxks > 0 And myyks > 0 Then 
	
		dm_ret = dm.FindPic(0,0,1920,1080,"D:\DDT\cs1\suijiditu.bmp","000000",0.9,0,myx1,myy1)
		
		If myx1 > 0 And myy1 > 0 Then 
			
		
		Else 
		//
		Delay 800
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 0, myxks, myyks)
		Call Plugin.WindowEx5_01.SendMouse(hwnd, 1, myxks, myyks)	
		End If
			
			
		jiaodutiaohao=0 //初始化调角度
		
	End If





//准备按钮 准备
//第一关图+道具  调角度 并赋值力度

	If jiaodutiaohao = 0 Then 
		
		dm_ret = dm.FindPic(0, 0, 1920, 1080, "D:\DDT\cs1\xiaoji_1.bmp", "000000", 0.8, 0, myx_guan1, myy_guan1)
		If myx_guan1 > 0 And myy_guan1 > 0 Then 
		
			//当找到道具调整角度
			
			//dm_ret = dm.FindPic(0, 0, 1920, 1080, "D:\DDT\cs1\daoju.bmp", "000000", 0.9, 0, myx_dj1, myy_dj1)
			
			//If myx_dj1 > 0 And myy_dj1 > 0 Then 
			//MessageBox myx_dj1
				//当找到道具调整角度
				nowjiaodu = chajiaodu()
				
				//Call huanjiaodu(nowjiaodu, 26)
				jiaodutiaohao = 1
				lidu = 13
				
				
				
			//End If
	
			
		End If
		
	End If

//第一关图+pass  根据赋值打击 加个延迟
	
	dm_ret = dm.FindPic(0,0,1920,1080,"D:\DDT\cs1\pass.bmp","000000",0.7,0,x_pass,y_pass)
	
	If x_pass > 0 And y_pass > 0 Then 
    	Call Plugin.WindowEx5_01.SendKey(hwnd,0,49,0) //1
    	Call Plugin.WindowEx5_01.SendKey(hwnd,0,52,0) //4
		Delay 1500
		daji(lidu)
		Delay 3000	

	End If


//第2关图+道具1  调角度 并赋值力度

	If jiaodutiaohao = 0 Then 
		
		dm_ret = dm.FindPic(0, 0, 1920, 1080, "D:\DDT\cs1\xiaoji_2_1.bmp", "000000", 0.8, 0, myx_guan1, myy_guan1)
		If myx_guan1 > 0 And myy_guan1 > 0 Then 
		
    		Call Plugin.WindowEx5_01.SendKey(hwnd,0,37,0) //左
				nowjiaodu = chajiaodu()
				
				Call huanjiaodu(nowjiaodu, 17)
				Delay 500
				If nowjiaodu < 18 Then 
					Call huanjiaodu(nowjiaodu, 17)
					jiaodutiaohao = 1
					lidu = 70
				Else 
					jiaodutiaohao = 1
					lidu = 50
									
				End If
			
		End If
		
	End If

//第2关图+道具2  调角度 并赋值力度

	//If jiaodutiaohao = 0 Then 
		
		dm_ret = dm.FindPic(0, 0, 1920, 1080, "D:\DDT\cs1\xiaoji_2_2.bmp", "000000", 0.8, 0, myx_guan1, myy_guan1)
		If myx_guan1 > 0 And myy_guan1 > 0 Then 
		Delay 2000
			dm_ret = dm.FindPic(0, 0, 1920, 1080, "D:\DDT\cs1\xiaoji_2_2.bmp", "000000", 0.8, 0, myx_guan2, myy_guan2)
			If myx_guan2 > 0 And myy_guan2 > 0 Then 
    			Call Plugin.WindowEx5_01.SendKey(hwnd,0,39,0) //右
				Delay 100
    			Call Plugin.WindowEx5_01.SendKey(hwnd,0,39,0) //右
				Delay 100
						Call huanjiaodu(nowjiaodu, 21)
				lidu = 60
			End If
		End If
	//End If







Goto 开始循环检查进入副本

Sub OnScriptExit()
    dm_ret = dm.UnBindWindow() 
End Sub


Function chajiaodu()


	
	dm_ret = dm.FindPic(0,0,1920,1080,"D:\DDT\cs1\shezhi.bmp","000000",0.9,0,intX1,intY1)
	
	If intX1 > 0 And intY1 > 0 Then 

		
 		x1 = intX1 -917
 		y1 = intY1 + 547
 		
 		x2 = intX1 -880
 		y2 = intY1 + 570
		chajiaodu = dm.Ocr(x1, y1, x2, y2, "000000-000000", 0.8)
		
		If chajiaodu <> "" Then 
		chajiaodu=chajiaodu-1+1
		Else 
		chajiaodu=10
		End If
		
	End If
	
End Function


Function huanjiaodu(nowjiaodu,tojiaodu)
	If nowjiaodu > tojiaodu Then 
		imax = nowjiaodu - tojiaodu
		
		For i=1 To imax   
    		Delay 80
    		Call Plugin.WindowEx5_01.SendKey(hwnd,0,40,0) //下
		Next  	
			
	End If
	
	If nowjiaodu < tojiaodu Then 
		imax = tojiaodu - nowjiaodu

		
		For i=1 To imax   
    		Delay 80
    		
    		Call Plugin.WindowEx5_01.SendKey(hwnd,0,38,0) //上

		Next  	
			
	End If	
End Function


Function daji(lidu)
	dm_ret = dm.FindPic(0,0,1920,1080,"D:\DDT\cs1\shezhi.bmp","000000",0.9,0,shezhix, shezhiy)

	If shezhix > 0 And shezhiy > 0 Then 
		qishifalidianx = shezhix - 802
		qishifalidiany = shezhiy + 576
			
			
		//1个力是50像素 判断力度点修正5像素(liduyansex/y)
		liduyansex = qishifalidianx + 5 * lidu - 5
		liduyansey = qishifalidiany
		
		liduyanse = dm.GetColor(liduyansex, liduyansey)
		Call Plugin.WindowEx5_01.SendKey(hwnd,1,32,0) //按下空格键
		
		Delay 300

		For i=0 to 9999 step 2   
    		Delay 100   
    		If dm.GetColor(liduyansex, liduyansey) <> liduyanse Then 
    		//
    		
    			Call Plugin.WindowEx5_01.SendKey(hwnd,2,32,0) //弹起空格键
        		Exit For   
    		Else 
    			 
    		End If  
		Next 


	
	End If
End Function


相关文章

按键精灵调用大漠插件后台挂机

大漠插件dmsoft,是一个dll调用的插件,很多语言支持调用,可以用来开发外挂脚本。它的主要优势是后台,就是把窗口拖到屏幕外也能挂机,是一款性能不错的插件。很多图色类外挂脚本都是基于改插件开发的。按...

按键精灵+大漠插件 打boss(脚本demo3)

前面介绍了大漠插件,这里再来个复杂点的,这个是 4个号多开刷任务Sub 初始巡检() //判断是否出于英雄之门界面 Delay 10000 MoveTo 40...

按键精灵+大漠插件 打boss(脚本demo2)

前面介绍了大漠插件,这里再来个复杂点的打boss脚本Rem 开始循环检查进入副本 //激活窗口 Call Plugin.WindowEx5_01.SendMouse(h...