Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

📈 add minified telemetry schema, add booth parkour telemetry #247

Merged
merged 25 commits into from
Oct 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
32ac31c
📈 add enable/disable commands for telemetry
TheAfroOfDoom Oct 22, 2024
544cfcc
📈 move telemetry versioning to root
TheAfroOfDoom Oct 22, 2024
140dac7
📈 add encoding schema for booth tags
TheAfroOfDoom Oct 22, 2024
6a141b1
🚚 rename telemetry `tags` to `data`
TheAfroOfDoom Oct 22, 2024
4fa5c3c
🚚 rename and move `player_id_cache` to `data.player_id_map`
TheAfroOfDoom Oct 22, 2024
4e7de21
📈 add map for int player id to player UUID to save on character count
TheAfroOfDoom Oct 22, 2024
c931c9d
📈 convert booth telemetry from NBT to an array of encoded strings
TheAfroOfDoom Oct 22, 2024
054250a
📈 add base tick for the first entry of booths
TheAfroOfDoom Oct 22, 2024
2717f4c
📈 separate telemetry commands for showing/clearing (popping) booth/bo…
TheAfroOfDoom Oct 22, 2024
1a530aa
📈 revert telemetry version to `0.1.0`
TheAfroOfDoom Oct 22, 2024
5e7ba59
🎨 fix telemetry help menu bad formatting
TheAfroOfDoom Oct 22, 2024
c093932
📈 convert bossfight root telemetry tags to array of strings
TheAfroOfDoom Oct 22, 2024
55db4a4
📈 convert bossfight non-root telemetry tags to string format
TheAfroOfDoom Oct 22, 2024
c40c26c
📈 merge bossfight `type` tag into each tag's name
TheAfroOfDoom Oct 22, 2024
6d0a8ab
📈 add missing bossfight cutscene telemetry tags
TheAfroOfDoom Oct 22, 2024
3e5abb3
📈 add enums schema for bossfight root tag names
TheAfroOfDoom Oct 22, 2024
4fc641e
🥅 distinguish between booth/bossfight schema errors better in error m…
TheAfroOfDoom Oct 22, 2024
27b12b7
📈 add all missing bossfight name enums
TheAfroOfDoom Oct 22, 2024
35bbf7c
📈 add all missing booth name enums
TheAfroOfDoom Oct 22, 2024
329e182
📈 add booth telemetry for player queue/rejoin events
TheAfroOfDoom Oct 22, 2024
9b3d53f
📈 add booth telemetry for parkour
TheAfroOfDoom Oct 23, 2024
a410caa
📈 add telemetry tags for when user sees feedback link after winning f…
TheAfroOfDoom Oct 23, 2024
cfb3b28
📈 add telemetry tags for back cave room
TheAfroOfDoom Oct 23, 2024
857dc40
🔧 add block tags to build
TheAfroOfDoom Oct 23, 2024
fba8c1c
📈 minify bossfight data tags
TheAfroOfDoom Oct 23, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
function omegaflowey.main:telemetry/data/active_player/bossfight_hit_count
function omegaflowey.main:telemetry/data/active_player/gamemode with storage omegaflowey:bossfight
execute store result storage omegaflowey:telemetry.temp data.stop_reason int 1 run \
execute store result storage omegaflowey:telemetry.temp data.s int 1 run \
scoreboard players get #omegaflowey.bossfight.stop_reason omegaflowey.global.flag
function omegaflowey.main:telemetry/bossfight/tag/end { name: "bossfight.summit" }
function omegaflowey.main:telemetry/bossfight/tag/root/end
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "player.shown_feedback_link.won_fight" }

function omegaflowey.utils:log/self { text_component: '[ \
"", \
{ "text": "Thanks for playing our ", "color": "aqua" }, \
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
data modify storage omegaflowey:telemetry.temp data set value {}
execute store result storage omegaflowey:telemetry.temp data.phase_index int 1 run \
execute store result storage omegaflowey:telemetry.temp data.i int 1 run \
scoreboard players get @s omegaflowey.boss-fight.attack.phase.i
function omegaflowey.main:telemetry/bossfight/tag/start { name: "bossfight.phase.attack" }

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
data modify storage omegaflowey:telemetry.temp data set value {}
execute store result storage omegaflowey:telemetry.temp data.i int 1 run \
scoreboard players get @s omegaflowey.boss-fight.cutscene.phase.i
function omegaflowey.main:telemetry/bossfight/tag/start { name: "bossfight.phase.cutscene" }

# Set scores
scoreboard players set @s omegaflowey.boss-fight.cutscene.clock.i -1

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/bossfight/tag/start { name: "cutscene.intro.laugh" }

function omegaflowey.entity:shared/run_as_active_player_or_spectator { command: "\
execute at @s run playsound omega-flowey:cutscene.intro.laugh ambient @s ~ ~ ~ 1 1\
"}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/bossfight/tag/end { name: "cutscene.intro.laugh" }

data modify storage omegaflowey:bossfight temp set value { duration: 1 }
execute store result storage omegaflowey:bossfight temp.to_frame int 1 run scoreboard players get @s aj.omegaflowey_nose_move_slow_shake.frame
$execute as $(model_nose_uuid) run function animated_java:omegaflowey_nose/animations/omegaflowey_nose_move_slow/tween with storage omegaflowey:bossfight temp
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/bossfight/tag/start { name: "cutscene.intro" }

# Summon and animate Omega Flowey entity
function omegaflowey.entity:directorial/boss_fight/summit/origin/at { \
command: "execute positioned ~ ~ ~29.4 run function omegaflowey.entity:hostile/omega-flowey/summon/relative" \
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/bossfight/tag/instant { name: "cutscene.intro.turn_on_screen" }

$execute as $(bossfight_tvscreen_uuid) run function animated_java:omegaflowey_tv_screen/variants/reveal_1/apply
$execute as $(bossfight_tvscreen_uuid) on passengers if entity @s[tag=aj.omegaflowey_tv_screen.bone] run \
data merge entity @s { brightness: { block: 11, sky: 0 } }
Expand Down
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
function omegaflowey.main:telemetry/bossfight/tag/end { name: "bossfight.phase.cutscene" }

$execute as $(boss_fight_uuid) at @s run function omegaflowey.entity:directorial/boss_fight/summit/phase/cutscene/terminate/as_bossfight with storage omegaflowey:bossfight
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
function omegaflowey.main:telemetry/bossfight/tag/end { name: "cutscene.intro" }

function omegaflowey.entity:directorial/boss_fight/summit/phase/cutscene/terminate with storage omegaflowey:bossfight
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
data modify storage omegaflowey:telemetry.temp data set value {}
execute store result storage omegaflowey:telemetry.temp data.phase_index int 1 run \
execute store result storage omegaflowey:telemetry.temp data.i int 1 run \
scoreboard players get @s omegaflowey.boss-fight.progress.phase.i
function omegaflowey.main:telemetry/bossfight/tag/start { name: "bossfight.phase.soul" }

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
data modify storage omegaflowey:telemetry.temp data set value {}
execute store result storage omegaflowey:telemetry.temp data.phase_index int 1 run \
execute store result storage omegaflowey:telemetry.temp data.i int 1 run \
scoreboard players get @s omegaflowey.boss-fight.progress.phase.i
function omegaflowey.main:telemetry/bossfight/tag/start { name: "bossfight.phase.warn" }

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "player.rejoin.was_in_bossfight" }

# players who leave the server are removed from the bossfight (when they rejoin)
function omegaflowey.entity:directorial/boss_fight/shared/stop/as_active_player/modify_health_and_tags
function omegaflowey.main:summit/room/cave/active_player_display/update_value with storage omegaflowey:bossfight
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# if already in queue (or in bossfight somehow), do nothing
execute unless entity @s[tag=!omegaflowey.player.in_queue, tag=!omegaflowey.player.fighting_flowey] run return 0

function omegaflowey.main:telemetry/booth/add_tag { name: "player.queue.join" }

# Play select sound if this was called from the interaction (and not manually)
execute if score #omegaflowey.play_join_queue_select_sound omegaflowey.global.flag matches 1 run \
playsound omega-flowey:soul.touch player @s
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "player.rejoin.was_in_queue" }

# players who leave the server are removed from the queue (when they rejoin)
function omegaflowey.entity:directorial/boss_fight/summit/player/queue/leave_and_rejoin/remove_from_queue_array

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "player.queue.shown_prompt" }

scoreboard players set #omegaflowey.bossfight.has_player_been_prompted omegaflowey.global.flag 1

tag @s add omegaflowey.player.in_queue.prompted
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "player.queue.confirm" }

function omegaflowey.entity:directorial/boss_fight/summit/player/queue/prompt_next_player/show_prompt/shared/as_player/triggers
schedule clear omegaflowey.entity:directorial/boss_fight/summit/player/queue/prompt_next_player/show_prompt/timeout

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "player.queue.confirm.after_delay" }

stopsound @s ambient omega-flowey:cutscene.intro.battle_start

function omegaflowey.entity:directorial/boss_fight/summit/player/queue/prompt_next_player/show_prompt/shared/as_player
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "player.queue.deny" }

function omegaflowey.entity:directorial/boss_fight/summit/player/queue/prompt_next_player/show_prompt/shared
function omegaflowey.entity:directorial/boss_fight/summit/player/queue/prompt_next_player/show_prompt/shared/as_player
function omegaflowey.entity:directorial/boss_fight/summit/player/queue/check_should_prompt
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "player.queue.timeout" }

function omegaflowey.entity:directorial/boss_fight/summit/player/queue/prompt_next_player/show_prompt/shared/as_player

function omegaflowey.utils:log/self { text_component: '[ \
Expand Down
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
scoreboard players reset @s omegaflowey.player.telemetry.id

execute if entity @s[tag=omegaflowey.player.fighting_flowey] run function omegaflowey.entity:directorial/boss_fight/summit/player/active/leave_and_rejoin
execute if entity @s[tag=omegaflowey.player.in_queue] run function omegaflowey.entity:directorial/boss_fight/summit/player/queue/leave_and_rejoin
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
function omegaflowey.main:telemetry/booth/enter
function omegaflowey.main:telemetry/booth/add_tag { name: "root.enter" }
tag @s add omegaflowey.player
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,3 @@ execute if entity @s[tag=omegaflowey.player.room.underground] run function omega
execute if entity @s[tag=omegaflowey.player.room.spectator_box] run function omegaflowey.entity:player/room/spectator_box/exit

function omegaflowey.main:telemetry/booth/add_tag { name: "root.exit" }
function omegaflowey.main:telemetry/booth/exit
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
tag @s remove omegaflowey.player.room.is_within.back_cave
tag @s remove omegaflowey.player.room.is_within.back_cave.waterfall_secret

# back_cave
tag @s[x=-157, dx=16, y=36, dy=12, z=18, dz=28] add omegaflowey.player.room.is_within.back_cave

execute if entity @s[tag=!omegaflowey.player.room.back_cave, tag=omegaflowey.player.room.is_within.back_cave] run \
function omegaflowey.entity:player/room/underground/back_cave/enter
execute if entity @s[tag=omegaflowey.player.room.back_cave, tag=!omegaflowey.player.room.is_within.back_cave] run \
function omegaflowey.entity:player/room/underground/back_cave/exit

tag @s remove omegaflowey.player.room.is_within.back_cave.waterfall_secret

# back_cave.waterfall_secret
tag @s[x=-155, dx=7, y=43, dy=5, z=18, dz=8] add omegaflowey.player.room.is_within.back_cave.waterfall_secret

execute if entity @s[tag=!omegaflowey.player.room.back_cave.waterfall_secret, tag=omegaflowey.player.room.is_within.back_cave.waterfall_secret] run \
function omegaflowey.entity:player/room/underground/back_cave/waterfall_secret/enter
execute if entity @s[tag=omegaflowey.player.room.back_cave.waterfall_secret, tag=!omegaflowey.player.room.is_within.back_cave.waterfall_secret] run \
function omegaflowey.entity:player/room/underground/back_cave/waterfall_secret/exit
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.back_cave.enter" }
tag @s add omegaflowey.player.room.back_cave
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.back_cave.exit" }
tag @s remove omegaflowey.player.room.back_cave
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.back_cave.waterfall_secret.enter" }
tag @s add omegaflowey.player.room.back_cave.waterfall_secret
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.back_cave.waterfall_secret.exit" }
tag @s remove omegaflowey.player.room.back_cave.waterfall_secret
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,13 @@ execute if entity @s[tag=!omegaflowey.player.room.underground, tag=omegaflowey.r
function omegaflowey.entity:player/room/underground/enter
execute if entity @s[tag=omegaflowey.player.room.underground, tag=!omegaflowey.room.is_within.underground] run \
function omegaflowey.entity:player/room/underground/exit

execute if entity @s[tag=!omegaflowey.player.room.underground] run return 0

# Detect what sub-room this player is in for telemetry
execute unless score #omegaflowey.telemetry.enabled omegaflowey.global.flag matches 1 run return 0

# TAG_SUMMIT_HARDCODED_PARKOUR_FULL
execute if entity @s[x=-122, dx=27, y=41, dy=14, z=31, dz=14] run return run \
function omegaflowey.entity:player/room/underground/parkour/check
function omegaflowey.entity:player/room/underground/back_cave/check
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.before_final_jump.enter" }
tag @s add omegaflowey.player.room.parkour.before_final_jump
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.before_final_jump.exit" }
tag @s remove omegaflowey.player.room.parkour.before_final_jump
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.before_pillar.enter" }
tag @s add omegaflowey.player.room.parkour.before_pillar
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.before_pillar.exit" }
tag @s remove omegaflowey.player.room.parkour.before_pillar
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.behind_pillar.enter" }
tag @s add omegaflowey.player.room.parkour.behind_pillar
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.behind_pillar.exit" }
tag @s remove omegaflowey.player.room.parkour.behind_pillar
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
tag @s remove omegaflowey.player.room.is_within.parkour.start
tag @s remove omegaflowey.player.room.is_within.parkour.before_pillar
tag @s remove omegaflowey.player.room.is_within.parkour.behind_pillar
tag @s remove omegaflowey.player.room.is_within.parkour.south_wall
tag @s remove omegaflowey.player.room.is_within.parkour.south_glow_vines
tag @s remove omegaflowey.player.room.is_within.parkour.final_vines
tag @s remove omegaflowey.player.room.is_within.parkour.before_final_jump
tag @s remove omegaflowey.player.room.is_within.parkour.finish

# parkour.start
tag @s[x=-120.0, dx=0.0, y=45.0, dy=2.0, z=34.7, dz=-0.7] add omegaflowey.player.room.is_within.parkour.start

execute if entity @s[tag=!omegaflowey.player.room.parkour.start, tag=omegaflowey.player.room.is_within.parkour.start] run \
function omegaflowey.entity:player/room/underground/parkour/start/enter
execute if entity @s[tag=omegaflowey.player.room.parkour.start, tag=!omegaflowey.player.room.is_within.parkour.start] run \
function omegaflowey.entity:player/room/underground/parkour/start/exit

execute if entity @s[tag=omegaflowey.player.room.is_within.parkour.start] run return 0

# parkour.before_pillar
tag @s[x=-119.0, dx=0.0, y=43.5, dy=3.0, z=37.0, dz=1.0] add omegaflowey.player.room.is_within.parkour.before_pillar

execute if entity @s[tag=!omegaflowey.player.room.parkour.before_pillar, tag=omegaflowey.player.room.is_within.parkour.before_pillar] run \
function omegaflowey.entity:player/room/underground/parkour/before_pillar/enter
execute if entity @s[tag=omegaflowey.player.room.parkour.before_pillar, tag=!omegaflowey.player.room.is_within.parkour.before_pillar] run \
function omegaflowey.entity:player/room/underground/parkour/before_pillar/exit

execute if entity @s[tag=omegaflowey.player.room.is_within.parkour.before_pillar] run return 0

# parkour.behind_pillar
tag @s[x=-118.0, dx=1.0, y=45.0, dy=2.0, z=40.0, dz=1.0] add omegaflowey.player.room.is_within.parkour.behind_pillar

execute if entity @s[tag=!omegaflowey.player.room.parkour.behind_pillar, tag=omegaflowey.player.room.is_within.parkour.behind_pillar] run \
function omegaflowey.entity:player/room/underground/parkour/behind_pillar/enter
execute if entity @s[tag=omegaflowey.player.room.parkour.behind_pillar, tag=!omegaflowey.player.room.is_within.parkour.behind_pillar] run \
function omegaflowey.entity:player/room/underground/parkour/behind_pillar/exit

execute if entity @s[tag=omegaflowey.player.room.is_within.parkour.behind_pillar] run return 0

# parkour.south_wall
tag @s[x=-114.0, dx=1.0, y=46.0, dy=2.0, z=42.0, dz=0.0] add omegaflowey.player.room.is_within.parkour.south_wall

execute if entity @s[tag=!omegaflowey.player.room.parkour.south_wall, tag=omegaflowey.player.room.is_within.parkour.south_wall] run \
function omegaflowey.entity:player/room/underground/parkour/south_wall/enter
execute if entity @s[tag=omegaflowey.player.room.parkour.south_wall, tag=!omegaflowey.player.room.is_within.parkour.south_wall] run \
function omegaflowey.entity:player/room/underground/parkour/south_wall/exit

execute if entity @s[tag=omegaflowey.player.room.is_within.parkour.south_wall] run return 0

# parkour.south_glow_vines
execute \
if entity @s[x=-108.0, dx=1.0, y=44.0, dy=8.0, z=39.0, dz=2.0] \
if block ~ ~ ~ #omegaflowey.main:parkour/vines \
run tag @s add omegaflowey.player.room.is_within.parkour.south_glow_vines

execute if entity @s[tag=!omegaflowey.player.room.parkour.south_glow_vines, tag=omegaflowey.player.room.is_within.parkour.south_glow_vines] run \
function omegaflowey.entity:player/room/underground/parkour/south_glow_vines/enter
execute if entity @s[tag=omegaflowey.player.room.parkour.south_glow_vines, tag=!omegaflowey.player.room.is_within.parkour.south_glow_vines] run \
function omegaflowey.entity:player/room/underground/parkour/south_glow_vines/exit

execute if entity @s[tag=omegaflowey.player.room.is_within.parkour.south_glow_vines] run return 0

# parkour.final_vines
execute \
if entity @s[x=-105.0, dx=1.0, y=45.0, dy=7.0, z=37.0, dz=1.0] \
if block ~ ~ ~ #omegaflowey.main:parkour/vines \
run tag @s add omegaflowey.player.room.is_within.parkour.final_vines

execute if entity @s[tag=!omegaflowey.player.room.parkour.final_vines, tag=omegaflowey.player.room.is_within.parkour.final_vines] run \
function omegaflowey.entity:player/room/underground/parkour/final_vines/enter
execute if entity @s[tag=omegaflowey.player.room.parkour.final_vines, tag=!omegaflowey.player.room.is_within.parkour.final_vines] run \
function omegaflowey.entity:player/room/underground/parkour/final_vines/exit

execute if entity @s[tag=omegaflowey.player.room.is_within.parkour.final_vines] run return 0

# parkour.before_final_jump
tag @s[x=-103.0, dx=0.0, y=50.5, dy=2.0, z=39.0, dz=0.0] add omegaflowey.player.room.is_within.parkour.before_final_jump

execute if entity @s[tag=!omegaflowey.player.room.parkour.before_final_jump, tag=omegaflowey.player.room.is_within.parkour.before_final_jump] run \
function omegaflowey.entity:player/room/underground/parkour/before_final_jump/enter
execute if entity @s[tag=omegaflowey.player.room.parkour.before_final_jump, tag=!omegaflowey.player.room.is_within.parkour.before_final_jump] run \
function omegaflowey.entity:player/room/underground/parkour/before_final_jump/exit

execute if entity @s[tag=omegaflowey.player.room.is_within.parkour.before_final_jump] run return 0

# parkour.finish
tag @s[x=-99.0, dx=3.0, y=50.0, dy=5.0, z=39, dz=5] add omegaflowey.player.room.is_within.parkour.finish
tag @s[x=-100.0, dx=0.0, y=50.0, dy=5.0, z=41.0, dz=2.0] add omegaflowey.player.room.is_within.parkour.finish

execute if entity @s[tag=!omegaflowey.player.room.parkour.finish, tag=omegaflowey.player.room.is_within.parkour.finish] run \
function omegaflowey.entity:player/room/underground/parkour/finish/enter
execute if entity @s[tag=omegaflowey.player.room.parkour.finish, tag=!omegaflowey.player.room.is_within.parkour.finish] run \
function omegaflowey.entity:player/room/underground/parkour/finish/exit

execute if entity @s[tag=omegaflowey.player.room.is_within.parkour.finish] run return 0
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.final_vines.enter" }
tag @s add omegaflowey.player.room.parkour.final_vines
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.final_vines.exit" }
tag @s remove omegaflowey.player.room.parkour.final_vines
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.finish.enter" }
tag @s add omegaflowey.player.room.parkour.finish
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.finish.exit" }
tag @s remove omegaflowey.player.room.parkour.finish
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.south_glow_vines.enter" }
tag @s add omegaflowey.player.room.parkour.south_glow_vines
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.south_glow_vines.exit" }
tag @s remove omegaflowey.player.room.parkour.south_glow_vines
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.south_wall.enter" }
tag @s add omegaflowey.player.room.parkour.south_wall
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.south_wall.exit" }
tag @s remove omegaflowey.player.room.parkour.south_wall
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.start.enter" }
tag @s add omegaflowey.player.room.parkour.start
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# function omegaflowey.main:telemetry/booth/add_tag { name: "room.underground.parkour.start.exit" }
tag @s remove omegaflowey.player.room.parkour.start
Loading