- 版权类型
- 原创
- 插件中文名称
- 自定义命令方块插件
- 插件英文名称
- nftown_BlockCommand
- 原帖地址
- #
- 支持的核心(服务端)
- Spigot
- Paper
- Purpur
- PufferFish
- SpongeVanilla
- Leaves
- 其他核心
- 语言支持
- 中文(简体)
- 前置组件
- DecentHolograms https://www.spigotmc.org/resources/decentholograms-1-8-1-21-8-papi-support-no-dependencies.96927/
- 适配版本(Java)
- 1.21
- 1.20
- 1.19
- 1.18
- 1.17
- 1.16
- 1.15
- 1.14
- 1.13
[MD]
## 功能特点
- 将命令绑定到任意方块
- 使用 DecentHolograms 在方块上方显示全息文本
- 玩家右键点击方块执行命令
- 支持以控制台身份执行命令
- 可在配置文件中轻松配置方块和命令
- 支持权限控制
- **权限保护系统** - 防止普通玩家破坏指令方块
- **美观的指令提示界面** - 统一的UI风格
## 依赖插件
- [DecentHolograms](https://www.spigotmc.org/resources/decentholograms.96927/) - 用于显示全息文本
## 命令
- `/bc reload` - 重载配置文件和方块数据
- `/bc give <玩家> <方块ID> [数量]` - 给予玩家指定的命令方块
- `/bc query` - 查询服务器中所有放置的命令方块位置
- `/bc permissions` - 查看插件权限信息
## 权限
- `blockcommand.admin` - 管理员权限,可破坏任何指令方块
- `blockcommand.place` - 允许放置命令方块
- `blockcommand.break` - 允许破坏命令方块
- `blockcommand.give` - 允许给予命令方块
- `blockcommand.query` - 允许查询命令方块
- `blockcommand.reload` - 允许重载配置
- `blockcommand.permissions` - 允许查看权限信息
- `blockcommand.use.*` - 允许使用所有命令方块
- `blockcommand.use.<方块ID>` - 允许使用特定命令方块
### 权限保护说明
- **破坏保护**: 只有拥有 `blockcommand.admin` 或 `blockcommand.break` 权限的玩家才能破坏指令方块
- **主城保护**: 普通玩家无法破坏主城的指令方块,防止意外破坏
- **权限优先级**: `blockcommand.admin` 权限拥有最高权限,可以执行所有操作
## 配置文件
配置文件存储在 `plugins/nftown_BlockCommand/config.yml`
```yaml
# 消息前缀
prefix: '&8[&b方块指令&8] &f'
# 全息图默认高度(方块上方高度)
hologram-height: 1.5
# 绑定指令的方块配置
blocks:
example_block:
name: '&b示例方块'
material: DIAMOND_BLOCK
hologram:
- '&b点击执行指令'
- '&7示例方块'
# 可选:此方块的全息图高度,会覆盖默认值
hologram-height: 1.5
commands:
- 'say 这是一个示例指令'
- 'time set day'
permission: 'blockcommand.use.example'
use-console: true # 是否以控制台身份执行命令
teleport_block:
name: '&6传送方块'
material: GOLD_BLOCK
hologram:
- '&6传送到主城'
- '&7点击传送'
commands:
- 'spawn %player%' # 注意:不要在命令前加斜杠"/"
permission: 'blockcommand.use.teleport'
use-console: true # 是否以控制台身份执行命令
# 命令格式说明
# 1. 不要在命令前加斜杠"/"
# 2. 可以使用 %player% 变量代表点击方块的玩家名
# 3. 每个方块可以设置多个命令,会按顺序执行
# 是否需要权限才能使用方块
require-permission: true
# 是否在控制台输出方块执行的指令
log-commands: true
# 是否在玩家执行命令后发送通知消息
send-success-message: false
# 方块放置和移除事件的设置
block-place:
# 放置方块时是否需要权限
require-permission: true
permission: 'blockcommand.place'
block-break:
# 破坏方块时是否需要权限
require-permission: true
permission: 'blockcommand.break'
# 管理员权限(拥有此权限的玩家可以破坏任何指令方块)
admin-permission: 'blockcommand.admin'
# 破坏被拒绝时的提示消息
deny-message: '&c你没有权限破坏命令方块!只有管理员才能破坏指令方块。'
```
## 使用方法
1. 在配置文件中添加您的命令方块配置
2. 使用 `/bc reload` 重新加载配置
3. 使用 `/bc give <玩家> <方块ID> [数量]` 获取命令方块
4. 放置方块(需要 `blockcommand.place` 权限)
5. 右键点击方块执行绑定的命令
6. 使用 `/bc permissions` 查看权限信息
7. 使用 `/bc query` 查询已放置的方块位置
### 权限设置建议
- **管理员**: 给予 `blockcommand.admin` 权限
- **建筑者**: 给予 `blockcommand.place` 和 `blockcommand.break` 权限
- **普通玩家**: 只给予 `blockcommand.use.*` 权限(使用方块但不破坏)
## 命令执行方式
您可以通过设置每个方块配置中的 `use-console` 选项来控制命令的执行方式:
- `use-console: true` - 命令将以服务器控制台身份执行(默认)
- `use-console: false` - 命令将以玩家身份执行
以控制台身份执行命令可以执行需要更高权限的命令,而不必给予玩家这些权限。
## 注意事项
- 放置的方块位置会保存在 `plugins/nftown_BlockCommand/blocks_data.yml` 中
- 玩家可以直接右键点击方块执行绑定的命令,无需手持特定物品
- 部分命令可能需要玩家拥有相应的权限才能执行
- **重要**: 普通玩家无法破坏指令方块,只有管理员或拥有破坏权限的玩家才能移除
- 建议在主城等重要区域只给予管理员破坏权限,防止指令方块被意外破坏
- 使用 `/bc permissions` 命令可以查看所有权限的详细说明
## 版本信息
- **当前版本**: 2.1
- **主要更新**: 添加权限保护系统和美观的UI界面
[/MD]