Requirements

Everything about DeluxeMenus requirements!

Syntax

# This option can also be:
# open_requirement:
# left_click_requirement:
# right_click_requirement:
view_requirement:
requirements:
# You can define multiple requirements.
# Each requiremnt should have a unique name.
requirement_name:
type: TYPE
# This can only be defined for open and
# left/right click requirement
deny_commands:
- "[ACTIONTYPE] ACTION"
- "[ACTIONTYPE] ACTION"

Requirements allow you to restrict certain actions or even an entire menu and only allow certain players to see and/or use the menu.

Requirement types

Type

Description

Open Requirement

Defines the requirements to open the menu.

View Requirement

Defines the requirements to see an item in the menu.

Left/Right Click Requirements

Defines the requirements to left/right click an item.

  • Placeholders can be used in the requirements.

  • If you set multiple requirements, all of them should be met (Use JavaScript type to add optional requirements).

Requirement types

Has permission

type: has permission
permission: "TEXT"

Checks if the player has the specified permission.

Has money

type: has money
amount: #

Checks if the player has the specified amount of money (Vault is required).

Has item

type: has item
material: "TEXT"
data: #
amount: #
name: "TEXT"
lore:
- "TEXT"

Checks if the player has the specified item in the inventory.

You can use color/format codes in name and lore fields, but using § character instead of & character.

JavaScript

type: javascript
expression: 'EXPRESSION'

Example:

type: javascript
expression: '%vault_eco_balance% >= 100'

Evaluates a JavaScript expression that must return true or false.

String Equals

type: string equals
input: "TEXT"
output: "TEXT"

Example:

type: string equals
input: "%server_name%"
output: "HelpChat"

Checks if input: matches output: (Case sensitive).

String Equals Ignore Case

type: string equals ignorecase
input: "TEXT"
output: "TEXT"

Example:

type: string equals ignorecase
input: "%server_name%"
output: "helpchat"

Checks if input: matches output: (Case insensitive).

String Contains

type: string contains
input: "TEXT"
output: "TEXT"

Example:

type: string contains
input: "%server_name%"
output: "chat"

Checks if input: contains output: (Case sensitive).

Comparators

type: (==, >=, <=, !=, >, <)
input: #
output: #

Compares input: with output:.

Available options

Comparator

Description

==

input: equals to output:

>=

input: greater than or equals to output:

<=

input: less than or equals to output:

!=

input: not equals to output:

>

input: greater than output:

<

input: less than output:

Examples

Open Requirement

open_requirement:
requirements:
example_1:
type: has permission
permission: open.menu.one
deny_commands:
- "[message] &cYou don't have the permission."

View Requirement

view_requirement:
requirements:
example_2:
type: string equals
input: "%player_is_op%"
output: "yes"

Left/Right Click Requirement

# left_click_requirement: or
right_click_requirement:
requirements:
example_3:
type: has money
amount: 100
deny_commands:
- "[message] &7You don't have enough money."