Skip to content

Menus ​

PixaWallet loads YAML menus from the folder selected by MenuSettings.MENU_CONFIG_FOLDER. The default English examples are in menus/en; Polish examples are available in menus/pl.

File layouts ​

A file can contain one menu directly:

yaml
Title: "#C85CFFPixaWallet &8• &fStore"
Size: "9 * 4"
Buttons: {}

It can also contain several named menus:

yaml
Weapons:
  Title: "Weapons"
  Size: "9 * 3"
  Buttons: {}

Cosmetics:
  Title: "Cosmetics"
  Size: "9 * 3"
  Buttons: {}

Both layouts can be used at the same time across multiple files. Menu identifiers must be unique. The default /wallet command opens Main_Menu, so keep that identifier available.

Basic button ​

yaml
Buttons:
  Balance:
    Slot: "4"
    Material: SUNFLOWER
    Title: "#FACC15&lYour wallet"
    Lore:
      - "&7Balance: #E879F9%pixawallet_points% points"

Slot belongs to the upper GUI. Expressions such as 9 * 1 + 4 are supported by the bundled examples.

yaml
Buttons:
  Starter_Bundle:
    Slot: "11"
    Material: CHEST
    Title: "#57F287&lStarter bundle"
    Lore:
      - "&7Price: #F5B94275 points"
      - "#FDE047Click to purchase"
    Click:
      Price: 75
      Buy_Command: "give {player} diamond 1{N}give {player} emerald 4"
  • {player} is replaced with the buyer's name.
  • {N} separates multiple console reward commands.
  • Price must be greater than zero for a paid offer.

Prefer one reliable reward command where possible. If one command in a multi-command reward succeeds and another fails, the purchase is marked PARTIAL and requires manual review.

Player_Slot offers ​

Player_Slot places an offer in the player's inventory or hotbar while the menu is open:

yaml
Buttons:
  Hotbar_Offer:
    Slot: "-1"
    Player_Slot: "4"
    Material: GOLDEN_APPLE
    Title: "#F5B942&lGolden Apple"
    Lore:
      - "&7Price: 250 points"
    Click:
      Price: 250
      Buy_Command: "give {player} golden_apple 1"

Valid player slots are 0 through 35. Use Slot: "-1" for an inventory-only offer. A button may also use both Slot and Player_Slot. The player's original inventory is restored after leaving the menu.

yaml
Buttons:
  Open_Cosmetics:
    Slot: "15"
    Material: ENDER_CHEST
    Title: "#C85CFF&lCosmetics"
    Click:
      Menu: Cosmetics

Menu must match a loaded menu identifier exactly.

Custom items ​

Keep a vanilla Material as a fallback and add only the option used by your server:

yaml
Material: PAPER
modelData: 10001
# NexoItem: "your_item_id"
# ItemsAdderItem: "namespace:item_id"
# HeadDatabaseId: "12345"

HeadDatabaseId should be used with Material: PLAYER_HEAD. Prefix forms are also supported:

yaml
Material: "nexo:your_item_id"
yaml
Material: "itemsadder:namespace:item_id"

Nexo, ItemsAdder, HeadDatabase and a matching resource pack are not included with PixaWallet.

Button reference ​

KeyDescription
SlotUpper GUI slot or -1 when only Player_Slot is used.
Player_SlotPlayer inventory slot from 0 to 35.
MaterialVanilla material or supported prefixed custom item.
TitleDisplay name with legacy or hex colors.
LoreItem description lines.
CountDisplayed stack size.
modelDataVanilla CustomModelData value.
NexoItemNexo item identifier.
ItemsAdderItemItemsAdder namespaced item identifier.
HeadDatabaseIdHeadDatabase head identifier.

Click reference ​

KeyDescription
PricePoint cost of the purchase.
Buy_CommandConsole reward command; separate commands with {N}.
MenuOpens another loaded menu.
Player_CommandImmediately runs a command as the player.
Console_CommandImmediately runs a command as the console.
Copy_ItemCopies the displayed item where supported by the configured action.
hideAnnouncmentHides the public purchase announcement. Keep this legacy spelling.
disableSoundDisables the configured purchase success sound.
AnimateEnables the configured button animation behavior.
Inventory_Menu_SwitchSwitches inventory-menu behavior where configured.
Inventory_Menu_TitleSets the corresponding inventory-menu title.

Immediate commands

Player_Command and Console_Command run as immediate click actions. Do not use them to deliver a paid reward; use Buy_Command so delivery is recorded in the purchase transaction.

Confirmation menu ​

Purchase confirmation is configured separately through MenuSettings.MENU_CONFIRM_CONFIG_FILE. Its purchase button uses BuyConfirm with Confirm_Action; the cancel button uses Decline_Action. Start with the bundled English or Polish file and preserve those action keys.

PixaDev is owned and built by DonPedroTV.