JMWaypointManager

JM5 路点管理(已废弃)

基本信息

属性 值
路径 com.gtnewhorizons.navigator.api.journeymap.waypoints.JMWaypointManager
行数 65
父类 WaypointManager(25 行)
状态 已废弃

实现三个抽象方法

父类抽象方法 父类行
clearActiveWaypoint() :18-19
updateActiveWaypoint(Waypoint) :21-22
hasWaypoint() :24-25

⚠️ 65 行实现 3 个方法 = 约 20 行/方法 —— 与 JourneyMapV6WaypointManager (64 行)几乎一样长。

两版都要写一遍是因为 JM5 与 JM6 的路点 API 完全不同。

四个实现的行数

类 行 目标 状态
本类 65 JourneyMap 5 已废弃
JourneyMapV6WaypointManager 64 JourneyMap 6 活动
XaeroWaypointManager 83 Xaero 活动
VoxelMapWaypointManager 75 VoxelMap 死代码

⚠️ 65 与 64 只差 1 行 —— 但实现的是两个不兼容的地图版本的 API。

与 mixin 的关系

WaypointManagerMixin(27 行) 注入 JM5 自己的 WaypointManager.toggleItems(HEAD, require = 1) —— 注意 WaypointManagerMixin 条目里的 三同名类说明:本类(本 mod 的 JM5 实现)、 WaypointManager(本 mod 抽象基类)、 JM5 的 journeymap.common.WaypointManager(mixin 目标)是三个不同的类。

⚠️ JM6 不需要路点 mixin —— JourneyMapV6Plugin(847 行) 用官方插件 API 处理路点, 所以 WaypointManagerMixin 只属于 JOURNEYMAP_V5 构建器。

废弃但仍在 Mixins 里

⚠️ 本类已废弃,但 Mixins 的 JOURNEYMAP_V5 构建器仍在(7 个 mixin / 621 行)。

即:JM5 路径仍完整可用(只是不推荐新代码使用其 API), 因为整合包里大量装 JM5 的存档需要它。

相关