# CinematicsModelsAddons
一个用于隐藏 MythicMobs 在宣传片中的 Minecraft 插件。
- [描述](#description)
- [功能](#features)
- [依赖](#dependencies)
- [安装](#installation)
- [配置](#configuration)
- [config.yml](#config-yml)
- [mythicmobs_hide_cinematic.yml](#mythicmobs-hide-cinematic-yml)
- [命令](#commands)
- [主命令](#main-commands)
- [替代命令](#alternative-commands)
- [命令选项](#command-options)
- [权限](#permissions)
- [工作原理](#how-it-works)
- [调试模式](#debug-mode)
- [PlaceholderAPI 集成](#placeholderapi-integration)
- [已知问题](#known-issues)
- [常见问题](#faq)
- [许可证](#license)
- [作者](#author)
## 描述
CinematicsModelsAddons 是一款专为增强 Minecraft 服务器上的宣传片体验而设计的插件。其主要功能是在玩家处于宣传片模式时隐藏特定的 MythicMobs,从而防止这些生物干扰你的宣传片场景。
该插件可以使用 PlaceholderAPI(使用 `%typewriter_in_cinematic%` 变量)或通过命令以手动模式工作。
## 功能
- 在宣传片期间自动隐藏 MythicMobs
- 与 PlaceholderAPI 集成以检测宣传片模式
- 命令以手动模拟宣传片模式
- 设置宣传片模式特定持续时间的选择
- 静默模式用于命令 (无确认消息)
- 轻松配置要隐藏的生物类型
- 用于调试的详细日志系统
## 依赖项
- **必需**: MythicMobs
- **可选**: PlaceholderAPI (用于自动检测宣传片模式)
## 安装
1. 下载插件 JAR 文件
2. 将其放在服务器的 `plugins` 文件夹中
3. 重启服务器
4. 配置 `mythicmobs_hide_cinematic.yml` 文件以指定要隐藏的生物类型
## 配置
### config.yml
```yaml
# CinematicsModelsAddons 的配置
# 用于在宣传片期间隐藏 MythicMobs 的插件
# 常规设置
settings:
# 调试模式(在控制台中显示更多信息)
# false: 仅显示基本的插件日志
# true: 包括生物可见性更改和玩家状态的详细日志
debug: false
# 日志选项(仅在启用调试模式时应用)
logs:
# 记录生物可见性更改
mob-visibility: true
# 记录玩家宣传片状态的变化
player-status: true
# 记录命令执行
commands: true
# 记录插件重新加载事件
reload: true
# 记录插件启动和停止
lifecycle: true
# 插件消息
messages:
prefix: "&7[&bCMA&7] "
player-only: "%prefix%&c此命令只能由玩家使用。"
no-permission: "%prefix%&c您没有使用此命令的权限。"
invalid-args: "%prefix%&c用法不正确。使用 /cinematicsmodelsaddons [options]"
invalid-subcommand: "%prefix%&c无效的子命令。可用选项:start, stop, reload"
invalid-simulate-args: "%prefix%&c用法不正确。使用 /simulatecinematic [duration] [player] [-s]"
invalid-simulate-action: "%prefix%&c操作无效。使用 'start' 或 'stop'。"
invalid-duration: "%prefix%&c持续时间必须是正整数(以秒为单位)。"
mythicmobs-unavailable: "%prefix%&cMythicMobs 不可用。无法执行命令。"
player-not-found: "%prefix%&c未找到玩家 &e%player%&c。"
cinematic-started: "%prefix%&a宣传片模式 &a已激活&a。您现在看不到配置的生物。"
cinematic-stopped: "%prefix%&a宣传片模式 &c已停用&a。配置的生物再次可见。"
cinematic-started-other: "%prefix%&a宣传片模式 &a已激活&a 针对 &e%player%&a。"
cinematic-stopped-other: "%prefix%&a宣传片模式 &c已停用&a 针对 &e%player%&a。"
cinematic-started-time: "%prefix%&a宣传片模式 &a已激活&a 针对 &e%time% 秒&a。"
cinematic-started-time-other: "%prefix%&a宣传片模式 &a已激活&a 针对 &e%player%&a 针对 &e%time% 秒&a。"
reload-success: "%prefix%&a配置已成功重新加载!"
```
### mythicmobs_hide_cinematic.yml
```yaml
# MythicMobsHideCinematic 的配置
# 隐藏在宣传片期间的 MythicMobs 类型列表
mobs:
- "arbre_chene"
- "arbre_bouleau"
- "zombie"
- "skeleton"
- "golem"
- "dragon"
- "boss"
- "creeper"
# 在此处添加你的生物类型
# 检查频率(以刻为单位)
update-frequency: 10
```
## 命令
### 主命令
- `/cinematicsmodelsaddons` 或 `/cma` - 主命令
- `start [duration] [player] [-s]` - 激活宣传片模式
- `stop [player] [-s]` - 停用宣传片模式
- `reload [-s]` - 重新加载插件配置
### 替代命令
- `/simulatecinematic` 或 `/sc` 或 `/cinematic` - 用于宣传片模式的替代命令
- `start [duration] [player] [-s]` - 激活宣传片模式
- `stop [player] [-s]` - 停用宣传片模式
- `/cmaReload` 或 `/cinematicsreload` 或 `/cmarl` - 重新加载配置的替代命令
- `[-s]` - 选项以静默模式(不显示消息)执行命令
### 命令选项
- `[duration]` - 宣传片模式持续时间(秒),可选,默认为无限)
- `[player]` - 目标玩家的姓名(可选,需要权限瞄准其他玩家)
- `[-s]` - 选项以静默模式执行命令(不显示消息)
## 权限
- `cinematicsmodelsaddons.command.use` - 使用主命令的权限
- `cinematicsmodelsaddons.command.simulatecinematic` - 模拟宣传片的权限
- `cinematicsmodelsaddons.command.simulatecinematic.others` - 模拟其他玩家的宣传片的权限
- `cinematicsmodelsaddons.command.reload` - 重新加载插件配置的权限
## 工作原理
### 宣传片模式
该插件可以通过以下两种方式检测宣传片模式:
1. **通过 PlaceholderAPI**: 如果安装了 PlaceholderAPI,该插件将检查每个玩家的 `%typewriter_in_cinematic%` 占位符。如果此占位符返回“1”或“true”,则认为玩家处于宣传片模式。
2. **通过手动命令**: 命令 `/cma start` 或 `/simulatecinematic start` 允许您手动为玩家激活宣传片模式。
当玩家处于宣传片模式时,所有列在 `mythicmobs_hide_cinematic.yml` 中的类型 MythicMobs 将自动仅对该玩家隐藏。
### 宣传片模式持续时间
宣传片模式可以:
- 永久的(直到手动停用)
- 临时的(指定持续时间)
如果指定了持续时间,则宣传片模式将在该持续时间结束后自动停用,并且生物将再次对玩家可见。
### 静默模式
所有命令都可以使用 `-s` 选项以静默模式执行。在这种模式下:
- 在激活/停用宣传片模式时,不会向玩家发送消息
- 不会向命令执行者发送确认消息
- 宣传片模式的整个持续时间内都保留静默模式(包括自动停用)
### 调试日志
如果启用了调试模式 (`settings.debug: true`),该插件将在服务器控制台中显示详细信息。可以自定义这些日志,以仅包含所需的信息。
## 调试模式
该插件具有调试模式,可以启用在 `config.yml` 文件中。启用时,该插件将在服务器控制台中显示有关以下内容的详细信息:
- 生物可见性更改(哪些生物对哪些玩家隐藏/显示)
- 玩家宣传片状态更改(模式激活/停用)
- 命令执行(谁用什么参数执行了哪个命令)
- 重新加载事件(有关重新加载配置的详细信息)
- 插件生命周期事件(启动/停止)
调试日志的示例:
```
[INFO] [CinematicsModelsAddons] [DEBUG] 针对玩家 Player1 手动激活宣传片模式,持续时间为 60 秒
[INFO] [CinematicsModelsAddons] [DEBUG] 针对玩家 Player1 隐藏了 5 个生物
[INFO] [CinematicsModelsAddons] [DEBUG] 生物僵尸(ID:12345)对玩家 Player1 隐藏
```
## PlaceholderAPI 集成
如果安装了 PlaceholderAPI,该插件将自动使用 `%typewriter_in_cinematic%` 占位符来检测玩家是否处于宣传片模式。此功能允许您轻松地将此插件与其他使用 PlaceholderAPI 的宣传片插件集成。
如果没有检测到 PlaceholderAPI,该插件将自动切换到手动模式,在这种模式下,只有命令才能激活/停用宣传片模式。
## 已知问题
- 如果未加载 MythicMobs,宣传片模拟命令将无法正常工作。
- 在服务器重启时,玩家的手动宣传片状态将会丢失。
## 常见问题
**Q: 如何隐藏特定类型的所有生物?**
A: 将生物的内部名称添加到 `mythicmobs_hide_cinematic.yml` 文件的 `mobs` 列表中。
**Q: 我如何找到 MythicMob 的内部名称?**
A: 使用命令 `/mm mobs list` 查看所有加载的生物类型。
**Q: 该插件适用于原始生物吗?**
A: 不,该插件专为 MythicMobs 设计。
**Q: 我如何为所有玩家激活宣传片模式?**
A: 您需要为每个玩家单独执行命令。
## 许可证
该插件在 MIT 许可证下。 更多细节请参阅 LICENSE 文件。
## 作者
- Ax_Dev - 主要开发者