TSLzone

一个与 Folia 兼容的区域伤害插件。

资源图片
# TSLzone - 区域伤害插件 TSLzone 是一个专为 Folia 1.21+ 服务器设计的区域伤害插件,允许服务器管理员创建指定区域,在设定的伤害值和频率下持续对区域内的实体造成伤害。 ## ✨ 特点 - 🎯 **精准区域控制** - 通过点选系统精准定义伤害区域 - ⚡ **Folia 兼容** - 针对 Folia 1.21+ 服务器端优化,支持多线程架构 - 🔧 **灵活配置** - 可自定义伤害值和伤害频率 - 💾 **数据持久化** - 所有区域配置自动保存,服务器重启后自动恢复 - 🛡️ **安全限制** - 区域大小限制防止服务器性能问题 - 🎨 **消息自定义** - 全面的自定义消息系统 - 🔄 **热重载** - 支持配置文件热重载,无需重启服务器 ## 🚀 快速开始 ### 安装步骤 1. 下载`TSLzone-1.0.jar`插件文件 2. 将插件文件放入服务器`plugins`文件夹 3. 重启服务器或使用`plugman`加载插件 4. 插件将自动生成配置文件 ### 基本使用流程 1. **设置点选** - 使用`/tzone pos1`和`/tzone pos2`设置区域的两个对角点 2. **创建区域** - 使用`/tzone create <区域名称> <伤害值> <频率>`创建区域 3. **启动区域** - 使用`/tzone start <区域名称>`开始对区域内的实体造成伤害 4. **管理区域** - 使用各种命令管理已创建的区域 ## 📋 命令详情 ### 基本命令 - **主命令**:`/tslzone`或`/tzone` - **权限**:`tslzone.use`(基本使用) /`tslzone.admin`(管理功能) ### 选择命令 ``` /tzone pos1 # 设置选择中的第一个点 (当前玩家位置) /tzone pos2 # 设置选择中的第二个点 (当前玩家位置) ``` ### 区域管理命令 ``` /tzone create <区域名称> <伤害值> <频率> # 创建新的区域 /tzone start <区域名称> # 开始对指定区域造成伤害 /tzone stop <区域名称> # 停止在指定区域内的伤害 /tzone remove <区域名称> # 删除指定的区域 /tzone list # 列出所有区域和它们的状态 ``` ### 系统命令 ``` /tzone reload # 重新加载所有配置文件 /tzone help # 显示帮助信息 ``` ## 🎮 使用示例 ### 创建一个伤害区域 1. 首先移动到区域的一个角落并执行: ``` /tzone pos1 ``` 2. 移动到区域的对角位置并执行: ``` /tzone pos2 ``` 3. 创建一个区域(名为“danger_zone”,每次造成2点伤害,每5秒执行一次): ``` /tzone create danger_zone 2 5 ``` 4. 启动区域: ``` /tzone start danger_zone ``` 现在,任何进入该区域的生物每5秒钟会受到2点伤害! ### 管理现有区域 - 查看所有区域: ``` /tzone list ``` - 临时停止一个区域: ``` /tzone stop danger_zone ``` - 重新启动该区域: ``` /tzone start danger_zone ``` - 完全删除该区域: ``` /tzone remove danger_zone ``` ## ⚙️ 配置文件 ### data.yml 区域数据自动保存在`plugins/TSLzone/data.yml`中,包括: - 区域坐标信息 - 伤害设置 - 频率设置 - 激活状态 示例配置: ```yaml zones: danger_zone: pos1: world: world x: 100.0 Y: 64.0 from: 200.0 pos2: world: world x: 150.0 and: 80.0 from: 250.0 damage: 2.0 frequency: 5 active: true ``` ### messages.yml 自定义所有插件消息,支持颜色代码: ```yaml # 颜色代码: &0-&9, &a-&f, &l(粗体), &o(斜体), &n(下划线), &m(删除线), &k(打码), &r(重置) zone: create: success: "&a 区域创建成功 &e'%s' &a!" success-info: "&e 伤害: &7%s &e| 频率: &7%s 秒" ``` ## 🔒 权限系统 | 权限节点 | 描述 | 默认值 | |---------|------|------| | `tslzone.use`| 基本使用权限 (pos1, pos2, list) | OP | | `tslzone.admin`| 管理员权限 (create, start, stop, remove, reload) | OP | ### 权限配置示例 (LuckPerms) ``` # 给玩家基本权限 /lp user <玩家名称> permission set tslzone.use true # 给管理员全部权限 /lp user <管理员> permission set tslzone.admin true ``` ## 🛡️ 安全与限制 ### 区域大小限制 - **最大区域**: 500×500×500 块 - **目的**: 防止过大的区域影响服务器性能 - **检查时机**: 区域创建时自动检查 ### 性能优化 - 使用 Folia 的区域调度器,确保线程安全 - 智能实体检测,只处理区域内的生物 - 异常处理机制,防止插件崩溃 ## 🔧 故障排除 ### 常见问题 **Q:创建区域失败,提示“区域过大”** A:确保所选区域不超过 500×500×500 块。 可以使用`/tzone list`检查区域大小。 **Q:区域内没有造成伤害** A:检查区域是否已启动 (`/tzone list`检查状态),确保区域内有生物实体。 **Q:服务器重启后区域消失** A:检查`plugins/TSLzone/data.yml`文件是否存在以及是否可读写。 **Q:命令没有权限** A:确保拥有`tslzone.use`或`tslzone.admin`权限。 ### 调试信息 启用调试模式可以查看详细日志: 1. 查看服务器控制台输出 2. 检查插件是否正确加载 3. 使用`/tzone reload`重新加载配置文件 ## 📝 更新日志 ### V1.0.0 - ✨ 初始版本发布 - ✅ 完整的区域管理系统 - ✅ Folia 1.21+ 全面兼容 - ✅ 自定义消息系统 - ✅ 数据持久化支持 ## 🤝 支持与反馈 如果在使用过程中遇到问题或有改进建议,请: 1. 检查本文档的故障排除部分 2. 确保您使用的是 Folia 1.21+ 服务器 3. 联系插件开发者报告问题 ## 📄 许可协议 本插件受 MIT 许可协议约束,允许免费使用、修改和分发。 --- **感谢使用 TSLzone!** 🎉 *让您的服务器区域管理更简单、更高效!*