Initial Commit
This commit is contained in:
BIN
data/serenitydeco/function/.DS_Store
vendored
Normal file
BIN
data/serenitydeco/function/.DS_Store
vendored
Normal file
Binary file not shown.
4
data/serenitydeco/function/_load.mcfunction
Normal file
4
data/serenitydeco/function/_load.mcfunction
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
|
||||
# Ensure no one has the event advancements
|
||||
schedule function serenitydeco:remove_advancements 5s
|
||||
12
data/serenitydeco/function/destroy_deco.mcfunction
Normal file
12
data/serenitydeco/function/destroy_deco.mcfunction
Normal file
@@ -0,0 +1,12 @@
|
||||
# Summon item back
|
||||
$loot spawn ~ ~ ~ loot serenitydeco:$(deco_id)
|
||||
summon item ~ ~ ~ {Item:{id:"minecraft:armor_stand",count:1},Motion:[0,0.2,0]}
|
||||
|
||||
# Effects
|
||||
particle cloud ~ ~.5 ~ 0.2 0.2 0.2 .3 20
|
||||
playsound minecraft:entity.player.attack.crit block @a ~ ~ ~ 1 1
|
||||
|
||||
# Kill triggerbox, deco origin and all of its children (all related deco model entities)
|
||||
kill @n[type=interaction,tag=serenitydeco_triggerbox,distance=..2,nbt={attack:{}}]
|
||||
execute on passengers run kill @s
|
||||
kill @s
|
||||
BIN
data/serenitydeco/function/event_listeners/.DS_Store
vendored
Normal file
BIN
data/serenitydeco/function/event_listeners/.DS_Store
vendored
Normal file
Binary file not shown.
@@ -0,0 +1,3 @@
|
||||
advancement revoke @s only serenitydeco:events/on_hurt
|
||||
|
||||
execute positioned as @s rotated as @s anchored eyes positioned ^ ^ ^2 as @n[type=interaction,tag=serenitydeco_triggerbox,distance=..2,nbt={attack:{}}] positioned as @s as @n[type=interaction,tag=serenitydeco_origin,distance=..2] run function serenitydeco:destroy_deco with entity @s data
|
||||
@@ -0,0 +1,3 @@
|
||||
advancement revoke @s only serenitydeco:events/on_place
|
||||
|
||||
execute positioned as @s rotated as @s anchored eyes positioned ^ ^ ^2 as @n[type=armor_stand,predicate=serenitydeco:is_wearing_deco,distance=..2] positioned as @s run return run function serenitydeco:setup_deco with entity @s equipment.chest.components.minecraft:custom_data
|
||||
@@ -0,0 +1,2 @@
|
||||
advancement revoke @a only serenitydeco:events/on_hurt
|
||||
advancement revoke @a only serenitydeco:events/on_place
|
||||
23
data/serenitydeco/function/setup_deco.mcfunction
Normal file
23
data/serenitydeco/function/setup_deco.mcfunction
Normal file
@@ -0,0 +1,23 @@
|
||||
# Summon origin point to parent all other entities (excluding triggerbox)
|
||||
$summon interaction ~ ~ ~ {width:0,height:0,Tags:[serenitydeco_origin],data:{deco_id:$(deco_id)}}
|
||||
|
||||
# Spawn deco model & hitbox
|
||||
$function serenitydeco:spawn/$(deco_id)
|
||||
$summon interaction ~ ~ ~ {width:$(deco_width),height:$(deco_height),Tags:[serenitydeco_triggerbox]}
|
||||
|
||||
# Remove armor stand
|
||||
kill @n[type=armor_stand,predicate=serenitydeco:is_wearing_deco]
|
||||
|
||||
# Tag all of the model entities
|
||||
execute as @n[tag=serenitydeco_parent,distance=..2] on passengers run tag @s add serenitydeco_part
|
||||
|
||||
# Rotate deco
|
||||
execute as @e[tag=serenitydeco_part,distance=..2] positioned as @s facing entity @p feet run rotate @s ~ 0
|
||||
|
||||
# Dismount and remount all model entities
|
||||
execute as @e[tag=serenitydeco_part,distance=..2] run ride @s dismount
|
||||
execute as @e[tag=serenitydeco_part,distance=..2] run ride @s mount @n[tag=serenitydeco_origin,distance=..2]
|
||||
ride @n[tag=serenitydeco_parent,distance=..2] mount @n[tag=serenitydeco_origin,distance=..2]
|
||||
|
||||
# Remove tagging
|
||||
execute as @n[tag=serenitydeco_origin,distance=..2] on passengers run tag @s remove serenitydeco_part
|
||||
BIN
data/serenitydeco/function/spawn/.DS_Store
vendored
Normal file
BIN
data/serenitydeco/function/spawn/.DS_Store
vendored
Normal file
Binary file not shown.
1
data/serenitydeco/function/spawn/banner.mcfunction
Normal file
1
data/serenitydeco/function/spawn/banner.mcfunction
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
data/serenitydeco/function/spawn/sword_stand.mcfunction
Normal file
1
data/serenitydeco/function/spawn/sword_stand.mcfunction
Normal file
@@ -0,0 +1 @@
|
||||
summon block_display ~ ~ ~ {Tags:[serenitydeco_parent],Passengers:[{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[1.9e-9f,0f,0.0625f,-0.0375f,-0.0625f,0f,1.9e-9f,1.011875f,0f,-0.3125f,0f,0.81248f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[1.9e-9f,0f,0.0625f,-0.35f,-0.0625f,0f,1.9e-9f,1.011875f,0f,-0.3125f,0f,0.81248f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[1.9e-9f,0f,0.0625f,-0.6625f,-0.0625f,0f,1.9e-9f,1.011875f,0f,-0.3125f,0f,0.81248f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[1.9e-9f,0f,0.0625f,0.5875f,-0.0625f,0f,1.9e-9f,1.011875f,0f,-0.3125f,0f,0.81248f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[1.9e-9f,0f,0.0625f,0.275f,-0.0625f,0f,1.9e-9f,1.011875f,0f,-0.3125f,0f,0.81248f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0.0625f,0f,0f,0.9375f,0f,1.6125f,0f,0.0625f,0f,0f,0.0625f,0.9372682188f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0.0625f,0f,0f,-1f,0f,1.6125f,0f,0.0625f,0f,0f,0.0625f,0.9372682188f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0f,1.875f,0f,-0.9375f,-0.0625f,0f,0f,1.6625f,0f,0f,0.0625f,0.9372682188f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0f,2f,0f,-1f,-0.0625f,0f,0f,1.6625f,0f,0f,0.0625f,0.7397682188f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0.0625f,0f,0f,0.9375f,0f,1.5878708723f,-0.0244206955f,0.05f,0f,0.6740111964f,0.0575315533f,0.0772682188f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0.0625f,0f,0f,-1f,0f,1.5878708723f,-0.0244206955f,0.05f,0f,0.6740111964f,0.0575315533f,0.0772682188f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0f,0f,0.0625f,-1f,-0.0625f,0f,0f,1.6625f,0f,-0.135f,0f,0.9375f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0f,0f,0.0625f,0.9375f,-0.0625f,0f,0f,1.6625f,0f,-0.135f,0f,0.9375f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0f,1.875f,0f,-0.9375f,-0.0575315533f,0f,-0.0244206955f,1.021875f,-0.0244206955f,0f,0.0575315533f,0.4897682188f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0f,0f,0.0625f,0.9375f,-0.0625f,0f,0f,1.011875f,0f,-0.41f,0f,0.9375f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0f,0f,0.0625f,-1f,-0.0625f,0f,0f,1.011875f,0f,-0.41f,0f,0.9375f,0f,0f,0f,1f]},{id:"minecraft:block_display",block_state:{Name:"minecraft:brown_terracotta",Properties:{}},transformation:[0f,-1.875f,0f,0.9375f,0.0625f,0f,0f,0.949375f,0f,0f,0.0625f,0.8122682188f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:iron_sword",Count:1},item_display:"none",transformation:[0f,0f,1f,0.785f,0.7071067812f,-0.7071067812f,0f,0.9375f,0.7071067812f,0.7071067812f,0f,0.676875f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:diamond_sword",Count:1},item_display:"none",transformation:[0f,0f,1f,0.47f,0.7071067812f,-0.7071067812f,0f,0.9375f,0.7071067812f,0.7071067812f,0f,0.676875f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:iron_sword",Count:1},item_display:"none",transformation:[0f,0f,1f,0.15f,0.7071067812f,-0.7071067812f,0f,0.9375f,0.7071067812f,0.7071067812f,0f,0.676875f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:iron_sword",Count:1},item_display:"none",transformation:[0f,0f,1f,-0.47f,0.7071067812f,-0.7071067812f,0f,0.9375f,0.7071067812f,0.7071067812f,0f,0.676875f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:iron_axe",Count:1},item_display:"none",transformation:[2.58e-8f,0f,-1f,-0.16f,-0.5f,0.8660254038f,-1.29e-8f,0.9375f,0.8660254038f,0.5f,2.24e-8f,0.6772682188f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:diamond_sword",Count:1},item_display:"none",transformation:[0f,0f,1f,-0.78f,0.7071067812f,-0.7071067812f,0f,0.9375f,0.7071067812f,0.7071067812f,0f,0.676875f,0f,0f,0f,1f]}]}
|
||||
1
data/serenitydeco/function/spawn/tree_stump.mcfunction
Normal file
1
data/serenitydeco/function/spawn/tree_stump.mcfunction
Normal file
File diff suppressed because one or more lines are too long
1
data/serenitydeco/function/spawn/wood_stove.mcfunction
Normal file
1
data/serenitydeco/function/spawn/wood_stove.mcfunction
Normal file
File diff suppressed because one or more lines are too long
7
data/serenitydeco/function/uninstall.mcfunction
Normal file
7
data/serenitydeco/function/uninstall.mcfunction
Normal file
@@ -0,0 +1,7 @@
|
||||
tellraw @a {text:"Removing all Serenity Decorations...",color:"yellow"}
|
||||
scoreboard objectives add serenitydeco.old dummy
|
||||
scoreboard players set count serenitydeco.old 0
|
||||
|
||||
execute as @e[type=minecraft:interaction,tag=serenitydeco_triggerbox] positioned as @s run function serenitydeco:uninstall/remove_old
|
||||
|
||||
schedule function serenitydeco:uninstall/notify 1s
|
||||
1
data/serenitydeco/function/uninstall/notify.mcfunction
Normal file
1
data/serenitydeco/function/uninstall/notify.mcfunction
Normal file
@@ -0,0 +1 @@
|
||||
tellraw @a [{text:"Removed ",color:"yellow"},{score:{name:"count",objective:"serenitydeco.old"},color:"red"},{text:" decorations!",color:"yellow"}]
|
||||
@@ -0,0 +1,9 @@
|
||||
# Destroy the decoration
|
||||
kill @e[type=armor_stand,distance=..1.2]
|
||||
kill @e[type=minecraft:block_display,distance=..1.2]
|
||||
kill @e[type=minecraft:item_display,distance=..1.2]
|
||||
kill @e[type=minecraft:text_display,distance=..1.2]
|
||||
kill @e[type=minecraft:interaction,distance=..1.2]
|
||||
kill @s
|
||||
|
||||
scoreboard players add count serenitydeco.old 1
|
||||
Reference in New Issue
Block a user