feat: v1.0.4 高级设置精简为权限复选框 + 自动游泳防溺水

- 高级设置菜单移除所有数值输入框,仅保留疾跑/跳跃/避怪/破坏/放置五个权限复选框
- 新增自动游泳:玩家在水中且未站在地面时自动跳跃,防止溺水
- 版本号更新为 1.0.4
这个提交包含在:
Lyizai
2026-08-17 06:14:20 +00:00
父节点 77c80e5141
当前提交 e69a24eb3e
共修改 4 个文件,包含 29 行新增和 86 行删除
@@ -204,6 +204,7 @@ implements SubtitleChatMonitor.Listener {
if (this.tickAutoFood(client)) {
return;
}
this.tickAutoSwim(client);
switch (this.state.ordinal()) {
case 1: {
this.plan();
@@ -499,6 +500,26 @@ implements SubtitleChatMonitor.Listener {
return List.of(new ChunkPos(chunk.x() + 1, chunk.z()), new ChunkPos(chunk.x() - 1, chunk.z()), new ChunkPos(chunk.x(), chunk.z() + 1), new ChunkPos(chunk.x(), chunk.z() - 1));
}
/**
* 自动游泳逻辑(每帧调用):
* 玩家处于水中且未站在地面上时自动跳跃(模拟按住空格键),防止溺水。
*/
private void tickAutoSwim(MinecraftClient client) {
if (!this.isRunning()) {
return;
}
PlayerEntity player = client.player;
if (player == null) {
return;
}
// 完全没入水中,或接触水面且未站在地面(深水区漂浮)时都需要游泳
boolean inWater = player.isSubmergedInWater()
|| (player.isTouchingWater() && !player.isOnGround());
if (inWater) {
player.jump();
}
}
/**
* 自动进食逻辑(每帧调用):
* 开启 autoEat 且饥饿值低于阈值时暂停寻路并自动吃背包里的食物,