Compare commits

2 Commits

Author SHA1 Message Date
Sirger Tünde-Maria
8f6dfd4398 Added menu gui only 2025-12-02 01:23:58 +02:00
Sirger Tünde-Maria
106735a290 Done settings get and set 2025-11-30 01:06:39 +02:00
30 changed files with 273 additions and 92 deletions

View File

@@ -82,7 +82,8 @@ apartments_command_apartmentremoveaccess:
- aptrm - aptrm
permission: apartments.command.apartmentremoveaccess permission: apartments.command.apartmentremoveaccess
tab completions: tab completions:
1: <proc[apartments_all_with_access].context[<player>].parse[name]> # TODO: use the procedural tab-complete to handle this correctly!
1: <server.online_players.parse[name]>
script: script:
- if <context.source_type> != player: - if <context.source_type> != player:
- narrate "<&c>Please run this command as a player." - narrate "<&c>Please run this command as a player."

View File

@@ -109,17 +109,3 @@ apartments_end_edit:
- inventory set origin:<[item]> slot:<[slot]> player:<[player]> - inventory set origin:<[item]> slot:<[slot]> player:<[player]>
- adjust <[player]> gamemode:survival - adjust <[player]> gamemode:survival
- flag <[player]> apartments_edit:! - flag <[player]> apartments_edit:!
apartments_all_with_access:
debug: false
type: procedure
definitions: player
script:
- define location <player.location>
- define apartment <proc[apartments_at].context[<[location]>]>
- if <[apartment]> == null:
- determine <list[]>
- define owner <proc[apartments_owner].context[<[apartment]>]>
- if <[owner]> != <[player]>:
- determine <list[]>
- determine <[owner].flag[apartments_access].get[<[apartment]>].if_null[<list[]>].keys>

View File

@@ -12,7 +12,7 @@ apartments_world:
## invalid access ## invalid access
on player right clicks block: on player right clicks block:
- if <player.is_op>: - if <player.is_op>:
- stop - stop
- if <context.location.if_null[null]> == null: - if <context.location.if_null[null]> == null:
- stop - stop
- if !<proc[apartments_access].context[<player>|<context.location>]>: - if !<proc[apartments_access].context[<player>|<context.location>]>:

View File

@@ -45,7 +45,7 @@ carry_command_carry:
- narrate format:formats_prefix "Sent a carry request to <&e><proc[character_get_name].context[<[target]>]>" - narrate format:formats_prefix "Sent a carry request to <&e><proc[character_get_name].context[<[target]>]>"
# #
- narrate format:formats_prefix targets:<[target]> "<&e><proc[character_get_name].context[<player>]> <&7> would like to carry you." - narrate format:formats_prefix targets:<[target]> "<&e><proc[character_get_name].context[<player>]> <&7> would like to carry you."
- narrate targets:<[target]> <element[<&a><&l>[ACCEPT]].on_click[<entry[carry].command>]> - narrate targets:<[target]> "<element[<&a><&l>[ACCEPT]].on_click[<entry[carry].command>]>"
carry_command_uncarry: carry_command_uncarry:
debug: false debug: false

View File

@@ -62,7 +62,7 @@ furniture_menu:
item: <[item]> item: <[item]>
- define contents <[contents].with[<[loop_index]>].as[<[item_entry]>]> - define contents <[contents].with[<[loop_index]>].as[<[item_entry]>]>
- if <[page]> > 0: - if <[page]> > 0:
- definemap contents_extra: - define contents_extra:
49: 49:
item: <item[ender_pearl[display=<&a><&lt><&lt>]]> item: <item[ender_pearl[display=<&a><&lt><&lt>]]>
script: furniture_menu script: furniture_menu
@@ -71,7 +71,7 @@ furniture_menu:
page: <[page].sub[1]> page: <[page].sub[1]>
- define contents <[contents].include[<[contents_extra]>]> - define contents <[contents].include[<[contents_extra]>]>
- if <[page].add[1].mul[27]> < <[contents].size>: - if <[page].add[1].mul[27]> < <[contents].size>:
- definemap contents_extra: - define contents_extra:
51: 51:
item: <item[ender_eye[display=<&a><&gt><&gt>]]> item: <item[ender_eye[display=<&a><&gt><&gt>]]>
script: furniture_menu script: furniture_menu

View File

@@ -43,7 +43,7 @@ furniture_world_custom_block:
- if !<player.has_permission[furniture.customblock.place]> && !<player.is_op>: - if !<player.has_permission[furniture.customblock.place]> && !<player.is_op>:
- stop - stop
- if <context.item.material.advanced_matches[air]>: - if <context.item.material.advanced_matches[air]>:
- stop - stop
- if !<proc[furniture_custom_block_any].context[<context.item.material>|<context.item.custom_model_data.if_null[0]>]>: - if !<proc[furniture_custom_block_any].context[<context.item.material>|<context.item.custom_model_data.if_null[0]>]>:
- stop - stop
- ratelimit <player> 5t - ratelimit <player> 5t
@@ -80,7 +80,7 @@ furniture_world_custom_block:
- if <proc[custom_block_at].context[<context.location>]> == null: - if <proc[custom_block_at].context[<context.location>]> == null:
- stop - stop
- if !<player.has_permission[furniture.customblock.break]> && !<player.is_op>: - if !<player.has_permission[furniture.customblock.break]> && !<player.is_op>:
- determine cancelled passively - determine cancelled passively
- stop - stop
- run custom_block_destroy def.at:<context.location> - run custom_block_destroy def.at:<context.location>
# #
@@ -96,7 +96,7 @@ furniture_world_collision_block:
events: events:
on player right clicks block bukkit_priority:high: on player right clicks block bukkit_priority:high:
- if <context.location.if_null[null]> == null: - if <context.location.if_null[null]> == null:
- stop - stop
- if !<player.has_permission[furniture.collisionblock.interact]> && !<player.is_op>: - if !<player.has_permission[furniture.collisionblock.interact]> && !<player.is_op>:
- stop - stop
- if <context.location.material.advanced_matches[air].if_null[false]>: - if <context.location.material.advanced_matches[air].if_null[false]>:

View File

@@ -30,7 +30,7 @@ guns_world_gun:
- playeffect effect:redstone at:<player.location.above[1].points_between[<[location]>].distance[0.1]> special_data:0.5|white visibility:16 quantity:6 offset:0,0,0 - playeffect effect:redstone at:<player.location.above[1].points_between[<[location]>].distance[0.1]> special_data:0.5|white visibility:16 quantity:6 offset:0,0,0
- stop - stop
- playeffect effect:redstone at:<player.location.above[1].points_between[<[target].location.above[1]>].distance[0.1]> special_data:0.5|white visibility:16 quantity:6 offset:0,0,0 - playeffect effect:redstone at:<player.location.above[1].points_between[<[target].location.above[1]>].distance[0.1]> special_data:0.5|white visibility:16 quantity:6 offset:0,0,0
- if <[target].type> != player: - if <[target].entity_type> != player:
- stop - stop
- if <[target].has_flag[guns_frozen]>: - if <[target].has_flag[guns_frozen]>:
- stop - stop
@@ -51,7 +51,7 @@ guns_world_taser:
- define target <player.precise_target[7]||null> - define target <player.precise_target[7]||null>
- if <[target]> == null: - if <[target]> == null:
- stop - stop
- if <[target].type> != player: - if <[target].entity_type> != player:
- stop - stop
- if <[target].has_flag[guns_frozen]>: - if <[target].has_flag[guns_frozen]>:
- stop - stop

View File

@@ -57,7 +57,7 @@ gui_restore_world:
- if <context.inventory.title.starts_with[<script[gui_restore_config].data_key[special_chars].parsed>]>: - if <context.inventory.title.starts_with[<script[gui_restore_config].data_key[special_chars].parsed>]>:
- run gui_restore_save def.player:<player> - run gui_restore_save def.player:<player>
- if <context.inventory.inventory_type> == anvil: - if <context.inventory.inventory_type> == anvil:
- run gui_restore_save def.player:<player> - run gui_restore_save def.player:<player>
on player closes inventory bukkit_priority:lowest: on player closes inventory bukkit_priority:lowest:
- if <player.has_flag[gui_restore]>: - if <player.has_flag[gui_restore]>:
- run gui_restore_load def.player:<player> - run gui_restore_load def.player:<player>

View File

@@ -61,15 +61,15 @@ textbox_write:
- playsound sound:textbox.text <[player]> custom pitch:<util.random.decimal[0.98].to[1]> - playsound sound:textbox.text <[player]> custom pitch:<util.random.decimal[0.98].to[1]>
- wait 1t - wait 1t
- if <[line].substring[<[value].add[1]>,<[value].add[1]>].trim.length.if_null[1]> == 0: - if <[line].substring[<[value].add[1]>,<[value].add[1]>].trim.length.if_null[1]> == 0:
- if <[line].substring[<[value]>,<[value]>]> == .: - if <[line].substring[<[value]>,<[value]>]> == ".":
- wait 2t - wait 2t
- if <[line].substring[<[value]>,<[value]>]> == !: - if <[line].substring[<[value]>,<[value]>]> == "!":
- wait 2t - wait 2t
- if <[line].substring[<[value]>,<[value]>]> == ?: - if <[line].substring[<[value]>,<[value]>]> == "?":
- wait 2t - wait 2t
- if <[line].substring[<[value]>,<[value]>]> == -: - if <[line].substring[<[value]>,<[value]>]> == "-":
- wait 2t - wait 2t
- if <[line].substring[<[value]>,<[value]>]> == ,: - if <[line].substring[<[value]>,<[value]>]> == ",":
- wait 2t - wait 2t
- wait <duration[1t]> - wait <duration[1t]>
- if <[player].flag[textbox_state].if_null[null]> != writing: - if <[player].flag[textbox_state].if_null[null]> != writing:

View File

@@ -16,7 +16,7 @@ liteprofilesutils_command_profiles:
- stop - stop
- define player <player> - define player <player>
- clickable save:accept usages:1 until:30s: - clickable save:accept usages:1 until:30s:
- flag <[player]> liteprofiles_legacy_menu:! - flag <[player]> liteprofiles_legacy_menu:!
- run liteprofilesutils_show_menu def.player:<[player]> - run liteprofilesutils_show_menu def.player:<[player]>
- narrate <empty> - narrate <empty>
- narrate format:formats_prefix "Our profile system lets you own multiple 'unique accounts' by tricking the server to hand you new unique IDs, which may cause the server to incorrectly save your inventory, ranks, or other data." - narrate format:formats_prefix "Our profile system lets you own multiple 'unique accounts' by tricking the server to hand you new unique IDs, which may cause the server to incorrectly save your inventory, ranks, or other data."

View File

@@ -50,7 +50,7 @@ liteprofilesutils_show_menu:
- define slaveitem <item[emerald]> - define slaveitem <item[emerald]>
- define slavename <proc[character_get_name].context[<player[<[slaveuuid]>]>]> - define slavename <proc[character_get_name].context[<player[<[slaveuuid]>]>]>
- if <[slavename]> == null: - if <[slavename]> == null:
- define slavename "Unnamed Character" - define slavename "Unnamed Character"
- adjust def:slaveitem display:<&f><[slavename]> - adjust def:slaveitem display:<&f><[slavename]>
- adjust def:slaveitem lore:<list[<&e>Alt Profile|<&f>|<&8>UUID:|<&8><[slaveuuid]>]> - adjust def:slaveitem lore:<list[<&e>Alt Profile|<&f>|<&8>UUID:|<&8><[slaveuuid]>]>
- flag <[slaveitem]> liteprofiles:<map[].with[type].as[slave].with[value].as[<[slaveuuid]>]> - flag <[slaveitem]> liteprofiles:<map[].with[type].as[slave].with[value].as[<[slaveuuid]>]>

View File

@@ -12,7 +12,7 @@ compatibility_check_compare_versions:
- if <[v1splitpart]> < <[v2splitpart]>: - if <[v1splitpart]> < <[v2splitpart]>:
- determine -1 - determine -1
- if <[v2split].size> > <[v1split].size>: - if <[v2split].size> > <[v1split].size>:
- determine -1 - determine -1
- determine 0 - determine 0
compatibility_check_world: compatibility_check_world:
@@ -26,13 +26,13 @@ compatibility_check_world:
- wait 5s - wait 5s
- if !<player.is_online>: - if !<player.is_online>:
- stop - stop
- narrate <&f> - narrate ""
- narrate "<&c><&l>[<&4><&l>!<&c><&l>] <&c>You are using an outdated Minecraft version!" - narrate "<&c><&l>[<&4><&l>!<&c><&l>] <&c>You are using an outdated Minecraft version!"
- narrate "<&6>Your version: <&f><[player_version]>" - narrate "<&6>Your version: <&f><[player_version]>"
- narrate "<&6>Server version: <&f><[server_version]>" - narrate "<&6>Server version: <&f><[server_version]>"
- narrate <&f> - narrate ""
- narrate "<&f>You can still play, however we strongly encourage you to consider <&e>updating your game<&f>." - narrate "<&f>You can still play, however we strongly encourage you to consider <&e>updating your game<&f>."
- narrate "<&f>We will not offer bug support if you are using an outdated version!" - narrate "<&f>We will not offer bug support if you are using an outdated version!"
- narrate <&f> - narrate ""
- narrate "<&7>(Your ViaVersion protocol: <player.viaversion_protocol>)" - narrate "<&7>(Your ViaVersion protocol: <player.viaversion_protocol>)"
- narrate <&f> - narrate ""

View File

@@ -31,4 +31,4 @@ payto_command_payto:
- clickable usages:1 until:1m save:pay: - clickable usages:1 until:1m save:pay:
- execute as_player "pay <[target].name> <[amount]>" - execute as_player "pay <[target].name> <[amount]>"
- narrate format:formats_prefix "<&7>Would you like to pay <&6><[amount].as_money><&7> to <&6><proc[character_get_name].context[<[target]>]>" - narrate format:formats_prefix "<&7>Would you like to pay <&6><[amount].as_money><&7> to <&6><proc[character_get_name].context[<[target]>]>"
- narrate <element[<&a><&l>[CLICK HERE]].on_click[<entry[pay].command>]> - narrate "<element[<&a><&l>[CLICK HERE]].on_click[<entry[pay].command>]>"

View File

@@ -85,7 +85,7 @@ phones_commands_phonecall:
- if !<[target].has_flag[phones_is_maybe_called]>: - if !<[target].has_flag[phones_is_maybe_called]>:
- nbs file:data/phones/songs/<[target].flag[phones].get[ringtone].if_null[Bad Apple]> play targets:<[target]> - nbs file:data/phones/songs/<[target].flag[phones].get[ringtone].if_null[Bad Apple]> play targets:<[target]>
- narrate targets:<[target]> "<&6>*** <&e>You're being called by <&e><[relative]><&7>." - narrate targets:<[target]> "<&6>*** <&e>You're being called by <&e><[relative]><&7>."
- narrate targets:<[target]> <&hover[<&a>Click to accept call from <[relative]>...]><element[<&a><&l>[ ACCEPT ]].on_click[<entry[accept].command>]><&end_hover> - narrate targets:<[target]> "<&hover[<&a>Click to accept call from <[relative]>...]><element[<&a><&l>[ ACCEPT ]].on_click[<entry[accept].command>]><&end_hover>"
# wait... # wait...
- flag <player> phones_call:<[target]> - flag <player> phones_call:<[target]>
- flag <player> phones_call_clickable:<entry[accept].id> - flag <player> phones_call_clickable:<entry[accept].id>

View File

@@ -93,18 +93,18 @@ phones_gui_home:
type: task type: task
definitions: player definitions: player
script: script:
- define inventory <inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&0>邒]]> - define inventory "<inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&0>邒]]>"
# settings # settings
- define settings <item[name_tag]> - define settings <item[name_tag]>
- adjust def:settings display:<&6>Settings - adjust def:settings "display:<&6>Settings"
- inventory set destination:<[inventory]> slot:13 origin:<[settings]> - inventory set destination:<[inventory]> slot:13 origin:<[settings]>
# contacts # contacts
- define contacts <item[book]> - define contacts <item[book]>
- adjust def:contacts display:<&6>Contacts - adjust def:contacts "display:<&6>Contacts"
- inventory set destination:<[inventory]> slot:14 origin:<[contacts]> - inventory set destination:<[inventory]> slot:14 origin:<[contacts]>
# texts # texts
- define texts <item[writable_book]> - define texts <item[writable_book]>
- adjust def:texts display:<&6>Messages - adjust def:texts "display:<&6>Messages"
- define notifications_textmessages <[player].flag[phones_notifications].get[textmessages].values.size.if_null[null]> - define notifications_textmessages <[player].flag[phones_notifications].get[textmessages].values.size.if_null[null]>
- if <[notifications_textmessages]> != null && <[notifications_textmessages]> != 0: - if <[notifications_textmessages]> != null && <[notifications_textmessages]> != 0:
- if <[notifications_textmessages]> > 99: - if <[notifications_textmessages]> > 99:
@@ -161,11 +161,11 @@ phones_contacts_print:
- if <[page]> > 0: - if <[page]> > 0:
- clickable usages:1 until:60s save:prev: - clickable usages:1 until:60s save:prev:
- execute as_player "phonecontacts <[page]>" - execute as_player "phonecontacts <[page]>"
- define prevpage <element[<&a><&lt>--].on_click[<entry[prev].command>]> - define prevpage "<element[<&a><&lt>--].on_click[<entry[prev].command>]>"
- if <[contacts].size> > <[page].add[1].mul[6]>: - if <[contacts].size> > <[page].add[1].mul[6]>:
- clickable usages:1 until:60s save:next: - clickable usages:1 until:60s save:next:
- execute as_player "phonecontacts <[page].add[2]>" - execute as_player "phonecontacts <[page].add[2]>"
- define nextpage <element[<&a>--<&gt>].on_click[<entry[next].command>]> - define nextpage "<element[<&a>--<&gt>].on_click[<entry[next].command>]>"
- narrate targets:<[player]> "<&nl><[prevpage]> <&6>Page <[page].add[1]>/<[contacts].size.sub[1].div[6].round_down.add[1]> <[nextpage]>" - narrate targets:<[player]> "<&nl><[prevpage]> <&6>Page <[page].add[1]>/<[contacts].size.sub[1].div[6].round_down.add[1]> <[nextpage]>"
# --- # ---
@@ -177,7 +177,7 @@ phones_texts_store:
type: task type: task
definitions: player|target|contents definitions: player|target|contents
script: script:
- narrate targets:<[player]> format:formats_prefix Sending... - narrate targets:<[player]> format:formats_prefix "Sending..."
# #
- define playertexts phones_texts_<[player].uuid>_<[target].uuid> - define playertexts phones_texts_<[player].uuid>_<[target].uuid>
- if <util.has_file[data/phones/texts/<[player].uuid>_<[target].uuid>.yml]>: - if <util.has_file[data/phones/texts/<[player].uuid>_<[target].uuid>.yml]>:
@@ -218,7 +218,7 @@ phones_texts_print:
type: task type: task
definitions: player|target|page definitions: player|target|page
script: script:
- narrate targets:<[player]> format:formats_prefix Loading... - narrate targets:<[player]> format:formats_prefix "Loading..."
# #
- define playertexts phones_texts_<[player].uuid>_<[target].uuid> - define playertexts phones_texts_<[player].uuid>_<[target].uuid>
- ~yaml id:<[playertexts]> load:data/phones/texts/<[player].uuid>_<[target].uuid>.yml - ~yaml id:<[playertexts]> load:data/phones/texts/<[player].uuid>_<[target].uuid>.yml
@@ -243,11 +243,11 @@ phones_texts_print:
- if <[page]> > 0: - if <[page]> > 0:
- clickable usages:1 until:60s save:prev: - clickable usages:1 until:60s save:prev:
- run phones_texts_print def.player:<[player]> def.target:<[target]> def.page:<[page].sub[1]> - run phones_texts_print def.player:<[player]> def.target:<[target]> def.page:<[page].sub[1]>
- define prevpage <element[<&a><&lt>--].on_click[<entry[prev].command>]> - define prevpage "<element[<&a><&lt>--].on_click[<entry[prev].command>]>"
- if <[messages_size]> > <[page].add[1].mul[5]>: - if <[messages_size]> > <[page].add[1].mul[5]>:
- clickable usages:1 until:60s save:next: - clickable usages:1 until:60s save:next:
- run phones_texts_print def.player:<[player]> def.target:<[target]> def.page:<[page].add[1]> - run phones_texts_print def.player:<[player]> def.target:<[target]> def.page:<[page].add[1]>
- define nextpage <element[<&a>--<&gt>].on_click[<entry[next].command>]> - define nextpage "<element[<&a>--<&gt>].on_click[<entry[next].command>]>"
- narrate targets:<[player]> "<&nl><[prevpage]> <&6>Page <[page].add[1]>/<[messages_size].sub[1].div[5].round_down.add[1]> <[nextpage]>" - narrate targets:<[player]> "<&nl><[prevpage]> <&6>Page <[page].add[1]>/<[messages_size].sub[1].div[5].round_down.add[1]> <[nextpage]>"
# clear notifications? # clear notifications?
- if <[player].flag[phones_notifications].get[textmessages].get[<[target]>].if_null[0]> > 0: - if <[player].flag[phones_notifications].get[textmessages].get[<[target]>].if_null[0]> > 0:
@@ -262,20 +262,20 @@ phones_gui_texts:
type: task type: task
definitions: player|page definitions: player|page
script: script:
- define inventory <inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&1>邒]]> - define inventory "<inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&1>邒]]>"
- define textslist <util.list_files[data/phones/texts].filter[starts_with[<player.uuid>]].parse[split[_].get[2].split[.].get[1]].parse_tag[<player[<[parse_value]>]>].get[<[page].mul[16].add[1]>].to[<[page].add[1].mul[16]>].if_null[<list[]>]> - define textslist <util.list_files[data/phones/texts].filter[starts_with[<player.uuid>]].parse[split[_].get[2].split[.].get[1]].parse_tag[<player[<[parse_value]>]>].get[<[page].mul[16].add[1]>].to[<[page].add[1].mul[16]>].if_null[<list[]>]>
# show contacts/numbers # show contacts/numbers
- foreach <[textslist]> as:target: - foreach <[textslist]> as:target:
- define receiver <proc[phones_relative_name].context[<[player]>|<[target]>]> - define receiver <proc[phones_relative_name].context[<[player]>|<[target]>]>
- define textsender <item[player_head]> - define textsender <item[player_head]>
- adjust def:textsender display:<&e><[receiver]> - adjust def:textsender display:<&e><[receiver]>
- adjust def:textsender lore:<list[<&7>Click to view your conversation.]> - adjust def:textsender "lore:<list[<&7>Click to view your conversation.]>"
# notifications # notifications
- define notifications_text <[player].flag[phones_notifications].get[textmessages].get[<[target]>].if_null[null]> - define notifications_text <[player].flag[phones_notifications].get[textmessages].get[<[target]>].if_null[null]>
- if <[notifications_text]> != null: - if <[notifications_text]> != null:
- if <[notifications_text]> > 99: - if <[notifications_text]> > 99:
- define notifications_text 99+ - define notifications_text 99+
- adjust def:textsender lore:<[textsender].lore.include[|<&7>You have <&6><[notifications_text]> <&7>unread messages.]> - adjust def:textsender "lore:<[textsender].lore.include[|<&7>You have <&6><[notifications_text]> <&7>unread messages.]>"
# #
- flag <[textsender]> phones:<[target]> - flag <[textsender]> phones:<[target]>
- flag <[textsender]> phones_target_skull_uuid:<[target].uuid> - flag <[textsender]> phones_target_skull_uuid:<[target].uuid>
@@ -309,7 +309,7 @@ phones_target_skulls_update:
- if <[inventory].viewers.if_null[<list[]>].is_empty>: - if <[inventory].viewers.if_null[<list[]>].is_empty>:
- stop - stop
- define uuid <[item].flag[phones_target_skull_uuid]> - define uuid <[item].flag[phones_target_skull_uuid]>
- inventory adjust slot:<[slot]> skull_skin:<[uuid]>|<player[<[uuid]>].skin_blob.if_null[0000]>|<player[<[uuid]>].name> destination:<[inventory]> - inventory adjust slot:<[slot]> skull_skin:<[uuid]>|<player[<[uuid]>].skin_blob.if_null[0000]>|<player[<[uuid]>].name> destination:<[inventory]>
#### ####
## NOTIFICATIONS ## NOTIFICATIONS
@@ -363,9 +363,9 @@ phones_gui_music:
# ringtone selection mode? # ringtone selection mode?
- define ringtone <[ringtone].if_null[false]> - define ringtone <[ringtone].if_null[false]>
# make inventory # make inventory
- define inventory <inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&2>邒]]> - define inventory "<inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&2>邒]]>"
- if <[ringtone]>: - if <[ringtone]>:
- define inventory <inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&4>邒]]> - define inventory "<inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&4>邒]]>"
- define songsize <util.list_files[data/phones/songs].size> - define songsize <util.list_files[data/phones/songs].size>
- define songsonpage <tern[<[ringtone]>].pass[15].fail[14]> - define songsonpage <tern[<[ringtone]>].pass[15].fail[14]>
- define songlist <util.list_files[data/phones/songs].parse[split[.].get[1]].filter[length.is_more_than[0]].get[<[page].mul[<[songsonpage]>].add[1]>].to[<[page].add[1].mul[<[songsonpage]>]>].if_null[<list[]>]> - define songlist <util.list_files[data/phones/songs].parse[split[.].get[1]].filter[length.is_more_than[0]].get[<[page].mul[<[songsonpage]>].add[1]>].to[<[page].add[1].mul[<[songsonpage]>]>].if_null[<list[]>]>
@@ -373,7 +373,7 @@ phones_gui_music:
- foreach <[songlist]> as:songname: - foreach <[songlist]> as:songname:
- define song <item[jukebox]> - define song <item[jukebox]>
- adjust def:song display:<&e><[songname]> - adjust def:song display:<&e><[songname]>
- adjust def:song lore:<list[<&7>Click to start playing.]> - adjust def:song "lore:<list[<&7>Click to start playing.]>"
- flag <[song]> phones:<[songname]> - flag <[song]> phones:<[songname]>
- inventory set destination:<[inventory]> slot:<[loop_index].sub[1].div[3].round_down.mul[9].add[4].add[<[loop_index].sub[1].mod[3]>]> origin:<[song]> - inventory set destination:<[inventory]> slot:<[loop_index].sub[1].div[3].round_down.mul[9].add[4].add[<[loop_index].sub[1].mod[3]>]> origin:<[song]>
# stop # stop
@@ -405,7 +405,7 @@ phones_gui_settings:
type: task type: task
definitions: player definitions: player
script: script:
- define inventory <inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&3>邒]]> - define inventory "<inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&3>邒]]>"
# ringtone # ringtone
- define ringtone <item[note_block]> - define ringtone <item[note_block]>
- adjust def:ringtone display:<&6>Ringtone - adjust def:ringtone display:<&6>Ringtone
@@ -427,7 +427,7 @@ phones_gui_settings_blocked:
type: task type: task
definitions: player|page definitions: player|page
script: script:
- define inventory <inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&5>邒]]> - define inventory "<inventory[generic[size=54;title=<&f>邑邑邑邑鄀<&5>邒]]>"
- define blockedlist <[player].flag[phones].get[blocked].get[<[page].mul[16].add[1]>].to[<[page].add[1].mul[16]>].if_null[<list[]>]> - define blockedlist <[player].flag[phones].get[blocked].get[<[page].mul[16].add[1]>].to[<[page].add[1].mul[16]>].if_null[<list[]>]>
# show blocked numbers # show blocked numbers
- foreach <[blockedlist]> as:target: - foreach <[blockedlist]> as:target:

View File

@@ -115,11 +115,11 @@ phones_world_gui:
- run phones_gui_music def.player:<player> def.page:0 def.ringtone:false - run phones_gui_music def.player:<player> def.page:0 def.ringtone:false
- else if <[title]> == <&1>邒: - else if <[title]> == <&1>邒:
- if <context.item.material.name> == ender_pearl: - if <context.item.material.name> == ender_pearl:
- define page <player.flag[phones_gui_page].sub[1]> - define page <player.flag[phones_gui_page].sub_int[1]>
- flag <player> phones_gui_page:<[page]> - flag <player> phones_gui_page:<[page]>
- run phones_gui_texts def.player:<player> def.page:<[page]> - run phones_gui_texts def.player:<player> def.page:<[page]>
- else if <context.item.material.name> == ender_eye: - else if <context.item.material.name> == ender_eye:
- define page <player.flag[phones_gui_page].add[1]> - define page <player.flag[phones_gui_page].add_int[1]>
- flag <player> phones_gui_page:<[page]> - flag <player> phones_gui_page:<[page]>
- run phones_gui_texts def.player:<player> def.page:<[page]> - run phones_gui_texts def.player:<player> def.page:<[page]>
- else if <context.slot> == 50: - else if <context.slot> == 50:
@@ -130,11 +130,11 @@ phones_world_gui:
# Music # Music
- else if <[title]> == <&2>邒: - else if <[title]> == <&2>邒:
- if <context.item.material.name> == ender_pearl: - if <context.item.material.name> == ender_pearl:
- define page <player.flag[phones_gui_page].sub[1]> - define page <player.flag[phones_gui_page].sub_int[1]>
- flag <player> phones_gui_page:<[page]> - flag <player> phones_gui_page:<[page]>
- run phones_gui_music def.player:<player> def.page:<[page]> def.ringtone:false - run phones_gui_music def.player:<player> def.page:<[page]> def.ringtone:false
- else if <context.item.material.name> == ender_eye: - else if <context.item.material.name> == ender_eye:
- define page <player.flag[phones_gui_page].add[1]> - define page <player.flag[phones_gui_page].add_int[1]>
- flag <player> phones_gui_page:<[page]> - flag <player> phones_gui_page:<[page]>
- run phones_gui_music def.player:<player> def.page:<[page]> def.ringtone:false - run phones_gui_music def.player:<player> def.page:<[page]> def.ringtone:false
- else if <context.slot> == 50: - else if <context.slot> == 50:
@@ -158,11 +158,11 @@ phones_world_gui:
# Ringtone Select # Ringtone Select
- else if <[title]> == <&4>邒: - else if <[title]> == <&4>邒:
- if <context.item.material.name> == ender_pearl: - if <context.item.material.name> == ender_pearl:
- define page <player.flag[phones_gui_page].sub[1]> - define page <player.flag[phones_gui_page].sub_int[1]>
- flag <player> phones_gui_page:<[page]> - flag <player> phones_gui_page:<[page]>
- run phones_gui_music def.player:<player> def.page:<[page]> def.ringtone:true - run phones_gui_music def.player:<player> def.page:<[page]> def.ringtone:true
- else if <context.item.material.name> == ender_eye: - else if <context.item.material.name> == ender_eye:
- define page <player.flag[phones_gui_page].add[1]> - define page <player.flag[phones_gui_page].add_int[1]>
- flag <player> phones_gui_page:<[page]> - flag <player> phones_gui_page:<[page]>
- run phones_gui_music def.player:<player> def.page:<[page]> def.ringtone:true - run phones_gui_music def.player:<player> def.page:<[page]> def.ringtone:true
- else if <context.slot> == 50: - else if <context.slot> == 50:
@@ -174,11 +174,11 @@ phones_world_gui:
# Blocked # Blocked
- else if <[title]> == <&5>邒: - else if <[title]> == <&5>邒:
- if <context.item.material.name> == ender_pearl: - if <context.item.material.name> == ender_pearl:
- define page <player.flag[phones_gui_page].sub[1]> - define page <player.flag[phones_gui_page].sub_int[1]>
- flag <player> phones_gui_page:<[page]> - flag <player> phones_gui_page:<[page]>
- run phones_gui_settings_blocked def.player:<player> def.page:<[page]> - run phones_gui_settings_blocked def.player:<player> def.page:<[page]>
- else if <context.item.material.name> == ender_eye: - else if <context.item.material.name> == ender_eye:
- define page <player.flag[phones_gui_page].add[1]> - define page <player.flag[phones_gui_page].add_int[1]>
- flag <player> phones_gui_page:<[page]> - flag <player> phones_gui_page:<[page]>
- run phones_gui_settings_blocked def.player:<player> def.page:<[page]> - run phones_gui_settings_blocked def.player:<player> def.page:<[page]>
- else if <context.slot> == 50: - else if <context.slot> == 50:

View File

@@ -1,5 +1,5 @@
requestsearch_command_requestsearch: requestsearch_command_requestsearch:
debug: false debug: false
type: command type: command
name: requestsearch name: requestsearch
description: Command to search someone's inventory. description: Command to search someone's inventory.
@@ -9,7 +9,7 @@ requestsearch_command_requestsearch:
- patdown - patdown
permission: invreq.patdown permission: invreq.patdown
tab completions: tab completions:
1: <empty> 1: <empyy>
script: script:
- if <context.source_type> != player: - if <context.source_type> != player:
- narrate "<&c>Please run this command as a player." - narrate "<&c>Please run this command as a player."

View File

@@ -0,0 +1,64 @@
settings_config:
debug: false
type: data
tabs:
- General
- Miscellaneous
keys:
example1_key:
tab: General
name: example1 setting key
description: example1 description, Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...
type: boolean
default: true
example2_key:
tab: General
name: example2 setting key
description: example2 description, Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...
type: number
default: 5
min: 0
max: 10
increment: 0.5
example3_key:
tab: Miscellaneous
name: example3 setting key
description: example3 description, Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...
type: list
default: male
values:
- male
- female
- prefer not to say
example4_key:
tab: Miscellaneous
name: example4 setting key
description: example4 description, Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...
type: text
default: text
max-length: 64
regex: [a-z]
example5_key:
tab: Miscellaneous
name: example5 setting key
description: example5 description, Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...
type: text
default: text
max-length: 64
regex: [a-z]
example6_key:
tab: Miscellaneous
name: example6 setting key
description: example6 description, Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...
type: text
default: text
max-length: 64
regex: [a-z]
example7_key:
tab: Miscellaneous
name: example7 setting key
description: example7 description, Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...
type: text
default: text
max-length: 64
regex: [a-z]

View File

@@ -0,0 +1,128 @@
settings_set:
debug: false
type: task
definitions: player|key|value
script:
- define keys <script[settings_config].data_key[keys]>
- if !<[keys].contains[<[key]>]>:
- determine "Key not found: <[key]>"
- if <[value]> == null:
- determine "Value cannot be null"
- define data <[keys].get[<[key]>]>
- define type <[data].get[type]>
- choose <[type].to_lowercase>:
- case boolean:
- if <[value]> != true && <[value]> != false:
- determine "Value must be true or false"
- case number:
- define min <[data].get[min]>
- define max <[data].get[max]>
- if <[value]> < <[min]> || <[value]> > <[max]>:
- determine "Value must be between <[min]> and <[max]>"
- case list:
- define values <[data].get[values]>
- if !<[values].contains[<[value]>]>:
- determine "Value must be one of the following: <[values].formatted>"
- case text:
- define max_length <[data].get[max-length]>
- define regex <[data].get[regex]>
- if <[value].length> > <[max_length]>:
- determine "Value must be shorter than <[max_length]> characters"
- if !<[value].regex_matches[<[regex]>]>:
- determine "Value should match the regex <[regex]>"
- default:
- determine "Unknown type <[type]>"
- define settings <[player].flag[settings].if_null[<map[]>]>
- define settings <[settings].with[<[key]>].as[<[value]>]>
- flag <[player]> settings:<[settings]>
settings_get:
debug: false
type: procedure
definitions: player|key
script:
- define keys <script[settings_config].data_key[keys]>
- if !<[keys].contains[<[key]>]>:
- determine null
- define settings <[player].flag[settings].if_null[<map[]>]>
- define value <[settings].get[<[key]>].if_null[<[keys].get[<[key]>].get[default]>]>
- determine <[value]>
settings_all_settings_from_tab:
debug: false
type: procedure
definitions: tab
script:
- define keys <script[settings_config].data_key[keys]>
- define keys_in_tab <[keys].keys.filter_tag[<[keys].get[<[filter_value]>].get[tab].equals[<[tab]>]>]>
- determine <[keys_in_tab]>
settings_all_settings_from_page_from_tab:
debug: false
type: procedure
definitions: tab|page
script:
- define keys_in_tab <proc[settings_all_settings_from_tab].context[<[tab]>]>
- define start_index <[page].mul[4].add[1]>
- define end_index <[page].add[1].mul[4]>
- determine <[keys_in_tab].get[<[start_index]>].to[<[end_index]>]>
settings_menu_is_last_page:
debug: false
type: procedure
definitions: tab|page
script:
- define keys_in_tab <proc[settings_all_settings_from_tab].context[<[tab]>]>
- define end_index <[page].add[1].mul[4]>
- determine <[end_index].is_more_than_or_equal_to[<[keys_in_tab].size>]>
settings_menu:
debug: false
type: task
definitions: player|tab|page
script:
- define keys <script[settings_config].data_key[keys]>
- define tabs <script[settings_config].data_key[tabs]>
- define tab <[tab].if_null[<[tabs].get[1]>]>
- define page <[page].if_null[0]>
- define contents <map[]>
- if <[page]> > 0:
- define previous_button <item[ender_pearl[display=<&2><&lt><&lt>]]>
- definemap content_entry:
49:
item: <[previous_button]>
script: settings_menu
definitions:
player: <[player]>
tab: <[tab]>
page: <[page].sub[1]>
- define contents <[contents].include[<[content_entry]>]>
- if !<proc[settings_menu_is_last_page].context[<[tab]>|<[page]>]>:
- define next_button <item[ender_eye[display=<&2><&gt><&gt>]]>
- definemap content_entry:
51:
item: <[next_button]>
script: settings_menu
definitions:
player: <[player]>
tab: <[tab]>
page: <[page].add[1]>
- define contents <[contents].include[<[content_entry]>]>
- foreach <[tabs]> as:t:
- define tab_button <item[book[display=<&b><[t]>]]>
- definemap content_entry_value:
item: <[tab_button]>
script: settings_menu
definitions:
player: <[player]>
tab: <[t]>
page: 0
- define content_entry <map[].with[<[loop_index]>].as[<[content_entry_value]>]>
- define contents <[contents].include[<[content_entry]>]>
- foreach <proc[settings_all_settings_from_page_from_tab].context[<[tab]>|<[page]>]> as:setting_key:
- define setting_item <item[paper[display=<&3><[keys].get[<[setting_key]>].get[name]>]]>
- definemap content_entry_value:
item: <[setting_item]>
- define content_entry <map[].with[<[loop_index].mul[9].add[1]>].as[<[content_entry_value]>]>
- define contents <[contents].include[<[content_entry]>]>
- run menu_open def.player:<[player]> def.title:Settings def.size:54 def.contents:<[contents]>

View File

@@ -8,7 +8,7 @@ sports_volleyball_world:
- define ball <context.entity> - define ball <context.entity>
- if !<[ball].has_flag[ball]>: - if !<[ball].has_flag[ball]>:
- stop - stop
- if <[ball].type> == armor_stand: - if <[ball].entity_type> == armor_stand:
- define ball <proc[ball_get].context[<[ball].flag[ball]>]> - define ball <proc[ball_get].context[<[ball].flag[ball]>]>
- if !<[ball].flag[ball].starts_with[sports_volleyball]>: - if !<[ball].flag[ball].starts_with[sports_volleyball]>:
- stop - stop

View File

@@ -17,6 +17,7 @@ ch1_1_marie_assign:
interact scripts: interact scripts:
- ch1_1_marie_interact - ch1_1_marie_interact
# TODO: this seems like the wrong place
ch1_1_define_phone: ch1_1_define_phone:
debug: false debug: false
type: task type: task

View File

@@ -27,7 +27,7 @@ dialogue_npc_kobayashi:
- ~run textbox_choice def.player:<player> def.queue:<queue> def.choices:<[choices]> save:result - ~run textbox_choice def.player:<player> def.queue:<queue> def.choices:<[choices]> save:result
- define choice <entry[result].created_queue.determination.get[1]> - define choice <entry[result].created_queue.determination.get[1]>
- if <[choice]> == left: - if <[choice]> == left:
- ~run textbox_write def.player:<player> def.queue:<queue> def.line3s:What?$$nlWhy? - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:What?$$nlWhy?"
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:Well, look, I can't tell you that, luv.$$nl It's against Hospital Policy." - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:Well, look, I can't tell you that, luv.$$nl It's against Hospital Policy."
- definemap choices: - definemap choices:
left: left:

View File

@@ -15,7 +15,7 @@ dialogue_npc_patchouli:
click trigger: click trigger:
script: script:
- if <player.flag[textbox_state].if_null[null]> != null: - if <player.flag[textbox_state].if_null[null]> != null:
- stop - stop
- engage player - engage player
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:. . ." - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:. . ."
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:. . ." - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:. . ."

View File

@@ -17,7 +17,7 @@ intro_interact_posters_task:
script: script:
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:Book-related posters are on the wall." - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:Book-related posters are on the wall."
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:<&o><&dq>Screw that. I'm running away.<&dq>" - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:<&o><&dq>Screw that. I'm running away.<&dq>"
- ~run textbox_write def.player:<player> def.queue:<queue> def.line3s:<&o><&dq>Where?<&dq> - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:<&o><&dq>Where?<&dq>"
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:<&o><&dq>Dunno. Do you want to come?<&dq>" - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:<&o><&dq>Dunno. Do you want to come?<&dq>"
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:<&o><&dq>Yes,<&dq> I said without thinking." - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:<&o><&dq>Yes,<&dq> I said without thinking."
@@ -74,12 +74,12 @@ intro_interact_laptop_task_name_callback:
- define __player <[player]> - define __player <[player]>
- define name <[input].substring[1,24]> - define name <[input].substring[1,24]>
- execute as_player player:<[player]> "rpname <[name]>" - execute as_player player:<[player]> "rpname <[name]>"
- ~run textbox_write def.player:<player> def.queue:<queue> def.line3s:<[name]> - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:<[name]>"
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:How nice!" - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:How nice!"
- ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:Let's give them a description.$$nlDescribe their physical attributes." - ~run textbox_write def.player:<player> def.queue:<queue> "def.line3s:Let's give them a description.$$nlDescribe their physical attributes."
- waituntil <player.has_flag[textbox_state].not> max:5s - waituntil <player.has_flag[textbox_state].not> max:5s
- ~run textbox_flush def.player:<player> - ~run textbox_flush def.player:<player>
- run anvil_input def.player:<player> def.prompt:Description def.callback:intro_interact_laptop_task_description_callback - run anvil_input def.player:<player> "def.prompt:Description" def.callback:intro_interact_laptop_task_description_callback
intro_interact_laptop_task_description_callback: intro_interact_laptop_task_description_callback:
debug: false debug: false
@@ -116,7 +116,7 @@ intro_interact_laptop_task_role_menu:
definitions: definitions:
player: <[player]> player: <[player]>
input: yes input: yes
- run menu_open def.player:<[player]> def.title:<&f>邑邑邑邑酐<&a><&sp><&b><&sp><&c><&sp> def.size:9 def.contents:<[contents]> - run menu_open def.player:<[player]> "def.title:<&f>邑邑邑邑酐<&a><&sp><&b><&sp><&c><&sp>" def.size:9 def.contents:<[contents]>
intro_interact_laptop_task_role_callback: intro_interact_laptop_task_role_callback:
debug: false debug: false
@@ -196,4 +196,5 @@ intro_interact_laptop_task_role_callback:
- adjust <player> remove_effects - adjust <player> remove_effects
- adjust <player> show_to_players - adjust <player> show_to_players
- flag <player> intro:done - flag <player> intro:done
- execute as_player player:<player> spawn - execute as_player player:<player> "spawn"

View File

@@ -217,7 +217,7 @@ storyboard_npc_internal_auto_memory_management:
after player joins: after player joins:
- define npcs <player.flag[storyboard_state].get[npcs].if_null[<map[]>]> - define npcs <player.flag[storyboard_state].get[npcs].if_null[<map[]>]>
- foreach <[npcs]> key:name as:data: - foreach <[npcs]> key:name as:data:
- if <[data].get[allocated].if_null[null]> == reallocate: - if <[data].get[allocated]> == reallocate:
- define name <[data].get[name]> - define name <[data].get[name]>
- define type <[data].get[type]> - define type <[data].get[type]>
- define at <[data].get[at]> - define at <[data].get[at]>

View File

@@ -102,12 +102,12 @@ templatetools_command_ttsetcursor:
- stop - stop
- define material <player.cursor_on.material.if_null[null]> - define material <player.cursor_on.material.if_null[null]>
- if <[material]> == null: - if <[material]> == null:
- narrate "<&c>Invalid material. Please look at a material to set first!" - narrate "<&c>Invalid material. Please look at a material to set first!"
- stop - stop
- define we_selection <player.we_selection.if_null[null]> - define we_selection <player.we_selection.if_null[null]>
- if <[we_selection]> == null: - if <[we_selection]> == null:
- narrate "<&c>You must first make a WorldEdit selection." - narrate "<&c>You must first make a WorldEdit selection."
- stop - stop
- ~modifyblock <[we_selection]> <[material]> no_physics - ~modifyblock <[we_selection]> <[material]> no_physics
- narrate format:templatetools_formats_main "Set cursor blocks (<[we_selection].volume.if_null[?]>)." - narrate format:templatetools_formats_main "Set cursor blocks (<[we_selection].volume.if_null[?]>)."
@@ -125,6 +125,6 @@ templatetools_command_that:
- if <[material]> == null: - if <[material]> == null:
- narrate "<&c>Nothing to copy." - narrate "<&c>Nothing to copy."
- define item <item[<[material].name>].if_null[null]>: - define item <item[<[material].name>].if_null[null]>:
- narrate "<&c>Nothing to copy." - narrate "<&c>Nothing to copy."
- inventory set slot:hand origin:<[item]> - inventory set slot:hand origin:<[item]>
- narrate format:templatetools_formats_main "Copied <[material].name>." - narrate format:templatetools_formats_main "Copied <[material].name>."

View File

@@ -55,7 +55,7 @@ templatetools_schematic_set_index:
script: script:
- define schematics <proc[templatetools_available_schematics].context[<[player]>]> - define schematics <proc[templatetools_available_schematics].context[<[player]>]>
- if <schematic.list.contains[<[player].flag[templatetools_schematic]>]>: - if <schematic.list.contains[<[player].flag[templatetools_schematic]>]>:
- ~schematic unload name:<[player].flag[templatetools_schematic]> - ~schematic unload name:<[player].flag[templatetools_schematic]>
- schematic load name:templatetools_<[player].uuid> filename:<[player].flag[templatetools_pack]>/<[schematics].get[<[player].flag[templatetools_pack_index]>]> - schematic load name:templatetools_<[player].uuid> filename:<[player].flag[templatetools_pack]>/<[schematics].get[<[player].flag[templatetools_pack_index]>]>
- actionbar "<&e>Schematic <[player].flag[templatetools_pack_index]>: <&f><[schematics].get[<[player].flag[templatetools_pack_index]>]>" targets:<[player]> - actionbar "<&e>Schematic <[player].flag[templatetools_pack_index]>: <&f><[schematics].get[<[player].flag[templatetools_pack_index]>]>" targets:<[player]>

View File

@@ -23,7 +23,7 @@ timebar_format:
- define location <script[timebar_worlds].data_key[<player.location.world.name>]> - define location <script[timebar_worlds].data_key[<player.location.world.name>]>
- define regions <player.location.regions.filter_tag[<[filter_value].id.starts_with[zone_]>]> - define regions <player.location.regions.filter_tag[<[filter_value].id.starts_with[zone_]>]>
- if <[regions].size> > 0: - if <[regions].size> > 0:
- define location <[regions].get[1].id.replace[zone_].with[].split[_].parse[to_sentence_case].space_separated> - define location <[regions].get[1].id.replace[zone_].with[].split[_].parse[to_sentence_case].space_separated>
- define result "<[result]> <&c>📌 <&f><[location]>" - define result "<[result]> <&c>📌 <&f><[location]>"
# result # result
- determine <[result]> - determine <[result]>

View File

@@ -90,18 +90,18 @@ vehicle_world_parallel_loop:
- define forward <[vehicles_player_input].get[forward].if_null[0]> - define forward <[vehicles_player_input].get[forward].if_null[0]>
- define sideways <[vehicles_player_input].get[sideways].if_null[0]> - define sideways <[vehicles_player_input].get[sideways].if_null[0]>
- if <[forward]> != 0: - if <[forward]> != 0:
- define speed <[vehicle].flag[vehicles_speed].if_null[0]> - define speed <[vehicle].flag[vehicles_speed].if_null[0]>
- define speed <[speed].add[<[vehicle].flag[vehicles_data].get[acceleration].mul[<[forward]>]>]> - define speed <[speed].add[<[vehicle].flag[vehicles_data].get[acceleration].mul[<[forward]>]>]>
- define max <[vehicle].flag[vehicles_data].get[max_speed]> - define max <[vehicle].flag[vehicles_data].get[max_speed]>
- if <[speed]> < <[max].mul[-1].div[3]>: - if <[speed]> < <[max].mul[-1].div[3]>:
- define speed <[max].mul[-1].div[3]> - define speed <[max].mul[-1].div[3]>
- if <[speed]> > <[max]>: - if <[speed]> > <[max]>:
- define speed <[max]> - define speed <[max]>
- flag <[vehicle]> vehicles_speed:<[speed]> - flag <[vehicle]> vehicles_speed:<[speed]>
- if <[sideways]> != 0: - if <[sideways]> != 0:
- define speed <[vehicle].flag[vehicles_speed].if_null[0]> - define speed <[vehicle].flag[vehicles_speed].if_null[0]>
- if <[speed].abs> > 0.1: - if <[speed].abs> > 0.1:
- define max_speed <[vehicle].flag[vehicles_data].get[max_speed]> - define max_speed <[vehicle].flag[vehicles_data].get[max_speed]>
- define speed_turn_coefficient <[speed].div[<[max_speed]>].mul[0.25].add[0.85]> - define speed_turn_coefficient <[speed].div[<[max_speed]>].mul[0.25].add[0.85]>
- define turn_speed <[vehicle].flag[vehicles_data].get[turn_speed_percentage].mul[360].mul[<[speed_turn_coefficient]>]> - define turn_speed <[vehicle].flag[vehicles_data].get[turn_speed_percentage].mul[360].mul[<[speed_turn_coefficient]>]>
- define turn_speed <[turn_speed].mul[<[sideways]>].mul[-1].mul[<tern[<[speed].is_less_than[0]>].pass[-1].fail[1]>]> - define turn_speed <[turn_speed].mul[<[sideways]>].mul[-1].mul[<tern[<[speed].is_less_than[0]>].pass[-1].fail[1]>]>

View File

@@ -106,7 +106,7 @@ wardrobe_menu:
- define position <[position].add[1]> - define position <[position].add[1]>
- define i <[i].add[1]> - define i <[i].add[1]>
- if <[i].mod[3]> == 0: - if <[i].mod[3]> == 0:
- define position <[position].add[6]> - define position <[position].add[6]>
- repeat <element[<[max]>].sub[<[i]>]>: - repeat <element[<[max]>].sub[<[i]>]>:
- define unusedskin <item[wither_skeleton_skull]> - define unusedskin <item[wither_skeleton_skull]>
- adjust def:unusedskin "display:<&7>Unused Skin Slot" - adjust def:unusedskin "display:<&7>Unused Skin Slot"
@@ -115,7 +115,7 @@ wardrobe_menu:
- define position <[position].add[1]> - define position <[position].add[1]>
- define i <[i].add[1]> - define i <[i].add[1]>
- if <[i].mod[3]> == 0: - if <[i].mod[3]> == 0:
- define position <[position].add[6]> - define position <[position].add[6]>
# #
- define clearitem <item[warped_trapdoor]> - define clearitem <item[warped_trapdoor]>
- adjust def:clearitem "display:<&f>Clear Skin" - adjust def:clearitem "display:<&f>Clear Skin"