1 120
收录服务器
1481
注册
34 368
玩家
PlayerKits 完全可配置的KITS
这是一个简单但功能强大的解决方案,用于创建工具包并在图形用户界面上声明它们。
作 者 Ajneb97
发布时间 2020年2月14日
支持核心 Spigot
原生版本
支持版本 1.8,1.9,1.10,1.11,1.12,1.13,1.14,1.15,1.16,1.17,1.18,1.19,1.20
点此下载

PlayerKits 是一款 Minecraft 插件,允许服务器管理员创建多种不同的工具包(Kits),并通过图形用户界面(GUI)呈现给玩家。玩家可以通过 /kit 命令访问 GUI 并领取可用的工具包。工具包可以设置冷却时间、权限和价格,增加了游戏的趣味性和挑战性。插件易于使用,支持多种自定义选项,适用于 1.8 及以上版本的 Minecraft 服务器。

🎉

PlayerKits

📌功能特性

  • ✓ 图形用户界面(GUI)领取工具包
  • ✓ 命令行领取工具包
  • ✓ 可配置的 GUI 显示物品:
    • 物品、名称、描述
    • 玩家无权限时的不同显示物品
    • 玩家未购买时的不同显示物品
    • 工具包冷却中的不同描述
  • ✓ 工具包冷却时间
  • ✓ 工具包权限
  • ✓ 工具包价格
  • ✓ 一次性购买工具包
  • ✓ 领取工具包时执行命令
  • ✓ 可自定义的工具包预览
  • ✓ 分页系统
  • ✓ 游戏内编辑工具包
  • ✓ 首次加入服务器工具包
  • ✓ 一次性使用工具包
  • ✓ 1.16+ 版本支持十六进制颜色代码
  • ✓ 自动装备盔甲
  • ✓ 自动装备副手物品
  • ✓ 可配置的 GUI
  • ✓ MySQL 支持玩家数据
  • ✓ 工具包保存物品属性:
    • 名称、描述
      • 名称和描述中支持 %player% 变量
      • 名称和描述中支持 PlaceholderAPI 静态变量
    • 附魔
    • 药水效果
    • 皮革盔甲颜色
    • 书本附魔
    • 书写书籍
    • 烟花属性
    • 旗帜、盾牌属性
    • 头颅材质
    • 物品Flag
    • 不可破坏标签
    • 属性修改器
    • NBT 标签
  • ✓ 兼容 Minecraft 1.8+
  • ✓ 消息翻译

📦工具包创建与领取

要创建一个新的工具包,只需将所需的物品放入您的物品栏,然后执行命令 /kit create <name>。要领取工具包,您有两种选择:

  1. 使用 /kit 命令,并在 GUI 中点击工具包物品。
  2. 使用 /kit claim <name> 命令 (或者,如果 claim_kit_short_command 选项设置为 true,则可以使用 /kit <name> 命令)。

现在,您可以在 kits.yml 文件中编辑工具包的所有属性。

⚙️配置教程

kits.yml


Kits:
  iron:
    Items:
      '1':
        id: IRON_AXE
        amount: '1'
      '2':
        id: IRON_PICKAXE
        amount: '1'
      '3':
        id: IRON_SWORD
        amount: '1'
    slot: 10
    display_item: IRON_AXE
    display_name: '&6&lIron &aKit'
    display_lore:
    - '&eThis kit includes:'
    - '&8- &7x1 Iron Axe'
    - '&8- &7x1 Iron Pickaxe'
    - '&8- &7x1 Iron Sword'
    - ''
    - '&7Cooldown: &c3 hours'
    - ''
    - '&aLeft Click to claim!'
    - '&bRight Click to preview!'
    cooldown: 10800
  diamond:
    Items:
      '1':
        id: DIAMOND_AXE
        amount: '1'
      '2':
        id: DIAMOND_PICKAXE
        amount: '1'
      '3':
        id: DIAMOND_SWORD
        name: "&4Super Sword"
        lore:
        - "&7Best sword on the server."
        - ""
        - "&7Owner: &a%player%"
        enchants:
        - DAMAGE_ALL;5
        amount: '1'
    Commands:
    - "bc &6%player% &ejust claimed a &aDIAMOND KIT&e!"
    slot: 11
    display_item: DIAMOND_SWORD
    display_name: '&6&lDiamond &aKit'
    display_lore:
    - '&eThis kit includes:'
    - '&8- &7x1 Diamond Axe'
    - '&8- &7x1 Diamond Pickaxe'
    - '&8- &7x1 Diamond Sword'
    - ''
    - '&7Cooldown: &c12 hours'
    - '&7Price: &a$5000'
    - ''
    - '&aClick to buy!'
    - '&bRight Click to preview!'
    cooldown: 43200
    price: 5000
    permission: playerkits.kit.diamond
    noPermissionsItem:
        display_item: BARRIER
        display_name: "&6&lDiamond &aKit"
        display_lore:
        - "&cYou don't have permissions to claim"
        - "&cthis kit."
        - ""
        - "&7You need: &bVIP&6+ &7rank."
  onetime:
    Items:
      '1':
        id: LEVER
        amount: '5'
        name: "&6Mystery Key: &aBasic"
        lore:
        - "&7Use it on the spawn."
    slot: 12
    display_item: LEVER
    display_name: '&6&lBasic Mystery Key &aKit'
    display_lore:
    - '&eThis kit includes:'
    - '&8- &7x5 Basic Mystery Key'
    - ''
    - '&7You can claim this kit just one time!'
    - ''
    - '&aClick to claim!'
    - '&bRight Click to preview!'
    one_time: true

#The position of the kit in the GUI Inventory. If you don't want to show the kit you can remove this option.
slot: 10

#The page of the inventory where the kit will show. If you want to show the item in the first page, you don't need to add this option.
page: 2

#Attributes of the item in the inventory. For the display_name you need to use a valid item name. For latest Minecraft version use this link as reference: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Material.html
#If you want to set a textured skull the display_item must be "PLAYER HEAD" or "SKULL_ITEM:3" for 1.8-1.12 and add :
#display_item_skulldata: "id;texture"
display_item: IRON_AXE
display_name: '&6&lIron &aKit'
display_lore:
- '&eThis kit includes:'
- '&8- &7x1 Iron Axe'
- '&8- &7x1 Iron Pickaxe'
- '&8- &7x1 Iron Sword'
- ''
- '&7Cooldown: &c3 hours'
- ''
- '&aClick to claim!'

#If is set to true, the display item will be enchanted.
display_item_glowing: true

#Cooldown of the kit in seconds. How much time the player will have to wait to claim this kit again.
cooldown: 10800

#You can add a price for the kit. For this option to work you need Vault: https://dev.bukkit.org/projects/vault
price: 5000

#If is set to true, players will need to buy the kit just one time before claiming it.
one_time_buy: true

#Besides giving items in kits, you can execute commands from the console, remember to use %player% variable.
Commands:
- "bc &6%player% &ejust claimed a &aDIAMOND KIT&e!"

#You can add a permission for the kit.
permission: playerkits.kit.diamond

#If the player doesn't have the correct permission, this item will show in the inventory instead of the original one.
noPermissionsItem:
        display_item: BARRIER
        display_name: "&6&lDiamond &aKit"
        display_lore:
        - "&cYou don't have permissions to claim"
        - "&cthis kit."
        - ""
        - "&7You need: &bVIP&6+ &7rank."

#If the player hasn't buyed a kit with one_time_buy option, this item will show in the inventory instead of the original one.
noBuyItem:
        display_item: BARRIER
        display_name: "&6&lIron &aKit"
        display_lore:
        - '&eThis kit includes:'
        - '&8- &7x1 Iron Axe'
        - '&8- &7x1 Iron Pickaxe'
        - '&8- &7x1 Iron Sword'
        - ''
        - '&7Price: &$5000'
        - ''
        - '&aClick to buy!'

#If this option is set to true, players will receive this kit when joining for the first time.
first_join: true

#If this option is set to true, players can claim this kit just one time.
one_time: true

您还可以直接从 Minecraft 编辑工具包,而无需修改配置文件,只需使用 /kit edit <kit> 命令。

config.yml


Messages:
    prefix: "&8[&4PlayerKits&8] "
    noPermissions: "&cYou don't have permissions for that."
    commandCreateError: "&cYou need to use: &7/kit create "
    commandDeleteError: "&cYou need to use: &7/kit delete "
    commandClaimError: "&cYou need to use: &7/kit claim "
    commandGiveError: "&cYou need to use: &7/kit give  "
    commandEditError: "&cYou need to use: &7/kit edit "
    commandPreviewError: "&cYou need to use: &7/kit preview "
    commandOpenError: "&cYou need to use: &7/kit open  "
    kitAlreadyExists: "&cThe kit &7%name% &calready exists on the config."
    kitDoesNotExists: "&cThe kit &7%name% &cdoesn't exists."
    inventoryEmpty: "&cYou need at least 1 item on your inventory to create a kit."
    kitCreated: "&aKit &7%name% &acreated correctly."
    kitRemoved: "&aKit &7%name% &aremoved correctly."
    kitReceived: "&aKit &7%name% &areceived."
    configReload: "&aConfig Reloaded."
    seconds: 's'
    minutes: 'm'
    hours: 'h'
    days: 'd'
    cooldownPlaceholderReady: "&a&lReady!"
    cooldownError: "&cYou need to wait &7%time% &cto claim this kit again."
    kitNoPermissions: "&cYou don't have permissions to claim this kit."
    kitInCooldownLore:
    - "&cYou need to wait &7%time%"
    - "&cto claim this kit again."
    commandList: "&6&lKit List"
    commandListKit: "&6%number% &8» &a%kit%"
    commandListKitNoPermissions: "&6%number% &8» &c%kit% &7(No Permissions)"
    commandListKitInCooldown: "&6%number% &8» &c%kit% &7(Cooldown: &8%time%&7)"
    commandListKitOneTime: "&6%number% &8» &c%kit% &7(Already claimed&7)"
    noSpaceError: "&cYou don't have enough space in your inventory."
    materialNameError: "&cThere is an error on your config. Material: &7&l%material% &cis not valid for your Minecraft version."
    oneTimeError: "&cYou can't claim this kit again."
    kitOneTimeLore:
    - "&cYou can't claim this kit again."
    previewInventoryName: "&9Kit Preview"
    backItemName: "&7Back"
    playerNotOnline: "&cPlayer &7%player% &cis not online."
    kitGive: "&aKit &7%kit% &agiven to &e%player%&a!"
    noMoneyError: "&cYou don't have enough money to claim this kit. &8(&a$&c%current_money%&7/&a$&c%required_money%&8)"
    moneyInventoryName: "&9Buy Kit Confirmation"
    moneyInventoryYes: "&a&lYES"
    moneyInventoryNo: "&c&lNO"
    moneyInventoryConfirmationName: "&6Are you sure?"
    moneyInventoryConfirmationLore:
    - "&7This will cost you: &a$%price%"
    kitInventoryOpen: "&aOpening Kits inventory for &e%player%&a."
    errorPage: "&cWrite a valid page."
    commandResetError: "&cYou need to use: &7/kit reset  "
    kitResetCorrect: "&aKit &7%kit% &areset for &7%player%&a!"
    kitResetFail: "&cNot possible to reset kit &7%kit% &cfor &7%player%&c!"
    noPreviewError: "&cThere is nothing to preview for this kit."
    cantPreviewError: "&cYou can't preview this kit."
Config:
    inventorySize: 45
    previewInventorySize: 54
    preview_inventory_back_item_slot: 45
    kit_preview: true
    kit_preview_back_item: true
    hide_kits_with_permissions: false
    close_inventory_on_claim: false
    drop_items_if_full_inventory: false
    commands_before_items: false
    preview_inventory_requires_permission: false
    claim_kit_short_command: false
    kit_error_sound: BLOCK_NOTE_BLOCK_PLING;10;0.1
    kit_claim_sound: ENTITY_PLAYER_LEVELUP;10;1.5
    kit_page_sound: BLOCK_LAVA_POP;10;1
    update_notify: true
    player_data_save_time: 300
    inventory_pages_names:
      1: "&9Kits"
      2: "&bVIP Kits"
    mysql_database:
      enabled: false
      host: localhost
      port: 3306
      username: root
      password: root
      database: database
#Here you can define the sound name for specific events. Use these sounds for 1.8: https://github.com/Attano/Spigot-1.8/blob/master/org/bukkit/Sound.java
And these sounds for newer versions: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Sound.html
#Format: Sound;Volume;Pitch
#You can set the options to 'none' for not setting any sound.
kit_error_sound: BLOCK_NOTE_BLOCK_PLING;10;0.1
kit_claim_sound: ENTITY_PLAYER_LEVELUP;10;1.5

#This will define the time in seconds in which player kit data is saved automatically.
player_data_save_time: 300

#If this option is enabled, players without permissions to claim certain kit will not be able to preview it.
preview_inventory_requires_permission: false

#If this option is enabled, players will be able to use /kit  command instead of /kit claim 
claim_kit_short_command: false

#Here you need to define the title of the kits inventory per page.
inventory_pages_names:
    1: "&9Kits"
    2: "&bVIP Kits"

#Enabling this will fix some nbt issues especially with AdvancedEnchantments plugin. If you modify this option you must save your kits again.
nbt_alternative_data_save: false

#You can modify the GUI Inventory as you like by adding items here. The section name (in this case 0) is the slot. You can also add a command to the item if you want. You can also use skulldata. You can use PlaceholderAPI variables on the name and lore.
#You can use the custom_model_data option if you need to
0:
          id: BLACK_STAINED_GLASS_PANE
          name: "&6Go Back"
          lore:
          - "line1"
          - "line2"
          command: chestcommands open %player% mainmenu
          custom_model_data: 5

#Here you can modify the slot and properties of the next page and previous page items. Just remember to leave the "type" intact.
18:
          id: PLAYER_HEAD
          skulldata: "2391d533-ab09-434d-9980-adafde4057a3;eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYmQ2OWUwNmU1ZGFkZmQ4NGU1ZjNkMWMyMTA2M2YyNTUzYjJmYTk0NWVlMWQ0ZDcxNTJmZGM1NDI1YmMxMmE5In19fQ=="
          type: previous_page
          name: "&6Previous Page"
26:
          id: PLAYER_HEAD
          skulldata: "d513d666-0992-42c7-9aa6-e518a83e0b38;eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTliZjMyOTJlMTI2YTEwNWI1NGViYTcxM2FhMWIxNTJkNTQxYTFkODkzODgyOWM1NjM2NGQxNzhlZDIyYmYifX19"
          type: next_page
          name: "&6Next Page"

💬命令

  • /kit: 打开工具包 GUI。
  • /kit open <player> <page>: 为玩家打开工具包 GUI。
  • /kit create <kit>: 创建一个新工具包。
  • /kit delete <kit>: 移除一个已创建的工具包。
  • /kit list: 显示所有工具包。
  • /kit claim <kit>: 领取一个工具包 (或者,如果启用了 claim_kit_short_command,则可以使用 /kit <kit>)。
  • /kit preview <kit>: 预览一个工具包。
  • /kit edit <kit>: 编辑一个工具包。
  • /kit give <kit> <player>: 给予玩家一个工具包。
  • /kit reset <kit> <player>: 重置玩家的工具包数据。
  • /kit reload: 重载配置文件。 (别名: /kits)

🔑权限

  • playerkits.admin: 访问所有命令。
  • playerkits.bypasscooldown: 忽略工具包冷却时间。
  • playerkits.list: 访问 /kit list 命令。

插件包含 %playerkits_cooldown_<kit>% PlaceholderAPI 变量,允许显示玩家当前工具包的冷却时间。

如果您在使用插件时遇到问题或错误,请先联系我或在插件讨论区发帖,我会尽快查看。感谢使用!