# PUBG Mobile Debugging Tool (qingthr)

这是一个基于 NDK 开发的 Android 原生插件（HOOK 库），主要用于《刺激战场》（PUBG Mobile）的调试与功能扩展。项目集成了 ImGui 菜单界面，支持 ESP（透视）、物资生成、建筑探测及多种游戏数值调试功能。

## 主要功能

- **ESP 绘制**：支持射线、骨骼、血量、名称及距离显示。
- **物资调试**：支持一键刷物资、自定义物资生成等。
- **建筑功能**：支持探测附近建筑、保存建筑列表、在玩家位置生成建筑及建筑跟随模式。
- **游戏增强**：包括高跳、加速、视角调整（广角）、无限子弹、除雾等调试功能。
- **多语言支持**：支持中文与英文界面切换。

## 项目结构

- `jni/`：核心源代码目录。
  - `主程序.cpp`：JNI 入口与 EGL 钩子处理。
  - `菜单.h`：基于 ImGui 的 UI 界面逻辑。
  - `变量.h`：全局变量、结构体定义及核心功能逻辑。
  - `DrawESP.h`：ESP 绘制逻辑。
  - `SDK/`：包含游戏相关的类与结构体定义。
  - `imgui/`：ImGui 框架及其 Android/OpenGL3 渲染实现。

## 修复内容 (Latest Update)

针对近期无法编译的问题，进行了以下核心修复：

1. **语法错误修正**：
   - 修正了 `jni/变量.h` 中 `探测并添加附近建筑(floatRadius)` 缺少空格导致的类型解析错误。
2. **结构体与变量补全**：
   - 补全了缺失的 `探测到的建筑` 结构体定义。
   - 补全了 `建筑生成线程`、`建筑线程运行`、`缓存的建筑类` 等核心逻辑变量。
3. **逻辑闭合修复**：
   - 针对 `jni/菜单.h` 中极其复杂的嵌套逻辑，修复了大量未闭合或多余的大括号 `{}`，确保 `void 菜单()` 函数及其内部窗口逻辑能够正确闭合，解决了“function definition is not allowed here”等编译难题。
4. **链接错误修复**：
   - 将 `extern` 声明的全局变量（如 `建筑跟随模式`、`建筑探测半径` 等）修改为 `inline` 定义，解决了 ndk-build 链接阶段的 `undefined symbol` 错误。
5. **代码清理**：
   - 暂时注释掉了未定义的 `执行控制台命令()` 函数，确保构建流程畅通。

## 编译指南

在 Termux 或 Android NDK 环境下，进入项目根目录运行：

```bash
ndk-build
```

编译成功后，生成的库文件位于 `libs/armeabi-v7a/libHOOK.so`。

## 开源协议

本项目采用 **MIT License**。

*注：本项目仅供学习交流使用，请勿用于非法用途。*
