YuRandomTeleport 插件联动
YuRandomTeleport 当前没有公开的 Java API 文档,主要通过 Bukkit 命令、Vault 经济、配置回调命令和消息文件完成联动。对大多数服务器而言,这些入口已经能覆盖经济扣费、反馈展示、日志记录、任务触发和活动系统接入。
Vault 经济
插件将 Vault 作为软依赖:
softdepend: [Vault]启用经济后,插件会通过 Bukkit ServicesManager 查找 Economy 服务。扣费逻辑发生在成功传送后:
- 读取当前世界费用。
- 检查玩家余额是否足够。
- 找到安全位置并成功传送。
- 调用 Vault 扣除费用。
- 向玩家发送扣费后的余额消息。
如果没有安装 Vault,或 Vault 没有经济服务提供者,插件会输出提示并跳过经济扣费。
bStats 统计
插件内置 bStats Bukkit 统计:
pluginId: 30589bStats 只用于插件使用统计,不参与传送逻辑。若服务器侧禁用了 bStats,随机传送功能仍可正常工作。
控制台命令回调
配置文件的 commands 区块是最常用的联动入口:
commands:
on-teleport:
- "title {player} title {\"text\":\"随机传送\",\"color\":\"yellow\"}"
on-success:
- "broadcast {player} 已随机传送到 {world}: {x}, {z}"
on-fail:
- "say {player} 随机传送失败: {reason}"适合接入:
| 系统 | 示例 |
|---|---|
| Title/ActionBar 插件 | 在传送开始或成功后显示提示。 |
| 任务系统 | 成功 RTP 后推进任务目标。 |
| 日志系统 | 记录玩家随机传送世界和坐标。 |
| 活动系统 | 活动期间传送成功后发放奖励或加入队列。 |
| 权限系统 | 在特定阶段临时添加或移除权限。 |
命令由控制台同步执行,写配置时不要在命令前添加 /。
消息文件
messages.yml 支持自定义全部玩家消息和后台日志文本。常用键包括:
| 消息键 | 用途 |
|---|---|
prefix | 聊天前缀。 |
cooldown | 玩家仍在冷却。 |
teleport-countdown | 等待倒计时。 |
teleport-cancelled | 等待期间被打断。 |
teleport-success | 成功传送。 |
no-safe-location | 未找到安全位置。 |
insufficient-funds | 余额不足。 |
world-blacklisted | 世界在黑名单中。 |
world-not-whitelisted | 世界不在白名单中。 |
reload-success | 重载成功。 |
消息内容支持 {seconds}、{cost}、{x}、{z}、{world} 等对应占位符,具体以默认 messages.yml 为准。
与权限插件联动
YuRandomTeleport 使用 Bukkit 权限系统,因此可以直接与 LuckPerms、GroupManager、PermissionsEx 等权限插件配合。
常用 LuckPerms 示例:
lp group default permission set yurtp.use true
lp group admin permission set yurtp.reload true
lp group admin permission set yurtp.teleport.others true
lp group vip permission set yurtp.bypass.cooldown true与世界管理插件联动
插件按 Bukkit 世界名读取配置。与 Multiverse-Core、MyWorlds 或服务端原生多世界一起使用时,应确保配置中的世界名与 Bukkit 加载后的世界名完全一致。
如果世界由其他插件动态加载,建议在世界加载完成后再测试 /rtp,否则命令中的世界名不会出现在 Tab 补全中。
与保护或战斗插件联动
YuRandomTeleport 自身不会检查 WorldGuard 区域、领地或战斗标签。推荐做法:
| 需求 | 建议 |
|---|---|
| 禁止主城 RTP | 使用 world-blacklist 或 world-whitelist。 |
| 禁止战斗逃跑 | 保持 teleport.wait-seconds 大于 0,并开启 cancel-on-move。 |
| 更严格的战斗限制 | 使用战斗插件在战斗状态下临时移除 yurtp.use 或拦截命令。 |
| 禁止落入受保护区域 | 使用独立资源世界,或通过更小的半径和安全方块白名单控制落点。 |
文件系统行为
插件会读写:
plugins/YuRandomTeleport/config.ymlplugins/YuRandomTeleport/messages.yml- 配置升级备份文件,例如
config.yml.bak4 - 损坏配置备份,例如
config.yml.broken
插件不会在默认配置下写入数据库或外部文件。