diff --git a/minigames/data/dropper/functions/map/place_starting_sign.mcfunction b/minigames/data/dropper/functions/map/place_starting_sign.mcfunction index 3ac65ca..593cea4 100644 --- a/minigames/data/dropper/functions/map/place_starting_sign.mcfunction +++ b/minigames/data/dropper/functions/map/place_starting_sign.mcfunction @@ -1,3 +1,3 @@ -setblock 123 99 8 minecraft:andesite_stairs[facing=south,half=bottom,shape=straight,waterlogged=false] destroy -setblock 123 99 9 minecraft:air destroy -setblock 123 99 9 minecraft:oak_wall_sign[facing=south,waterlogged=false]{back_text:{color:"black",has_glowing_text:0b,messages:['{"text":""}','{"text":""}','{"text":""}','{"text":""}']},front_text:{has_glowing_text:0b,messages:['{"clickEvent":{"action":"run_command","value":"function #dropper:start"},"color":"green","text":" "}','{"color":"green","text":"Start"}','{"color":"green","text":"DROPPER"}','{"text":""}']},is_waxed:0b} +setblock 135 85 -4 minecraft:quartz_pillar destroy +setblock 135 85 -3 minecraft:air destroy +setblock 135 85 -3 minecraft:oak_wall_sign[facing=south,waterlogged=false]{back_text:{color:"black",has_glowing_text:0b,messages:['{"text":""}','{"text":""}','{"text":""}','{"text":""}']},front_text:{has_glowing_text:0b,messages:['{"clickEvent":{"action":"run_command","value":"function #dropper:start"},"color":"green","text":" "}','{"color":"green","text":"Start"}','{"color":"green","text":"DROPPER"}','{"text":""}']},is_waxed:0b} diff --git a/minigames/data/dropper/functions/map/remove_starting_sign.mcfunction b/minigames/data/dropper/functions/map/remove_starting_sign.mcfunction index f9c11f4..3374e09 100644 --- a/minigames/data/dropper/functions/map/remove_starting_sign.mcfunction +++ b/minigames/data/dropper/functions/map/remove_starting_sign.mcfunction @@ -1,2 +1,2 @@ -setblock 123 99 8 minecraft:andesite_wall[east=low,north=none,south=none,up=true,waterlogged=false,west=low] destroy -setblock 123 99 9 minecraft:air destroy \ No newline at end of file +setblock 135 85 -4 minecraft:air destroy +setblock 135 85 -3 minecraft:air destroy \ No newline at end of file diff --git a/minigames/data/dropper/functions/obstacles/generate.mcfunction b/minigames/data/dropper/functions/obstacles/generate.mcfunction index 2234a50..444d918 100644 --- a/minigames/data/dropper/functions/obstacles/generate.mcfunction +++ b/minigames/data/dropper/functions/obstacles/generate.mcfunction @@ -3,10 +3,12 @@ function dropper:obstacles/remove_all execute if score #dropper.timer_before_jump_reset data matches 66 run execute as @a[team=dropper] at @s run playsound block.stone_button.click_on master @s ~ ~ ~ 1 2 0 - -execute store result score #dropper.obstacle data run random value 0..4 -execute if score #dropper.obstacle data > #dropper.round data run scoreboard players set #dropper.obstacle data 0 -execute if score #dropper.round data matches 1 run scoreboard players set #dropper.obstacle data 0 +# During the two first rounds, there is no bottom obstacle +execute if score #dropper.round data matches 1..2 run scoreboard players set #dropper.obstacle data 0 +# During third round, there is always one +execute if score #dropper.round data matches 3 store result score #dropper.obstacle data run random value 1..4 +# After that, full random +execute if score #dropper.round data matches 4.. store result score #dropper.obstacle data run random value 0..4 execute if score #dropper.obstacle data matches 0 run tellraw @a[team=dropper] [{"text":"DROPPER > ","color":"green","bold":true,"italic":true},{"text":" Obstacle 1: Nothing","color":"yellow","bold":false,"italic":false}] execute if score #dropper.obstacle data matches 1 run tellraw @a[team=dropper] [{"text":"DROPPER > ","color":"green","bold":true,"italic":true},{"text":" Obstacle 1: Cross-shaped sail","color":"yellow","bold":false,"italic":false}] @@ -19,9 +21,14 @@ execute if score #dropper.obstacle data matches 2 run place template dropper:obs execute if score #dropper.obstacle data matches 3 run place template dropper:obstacle_3 113 165 -15 execute if score #dropper.obstacle data matches 4 run place template dropper:obstacle_4 113 165 -15 -execute store result score #dropper.obstacle data run random value 0..4 -execute if score #dropper.obstacle data > #dropper.round data run scoreboard players set #dropper.obstacle data 0 -execute if score #dropper.round data matches 2 run scoreboard players set #dropper.obstacle data 0 +# During the first round, there is no mid obstacle +execute if score #dropper.round data matches 1 run scoreboard players set #dropper.obstacle data 0 +# During second round, there is always one +execute if score #dropper.round data matches 2 store result score #dropper.obstacle data run random value 1..4 +# During third round, there is no mid obstacle +execute if score #dropper.round data matches 3 run scoreboard players set #dropper.obstacle data 0 +# After that, full random +execute if score #dropper.round data matches 4.. store result score #dropper.obstacle data run random value 0..4 execute if score #dropper.obstacle data matches 0 run tellraw @a[team=dropper] [{"text":"DROPPER > ","color":"green","bold":true,"italic":true},{"text":" Obstacle 2: Nothing","color":"yellow","bold":false,"italic":false}] execute if score #dropper.obstacle data matches 1 run tellraw @a[team=dropper] [{"text":"DROPPER > ","color":"green","bold":true,"italic":true},{"text":" Obstacle 2: Cross-shaped sail","color":"yellow","bold":false,"italic":false}] @@ -34,9 +41,12 @@ execute if score #dropper.obstacle data matches 2 run place template dropper:obs execute if score #dropper.obstacle data matches 3 run place template dropper:obstacle_3 113 135 -15 execute if score #dropper.obstacle data matches 4 run place template dropper:obstacle_4 113 135 -15 -execute store result score #dropper.obstacle data run random value 0..4 -execute if score #dropper.obstacle data > #dropper.round data run scoreboard players set #dropper.obstacle data 0 -execute if score #dropper.round data matches 1 run scoreboard players set #dropper.obstacle data 0 +# During the two first rounds, there is no top obstacle +execute if score #dropper.round data matches 1..2 run scoreboard players set #dropper.obstacle data 0 +# During third round, there is always one +execute if score #dropper.round data matches 3 store result score #dropper.obstacle data run random value 1..4 +# After that, full random +execute if score #dropper.round data matches 4.. store result score #dropper.obstacle data run random value 0..4 execute if score #dropper.obstacle data matches 0 run tellraw @a[team=dropper] [{"text":"DROPPER > ","color":"green","bold":true,"italic":true},{"text":" Obstacle 3: Nothing\n","color":"yellow","bold":false,"italic":false}] execute if score #dropper.obstacle data matches 1 run tellraw @a[team=dropper] [{"text":"DROPPER > ","color":"green","bold":true,"italic":true},{"text":" Obstacle 3: Cross-shaped sail\n","color":"yellow","bold":false,"italic":false}] diff --git a/minigames/data/dropper/functions/start/pre_start.mcfunction b/minigames/data/dropper/functions/start/pre_start.mcfunction index 650d656..4b2e795 100644 --- a/minigames/data/dropper/functions/start/pre_start.mcfunction +++ b/minigames/data/dropper/functions/start/pre_start.mcfunction @@ -4,9 +4,9 @@ function #lib:start_animation {\ id: "dropper",\ minigame: "DROPPER",\ color: "green",\ - x: 123.5,\ - y: 99.5,\ - z: 10.5,\ + x: 135.5,\ + y: 85.5,\ + z: -3.5,\ size: 5,\ start_callback: "dropper:start/start",\ cancel_callback: "dropper:map/place_starting_sign"\ diff --git a/minigames/data/jump/functions/checkpoint/active.mcfunction b/minigames/data/jump/functions/checkpoint/active.mcfunction index f5ec965..11be438 100644 --- a/minigames/data/jump/functions/checkpoint/active.mcfunction +++ b/minigames/data/jump/functions/checkpoint/active.mcfunction @@ -11,10 +11,11 @@ $execute as @a[team=jump,scores={jump.step=0}] unless data entity @s Inventory[{ execute store result score #jump.y_limit data run data get entity @s data.jump.checkpoint_properties.y_limit 1000 execute as @a[team=jump,scores={jump.step=0}] if score @s pos.y < #jump.y_limit data run tag @s add jump.fall scoreboard players operation @e[tag=jump.checkpoint,distance=0.1..] jump.step -= @s jump.step -execute as @a[tag=jump.fall] at @s run particle dust 0.565 0.000 1.000 1 ~ ~1 ~ 0.3 0.7 0.3 0 50 normal @s +execute as @a[tag=jump.fall] at @s run particle dust 0.565 0.000 1.000 1 ~ ~1 ~ 0.3 0.7 0.3 0 50 normal @a + execute as @a[tag=jump.fall] at @s positioned as @e[tag=jump.checkpoint,scores={jump.step=-1}] run tp @s ~ ~1 ~ -execute as @a[tag=jump.fall] at @s positioned as @e[tag=jump.checkpoint,scores={jump.step=-1}] if block ~ ~ ~ air run tp @s ~ ~ ~ -execute as @a[tag=jump.fall] at @s run particle dust 0.565 0.000 1.000 1 ~ ~1 ~ 0.5 1 0.5 0 100 normal @s + +execute as @a[tag=jump.fall] at @s run particle dust 0.565 0.000 1.000 1 ~ ~1 ~ 0.5 1 0.5 0 100 normal @a execute as @a[tag=jump.fall] at @s run playsound entity.enderman.teleport master @s ~ ~ ~ 1 2 0 scoreboard players operation @e[tag=jump.checkpoint,distance=0.1..] jump.step += @s jump.step tag @a[tag=jump.fall] remove jump.fall diff --git a/minigames/data/jump/functions/checkpoint/place_all.mcfunction b/minigames/data/jump/functions/checkpoint/place_all.mcfunction index 0a71a0f..56f19b7 100644 --- a/minigames/data/jump/functions/checkpoint/place_all.mcfunction +++ b/minigames/data/jump/functions/checkpoint/place_all.mcfunction @@ -16,14 +16,16 @@ function jump:checkpoint/place {x:-274.5,y:105.5,z:0.5,size:2.5,time:140,y_limit function jump:checkpoint/place {x:-288.0001,y:105.0,z:8.7,size:1.0,time:150,y_limit:100.0} function jump:checkpoint/place {x:-265.5,y:110.5,z:20.5,size:2.0,time:180,y_limit:104.0} function jump:checkpoint/place {x:-278.5,y:104.5,z:16.3,size:0.7,time:140,y_limit:103.0} -function jump:checkpoint/place {x:-291.5,y:108.0,z:16.3,size:0.7,time:100,y_limit:103.0} +function jump:checkpoint/place {x:-282.5,y:104.5,z:16.3,size:0.7,time:70,y_limit:103.0} +function jump:checkpoint/place {x:-291.5,y:108.0,z:16.3,size:0.7,time:30,y_limit:103.0} function jump:checkpoint/place {x:-306.5,y:107.0,z:13.5,size:1.5,time:80,y_limit:104.0} function jump:checkpoint/place {x:-317.5,y:106.5,z:19.5,size:2.5,time:130,y_limit:103.0} function jump:checkpoint/place {x:-298.5,y:107.0,z:29.5,size:2.5,time:180,y_limit:103.0} function jump:checkpoint/place {x:-326.5,y:106.0,z:33.5,size:3.5,time:700,y_limit:101.0} function jump:checkpoint/place {x:-328.5,y:115.0,z:21.5,size:2.5,time:150,y_limit:104.0} -function jump:checkpoint/place {x:-357.5,y:105.5,z:26.5,size:2.5,time:150,y_limit:101.0} -function jump:checkpoint/place {x:-340.5,y:103.0,z:15.5,size:2.5,time:120,y_limit:99.0} +function jump:checkpoint/place {x:-352.5,y:102.5,z:28.5,size:2.5,time:150,y_limit:101.0} +function jump:checkpoint/place {x:-355.5,y:101.5,z:17.5,size:2.5,time:60,y_limit:101.0} +function jump:checkpoint/place {x:-340.5,y:103.0,z:15.5,size:2.5,time:60,y_limit:99.0} function jump:checkpoint/place {x:-326.5,y:103.0,z:11.5,size:2.5,time:130,y_limit:100.0} function jump:checkpoint/place {x:-332.5,y:108.0,z:8.5,size:2.5,time:80,y_limit:101.0} function jump:checkpoint/place {x:-327.5,y:110.0,z:1.5,size:2.5,time:60,y_limit:105.0} diff --git a/minigames/data/jump/functions/stop/timesup.mcfunction b/minigames/data/jump/functions/stop/timesup.mcfunction index 967a26c..d0e0a46 100644 --- a/minigames/data/jump/functions/stop/timesup.mcfunction +++ b/minigames/data/jump/functions/stop/timesup.mcfunction @@ -1,3 +1,7 @@ +execute at @s run particle dust 0.565 0.000 1.000 1 ~ ~1 ~ 0.3 0.7 0.3 0 50 normal @a +tp @s -311.5 97 16.5 0 0 +execute at @s run playsound entity.enderman.teleport master @s ~ ~ ~ 1 2 0 +execute at @s run particle dust 0.565 0.000 1.000 1 ~ ~1 ~ 0.3 0.7 0.3 0 50 normal @a function #global:animated_title {type:"timesup"} tellraw @s [{"text":"\nJUMP > ","bold":true,"italic":true,"color":"dark_purple"},{"text":"You arrived at step ","bold":false,"italic":false,"color":"gray"},{"score":{"name":"@s","objective":"jump.step"},"bold":true,"italic":false,"color":"green"},{"text":"\n"}] function #jump:reset_player \ No newline at end of file