- 版权类型
- 原创
- 插件中文名称
- 宁枫镇npc交互
- 插件英文名称
- NFTown NPCTALK
- 原帖地址
- #
- 支持的核心(服务端)
- Paper
- Folia
- Purpur
- PufferFish
- SpongeVanilla
- Leaves
- 语言支持
- 中文(简体)
- 适配版本(Java)
- 1.21
- 1.20
- 1.19
- 1.18
- 1.17
- 1.16
- 1.15
- 1.14
[MD]
# NpcTalk 插件
一个简单的Minecraft Spigot插件,用于向玩家发送预设消息、播放声音、应用缓慢效果并执行命令。
## 功能
- 向指定玩家发送预设消息(支持多行)
- 支持颜色代码(&a格式和十六进制颜色代码&#RRGGBB)
- 播放声音效果
- 应用缓慢效果(可配置持续时间)
- 延迟执行指定命令
- 支持Tab补全功能
- 支持重载配置命令
## 命令
```
/npctalk <玩家名> <消息预设> <指令>
/npctalk reload
```
例如:
```
/npctalk MFDR27 你好 help
```
这将向玩家MFDR27发送"你好"预设中的消息,播放配置的声音,应用缓慢效果,并在效果结束后执行help命令。
## 配置
插件配置文件(config.yml)结构如下:
```yaml
# 缓慢效果持续时间(秒)
slow-effect-duration: 2
# 消息预设
message-presets:
你好:
messenger:
- "&a欢迎来到服务器"
- "&e这里是NFT服务器"
- "&b祝您游戏愉快!"
sound: "entity.experience_orb.pickup"
再见:
messenger:
- "&e感谢您的访问,期待再次见到您"
- "&6下次再见!"
sound: "entity.player.levelup"
提示:
messenger:
- "&b请注意查看服务器公告"
- "&9有任何问题请联系管理员"
sound: "block.note_block.pling"
彩色:
messenger:
- "&a绿色 &b天蓝色 &c红色 &d粉色"
- "&e黄色 &f白色 &1深蓝色 &2深绿色"
- "&3青色 &4深红色 &5紫色 &6金色"
- "&7灰色 &8深灰色 &9蓝色 &0黑色"
- "&#FF0000红色 �FF00绿色 �FF蓝色"
sound: "entity.player.levelup"
```
### 配置说明
- `slow-effect-duration`: 缓慢效果的持续时间(秒)
- `message-presets`: 消息预设列表
- 预设名称(如"你好"):
- `messenger`: 发送给玩家的消息文本(支持多行和颜色代码)
- `sound`: 播放的声音ID
### 颜色代码
插件支持以下颜色代码格式:
1. 传统颜色代码:`&a`、`&b`等
2. 十六进制颜色代码:`&#FF0000`(红色)、`�FF00`(绿色)等
颜色代码对照表:
- `&0` 黑色
- `&1` 深蓝色
- `&2` 深绿色
- `&3` 青色
- `&4` 深红色
- `&5` 紫色
- `&6` 金色
- `&7` 灰色
- `&8` 深灰色
- `&9` 蓝色
- `&a` 绿色
- `&b` 天蓝色
- `&c` 红色
- `&d` 粉色
- `&e` 黄色
- `&f` 白色
格式代码:
- `&l` 粗体
- `&m` 删除线
- `&n` 下划线
- `&o` 斜体
- `&k` 随机字符
- `&r` 重置格式
## 权限
- `nftown.npctalk`: 允许使用/npctalk命令(默认仅OP可用)
- `nftown.npctalk.reload`: 允许使用/npctalk reload命令重载配置(默认仅OP可用)
## 安装
1. 下载插件JAR文件
2. 将JAR文件放入服务器的plugins文件夹
3. 启动或重启服务器
4. 编辑生成的config.yml文件,根据需要自定义消息预设
## 声音ID参考
您可以在配置文件中使用以下两种方式指定声音:
1. 使用Sound枚举名称(如 `ENTITY_EXPERIENCE_ORB_PICKUP`)
2. 使用命名空间ID(如 `entity.experience_orb.pickup`)
常用的声音ID示例:
- `entity.experience_orb.pickup` - 经验球拾取声
- `entity.player.levelup` - 玩家升级声
- `block.note_block.pling` - 音符盒声音
- `entity.villager.yes` - 村民肯定声
- `entity.villager.no` - 村民否定声
[/MD]