昨天看到同学在玩大家来找茬,一时兴起,打算自己写个辅助工具。其实游戏很简单,就是找出两幅图片中的不同之处。游戏规则了解了,那外挂的思路也就很明朗了只要对比两幅图片的像素,有不相同就存储进数组就可以了。有了思路,就开工吧!
首先用FindWindow获取大家来找茬的窗口指针,获取窗口大小,可以支持两个版本——大家来找茬和美女来找茬,其实就是窗口大小不同,图片大小不同。(我没有实现美女来找茬版本,大家可以自己尝试一下)
这个函数就可以实现在自己的界面上显示两幅图片的不同之处,可如果要实现模拟鼠标单击游戏窗口的事件,还需要几步。
思路是这样的,在点击鼠标的时候用GetCursorPos获取鼠标的坐标,然后用ScreenToClient转换为当前窗口的坐标,得到了相对坐标,我们就可以利用自己图片和游戏窗口中图片的位置关系,计算出游戏窗口中的坐标。 有了坐标,我们就用::FindWindow来找到游戏窗口的句柄,然后用::PostMessage即可发送消息,即完成了模拟点击事件。
当然,程序写的比较粗糙,还存在很多问题,比如找茬的时候会存在明显的延迟。
源码:http://download.csdn.net/source/1657261
欢迎大家指出不足之处。
程序效果图