[MD]
# 烟花秀插件 (FireworkShow Plugin)
**Language / 语言**: [English](README.md) | [中文](README_zh.md)
一个为 Minecraft 基岩版服务器 (Nukkit) 创建壮观自动烟花表演的插件。
## 功能特色
- **自动烟花表演**: 在指定世界中创建令人惊叹的自动烟花显示
- **多世界支持**: 为不同世界配置不同的烟花表演
- **可自定义位置**: 为每个世界设置多个烟花生成位置
- **性能优化**: 使用直接数据包发送而非实体生成,防止服务器卡顿
- **灵活配置**: 全局和单世界设置,支持覆盖功能
- **声音控制**: 可选择静音生成和爆炸声音
- **分组切换**: 在位置组之间交替显示,创造多样化的表演模式
- **多语言支持**: 支持英文和中文
- **简易管理**: 简单的命令进行配置和控制
## 系统要求
- Nukkit-MOT 服务器
- Java 17 或更高版本
- 权限: `fireworkshow.admin` (默认: op)
## 安装方法
1. 从发布页面下载最新的 `FireworkShow-3.0.0-SNAPSHOT.jar`
2. 将 jar 文件放入服务器的 `plugins` 文件夹
3. 重启服务器
4. 使用生成的 `config.yml` 文件配置插件
## 配置说明
插件会创建一个 `config.yml` 配置文件,结构如下:
```yaml
configVersion: 4
# 全局默认设置 (所有世界共享)
global:
spawnTick: 40 # 生成间隔 (20 tick = 1 秒)
fireworkFlightDuration: 1 # 飞行持续时间 (推荐 1-3)
muteSpawnSound: false # 静音生成声音
muteExplodeSound: false # 静音爆炸声音
splitGroups: false # 位置组交替显示
# 单世界配置
worlds:
lobby:
enabled: true
positions:
- {x: -12, y: 87, z: 29}
- {x: -29, y: 87, z: -12}
# ... 更多位置
```
### 配置选项
#### 全局设置
- `spawnTick`: 烟花生成间隔 (以 tick 为单位,20 tick = 1 秒)
- `fireworkFlightDuration`: 烟花飞行时间 (推荐 1-3)
- `muteSpawnSound`: 是否静音烟花发射声音
- `muteExplodeSound`: 是否静音烟花爆炸声音
- `splitGroups`: 将位置分成交替组以创造多样化模式
#### 世界设置
每个世界可以覆盖全局设置,包含:
- `enabled`: 该世界是否启用烟花
- `positions`: 烟花生成位置坐标列表
- 任何全局设置都可以在单世界中覆盖
## 命令使用
所有命令使用基础命令 `/fireworkshow` 或 `/fws`:
### 通用命令
- `/fws help` - 显示命令帮助
- `/fws reload` - 重载配置
- `/fws list` - 列出所有配置的世界
### 世界管理
- `/fws enable <世界>` - 在世界中启用烟花
- `/fws disable <世界>` - 在世界中禁用烟花
### 位置管理
- `/fws pos add <世界> [x y z]` - 添加烟花生成位置
- `/fws pos remove <世界> <索引>` - 通过索引删除位置
- `/fws pos list <世界>` - 列出世界中的所有位置
- `/fws pos clear <世界>` - 清除世界中的所有位置
### 配置设置
- `/fws set <世界> <设置项> <值>` - 设置世界特定设置
- `/fws global <设置项> <值>` - 设置全局设置
#### 可用设置项
- `spawnTick` - 生成间隔 (整数)
- `flightDuration` - 飞行持续时间 (整数, 1-3)
- `muteSpawn` - 静音生成声音 (true/false)
- `muteExplode` - 静音爆炸声音 (true/false)
- `splitGroups` - 使用交替组 (true/false)
## 使用示例
### 基础设置
1. 添加烟花生成位置:
```
/fws pos add lobby 0 80 0
/fws pos add lobby 10 80 10
```
2. 启用世界:
```
/fws enable lobby
```
### 高级配置
1. 设置更快的烟花生成:
```
/fws set lobby spawnTick 20
```
2. 让烟花飞行更久:
```
/fws set lobby flightDuration 2
```
3. 静音以获得更安静的表演:
```
/fws set lobby muteSpawn true
/fws set lobby muteExplode true
```
## 性能说明
- 插件使用优化的数据包发送而非生成实体
- 支持大量位置而不会显著影响性能
- `splitGroups` 选项可以帮助在多个 tick 间分散负载
- 烟花仅在世界中有玩家时生成
## 权限
- `fireworkshow.admin` - 访问所有插件命令 (默认: op)
[/MD]