Better Bags

一个添加袋子的插件,其工作方式类似于麻袋,但具有升级功能。

资源图片
# 英语 BetterBags 是一款插件,允许玩家拥有一个袋子,该袋子具有诸如物品自动拾取、可升级的等级、可配置的受限操作、支持 MiniMessage、玩家数据保存、完全可定制的物品和消息以及更多功能。 ## 功能 > * 自动拾取物品;可以选择是否仅拾取可出售的物品 > * 袋子的可升级等级 > * 可以限制玩家的操作(禁用/启用从袋子中操作物品的能力) > * 玩家的数据在 `data/.yml` 文件中 > * 完全可定制的物品、消息、等级、可出售的物品 > * 袋子中的物品可以通过一个按钮出售 > * 包含销售乘数,可以通过权限 (`betterbags.multiplier.`) 或命令 (`/bags multiplier`) 设置 > * 完全支持 MiniMessage ## 命令 > * `/bags reload` - 重新加载插件的配置 > * `/bags save` - 保存玩家数据 > * `/bags clear ` - 清空一个玩家(或多个玩家)的袋子 > * `/bags level ` - 设置一个玩家(或多个玩家)的袋子等级 > * `/bags give ` - 给一个玩家(或多个玩家)一个袋子 > * `/bags multiplier ` - 设置一个玩家(或多个玩家)的袋子乘数 > * `/bags open ` - 打开一个玩家(或多个玩家)的袋子 > * `/bags sell-all ` - 出售一个玩家(或多个玩家)袋子里的所有物品 > * `/bags help` - 显示此消息 ## 权限 > * `betterbags.usage` - 使用 `/bags` 命令的权限 > * `betterbags.reload` - 使用 `/bags reload` 命令的权限 > * `betterbags.save` - 使用 `/bags save` 命令的权限 > * `betterbags.clear` - 使用 `/bags clear` 命令的权限 > * `betterbags.setlevel` - 使用 `/bags level` 命令的权限 > * `betterbags.give` - 使用 `/bags give` 命令的权限 > * `betterbags.multiplier` - 使用 `/bags multiplier` 命令的权限 > * `betterbags.multiplier.` - 为玩家添加 `` 乘数 > * `betterbags.open` - 使用 `/bags open` 命令的权限 > * `betterbags.sell-all` - 使用 `/bags sell-all` 命令的权限 ## 占位符 > > * `%uuid%` - 玩家的 uuid > * `%player%` - 玩家的名称 > * `%items-sum%` - 袋子中的物品总数 > * `%current-level%` - 当前袋子等级 > * `%current-capacity%` - 当前袋子容量 > * `%current-slots%` - 当前袋子槽位 > * `%current-cost%` - 当前袋子成本 > * `%next-level%` - 下一个袋子等级 > * `%next-capacity%` - 下一个袋子容量 > * `%next-slots%` - 下一个袋子槽位 > * `%next-cost%` - 下一个袋子成本 ### 英文配置文件:
Configs
config.yml ``` # 袋子是否自动拾取玩家举起的物品? auto-picking: true # boolean # 如果启用自动拾取,袋子是否只拾取 items.yml 中指定的物品? pickup-only-sellable: false # boolean # 玩家是否有能力手动将物品放入袋子? player-put-ability: true # boolean # 玩家是否有能力从袋子中取出物品? player-get-ability: true # boolean # 玩家是否有能力在物品栏中移动袋子? # * false = 允许通过点击物品栏中的袋子来打开袋子 bag-move-ability: false # boolean # 袋子的默认插槽(如果玩家无法移动它,它将始终保持在该位置) bag-slot: 4 # 0-8 - 热条中的插槽 / # 9-35 - 物品栏中的插槽 # 袋子是否有按钮可以出售所有物品? sell-all: true # boolean # 数据保存间隔(以秒为单位) save-interval: 600 # integer / -1 禁用 # 检查玩家的袋子存在性的间隔(以秒为单位) update-interval: -1 # integer / -1 禁用 # 玩家重生(死亡)后是否给予袋子 should-give-bag-on-respawn: true # boolean # 玩家加入服务器时是否给予袋子 should-give-bag-on-join: true # boolean # 袋子的物品栏标签 bag-inventory-label: "玩家的袋子 %player% - 等级 %current-level%" ```
bags.yml ``` items: bag: name: "袋子 %current-level% 等级。" # 物品名称 description: # 物品描述 - "袋子中的物品: %items-sum%" - "容量: %current-capacity% 物品。" - "槽位数: %current-slots%" material: PLAYER_HEAD # 袋子物品/图标 # 如果材质是头部,您可以设置纹理(base64): head-texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNjkxYzdiZDA0MTZmNjhkNmU5YjU4NmU3ODE4Mjg2M2E0ZmQwNGY5MDI5YzgwNWY5MjFhMTdjNzAzZDUyZWRlMSJ9fX0=" # 如果物品具有自定义纹理(自定义模型数据) custom-model-data: 0 upgrade: name: "升级到 %next-level% 等级。" description: - "下一等级包括:" - "容量: %current-capacity% >> %next-capacity% 物品" - "槽位数: %current-slots% >> %next-slots%" - "" - "升级成本: %next-cost%$" material: MOSS_BLOCK # head-texture 和 custom-model-data 是可选参数 sell-all: name: "出售所有物品" material: BARRIER glowing: true # 可以将发光效果设置到物品上 # description 也是可选参数 next-page: name: "下一页" material: PLAYER_HEAD head-texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYWM5YzY3YTlmMTY4NWNkMWRhNDNlODQxZmU3ZWJiMTdmNmFmNmVhMTJhN2UxZjI3MjJmNWU3ZjA4OThkYjlmMyJ9fX0=" previous-page: name: "上一页" material: PLAYER_HEAD head-texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMWExZWYzOThhMTY4NWNkMWRhNDNlODQxZmU3ZjE0MWQ4ODZkZjQxYTMyYzczOGNjOGE4M2ZiNTAyOTdiZDkyMSJ9fX0=" ignore-item-value-true: name: "无例外地出售所有物品" material: RED_CANDLE description: - "无论其价值如何,所有物品都将出售" glowing: true ignore-item-value-false: name: "出售所有物品并忽略不具有价值的物品" material: GREEN_CANDLE description: - "出售时,将忽略无价值的物品" filler: name: "" material: RED_STAINED_GLASS_PANE levels: 1: # 等级 (1 - 默认值) capacity: 20 # 袋子容量 AKA 最大物品数量 slots: 5 # 可用的存储槽位 cost: 0 # 升级到此等级的成本 2: capacity: 40 slots: 8 cost: 1000 commands: # 购买升级后的命令 - "xp add %player% 10 levels" 3: capacity: 60 slots: 16 cost: 5000 # ... ```
messages.yml ``` no-economy-plugin-found: "未找到经济插件。禁用..." bag-clear-result: single: "玩家 %target% 的袋子已成功清空。" multiple: "%target% 名玩家 的袋子已成功清空。" bag-level-result: single: "玩家 %target% 的袋子已成功设置为 %level% 等级。" multiple: "%target% 名玩家 的袋子已成功设置为 %level% 等级。" give-bag-result: single: "袋子已成功给予玩家 %target%。" multiple: "袋子已成功给予 %target% 名玩家。" config-reloaded: "配置已成功重新加载。" data-saved: "数据已成功保存。" multiplier-set-result: single: "玩家 %target% 的销售乘数已成功设置为 %multiplier%。" multiple: "%target% 名玩家 的销售乘数已成功设置为 %multiplier%。" sell-all: something: "%amount% 件物品已出售,售价 %cost%$" nothing: "没有出售任何物品。" sell-all-command-result: single: "%amount% 来自 %target% 的物品已出售,售价 %cost%$" multiple: "%amount% 来自 %target% 名玩家 的物品已出售,售价 %cost%$" help-message: - "命令:" - "/bags reload - 重新加载配置" - "/bags save - 保存玩家数据" - "/bags clear - 清空玩家的袋子" - "/bags level - 设置玩家的袋子等级" - "/bags give - 给予玩家袋子" - "/bags multiplier - 设置玩家的销售乘数" - "/bags open - 打开指定玩家的袋子" - "/bags help - 显示帮助" bag-upgrade: success: "袋子已成功升级从 %old%%new% 等级,花费 %cost%$。" fail: "没有足够的资金升级袋子到 %new% 等级。需要 %cost%$" ```
items.yml ``` # 物品成本列表 items: DIRT: 1 # 售价 1 COBBLESTONE: 25 DIAMOND_SWORD: 500 SAND: 1 # ... ```
# 俄ский BetterBags - это плагин, который позволяет игрокам иметь сумку с такими функциями, как автоматический сбор предметов, улучшаемые уровни, настраиваемые ограниченные действия, поддержка MiniMessage, сохранение данных игроков, полностью настраиваемые предметы и сообщения и многое другое. ## Функции > * Автоматический сбор предметов; возможность или невозможность подбирать только продаваемые предметы > * Улучшаемые уровни для сумки > * Возможность ограничивать действия игроков (отключение/включение возможности манипулировать предметами из сумки) > * Данные игрока в файлах `data/.yml` > * Полностью настраиваемые предметы, сообщения, уровни, продаваемые предметы > * Предметы в сумке можно продавать нажатием одной кнопки > * Включает множитель продажи, который можно установить с помощью разрешения (`betterbags.multiplier.`) или команды (`/bags multiplier`) > * Полная поддержка MiniMessage ## Команды > * `/bags reload` - Перезагружает конфигурацию плагина > * `/bags save` - Сохраняет данные игрока > * `/bags clear ` - Очищает сумку игрока (или нескольких игроков) > * `/bags level ` - Устанавливает уровень сумки игрока (или нескольких игроков) > * `/bags give ` - Выдает игроку (или нескольким игрокам) сумку > * `/bags multiplier ` - Устанавливает множитель сумки игрока (или нескольких игроков) > * `/bags open ` - Открывает сумку игрока (или нескольких игроков) > * `/bags sell-all ` - Продает все предметы в сумке игрока (или нескольких игроков) > * `/bags help` - Показывает это сообщение ## Разрешения > * `betterbags.usage` - Разрешение на использование команды `/bags` > * `betterbags.reload` - Разрешение на команду `/bags reload` > * `betterbags.save` - Разрешение на команду `/bags save` > * `betterbags.clear` - Разрешение на команду `/bags clear` > * `betterbags.setlevel` - Разрешение на команду `/bags level` > * `betterbags.give` - Разрешение на команду `/bags give` > * `betterbags.multiplier` - Разрешение на команду `/bags multiplier` > * `betterbags.multiplier.` - Добавляет множитель `` для игрока > * `betterbags.open` - Разрешение на команду `/bags open` > * `betterbags.sell-all` - Разрешение на команду `/bags sell-all` ## Плейсхолдеры > > * `%uuid%` - uuid игрока > * `%player%` - имя игрока > * `%items-sum%` - сумма предметов в сумке > * `%current-level%` - текущий уровень сумки > * `%current-capacity%` - текущая вместимость сумки > * `%current-slots%` - текущие слоты сумки > * `%current-cost%` - текущая стоимость сумки > * `%next-level%` - следующий уровень сумки > * `%next-capacity%` - следующая вместимость сумки > * `%next-slots%` - следующие слоты сумки > * `%next-cost%` - следующая стоимость сумки P.S. Конфиг изначально на Русском Языке)