
# HopperFilterX
一个轻量级、多语言的 Minecraft 插件,允许您使用简单的游戏内 GUI 来过滤漏斗拾取的物品。专为性能、生存和技术服务器而设计。
---
## 🔧 功能
- `/hopper give [amount]`: 将特殊滤镜漏斗给予玩家。
- `/hopper remove `: 从玩家或世界中移除一个滤镜漏斗。
- `/hopper list `: 列出玩家拥有的所有滤镜漏斗。
- `/hopper addperm `: 授予玩家访问您的滤镜漏斗的权限。
- `/hopper removeperm `: 移除玩家对您的滤镜漏斗的访问权限。
- `/hopper reload`: 重新加载插件的配置文件和语言文件。
- 🔍 **滤镜系统**: 移位 + 右键点击 HopperFilterX 漏斗以打开 GUI。
- 📥 **拖放物品**: 将任何物品插入 GUI 以定义漏斗的滤镜。
- ✅ **选择性物品移动**: 漏斗仅移动与滤镜匹配的物品。
- 🔄 **回退行为**: 如果未定义滤镜,则它表现得像一个普通的香草漏斗。
- 🧊 **无缝香草整合**: 与所有香草机制和漏斗兼容。
- 🗃️ **持久滤镜**: 滤镜设置在服务器重启后保存和恢复。
- 🛡️ **所有者保护**: 只有所有者才能拾取或配置其滤镜漏斗。
- 🛠️ **创造/生存支持**: 安全地处理创造/生存模式转换。
- 🗣️ **多语言**: 详情见下文。
## 🗂️ 支持的 Minecraft 版本 (使用 PaperLib 实现兼容性)
- **Paper/Spigot 1.14.x**
- **Paper/Spigot 1.15.x**
- **Paper/Spigot 1.16.x**
- **Paper/Spigot 1.17.x**
- **Paper/Spigot 1.18.x**
- **Paper/Spigot 1.19.x**
- **Paper/Spigot 1.20.x**
- **Paper/Spigot 1.21.x**
## 🌐 多语言支持
HopperFilterX 已完全翻译并可用于国际服务器。目前支持:
- 英语
- 西班牙语
- 德语
- 法语
- 葡萄牙语
- 俄语
- 简体中文
该插件会自动根据玩家的 Minecraft 客户端设置检测玩家的语言。所有消息都可以在 `lang.yml` 中自定义。
## ⚙️ 配置文件
- `config.yml` 允许启用调试模式以进行详细的日志记录。
- `lang.yml` 包含所有可翻译的消息,并且可以编辑以进行自定义语言支持。
## 🛠️ 指令
| 指令 | 描述 |
|-----------------------------------------|--------------------------------------------------|
| `/hopper give [amount]` | 将滤镜漏斗给予玩家 |
| `/hopper remove ` | 从玩家/世界中移除一个滤镜漏斗 |
| `/hopper list ` | 列出玩家拥有的所有滤镜漏斗 |
| `/hopper addperm ` | 授予玩家访问您的滤镜漏斗 |
| `/hopper removeperm ` | 移除玩家对您的滤镜漏斗的访问权限 |
| `/hopper reload` | 重新加载插件配置和语言 |
## 🔐 权限
| 节点 | 描述 |
|---------------------------|-----------------------------------------------------|
| `hopperfilterx.use` | 允许玩家使用滤镜 GUI |
| `hopperfilterx.give` | 允许使用 `/hopper give` 命令 |
| `hopperfilterx.remove` | 允许使用 `/hopper remove` 命令 |
| `hopperfilterx.list` | 允许使用 `/hopper list` 命令 |
| `hopperfilterx.addperm` | 允许使用 `/hopper addperm` 命令 |
| `hopperfilterx.removeperm`| 允许使用 `/hopper removeperm` 命令 |
| `hopperfilterx.reload` | 允许通过命令重新加载插件 |
| `hopperfilterx.*` | 授予 HopperFilterX 所有权限 |
## 🎮 工作原理
1. 使用 `/hopper give [amount]` 给玩家一个特殊的漏斗。
2. 像普通漏斗一样放置漏斗。
3. **Shift + 右键** 点击它以打开滤镜 GUI。
4. 添加您希望漏斗接受的物品。
5. 漏斗现在将仅移动选定的物品。如果滤镜为空,则它将像香草一样工作。
## 🔗 权限系统
HopperFilterX 包含一个内置的权限系统,允许您与其他玩家共享您的滤镜漏斗的访问权限:
- **授予访问**: 使用 `/hopper addperm ` 允许其他玩家使用您的滤镜漏斗
- 没有 UUID: 授予访问所有当前和未来的滤镜漏斗
- 有 UUID: 仅授予访问特定漏斗
- **撤销访问**: 使用 `/hopper removeperm ` 移除玩家的访问权限
- **所有者保护**: 只有漏斗的所有者才能修改滤镜和管理权限
- **持久**: 权限保存在数据库中并在服务器重启后持久存在
## 💡 用例
- 创建自动化的物品分类器。
- 阻止某些物品在复杂的红石系统中被拾取。
- 轻松设置精炼农场和存储系统。
## 🧪 演示

## 📝 技术与法律
- **许可证:** GPL-3.0-only (参见 LICENSE)
- **作者:** MrH00k
- **数据库:** 使用 SQLite 存储持久滤镜。
- **没有抑制静态分析警告:** 所有警告仍然可见,以保持可维护性。
- **不需要外部依赖项** (除了 PaperLib 用于版本兼容性)。
---
**使用 HopperFilterX 像专业人士一样组织您的漏斗!**