航点指南

航点指南

一个模组,为游戏添加了RPG风格的标记/路径点功能

路径点指南

一个 Minecraft 1.20.1 Forge 模组,可在地图上添加自定义路径点,并在玩家屏幕上显示导航指南(主要为任务驱动的整合包设计)。

功能

  • 通过命令添加彩色路径点,支持基于距离的可见性限制
  • 在屏幕上渲染菱形标记(名称、距离、浮动动画),玩家靠近时放大显示
  • 屏幕外的标记显示边缘箭头以指示方向
  • 具有距离限制的标记在进入/离开可见范围时,以 1.4 秒动画淡入/淡出
  • 当准星瞄准标记时右键点击可将其移除,并带有消失动画和粒子效果;右键移除使用专用数据包并在服务器端验证
  • 路径点数据按玩家保存至世界目录下的 waypoints.json 文件中
  • 提供 WaypointDismissEvent(Forge 事件,服务器端触发),可通过 KubeJS 服务器脚本监听

命令

所有子命令均作用于目标 <player>:对自身操作无需权限,对其他玩家操作需要 OP(等级 2)。

  • /waypoint add <player> <id> <x> <y> <z> <color> <name> — 添加路径点(无距离限制)
  • /waypoint addnear <player> <id> <x> <y> <z> <color> <distance> <name> — 添加路径点,当玩家距离超过 distance 格时标记变得不可见
  • /waypoint addlock <player> <id> <x> <y> <z> <color> <name> — 添加锁定路径点,无法通过右键移除
  • /waypoint addlocknear <player> <id> <x> <y> <z> <color> <distance> <name> — 添加带距离可见性且无法通过右键移除的锁定路径点
  • /waypoint remove <player> <id> — 移除路径点
  • /waypoint clear <player> — 清除指定玩家的所有路径点
  • /wp/waypoint 的别名

<color> 支持:redgreenblueyellowcyanmagentawhiteblackorangepinkgraypurple,以及十六进制格式如 0xRRGGBB / #RRGGBB

KubeJS

当通过右键移除路径点时,服务器会触发 WaypointDismissEvent,可在服务器脚本中监听:

const $WayPoint = Java.loadClass('com.dreamdawn.waypointguide.forge.WaypointDismissEvent')
ForgeEvents.onEvent($WayPoint, event => {
  // event.waypointId / event.player 和其他字段可用
})
// 推荐方式,便于在多个脚本中复用
const $WayPoint = Java.loadClass('com.dreamdawn.waypointguide.forge.WaypointDismissEvent')
global.WaypointRightClick = (waypointId, callback) => {
  ForgeEvents.onEvent($WayPoint, event => {
    if (event.waypointId === waypointId) {
      callback(event)
    }
  })
}
// 使用示例(waypointId 为字符串)
WaypointRightClick('123', event => {
  console.log('右键点击了路径点 123')
})

许可证

本项目基于 GNU 通用公共许可证 v3.0 开源。