【干货】C++游戏外挂开发教程15:图形响应

文摘   社会   2025-01-08 00:00   广西  


欢迎来到C++游戏外挂开发系列教程! 

游戏外挂开发是一个既有挑战性又充满乐趣的领域,它让我们有机会深入探索计算机程序设计和系统底层原理。本教程将带领你从零开始,逐步学习如何使用C++编程语言开发游戏外挂,包括各种常见游戏中的作弊功能,如自动射击、透视功能、无敌模式等。通过本系列教程,你将了解到游戏外挂的基本原理、常见开发工具、技术挑战和实际应用技巧,为你打造成一名优秀的游戏外挂开发者提供全面的指导。

我们打开这个 QQ,那么当我们把鼠标移动到某个地方时,它会有相应的反应,对不对?比如说,当我把鼠标移到这个叉的位置,它就会变红,对不对?那么当我们移动界面时,它却没有反应,没有反应。
那么我们怎么解决这个问题呢?有没有同学想到?之前我们说了,加载图片,我们进来加载图片,然后每次窗口刷新的时候就会调用一个消息回调,我找一下这个消息回调,然后就刷新那张图片。
那么我们怎么在这个基础上继续呢?比如说我们点击某一个地方要怎么响应呢?怎么去想?对啊,其实这个很简单,你们看,我写了一个 for 循环,这个循环所有的图片,对吧?然后循环图片之后再判断是否要显示图片,对不对?如果不显示,我们就不贴,对不对?这个 bitbit,其实就是贴图,对吧?
那么同学们说了,他说鼠标判断,对吧?那么判断鼠标,我们怎么判断呢?对不对?我们怎么判断?然后我们判断鼠标之后,我们要做什么事?这是个问题,对不对?我们判断鼠标要做什么事?比如说,我们把这个界面打开,比如说,我鼠标移到这个插件这里,对吧?移到这个插件这里。那么我们就要做一些事情,对不对?比如说,我们要做一些事情。我们可以怎么写?我们可以写一个... 哎呀,我忘了写了。比如,我们鼠标按一下某个地方,我们需要做某件事情,对不对?好,我们鼠标一动不动。
我们需要做某件事情,对不对?应该好吃。我们还要判断什么?还要判断什么?还有两个东西我们需要判断,对不对?哪两个东西?当我们台下的时候,抬一下哎。对不对?我们按一下,抬起之后要做某个视频,然后把鼠标移开。不对不对。但是有个问题,我们需要做某件事情,需要做什么事情?
这四个响应是我们必须要做的,对不对?那么你们都错了,我们要做的某件事情是不能确定的,对不对?比如说我有一个控件,画个图,这是我的界面,这是我的控件。当我们鼠标移动过来的时候,移动过来之后呢?我们不能确定要做什么事情,比如说我点击这个控件,比如说我点击这个空间,我要做两件事情,我要让人物移动,不要移动。同时我还要让人物喝药,对不对?这两个事情我们能确定吗?我们按下这两个事情,我们不能确定,按下是可以确定的,但是我们做的事情确定不了,对不对?难道每次按下空间都要喝药、移动吗?不对。
那我们怎么办呢?怎么封装?有没有同学想到?我们不能确定要响应什么事情,我们不可能每次写一个界面就跑到这个类里面去改,对不对?那如果我们要封装,怎么封装呢?建议学习一个新的数据类型,函数指针。
比如说,我这定义一个 word 鼠标按下做的设计,鼠标按下,坐在这里,然后做的事情写在这里面,写到这里,拿这个写对了。我还没这个热血,写到这个好。我们把事情写在这个里边之后,鼠标要做的事情是不是一个地址啊?我们把这个地址传递到这个里边,我们定义一个数据类型。貌似然后你找到你要在六点开始 23 的空。这个是什么类型?
这个就是函数指针在那里,方便面一天 17 万 80008000,它的本质是一个地址,它的本质是一个地址,它的本质是一个地图。当我们把这个做的事情通过我们的函数传递到这里边来,然后我们封装一个循环鼠标,每次干了某件事,我们就调用这个函数行不行,对不对?这样就实现了一个对吧?这样就实现了一个嗯灵活的空间封装,灵活的空间文。
我们来写,我来写,看完记录一下,谢谢今天我带你穿那个手拿手不行,他手里端端的在哪个端的啊,老板我们肯定要先定一个这个呃县城吧,开一个线程怎么会多少,现在没有,这几天对我们打,应该就坐标打印个坐标啊,鼠标按一下鼠标躲掉,写一个响应头,写一个响应 where 循环,对不对啊?这是我们定义好了之后,我们定义好了之后,我们要建啊,把这个速度再建建出来是吧,应该会比较少,还有十分不是 10 万,他都写错了还给了点货,满意已经不想过了,就那么几件,carry struct,小鬼给你。
第一步我们需要干什么?先要获取鼠标的位置,不要。好,我当前鼠标位置带领我获取鼠标位置,感谢我的卧槽。然后要做一个循环了,循环循环多少个数量就循环,我们要需要响应多少个地方,对不对?需要响应多少个地方,是的。哎呀妈可,不是。啊好,我们获取当前这个窗口的坐标了。好,我们来定一个窗口,然后进行一个窗口坐标,给你说了,现在就取到了我们的这个,我们的这个窗口的坐标。
窗口的坐标,当前鼠标位置的 x。鼠标就移动过来了。就响应到我们的这个空间里面。对我们,鼠标现在就移动到我们的这个空间里面了,对吧?然后这要做什么事?如果嗯,我们到外面自己买的,我们要定义一个移动的空,对不对,在家里面。如果这个 call 等于他不是存在的,是存在的,他是说你先把人送到,你过来把这钱就不要存钱,那我就是第一次一起那个接通报高吗?啊,如果这个框里面啊,我们有内容要做事情,我们就调用对吧,说好的下播丢掉了,现在回去,小于小于什么呀?这个东西这几个东西是什么计算,我们的鼠标是否在后面有啥意思?我们用移到某个坐标,我们我们才响应,然后在这个时间在这个里边,我们就调用啊,鼠标移动进来了啊。
然后我们判断他现在仍然 10 万,70000 = 16 7 号,他说他问一下,你真放在这边,waking。有没有什么,然后鼠标左键盘啊,鼠标左键一下,那鼠标左键按下中,我们我们是不是要想一个什么东西?我们我们要调用它来调用它对吧,我们调用这个函数啊,做事情唉,然后使劲,你不要左键响应,为啥现在因为一直专注,哦我还订几个东西啊,我当时。左键安全,左边抬起,鼠标来到我,嗯这怎么处理的那么细思,前来到我又来到,我等于一,你把空调,干脆就这还得加一个,还不如吃,否则应该做的。
没有办法,如果左键在抬起的时候,再启动,都是,要安全吗,不看到,啊,啊这就抬起来对吧,这就抬起来,现在抬起来,抬起鼠标,抬杠就对,左键抬起重啊,左键抬起重等于,来定义一个什么,抬起的函数,抬起的,还有说一个离开的,离开,工资 26 不是工资,这样就 ok 了,抬起,开启中之后就是直接在水准开发,看看手上抬起中指要按一下啊,这个关系是什么啊,这个算法关系是什么,这个就是鼠标离开了啊,鼠标已经开了,他当然要先来一刀才能离开对吧,还没有来到就离开,不可能,这个不是字符串呀,写恰看着吧,这个不是字符串啊,一样。
这就开始传递传递指针了,传递函数指针了。拷贝进来就传递这四个指针,对不对?把这四个指针传进去,抬起鼠标,按下鼠标,抬起鼠标移动,然后辅助离开,好,接下来就好写了吧,接下来就就很好写了,和以前的这些东西都就差差不多了,差不多了,你过来,两个小时,好接下来就直接赋值啊,直接赋值。有我的啊,直接你跑到哪去了,直接就等于就行了,对不对?就过来,好。还有一点不好意思,这个我们要强制转成这个函数指针了,对不对?强制转换成函数指针,强子等着他,嗯好好好,你没 20 分钟,时间 ok 了 ok 了吧,全部就写好了,全部就写好了对吧,21 下,嗯全部写好之后,我们再开启线程.
把线程开启,漫长的话可能是气肿,就是现成的,是不是你看不,xy,开启他的,开启他这个线程,开启他这个行。我找一个开线程的韩服,呃就不穿餐了,然后我在这,对吧,嗯现在我们打开 ps,打开 ps,你好,打开 ps 之后呢,呃把这个文件夹打开好 bug 界面啊,我们之前写的这个界面对不对,把它拖进来,我们对吧,就是感觉,这不是电脑用的,那把那个叉给截下来,把这个叉给截下来,36 啊,差,截下来之后啊,我们点它的时候,我们要亮一点亮一点,对比度高一点,对不点它它有点要有区别,要有区别。
把这个叉保存下来,保存到我们这个目录里面 bmp 啊,啊之前我已经写了这个啊,再保存一次吧,啊 30 了对吧,保存你嗯嗯好,蹲进来之后好,我们回来回到回到我们的这个调用调用的地方啊,然后这个打开啊,打开它对吧,先定义一个二对吧,把它这个 id 宏定义进去,然后打开它资源文件打开,然后查看代码,这加载什么啊,我们保存的是什么,是保留关闭按钮对吧,是他吧啊,然后复制进来啊,复制进来,这是二对吧啊,ok 在这边的话我们就可以加载了,那就可以加载了,二,然后看一下看一下它的宽度对不对,看一下它的宽度是多少,36x30 对不对?
宽度 36,然后 30,30 的话 56 二四十,这里没有瞎标 30 显示的位置,然后显示到哪,是不是显示到这儿啊,看一下啊,我们把它打开啊,我们应该显诶它显示到这儿来了,我们应该显示到末尾,对不对的,显示到末尾之后就要把这个地方改一下,把它的显示坐标改一下,w 是不是窗口宽度减去 36。那么本期教程就到这里。



暮色的狐
这是一只高强度上网冲浪、高质量输出内容的狐狸。主打ACGN杂谈、技术干货分享、第九艺术鉴赏、网梗百科解析、情感树洞鸡汤、正能量价值观~
 最新文章