Gui Natures Compass
基本信息
| 属性 |
值 |
| 类 |
com.chaosthedude.naturescompass.gui.GuiNaturesCompass |
| 注册方 |
GuiHandler.getClientGuiElement()(GUI ID 0) |
| 仅客户端 |
@SideOnly(Side.CLIENT) |
行为
手持 Nature’s Compass 右键打开的主界面。包含 6 个按钮、1 个 checkBox、1 个搜索框、1 个群系列表(GuiListBiomes)。
按钮
| ID |
显示 |
默认位置 |
默认启用 |
触发动作 |
| 0 |
Cancel |
(10, height-30) |
是 |
关闭 GUI |
| 1 |
Sort By: <维度> |
(10, 90) |
是 |
切换 sortingCategory.next() |
| 2 |
Info |
(10, 65) |
否(选中列表项后启用) |
弹出 GuiBiomeInfo |
| 3 |
Search |
(10, 40) |
否(选中列表项后启用) |
触发 searchForBiome(biomeID) 发 PacketCompassSearch |
| 4 |
Teleport |
(10, height-55) |
仅 FOUND 状态且 OP/cheat 模式 |
发 PacketTeleport |
| 5 |
Found Only (CheckBox) |
(10, 115) |
默认 false |
切到 availableBiomes 过滤列表 |
搜索框
- 位置
(130, 10),宽 width - 200,高 20。
- 接收单行文本,支持
category: value 形式的 AND 过滤(: 前后都 trim)。
- 单段输入会同时匹配当前
sortingCategory 显示名(除 CategoryName 外)。
- 已识别的搜索分类:
name / climate / bh / hv / rain / temp / humidity / tag(或对应 i18n 键)。
- 多段以逗号分隔;每段独立做交集 (
retainAll)。
列表
- 自定义
GuiListBiomes(继承 GuiListExtended),slot 高 36。
- 渲染每条:[群系名] + [当前排序维度: 值] + [Precipitation: Rain/Snow/None]。
“Found Only” CheckBox 行为
- 勾选时
baseBiomeList = availableBiomes;取消恢复 allowedBiomes。
- 在单机集成服务器下首次勾选会阻塞地跑 worker(
while (worker.hasWork()) worker.doWork()),已用注释明示属于极端 hack。
传送按钮
updateScreen() 每 tick 检查:NaturesCompass.canTeleport || PlayerUtils.cheatModeEnabled(player) 决定可见;natureCompass.getState(stack) == FOUND 决定启用。
数值
| 数值 |
默认值 |
| Info/Search 按钮启用条件 |
选中群系列表项 |
| Teleport 按钮可见条件 |
NaturesCompass.canTeleport 或 cheat mode |
| Teleport 按钮启用条件 |
compass 状态 FOUND |
| 默认排序 |
CategoryName |
限制
- 一次只能选一个群系。
- 搜索按 i18n 字符串匹配,非英文语言下输入不同关键词。
相关条目