游客
【初夏原创】【技术教程】so层hook普通类型字段进行敌我判断

【初夏原创】【技术教程】so层hook普通类型字段进行敌我判断

54
0
一言准备中...

导语:在一些通用的方法下,你要都需要进行一定的敌我判断,不能让除玩家外的对象享受到mod功能

常用方法为:挂钩实例方法(int、bool)传入实例进行判断确定、第二是从字段(在dnspy中为黄色)中找到同类里的枚举字段或者疑似的字段(int、bool为普通类型蓝色)进行判断,第三个是我们自写的c++适配器代码,这个需对逻辑与c++语言有一定的基础,这里我们用到的是第二种方法,我们就找到了一个疑似字段,int类型的instanceid。

由于不像枚举一般有给我提供对应类型的返回值,所以我们可以通挂钩通用方法,比如这里我挂钩了伤害方法,敌人玩家受到伤害都会从这里走一遍逻辑


挂钩代码如下:
逻辑解析
当伤害代码被调用时将实例传入字段进行判断为1时就是玩家。

为何为1:通过logd进行打印isplayer的值,每次方法执行时都会在as控制台自动打印出玩家和敌人的实例值

像这样子,然后填入即可完成一次简单的判断


简单结束[滑稽]有缘再见

  • 本文作者:Naive
  • 本文链接: https://www.starringx.cn/post-770.html
  • 版权声明:本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。
0
0
  • 支付宝打赏
    支付宝扫一扫
  • 微信打赏
    微信扫一扫
感谢支持
文章很赞!支持一下吧
关于作者
7.1K+
5
0
6
安静的做,成功了说。

【技术教程】江湖旧梦1.0.0

上一篇

【技术教程】给APP添加检测应用防搬砖防倒卖

下一篇
评论区
内容为空

这一切,似未曾拥有