provide more delays for minecraft

This commit is contained in:
Henry Gabryjelski 2021-08-20 11:59:06 -07:00
parent 494b9905fc
commit da36ebd360
3 changed files with 189 additions and 160 deletions

View file

@ -9,7 +9,7 @@ from adafruit_hid.keycode import Keycode # REQUIRED if using Keycode.* values
# NOTE: There appears to be some delay when bringing up the command screen.
DELAY_AFTER_SLASH = 0.80 # required so minecraft has time to bring up command screen
DELAY_BEFORE_RETURN = 0.10
# NOTE: On PC, characters are sometimes lost due to lag. No simple fix for
# lost keystrokes is known. However, the commands do work most of the time.
@ -23,15 +23,15 @@ app = { # REQUIRED dict, must be named 'app'
(0x000020, 'list', [
'/', DELAY_AFTER_SLASH,
'list',
Keycode.RETURN, -Keycode.RETURN]),
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x000020, 'list', [
'/', DELAY_AFTER_SLASH,
'list',
Keycode.RETURN, -Keycode.RETURN]),
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x000020, 'list', [
'/', DELAY_AFTER_SLASH,
'list',
Keycode.RETURN, -Keycode.RETURN]),
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
# 2nd row ----------
(0x000000, '', []),
(0x000000, '', []),
@ -44,15 +44,15 @@ app = { # REQUIRED dict, must be named 'app'
(0x101010, 'bed', [
'/', DELAY_AFTER_SLASH,
'msg @a Time for bed!',
Keycode.RETURN, -Keycode.RETURN]),
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x101010, 'bed', [
'/', DELAY_AFTER_SLASH,
'msg @a Time for bed!',
Keycode.RETURN, -Keycode.RETURN]),
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x101010, 'bed', [
'/', DELAY_AFTER_SLASH,
'msg @a Time for bed!',
Keycode.RETURN, -Keycode.RETURN]),
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
# Encoder button ---
(0x000000, '', [])
]

View file

@ -8,7 +8,8 @@ from adafruit_hid.keycode import Keycode # REQUIRED if using Keycode.* values
# See https://minecraft.fandom.com/wiki/Effect
DELAY_AFTER_ESCAPE = 0.05
DELAY_AFTER_SLASH = 0.80 # required so minecraft has time to bring up command screen
DELAY_BEFORE_RETURN = 0.10 # give minecraft time to show all the keys pressed...
app = { # REQUIRED dict, must be named 'app'
'name' : 'Minecraft PE (effect)', # Application name
@ -20,73 +21,60 @@ app = { # REQUIRED dict, must be named 'app'
# COLOR LABEL KEY SEQUENCE
# 1st row ----------
(0x002000, 'speed', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s speed 999999999 1 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s speed 999999999 1 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x002000, 'str', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s strength 999999999 1 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s strength 999999999 1 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x002000, 'haste', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s haste 999999999 1 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s haste 999999999 1 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
# 2nd row ----------
(0x002000, 'jump', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s jump_boost 999999999 1 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s jump_boost 999999999 1 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x000030, 'breath', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s water_breathing 999999999 0 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s water_breathing 999999999 0 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x202020, 'darkv', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s night_vision 999999999 0 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s night_vision 999999999 0 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
# 3rd row ----------
(0x300000, 'health', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s health_boost 999999999 4 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s health_boost 999999999 4 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x300000, 'regen', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s regeneration 999999999 4 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s regeneration 999999999 4 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x002000, 'absorb', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s absorption 999999999 3 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s absorption 999999999 3 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
# 4th row ---------
(0x002000, 'resist', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s resistance 999999999 3 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s resistance 999999999 3 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x101010, 'invis', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s invisibility 999999999 0 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s invisibility 999999999 0 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
(0x300000, 'fire_r', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s fire_resistance 999999999 0 true',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s fire_resistance 999999999 0 true',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
# Encoder button --- Remove all status effects....
(0x000000, '', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/effect @s clear',
Keycode.RETURN, -Keycode.RETURN,
Keycode.ESCAPE, -Keycode.ESCAPE]),
'/', DELAY_AFTER_SLASH,
'effect @s clear',
DELAY_BEFORE_RETURN, Keycode.RETURN, -Keycode.RETURN]),
]
}

View file

@ -17,199 +17,240 @@ from adafruit_hid.keycode import Keycode # REQUIRED if using Keycode.* values
from adafruit_hid.keycode import Keycode # REQUIRED if using Keycode.* values
DELAY_AFTER_ESCAPE = 0.05
DELAY_AFTER_COMMAND = 0.10
DELAY_AFTER_SLASH = 0.80 # required so minecraft has time to bring up command screen
CONFIGURABLE_KEY_EQUIP_CURRENTLY_HELD_ITEM = 'E'
app = {
'name': 'Minecraft PE (equip)',
'macros': [
(0x003000, 'helm', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_helmet',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_helmet',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s protection 4',
'/', DELAY_AFTER_SLASH,
'enchant @s protection 4',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s respiration 3',
'/', DELAY_AFTER_SLASH,
'enchant @s respiration 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s aqua_affinity 1',
'/', DELAY_AFTER_SLASH,
'enchant @s aqua_affinity 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'E']),
CONFIGURABLE_KEY_EQUIP_CURRENTLY_HELD_ITEM]),
(0x003000, 'plate', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_chestplate',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_chestplate',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s protection 4',
'/', DELAY_AFTER_SLASH,
'enchant @s protection 4',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'E']),
CONFIGURABLE_KEY_EQUIP_CURRENTLY_HELD_ITEM]),
(0x003000, 'legs', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_leggings',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_leggings',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s protection 4',
'/', DELAY_AFTER_SLASH,
'enchant @s protection 4',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'E']),
CONFIGURABLE_KEY_EQUIP_CURRENTLY_HELD_ITEM]),
(0x003000, 'boots', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_boots',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_boots',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s protection 4',
'/', DELAY_AFTER_SLASH,
'enchant @s protection 4',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s feather_falling 4',
'/', DELAY_AFTER_SLASH,
'enchant @s feather_falling 4',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s depth_strider 3',
'/', DELAY_AFTER_SLASH,
'enchant @s depth_strider 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s soul_speed 3',
'/', DELAY_AFTER_SLASH,
'enchant @s soul_speed 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'E']),
CONFIGURABLE_KEY_EQUIP_CURRENTLY_HELD_ITEM]),
(0x003000, 'frosty', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_boots',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_boots',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s protection 4',
'/', DELAY_AFTER_SLASH,
'enchant @s protection 4',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s feather_falling 4',
'/', DELAY_AFTER_SLASH,
'enchant @s feather_falling 4',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s frost_walker 2',
'/', DELAY_AFTER_SLASH,
'enchant @s frost_walker 2',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s soul_speed 3',
'/', DELAY_AFTER_SLASH,
'enchant @s soul_speed 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'E']),
CONFIGURABLE_KEY_EQUIP_CURRENTLY_HELD_ITEM]),
(0x300000, 'feedme', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_sword',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_sword',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s fire_aspect 2',
'/', DELAY_AFTER_SLASH,
'enchant @s fire_aspect 2',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s knockback 2',
'/', DELAY_AFTER_SLASH,
'enchant @s knockback 2',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s looting 3',
'/', DELAY_AFTER_SLASH,
'enchant @s looting 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s sharpness 5',
'/', DELAY_AFTER_SLASH,
'enchant @s sharpness 5',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
Keycode.PAGE_UP, -Keycode.PAGE_UP]),
(0x300000, 'excal', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_sword',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_sword',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s fire_aspect 2',
'/', DELAY_AFTER_SLASH,
'enchant @s fire_aspect 2',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s knockback 2',
'/', DELAY_AFTER_SLASH,
'enchant @s knockback 2',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s looting 3',
'/', DELAY_AFTER_SLASH,
'enchant @s looting 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s sharpness 5',
'/', DELAY_AFTER_SLASH,
'enchant @s sharpness 5',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
Keycode.PAGE_UP, -Keycode.PAGE_UP]),
(0x300000, 'trident', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy trident',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy trident',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s loyalty 3',
'enchant @s loyalty 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s channeling 1',
'enchant @s channeling 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s riptide 3',
'enchant @s riptide 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s impaling 5',
'enchant @s impaling 5',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
Keycode.PAGE_UP, -Keycode.PAGE_UP]),
(0x300000, 'bow', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy bow',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy bow',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s power 5',
'/', DELAY_AFTER_SLASH,
'enchant @s power 5',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s punch 2',
'/', DELAY_AFTER_SLASH,
'enchant @s punch 2',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
Keycode.PAGE_UP, -Keycode.PAGE_UP]),
(0x000030, 'silky', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_pickaxe',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_pickaxe',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s efficiency 5',
'/', DELAY_AFTER_SLASH,
'enchant @s efficiency 5',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s silk_touch 1',
'/', DELAY_AFTER_SLASH,
'enchant @s silk_touch 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
Keycode.PAGE_UP, -Keycode.PAGE_UP]),
(0x000030, 'pickme', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_pickaxe',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_pickaxe',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s efficiency 5',
'/', DELAY_AFTER_SLASH,
'enchant @s efficiency 5',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s fortune 3',
'/', DELAY_AFTER_SLASH,
'enchant @s fortune 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
Keycode.PAGE_UP, -Keycode.PAGE_UP]),
(0x000030, 'axe', [
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
'/replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_axe',
'/', DELAY_AFTER_SLASH,
'replaceitem entity @s slot.weapon.mainhand 0 destroy netherite_axe',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s mending 1',
'/', DELAY_AFTER_SLASH,
'enchant @s mending 1',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s fortune 3',
'/', DELAY_AFTER_SLASH,
'enchant @s fortune 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s efficiency 5',
'/', DELAY_AFTER_SLASH,
'enchant @s efficiency 5',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s sharpness 5',
'/', DELAY_AFTER_SLASH,
'enchant @s sharpness 5',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
'/enchant @s unbreaking 3',
'/', DELAY_AFTER_SLASH,
'enchant @s unbreaking 3',
Keycode.RETURN, -Keycode.RETURN, DELAY_AFTER_COMMAND,
Keycode.ESCAPE, -Keycode.ESCAPE, DELAY_AFTER_ESCAPE,
Keycode.PAGE_UP, -Keycode.PAGE_UP]),
]
}