Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
115 changes: 115 additions & 0 deletions data/enemy/advancement/spawn_eggs_to_spawner.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
{
"criteria": {
"use_spawn_eggs": {
"trigger": "item_used_on_block",
"conditions": {
"location": [
{
"condition": "match_tool",
"predicate": {
"items": [
"bat_spawn_egg",
"bee_spawn_egg",
"cat_spawn_egg",
"cod_spawn_egg",
"cow_spawn_egg",
"fox_spawn_egg",
"pig_spawn_egg",
"vex_spawn_egg",
"frog_spawn_egg",
"goat_spawn_egg",
"husk_spawn_egg",
"mule_spawn_egg",
"wolf_spawn_egg",
"allay_spawn_egg",
"blaze_spawn_egg",
"ghast_spawn_egg",
"horse_spawn_egg",
"llama_spawn_egg",
"panda_spawn_egg",
"sheep_spawn_egg",
"slime_spawn_egg",
"squid_spawn_egg",
"stray_spawn_egg",
"witch_spawn_egg",
"donkey_spawn_egg",
"evoker_spawn_egg",
"hoglin_spawn_egg",
"ocelot_spawn_egg",
"parrot_spawn_egg",
"piglin_spawn_egg",
"rabbit_spawn_egg",
"salmon_spawn_egg",
"spider_spawn_egg",
"turtle_spawn_egg",
"warden_spawn_egg",
"wither_spawn_egg",
"zoglin_spawn_egg",
"zombie_spawn_egg",
"axolotl_spawn_egg",
"chicken_spawn_egg",
"creeper_spawn_egg",
"dolphin_spawn_egg",
"drowned_spawn_egg",
"phantom_spawn_egg",
"ravager_spawn_egg",
"shulker_spawn_egg",
"strider_spawn_egg",
"tadpole_spawn_egg",
"enderman_spawn_egg",
"guardian_spawn_egg",
"pillager_spawn_egg",
"skeleton_spawn_egg",
"villager_spawn_egg",
"endermite_spawn_egg",
"mooshroom_spawn_egg",
"glow_squid_spawn_egg",
"iron_golem_spawn_egg",
"magma_cube_spawn_egg",
"polar_bear_spawn_egg",
"pufferfish_spawn_egg",
"silverfish_spawn_egg",
"snow_golem_spawn_egg",
"vindicator_spawn_egg",
"cave_spider_spawn_egg",
"ender_dragon_spawn_egg",
"piglin_brute_spawn_egg",
"trader_llama_spawn_egg",
"zombie_horse_spawn_egg",
"tropical_fish_spawn_egg",
"elder_guardian_spawn_egg",
"skeleton_horse_spawn_egg",
"wither_skeleton_spawn_egg",
"zombie_villager_spawn_egg",
"wandering_trader_spawn_egg",
"zombified_piglin_spawn_egg",
"breeze_spawn_egg",
"camel_spawn_egg",
"sniffer_spawn_egg",
"zombified_piglin_spawn_egg"
]
}
},
{
"condition": "location_check",
"predicate": {
"block": {
"blocks": [
"spawner"
]
}
}
}
]
}
}
},
"requirements": [
[
"use_spawn_eggs"
]
],
"rewards": {
"function": "enemy:reboot_spawner/interact"
}
}
7 changes: 7 additions & 0 deletions data/enemy/function/reboot_spawner/interact.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#> enemy:reboot_spawner/interact
#探索距離7ブロック
scoreboard players set _ _ 70
#視線先のスポナーを探索
execute anchored eyes positioned ^ ^ ^ anchored feet run function enemy:reboot_spawner/search
#トリガー解除
advancement revoke @s only enemy:spawn_eggs_to_spawner
3 changes: 3 additions & 0 deletions data/enemy/function/reboot_spawner/reboot.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#> enemy:reboot_spawner/reboot
execute as @e[tag=Spawner,distance=..0.01,limit=1] at @s run data modify block ~ ~ ~ SpawnData.entity.id set from entity @s item.components."minecraft:custom_data".Spawner.SpawnData.entity.id
execute as @e[tag=Spawner,distance=..0.01,limit=1] at @s run data modify block ~ ~ ~ SpawnPotentials[0].data.entity.id set from entity @s item.components."minecraft:custom_data".Spawner.SpawnPotentials[0].data.entity.id
5 changes: 5 additions & 0 deletions data/enemy/function/reboot_spawner/search.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#> enemy:reboot_spawner/search
#視線先のスポナーを探索
scoreboard players remove _ _ 1
execute if score _ _ matches 1.. unless block ^ ^ ^ spawner positioned ^ ^ ^0.1 run function enemy:reboot_spawner/search
execute if block ^ ^ ^ spawner align xyz positioned ~0.5 ~0.5 ~0.5 run function enemy:reboot_spawner/reboot
Loading