# Conditions

## Overview

### Heroes

- has_powers
- holding_cryo_tool
- in_domain_pocket
- in_pocket
- is_mainhand
- on_roof
- on_wall
- on_wall_move
- overload

### Palladium

- ability_enabled
- ability_first_tick
- ability_integer_property
- ability_last_tick
- ability_on_cooldown
- ability_ticks
- ability_type_enabled
- ability_type_unlocked
- ability_unlocked
- accessory_selected
- action
- activation
- and
- animation_timer_ability
- brightness_at_position
- chat_action
- chat_activation
- chat_toggle
- command_result
- crouching
- day
- dimension
- empty_slot
- energy_bar
- entity_type
- entity_type_tag
- experience_level_buyable
- false
- float_property
- has_effect
- has_power
- has_tag
- health
- held
- in_accessory_slot_menu
- in_lava
- in_water
- integer_property
- interval
- is_elytra_flying
- is_fast_flying
- is_flying
- is_hovering
- is_hovering_or_flying
- is_hovering_or_levitating
- is_in_rain
- is_in_water_or_bubble
- is_in_water_or_rain
- is_in_water_rain_or_bubble
- is_levitating
- is_moving
- is_on_fire
- is_swimming
- is_under_water
- item_buyable
- item_in_slot
- item_in_slot_open
- mod_loaded
- moon_phase
- night
- not
- objective_score
- on_ground
- or
- pose
- scoreboard_score_buyable
- size
- small_arms
- sprinting
- toggle
- true
- wears_suit_set

## has_powers

Applicable for: all

### Example:

    {"type":"heroes:has_powers"}

## holding_cryo_tool

Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
mainhand | Boolean |  | false | true

### Example:

    {"type":"heroes:holding_cryo_tool","mainhand":true}

## in_domain_pocket

Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
id_scoreboard | String | Scoreboard used to identify storage id | false | Score.Board
dimension_id | String | Scoreboard used for timer | false | minecraft:the_overworld
dimension_size | String | Scoreboard used for dimension size | false | Heroes.Pocket.Id

### Example:

    {"type":"heroes:in_domain_pocket","id_scoreboard":"Score.Board","dimension_id":"minecraft:the_overworld","dimension_size":"Heroes.Pocket.Id"}

## in_pocket

Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
id_scoreboard | String | Scoreboard used to identify storage id | false | Score.Board
dimension_id | String | Scoreboard used for timer | false | minecraft:the_overworld
dimension_size | String | Scoreboard used for dimension size | false | Heroes.Pocket.Id

### Example:

    {"type":"heroes:in_pocket","id_scoreboard":"Score.Board","dimension_id":"minecraft:the_overworld","dimension_size":"Heroes.Pocket.Id"}

## is_mainhand

Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
hand_type | String | Is the main hand the right or left hand? Valid values are "left" or "right" | false | right

### Example:

    {"type":"heroes:is_mainhand","hand_type":"right"}

## on_roof

Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
data_name | String | Persistent data used | false | heroes_climb

### Example:

    {"type":"heroes:on_roof","data_name":"heroes_climb"}

## on_wall

Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
data_name | String | Persistent data used | false | heroes_climb

### Example:

    {"type":"heroes:on_wall","data_name":"heroes_climb"}

## on_wall_move

Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
data_name | String | Persistent data used | false | heroes_climb

### Example:

    {"type":"heroes:on_wall_move","data_name":"heroes_climb"}

## overload

Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
overload_amount | Integer | Amount needed to be overloaded | false | 1

### Example:

    {"type":"heroes:overload","overload_amount":1}

## ability_enabled

Checks if the ability is enabled. If the power is not null, it will look for the ability in the specified power. If the power is null, it will look for the ability in the current power.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired ability is located. Can be null IF used for abilities, then it will look into the current power | false | /
ability | String | ID of the desired ability | false | ability_id

### Example:

    {"type":"palladium:ability_enabled","power":"null","ability":"ability_id"}

## ability_first_tick

Checks if the ability is on its first tick.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired ability is located. Can be null IF used for abilities, then it will look into the current power | false | /
ability | String | ID of the desired ability | false | ability_id

### Example:

    {"type":"palladium:ability_first_tick","power":"null","ability":"ability_id"}

## ability_integer_property

Checks if the given ability has a certain integer property value.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired ability is located. Can be null IF used for abilities, then it will look into the current power | false | /
ability | String | ID of the desired ability | false | ability_id
property | String | Name of the integer property in the ability. For animation-timer abilities it's 'value' | false | value
min | Integer | Minimum required amount of the property value | false | 0
max | Integer | Maximum required amount of the property value | false | 0

### Example:

    {"type":"palladium:ability_integer_property","power":"null","ability":"ability_id","property":"value","min":0,"max":0}

## ability_last_tick

Checks if the ability was just on its last tick.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired ability is located. Can be null IF used for abilities, then it will look into the current power | false | /
ability | String | ID of the desired ability | false | ability_id

### Example:

    {"type":"palladium:ability_last_tick","power":"null","ability":"ability_id"}

## ability_on_cooldown

Checks if the ability is currently on cooldown. If the power is not null, it will look for the ability in the specified power. If the power is null, it will look for the ability in the current power.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired ability is located. Can be null IF used for abilities, then it will look into the current power | false | /
ability | String | ID of the desired ability | false | ability_id

### Example:

    {"type":"palladium:ability_on_cooldown","power":"null","ability":"ability_id"}

## ability_ticks

Checks if the ability has been enabled for a certain amount of ticks.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired ability is located. Can be null IF used for abilities, then it will look into the current power | false | /
ability | String | ID of the desired ability | false | ability_id
min | Integer | Minimum required amount of enabled ticks | false | 0
max | Integer | Maximum required amount of enabled ticks | false | 0

### Example:

    {"type":"palladium:ability_ticks","power":"null","ability":"ability_id","min":0,"max":0}

## ability_type_enabled

Checks if an ability of a certain type is enabled.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
ability_type | ResourceLocation | ID of the ability type to look for. If one ability can be found which is enabled, the condition will be true | false | palladium:dummy

### Example:

    {"type":"palladium:ability_type_enabled","ability_type":"palladium:dummy"}

## ability_type_unlocked

Checks if an ability of a certain type is unlocked.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
ability_type | ResourceLocation | ID of the ability type to look for. If one ability can be found which is unlocked, the condition will be true | false | palladium:dummy

### Example:

    {"type":"palladium:ability_type_unlocked","ability_type":"palladium:dummy"}

## ability_unlocked

Checks if the ability is unlocked.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired ability is located. Can be null IF used for abilities, then it will look into the current power | false | /
ability | String | ID of the desired ability | false | ability_id

### Example:

    {"type":"palladium:ability_unlocked","power":"null","ability":"ability_id"}

## accessory_selected

Checks if the entity has a specified accessory selected from a specific accessory slot. An empty string can be used to check for no accessory.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
accessory_slot | AccessorySlot | The ID of the accessory slot to read from | false | palladium:head
accessory | String | The accessory which needs to be selected in order for the condition to return true (include the namespace!) | false | palladium:sea_pickle_hat

### Example:

    {"type":"palladium:accessory_selected","accessory_slot":"palladium:head","accessory":"palladium:sea_pickle_hat"}

## action

This condition is used to activate the power when a key is pressed or a mouse button is clicked.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
cooldown | Integer | Amount of ticks the ability wont be useable for after using it | false | 0
key_type | KeyType | The type of key that needs to be pressed. Possible values: [key_bind, left_click, right_click, space_bar, scroll_up, scroll_down, scroll_either] | false | KEY_BIND
needs_empty_hand | Boolean | Whether or not the player needs to have an empty hand | false | false
allow_scrolling_when_crouching | Boolean | If you choose scrolling as a key type, you can determine if scrolling is allowed when crouching. For other key types you can completely ignore this setting. | false | true

### Example:

    {"type":"palladium:action","cooldown":0,"key_type":"key_bind","needs_empty_hand":false,"allow_scrolling_when_crouching":true}

## activation

This condition is used to activate the ability when a key is pressed or a mouse button is clicked for a certain amount of ticks.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
cooldown | Integer | Amount of ticks the ability wont be useable for after using it | false | 0
ticks | Integer | The amount of ticks the ability will be active for | false | 60
key_type | KeyType | The type of key that needs to be pressed. Possible values: [key_bind, left_click, right_click, space_bar, scroll_up, scroll_down, scroll_either] | false | KEY_BIND
needs_empty_hand | Boolean | Whether or not the player needs to have an empty hand | false | false
allow_scrolling_when_crouching | Boolean | If you choose scrolling as a key type, you can determine if scrolling is allowed when crouching. For other key types you can completely ignore this setting. | false | true

### Example:

    {"type":"palladium:activation","cooldown":0,"ticks":60,"key_type":"key_bind","needs_empty_hand":false,"allow_scrolling_when_crouching":true}

## and

A condition that is active if all of the conditions in the array are active.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
conditions | Condition[] | Array of conditions, all of which must be active | false | 0 conditions

### Example:

    {"type":"palladium:and","conditions":[]}

## animation_timer_ability

Checks if the given animation timer ability has a certain value. This condition is a simplified version of the ability_integer_property condition designed to be used for animation timer abilities.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired ability is located. Can be null IF used for abilities, then it will look into the current power | false | /
ability | String | ID of the desired ability | false | ability_id
min | Integer | Minimum required amount of the timer value | false | 0
max | Integer | Maximum required amount of the timer value | false | 0

### Example:

    {"type":"palladium:animation_timer_ability","power":"null","ability":"ability_id","min":0,"max":0}

## brightness_at_position

Checks if the entity's brightness at it's position is within the given range.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
min_brightness | Integer | Minimum required brightness at entity's position | false | 0
max_brightness | Integer | Maximum required brightness at entity's position | false | 16

### Example:

    {"type":"palladium:brightness_at_position","min_brightness":0,"max_brightness":16}

## chat_action

This condition will be active once, when a chat message has been sent.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
chat_message | String | The chat message to look for, will check case insensitive. | false | Hello World
cooldown | Integer | Amount of ticks the ability wont be useable for after using it. | false | 0

### Example:

    {"type":"palladium:chat_action","chat_message":"Hello World","cooldown":0}

## chat_activation

This condition is used to activate the ability when a chat message was sent for a certain amount of ticks.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
chat_message | String | The chat message to look for, will check case insensitive. | false | Hello World
cooldown | Integer | Amount of ticks the ability wont be useable for after using it. | false | 0
ticks | Integer | The amount of ticks the ability will be active for | false | 60

### Example:

    {"type":"palladium:chat_activation","chat_message":"Hello World","cooldown":0,"ticks":60}

## chat_toggle

Toggles the ability on and off after a chat message was sent.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
chat_message | String | The chat message to look for, will check case insensitive. | false | Hello World
cooldown | Integer | Amount of ticks the ability can be used for | false | 0

### Example:

    {"type":"palladium:chat_toggle","chat_message":"Hello World","cooldown":0}

## command_result

Executes a command and compares the output to a number.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
command | String | The command output to compare the 'compare_to' int with | false | execute if entity @s
comparison | String | The comparison used between the 'command' and 'compare_to' fields, accepts >=, <=, >, <, !=, or == (note that the first number is from 'command' and the second from 'compare_to') | false | ==
compare_to | Integer | The number being compared to the output of 'command' | false | 1
log | Boolean | If the command's output is sent to the entity or not (unless debugging, you probably want this false/unset) | false | false

### Example:

    {"type":"palladium:command_result","command":"execute if entity @s","comparison":"==","compare_to":1,"log":false}

## crouching

Checks if the entity is crouching.
Applicable for: all

### Example:

    {"type":"palladium:crouching"}

## day

Checks if it's currently daytime
Applicable for: all

### Example:

    {"type":"palladium:day"}

## dimension

Checks if the player is in a specific dimension.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
dimension | ResourceLocation | ID of the dimension the player must be in. Example values: minecraft:overworld, minecraft:the_nether, minecraft:the_end | false | minecraft:overworld

### Example:

    {"type":"palladium:dimension","dimension":"minecraft:overworld"}

## empty_slot

Checks if the given slot is empty.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
slot | PlayerSlot | Slot that must be empty. Example values: [mainhand, offhand, feet, legs, chest, head, curios:back, curios:necklace, trinkets:chest/back, trinkets:chest/necklace] | false | chest

### Example:

    {"type":"palladium:empty_slot","slot":"chest"}

## energy_bar

Checks if energy bar has enough energy in it.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power where is the desired energy bar is located. Can be null IF used for abilities, then it will look into the current power | false | /
energy_bar | String | ID of the desired energy bar | false | energy_bar_name
min | Integer | Minimum required amount of the energy in the energy bar | false | 0
max | Integer | Maximum required amount of the energy in the energy bar | false | 2147483647

### Example:

    {"type":"palladium:energy_bar","power":"null","energy_bar":"energy_bar_name","min":0,"max":2147483647}

## entity_type

Checks if the entity is of a specific entity type.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
entity_type | EntityType | The entity type the entity must be of for the condition to be active | false | minecraft:player

### Example:

    {"type":"palladium:entity_type","entity_type":"minecraft:player"}

## entity_type_tag

Checks if the entity is of a certain tag.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
entity_type_tag | ResourceLocation | The tag the type of the entity must be in for the condition to be active | false | minecraft:skeletons

### Example:

    {"type":"palladium:entity_type_tag","entity_type_tag":"minecraft:skeletons"}

## experience_level_buyable

A condition that makes the ability buyable for a certain amount of xp levels.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
xp_level | Integer | Amount xp level that the player needs to spend | false | 3

### Example:

    {"type":"palladium:experience_level_buyable","xp_level":3}

## false

It's just false. That's it.
Applicable for: all

### Example:

    {"type":"palladium:false"}

## float_property

Checks if the entity has a float property with a value between the given minimum and maximum.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
property | String | Name of the float property in the entity | false | value
min | Float | Minimum required amount of the property value | false | 0.0
max | Float | Maximum required amount of the property value | false | 0.0

### Example:

    {"type":"palladium:float_property","property":"value","min":0.0,"max":0.0}

## has_effect

Checks if the entity has a (potion) effect.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
effect | Object | ID of the (potion) effect that is being checked for. | false | minecraft:poison

### Example:

    {"type":"palladium:has_effect","effect":"minecraft:poison"}

## has_power

Checks if the entity has a power with the given ID.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
power | ResourceLocation | ID of the power that is required | false | example:power_id

### Example:

    {"type":"palladium:has_power","power":"example:power_id"}

## has_tag

Checks if the entity has a specific tag. These tags are added to entities via /tag command.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
tag | String | The tag the entity must have. | false | example_tag

### Example:

    {"type":"palladium:has_tag","tag":"example_tag"}

## health

Checks if the entity has a certain amount of health.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
min_health | Float | Minimum required amount of health | false | 0.0
max_health | Float | Maximum required amount of health | false | 3.4028235E38

### Example:

    {"type":"palladium:health","min_health":0.0,"max_health":3.4028235E38}

## held

Allows the ability to be used while holding a key bind.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
cooldown | Integer | Amount of ticks the ability can be used for | false | 0
key_type | KeyType | The type of key that needs to be pressed. Possible values: [key_bind, left_click, right_click, space_bar] | false | KEY_BIND
needs_empty_hand | Boolean | Whether or not the player needs to have an empty hand | false | false

### Example:

    {"type":"palladium:held","cooldown":0,"key_type":"key_bind","needs_empty_hand":false}

## in_lava

Checks if the entity is in lava.
Applicable for: all

### Example:

    {"type":"palladium:in_lava"}

## in_water

Checks if the entity is in water.
Applicable for: all

### Example:

    {"type":"palladium:in_water"}

## integer_property

Checks if the entity has a certain amount of a certain integer property.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
property | String | Name of the integer property in the entity | false | value
min | Integer | Minimum required amount of the property value | false | 0
max | Integer | Maximum required amount of the property value | false | 0

### Example:

    {"type":"palladium:integer_property","property":"value","min":0,"max":0}

## interval

Allows you to set an amount of ticks the ability will be active and an amount of ticks the ability will be disabled. The ability will be active for the first amount of ticks and then disabled for the second amount of ticks and so on.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
active_ticks | Integer | Determines for how many ticks the condition will be active | false | 20
disabled_ticks | Integer | Determines for how many ticks the condition will be disabled | false | 20

### Example:

    {"type":"palladium:interval","active_ticks":20,"disabled_ticks":20}

## is_elytra_flying

Checks if the entity is currently flying with an elytra.
Applicable for: all

### Example:

    {"type":"palladium:is_elytra_flying"}

## is_fast_flying

Checks if the entity is currently flying fast.
Applicable for: all

### Example:

    {"type":"palladium:is_fast_flying"}

## is_flying

Checks if the entity is flying.
Applicable for: all

### Example:

    {"type":"palladium:is_flying"}

## is_hovering

Checks if the entity is hovering mid-air.
Applicable for: all

### Example:

    {"type":"palladium:is_hovering"}

## is_hovering_or_flying

Checks if the entity is hovering mid-air or flying.
Applicable for: all

### Example:

    {"type":"palladium:is_hovering_or_flying"}

## is_hovering_or_levitating

Checks if the entity is hovering mid-air or levitating.
Applicable for: all

### Example:

    {"type":"palladium:is_hovering_or_levitating"}

## is_in_rain

Checks if the entity is in rain.
Applicable for: all

### Example:

    {"type":"palladium:is_in_rain"}

## is_in_water_or_bubble

Checks if the entity is in water or a bubble column.
Applicable for: all

### Example:

    {"type":"palladium:is_in_water_or_bubble"}

## is_in_water_or_rain

Checks if the entity is in water or rain.
Applicable for: all

### Example:

    {"type":"palladium:is_in_water_or_rain"}

## is_in_water_rain_or_bubble

Checks if the entity is in water, rain or a bubble column.
Applicable for: all

### Example:

    {"type":"palladium:is_in_water_rain_or_bubble"}

## is_levitating

Checks if the entity is levitating.
Applicable for: all

### Example:

    {"type":"palladium:is_levitating"}

## is_moving

Checks if the entity is moving.
Applicable for: all

### Example:

    {"type":"palladium:is_moving"}

## is_on_fire

Checks if the entity is on fire.
Applicable for: all

### Example:

    {"type":"palladium:is_on_fire"}

## is_swimming

Checks if the entity is swimming.
Applicable for: all

### Example:

    {"type":"palladium:is_swimming"}

## is_under_water

Checks if the entity is under water.
Applicable for: all

### Example:

    {"type":"palladium:is_under_water"}

## item_buyable

The player needs to spend a certain amount of items to unlock the ability.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
ingredient | Ingredient | Ingredient predicate for the item | false | {"item":"minecraft:iron_ingot"}
amount | Integer | Amount of items that the player needs to spend | false | 3

### Example:

    {"type":"palladium:item_buyable","ingredient":{"item":"minecraft:iron_ingot"},"amount":3}

## item_in_slot

Checks if the given item is in the given slot.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
item | Ingredient | Item (defined as an ingredient) that must be in the given slot | false | {"item":"minecraft:leather_chestplate"}
slot | PlayerSlot | Slot that must contain the item. Example values: [mainhand, offhand, feet, legs, chest, head, curios:back, curios:necklace, trinkets:chest/back, trinkets:chest/necklace] | false | chest

### Example:

    {"type":"palladium:item_in_slot","item":{"item":"minecraft:leather_chestplate"},"slot":"chest"}

## item_in_slot_open

Checks if the item in the given slot is opened. Needs to be using the openable-system for items.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
slot | PlayerSlot | Slot that must contain an opened item. Example values: [mainhand, offhand, feet, legs, chest, head, curios:back, curios:necklace, trinkets:chest/back, trinkets:chest/necklace] | false | chest

### Example:

    {"type":"palladium:item_in_slot_open","slot":"chest"}

## mod_loaded

Checks if a mod is loaded.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
mod_id | String | ID of the mod that must be loaded | false | palladium

### Example:

    {"type":"palladium:mod_loaded","mod_id":"palladium"}

## moon_phase

Checks if the moon phase is between the given values.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
min_phase | Integer | Minimum phase required to be active | false | 0
max_phase | Integer | Maximum phase required to be active | false | 7

### Example:

    {"type":"palladium:moon_phase","min_phase":0,"max_phase":7}

## night

Checks if it's currently nighttime
Applicable for: all

### Example:

    {"type":"palladium:night"}

## not

Returns true if all conditions are disabled.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
conditions | Condition[] | Array of conditions that must be disabled | false | 0 conditions

### Example:

    {"type":"palladium:not","conditions":[]}

## objective_score

Checks if the player has a score in a specific objective. IF YOU USE THIS, MAKE A 'tracked_score.json' AND PUT THE OBJECTIVE NAME IN IT, MORE ON THE WIKI!
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
objective | String | Name of the objective | false | objective_name
min_score | Integer | Minimum required score of objective | false | -2147483648
max_score | Integer | Maximum required score of objective | false | 2147483647

### Example:

    {"type":"palladium:objective_score","objective":"objective_name","min_score":-2147483648,"max_score":2147483647}

## on_ground

Checks if the entity is on the ground.
Applicable for: all

### Example:

    {"type":"palladium:on_ground"}

## or

Returns true if at least one of the conditions is active.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
conditions | Condition[] | Array of conditions, at least one of which must be active | false | 0 conditions

### Example:

    {"type":"palladium:or","conditions":[]}

## pose

Checks if the entity is in a specific pose.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
pose | Pose | Determines the pose the entity must be in. Possible values: [standing, fall_flying, sleeping, swimming, spin_attack, crouching, long_jumping, dying, croaking, using_tongue, sitting, roaring, sniffing, emerging, digging] | false | CROUCHING

### Example:

    {"type":"palladium:pose","pose":"crouching"}

## scoreboard_score_buyable

A buyable condition that requires a certain score for a scoreboard objective.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
objective | String | Name of the scoreboard objective | false | objective_name
score | Integer | Required player score for the scoreboard objective | false | 3
icon | IIcon | Icon that will be displayed during buying | false | ItemIcon{stack=1 command_block}
description | Component | Name of the score that will be displayed during buying | false | literal{Scoreboard Score}

### Example:

    {"type":"palladium:scoreboard_score_buyable","objective":"objective_name","score":3,"icon":"minecraft:command_block","description":{"text":"Scoreboard Score"}}

## size

Checks if an entity is within a certain size (requires Pehkui for real effect). It checks for the "average " size, which is the average of the width and height scale. Usually they are the same.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
min | Float | Minimum required average size | false | 0.0
max | Float | Minimum required average size | false | 3.4028235E38

### Example:

    {"type":"palladium:size","min":0.0,"max":3.4028235E38}

## small_arms

Checks if the entity has small arms. Returns false if the entity is not a player or if this condition is being checked sever-side.
Applicable for: assets

### Example:

    {"type":"palladium:small_arms"}

## sprinting

Checks if the entity is sprinting.
Applicable for: all

### Example:

    {"type":"palladium:sprinting"}

## toggle

Toggles the ability on and off after a key press or mouse click.
Applicable for: data

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
cooldown | Integer | Amount of ticks the ability can be used for | false | 0
key_type | KeyType | The type of key that needs to be pressed. Possible values: [key_bind, left_click, right_click, space_bar, scroll_up, scroll_down, scroll_either] | false | KEY_BIND
needs_empty_hand | Boolean | Whether or not the player needs to have an empty hand | false | false
allow_scrolling_when_crouching | Boolean | If you choose scrolling as a key type, you can determine if scrolling is allowed when crouching. For other key types you can completely ignore this setting. | false | true

### Example:

    {"type":"palladium:toggle","cooldown":0,"key_type":"key_bind","needs_empty_hand":false,"allow_scrolling_when_crouching":true}

## true

It's just true. That's it.
Applicable for: all

### Example:

    {"type":"palladium:true"}

## wears_suit_set

Checks if the entity is wearing a specific suit set.
Applicable for: all

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
suit_set | SuitSet | ID of the suit set that must be worn | false | /

### Example:

    {"type":"palladium:wears_suit_set","suit_set":"null"}