From c86aac1d219d1b7990e2707db9dfef5957e5fa5c Mon Sep 17 00:00:00 2001 From: AndanteDevs Date: Fri, 18 Oct 2019 11:12:13 +0100 Subject: [PATCH] v0.1.0 - Performance improvements - Fixed a Purpur Pillar spawning at world spawn upon each dragon fight - Fixed Cooked Wolf Chop translation - Fixed Ore Spirit spawn rates from certain ores - Fixed Lapis Ores spawning Gold Ore Spirits - Fixed loot table `origami-games:launch/world/structure/desert_tomb/barrel` throwing parameter not provided errors on load - Added Bonsai Pot - Spawns tree-based loot into any container below the Bonsai Pot when there is a Grass Block and a Sapling above it and when it has dirt in the first slot - Crafted in Synthesiser with *Bone Blocks* and a *Flower Pot* - `B_B` - `BFB` - `_B_` - Industrial Grade Diamonds are now obtainable - Drop a Diamond on to an anvil and push a piston head down on to it - Block Breakers now require Industrial Grade Diamond in their recipe instead of Diamond - Reduced Sand Crawlers' upwards throwing motion - Reduced the chance of a Spirit Orb dropping from an Ore Spirit - Made the Ender Dragon drop an Elytra - Made Ore Spirits not drop with Silk Touch - Made ore drops from Ore Spirits drop with a count like Fortune III - Made Shulkers spawn in the main End island now instead of Chorus - Reworked the mob spawning system to use loot table weights - When near caged End Crystals, survival mode users will be affected with Mining Fatigue - Arrows shot at End Crystals will now be deflected - Reduced month size to 4 in-game days - Removed custom block middle-clicking - Removed removal of `PickupDelay` from items being pulled by Magnetite - Temporarily disabled custom arrows - optimising --- CHANGELOG.md | 35 +- .../loot_tables/blocks/coal_ore.json | 29 +- .../loot_tables/blocks/diamond_ore.json | 29 +- .../loot_tables/blocks/emerald_ore.json | 29 +- .../loot_tables/blocks/gold_ore.json | 5 +- .../loot_tables/blocks/iron_ore.json | 5 +- .../loot_tables/blocks/lapis_ore.json | 37 +- .../loot_tables/blocks/nether_quartz_ore.json | 40 +- .../loot_tables/blocks/redstone_ore.json | 40 +- .../loot_tables/entities/ender_dragon.json | 14 + .../launch/item/consume_dark_flesh.json | 15 - .../launch/item/dark_flesh/consume.json | 15 + .../bonsai_pot/check_dirt_count.mcfunction | 10 + .../launch/block/bonsai_pot/craft.mcfunction | 3 + .../launch/block/bonsai_pot/create.mcfunction | 11 + .../block/bonsai_pot/dirt/filled.mcfunction | 8 + .../bonsai_pot/dirt/part_filled.mcfunction | 7 + .../block/bonsai_pot/processes.mcfunction | 9 + .../launch/block/bonsai_pot/remove.mcfunction | 9 + .../block/bonsai_pot/spawn_loot.mcfunction | 8 + .../block/disenchanter/create.mcfunction | 2 +- .../block/gravity_pad/create.mcfunction | 2 +- .../block/light_bridge/create.mcfunction | 2 +- .../block/synthesiser/create.mcfunction | 2 +- .../block/synthesiser/recipe_check.mcfunction | 15 +- .../functions/launch/build/check.mcfunction | 2 +- .../functions/launch/clock16.mcfunction | 18 +- .../management/area_effect_cloud.mcfunction | 20 + .../armour_stand.mcfunction} | 5 + .../launch/entity/management/arrow.mcfunction | 8 + .../launch/entity/management/item.mcfunction | 23 + .../item/has_launch_data.mcfunction | 8 + .../entity/management/item16.mcfunction | 17 + .../entity/ore_spirit/check_ore.mcfunction | 6 +- .../launch/entity/ore_spirit/coal.mcfunction | 6 + .../entity/ore_spirit/diamond.mcfunction | 6 + .../entity/ore_spirit/emerald.mcfunction | 6 + .../spawning/biome/_template.mcfunction | 9 - .../entity/spawning/biome/desert.mcfunction | 9 - .../spawning/biome/generic/global.mcfunction | 5 - .../spawning/biome/generic/wooded.mcfunction | 5 - .../entity/spawning/biome/snowy.mcfunction | 10 - .../entity/spawning/biome/swamp.mcfunction | 9 - .../spawning/check_conditions.mcfunction | 19 - .../entity/spawning/check_custom.mcfunction | 18 +- .../entity/spawning/check_spawn.mcfunction | 5 + .../spawning/check_spawn_entity.mcfunction | 8 + .../check_spawn_entity/global.mcfunction | 5 + .../check_spawn_entity/night.mcfunction | 5 + .../entity/spawning/entity_check.mcfunction | 7 + .../entity/spawning/no_spawn.mcfunction | 4 + .../entity/spawning/overworld.mcfunction | 27 - .../launch/entity/spawning/the_end.mcfunction | 3 - .../entity/spawning/the_nether.mcfunction | 7 - .../entity/summon/ore_spirit.mcfunction | 2 +- .../entity/summon/sand_crawler.mcfunction | 4 +- .../entity/summon/slime_queen.mcfunction | 1 - .../functions/launch/item/crushing.mcfunction | 6 + .../launch/item/dark_flesh/consume.mcfunction | 2 +- .../industrial_grade_diamond/craft.mcfunction | 12 + .../launch/item/magnetite/pull.mcfunction | 2 - .../check_location.mcfunction | 4 + .../functions/launch/load.mcfunction | 4 +- .../functions/launch/player/tick.mcfunction | 35 +- .../functions/launch/tick.mcfunction | 54 +- .../functions/launch/world/clock4.mcfunction | 2 +- .../end/crystals/fight_effects.mcfunction | 1 + .../crystals/fight_effects_caged.mcfunction | 1 + .../regenerate_structures.mcfunction | 1 + .../world/end/generate_chorus.mcfunction | 8 - .../world/end/generate_shulkers.mcfunction | 3 + .../world/end/initial_generation.mcfunction | 4 +- .../world/end/spawn_end_gateway.mcfunction | 1 + .../structure/spawn/notification.mcfunction | 2 +- .../loot_tables/launch/blocks/bonsai_pot.json | 13 + .../blocks/function/bonsai_pot/acacia.json | 23 + .../blocks/function/bonsai_pot/birch.json | 23 + .../blocks/function/bonsai_pot/dark_oak.json | 23 + .../blocks/function/bonsai_pot/jungle.json | 23 + .../blocks/function/bonsai_pot/oak.json | 23 + .../blocks/function/bonsai_pot/spruce.json | 23 + .../blocks/function/ore_spirit/coal.json | 35 ++ .../blocks/function/ore_spirit/diamond.json | 35 ++ .../blocks/function/ore_spirit/emerald.json | 35 ++ .../blocks/function/ore_spirit/lapis.json | 43 ++ .../blocks/function/ore_spirit/quartz.json | 46 ++ .../blocks/function/ore_spirit/redstone.json | 46 ++ .../launch/blocks/magnetite_ore.json | 2 +- .../function/ore_spirit.json | 0 .../function/spawning/biome/beach.json | 19 + .../function/spawning/biome/cold.json | 30 + .../function/spawning/biome/forest.json | 41 ++ .../function/spawning/biome/jungle.json | 19 + .../function/spawning/biome/ocean.json | 19 + .../function/spawning/biome/plains.json | 19 + .../function/spawning/biome/river.json | 19 + .../function/spawning/biome/swamp.json | 19 + .../function/spawning/biome/the_end.json | 19 + .../function/spawning/biome/the_nether.json | 30 + .../function/spawning/biome/warm.json | 30 + .../function/spawning/check_biome.json | 566 ++++++++++++++++++ .../function/spawning/check_custom.json | 24 + .../launch/entities/ore_spirit.json | 5 + .../loot_tables/launch/items/bonsai_pot.json | 19 + .../launch/items/disenchanter.json | 2 +- .../loot_tables/launch/items/gravity_pad.json | 2 +- .../launch/items/light_bridge.json | 2 +- .../loot_tables/launch/items/synthesiser.json | 2 +- .../launch/items/titanium_plating.json | 2 +- .../world/structure/desert_tomb/barrel.json | 2 +- Launch (Data)/pack.mcmeta | 12 +- .../minecraft/models/item/armor_stand.json | 18 + .../assets/origami-games/lang/en_us.json | 2 + .../launch/block/bonsai_pot_default.json | 436 ++++++++++++++ .../launch/block/bonsai_pot_filled.json | 443 ++++++++++++++ .../launch/block/bonsai_pot_part_filled.json | 443 ++++++++++++++ .../models/launch/item/bonsai_pot.json | 3 + .../textures/launch/block/bonsai_pot.png | Bin 0 -> 823 bytes README.md | 25 +- 119 files changed, 3016 insertions(+), 459 deletions(-) create mode 100644 Launch (Data)/data/minecraft/loot_tables/entities/ender_dragon.json delete mode 100644 Launch (Data)/data/origami-games/advancements/launch/item/consume_dark_flesh.json create mode 100644 Launch (Data)/data/origami-games/advancements/launch/item/dark_flesh/consume.json create mode 100644 Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/check_dirt_count.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/craft.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/create.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/dirt/filled.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/dirt/part_filled.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/processes.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/remove.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/spawn_loot.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/management/area_effect_cloud.mcfunction rename Launch (Data)/data/origami-games/functions/launch/entity/{armour_stand_management.mcfunction => management/armour_stand.mcfunction} (83%) create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/management/arrow.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/management/item.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/management/item/has_launch_data.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/management/item16.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/coal.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/diamond.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/emerald.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/_template.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/desert.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/generic/global.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/generic/wooded.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/snowy.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/swamp.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_conditions.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity/global.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity/night.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/entity_check.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/no_spawn.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/overworld.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/the_end.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/entity/spawning/the_nether.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/item/crushing.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/item/industrial_grade_diamond/craft.mcfunction delete mode 100644 Launch (Data)/data/origami-games/functions/launch/world/end/generate_chorus.mcfunction create mode 100644 Launch (Data)/data/origami-games/functions/launch/world/end/generate_shulkers.mcfunction create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/bonsai_pot.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/acacia.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/birch.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/dark_oak.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/jungle.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/oak.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/spruce.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/coal.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/diamond.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/emerald.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/lapis.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/quartz.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/redstone.json rename Launch (Data)/data/origami-games/loot_tables/launch/{blocks => entities}/function/ore_spirit.json (100%) create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/beach.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/cold.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/forest.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/jungle.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/ocean.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/plains.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/river.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/swamp.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/the_end.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/the_nether.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/warm.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/check_biome.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/check_custom.json create mode 100644 Launch (Data)/data/origami-games/loot_tables/launch/items/bonsai_pot.json create mode 100644 Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_default.json create mode 100644 Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_filled.json create mode 100644 Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_part_filled.json create mode 100644 Launch (Resources)/assets/origami-games/models/launch/item/bonsai_pot.json create mode 100644 Launch (Resources)/assets/origami-games/textures/launch/block/bonsai_pot.png diff --git a/CHANGELOG.md b/CHANGELOG.md index b2c3408..3d58d8b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,36 @@ -Changelog -========= +# Changelog + +## [v0.1.0](https://github.com/origami-games/launch/tree/v0.1.0) +- Performance improvements +- Fixed a Purpur Pillar spawning at world spawn upon each dragon fight +- Fixed Cooked Wolf Chop translation +- Fixed Ore Spirit spawn rates from certain ores +- Fixed Lapis Ores spawning Gold Ore Spirits +- Fixed loot table `origami-games:launch/world/structure/desert_tomb/barrel` throwing parameter not provided errors on load +- Added Bonsai Pot + - Spawns tree-based loot into any container below the Bonsai Pot when there is a Grass Block and a Sapling above it and when it has dirt in the first slot + - Crafted in Synthesiser with *Bone Blocks* and a *Flower Pot* + - `B_B` + - `BFB` + - `_B_` +- Industrial Grade Diamonds are now obtainable + - Drop a Diamond on to an anvil and push a piston head down on to it +- Block Breakers now require Industrial Grade Diamond in their recipe instead of Diamond +- Reduced Sand Crawlers' upwards throwing motion +- Reduced the chance of a Spirit Orb dropping from an Ore Spirit +- Made the Ender Dragon drop an Elytra +- Made Ore Spirits not drop with Silk Touch +- Made ore drops from Ore Spirits drop with a count like Fortune III +- Made Shulkers spawn in the main End island now instead of Chorus +- Reworked the mob spawning system to use loot table weights +- When near caged End Crystals, survival mode users will be affected with Mining Fatigue +- Arrows shot at End Crystals will now be deflected +- Reduced month size to 4 in-game days +- Removed custom block middle-clicking +- Removed removal of `PickupDelay` from items being pulled by Magnetite +- Temporarily disabled custom arrows - optimising + +--- ## [v0.0.3](https://github.com/origami-games/launch/tree/v0.0.3) - Fixed custom ores dropping experience when silk-touched diff --git a/Launch (Data)/data/minecraft/loot_tables/blocks/coal_ore.json b/Launch (Data)/data/minecraft/loot_tables/blocks/coal_ore.json index 91726e9..8aedd8a 100644 --- a/Launch (Data)/data/minecraft/loot_tables/blocks/coal_ore.json +++ b/Launch (Data)/data/minecraft/loot_tables/blocks/coal_ore.json @@ -24,34 +24,11 @@ } } ], - "name": "minecraft:coal_ore", - "weight": 20 + "name": "minecraft:coal_ore" }, { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:apply_bonus", - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "minecraft:coal", - "weight": 20 - } - ] - }, - { - "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", - "weight": 1, - "functions": [ - { - "function": "minecraft:set_nbt", - "tag": "{origami-games:{launch:{spirit_type:\"coal\"}}}" + "type": "minecraft:loot_table", + "name": "origami-games:launch/blocks/function/ore_spirit/coal" } ] } diff --git a/Launch (Data)/data/minecraft/loot_tables/blocks/diamond_ore.json b/Launch (Data)/data/minecraft/loot_tables/blocks/diamond_ore.json index 276a2da..bbc37f9 100644 --- a/Launch (Data)/data/minecraft/loot_tables/blocks/diamond_ore.json +++ b/Launch (Data)/data/minecraft/loot_tables/blocks/diamond_ore.json @@ -24,34 +24,11 @@ } } ], - "name": "minecraft:diamond_ore", - "weight": 20 + "name": "minecraft:diamond_ore" }, { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:apply_bonus", - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "minecraft:diamond", - "weight": 20 - } - ] - }, - { - "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", - "weight": 1, - "functions": [ - { - "function": "minecraft:set_nbt", - "tag": "{origami-games:{launch:{spirit_type:\"diamond\"}}}" + "type": "minecraft:loot_table", + "name": "origami-games:launch/blocks/function/ore_spirit/diamond" } ] } diff --git a/Launch (Data)/data/minecraft/loot_tables/blocks/emerald_ore.json b/Launch (Data)/data/minecraft/loot_tables/blocks/emerald_ore.json index 1a2ec06..44647e4 100644 --- a/Launch (Data)/data/minecraft/loot_tables/blocks/emerald_ore.json +++ b/Launch (Data)/data/minecraft/loot_tables/blocks/emerald_ore.json @@ -24,34 +24,11 @@ } } ], - "name": "minecraft:emerald_ore", - "weight": 20 + "name": "minecraft:emerald_ore" }, { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:apply_bonus", - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "minecraft:emerald", - "weight": 20 - } - ] - }, - { - "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", - "weight": 1, - "functions": [ - { - "function": "minecraft:set_nbt", - "tag": "{origami-games:{launch:{spirit_type:\"emerald\"}}}" + "type": "minecraft:loot_table", + "name": "origami-games:launch/blocks/function/ore_spirit/emerald" } ] } diff --git a/Launch (Data)/data/minecraft/loot_tables/blocks/gold_ore.json b/Launch (Data)/data/minecraft/loot_tables/blocks/gold_ore.json index 4665f87..cc7b823 100644 --- a/Launch (Data)/data/minecraft/loot_tables/blocks/gold_ore.json +++ b/Launch (Data)/data/minecraft/loot_tables/blocks/gold_ore.json @@ -7,12 +7,11 @@ { "type": "minecraft:item", "name": "minecraft:gold_ore", - "weight": 20 + "weight": 15 }, { "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", - "weight": 1, + "name": "origami-games:launch/entities/function/ore_spirit", "functions": [ { "function": "minecraft:set_nbt", diff --git a/Launch (Data)/data/minecraft/loot_tables/blocks/iron_ore.json b/Launch (Data)/data/minecraft/loot_tables/blocks/iron_ore.json index d165998..98c938a 100644 --- a/Launch (Data)/data/minecraft/loot_tables/blocks/iron_ore.json +++ b/Launch (Data)/data/minecraft/loot_tables/blocks/iron_ore.json @@ -7,12 +7,11 @@ { "type": "minecraft:item", "name": "minecraft:iron_ore", - "weight": 20 + "weight": 15 }, { "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", - "weight": 1, + "name": "origami-games:launch/entities/function/ore_spirit", "functions": [ { "function": "minecraft:set_nbt", diff --git a/Launch (Data)/data/minecraft/loot_tables/blocks/lapis_ore.json b/Launch (Data)/data/minecraft/loot_tables/blocks/lapis_ore.json index 23ce8b4..6908302 100644 --- a/Launch (Data)/data/minecraft/loot_tables/blocks/lapis_ore.json +++ b/Launch (Data)/data/minecraft/loot_tables/blocks/lapis_ore.json @@ -24,42 +24,11 @@ } } ], - "name": "minecraft:lapis_ore", - "weight": 20 + "name": "minecraft:lapis_ore" }, { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 4.0, - "max": 9.0, - "type": "minecraft:uniform" - } - }, - { - "function": "minecraft:apply_bonus", - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "minecraft:lapis_lazuli", - "weight": 20 - } - ] - }, - { - "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", - "weight": 1, - "functions": [ - { - "function": "minecraft:set_nbt", - "tag": "{origami-games:{launch:{spirit_type:\"gold\"}}}" + "type": "minecraft:loot_table", + "name": "origami-games:launch/blocks/function/ore_spirit/lapis" } ] } diff --git a/Launch (Data)/data/minecraft/loot_tables/blocks/nether_quartz_ore.json b/Launch (Data)/data/minecraft/loot_tables/blocks/nether_quartz_ore.json index 56e0554..805c934 100644 --- a/Launch (Data)/data/minecraft/loot_tables/blocks/nether_quartz_ore.json +++ b/Launch (Data)/data/minecraft/loot_tables/blocks/nether_quartz_ore.json @@ -24,45 +24,11 @@ } } ], - "name": "minecraft:nether_quartz_ore", - "weight": 10 + "name": "minecraft:nether_quartz_ore" }, { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 4.0, - "max": 5.0, - "type": "minecraft:uniform" - } - }, - { - "function": "minecraft:apply_bonus", - "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "parameters": { - "bonusMultiplier": 1 - } - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "minecraft:quartz", - "weight": 10 - } - ] - }, - { - "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", - "weight": 1, - "functions": [ - { - "function": "minecraft:set_nbt", - "tag": "{origami-games:{launch:{spirit_type:\"nether_quartz\"}}}" + "type": "minecraft:loot_table", + "name": "origami-games:launch/blocks/function/ore_spirit/quartz" } ] } diff --git a/Launch (Data)/data/minecraft/loot_tables/blocks/redstone_ore.json b/Launch (Data)/data/minecraft/loot_tables/blocks/redstone_ore.json index 00982d3..5892d31 100644 --- a/Launch (Data)/data/minecraft/loot_tables/blocks/redstone_ore.json +++ b/Launch (Data)/data/minecraft/loot_tables/blocks/redstone_ore.json @@ -24,45 +24,11 @@ } } ], - "name": "minecraft:redstone_ore", - "weight": 10 + "name": "minecraft:redstone_ore" }, { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:set_count", - "count": { - "min": 4.0, - "max": 5.0, - "type": "minecraft:uniform" - } - }, - { - "function": "minecraft:apply_bonus", - "enchantment": "minecraft:fortune", - "formula": "minecraft:uniform_bonus_count", - "parameters": { - "bonusMultiplier": 1 - } - }, - { - "function": "minecraft:explosion_decay" - } - ], - "name": "minecraft:redstone", - "weight": 10 - } - ] - }, - { - "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", - "weight": 1, - "functions": [ - { - "function": "minecraft:set_nbt", - "tag": "{origami-games:{launch:{spirit_type:\"redstone\"}}}" + "type": "minecraft:loot_table", + "name": "origami-games:launch/blocks/function/ore_spirit/redstone" } ] } diff --git a/Launch (Data)/data/minecraft/loot_tables/entities/ender_dragon.json b/Launch (Data)/data/minecraft/loot_tables/entities/ender_dragon.json new file mode 100644 index 0000000..a9d77b9 --- /dev/null +++ b/Launch (Data)/data/minecraft/loot_tables/entities/ender_dragon.json @@ -0,0 +1,14 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:elytra" + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/advancements/launch/item/consume_dark_flesh.json b/Launch (Data)/data/origami-games/advancements/launch/item/consume_dark_flesh.json deleted file mode 100644 index 3cc7941..0000000 --- a/Launch (Data)/data/origami-games/advancements/launch/item/consume_dark_flesh.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "criteria":{ - "consume_dark_flesh":{ - "trigger":"minecraft:consume_item", - "conditions":{ - "item":{ - "nbt":"{origami-games:{launch:{item:\"dark_flesh\"}}}" - } - } - } - }, - "rewards":{ - "function":"origami-games:launch/item/dark_flesh/consume" - } -} diff --git a/Launch (Data)/data/origami-games/advancements/launch/item/dark_flesh/consume.json b/Launch (Data)/data/origami-games/advancements/launch/item/dark_flesh/consume.json new file mode 100644 index 0000000..9db0a22 --- /dev/null +++ b/Launch (Data)/data/origami-games/advancements/launch/item/dark_flesh/consume.json @@ -0,0 +1,15 @@ +{ + "criteria": { + "consume_dark_flesh": { + "trigger": "minecraft:consume_item", + "conditions": { + "item": { + "nbt": "{origami-games:{launch:{item:\"dark_flesh\"}}}" + } + } + } + }, + "rewards": { + "function": "origami-games:launch/item/dark_flesh/consume" + } +} diff --git a/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/check_dirt_count.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/check_dirt_count.mcfunction new file mode 100644 index 0000000..7872295 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/check_dirt_count.mcfunction @@ -0,0 +1,10 @@ +#@s - bonsai pot if [items in hopper] +#called by launch/block/bonsai_pot/processes + +#get count of dirt in slot 1 +execute store result score @s lch_bp_count run data get block ~ ~ ~ Items[{Slot:0b,id:"minecraft:dirt"}].Count + +#set CMD +execute unless score @s lch_bp_count matches 1.. run data modify entity @s ArmorItems[3].tag.CustomModelData set value 7 +execute if score @s lch_bp_count matches 1.. run function origami-games:launch/block/bonsai_pot/dirt/part_filled +execute if score @s lch_bp_count matches 32.. run function origami-games:launch/block/bonsai_pot/dirt/filled diff --git a/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/craft.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/craft.mcfunction new file mode 100644 index 0000000..eea7844 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/craft.mcfunction @@ -0,0 +1,3 @@ +data remove block ~ ~ ~ Items +loot replace block ~ ~ ~ container.8 loot origami-games:launch/items/bonsai_pot +data modify block ~ ~ ~ Items[{Slot:8b}].tag.lch_crafting.multiplier set value 1 diff --git a/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/create.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/create.mcfunction new file mode 100644 index 0000000..4aed210 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/create.mcfunction @@ -0,0 +1,11 @@ +#@s - bonsai pot summon stand +#called by launch/tick + +#kill summon stand +kill @s[type=!player] + +#create bonsai_pot +setblock ~ ~ ~ hopper[facing=down]{CustomName:'{"translate":"block.launch.bonsai_pot"}'} keep +execute unless block ~ ~ ~ hopper{CustomName:'{"translate":"block.launch.bonsai_pot"}'} run loot spawn ~ ~ ~ loot origami-games:launch/items/bonsai_pot +summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_crafter","lch_bonsai_pot"],NoGravity:1,Silent:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.bonsai_pot"}',Fire:17} +loot replace entity @e[type=armor_stand,tag=lch_bonsai_pot,distance=...1,sort=nearest,limit=1] armor.head loot origami-games:launch/items/bonsai_pot diff --git a/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/dirt/filled.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/dirt/filled.mcfunction new file mode 100644 index 0000000..7f44d74 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/dirt/filled.mcfunction @@ -0,0 +1,8 @@ +#called by launch/block/bonsai_pot/check_dirt_count + +#set CMD +data modify entity @s ArmorItems[3].tag.CustomModelData set value 9 + +#summon drops +execute if block ~ ~1 ~ grass_block unless data block ~ ~-1 ~ Lock run function origami-games:launch/block/bonsai_pot/spawn_loot +execute if block ~ ~1 ~ grass_block unless data block ~ ~-1 ~ Lock run function origami-games:launch/block/bonsai_pot/spawn_loot diff --git a/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/dirt/part_filled.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/dirt/part_filled.mcfunction new file mode 100644 index 0000000..26836e4 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/dirt/part_filled.mcfunction @@ -0,0 +1,7 @@ +#called by launch/block/bonsai_pot/check_dirt_count + +#set CMD +data modify entity @s ArmorItems[3].tag.CustomModelData set value 8 + +#summon drops +execute if block ~ ~1 ~ grass_block unless data block ~ ~-1 ~ Lock run function origami-games:launch/block/bonsai_pot/spawn_loot diff --git a/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/processes.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/processes.mcfunction new file mode 100644 index 0000000..8a7a1cd --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/processes.mcfunction @@ -0,0 +1,9 @@ +#@s - bonsai pot +#called by launch/tick + +#check item +execute if block ~ ~ ~ hopper{Items:[{}]} run function origami-games:launch/block/bonsai_pot/check_dirt_count +execute unless data block ~ ~ ~ Items[{Slot:0b,id:"minecraft:dirt"}] run data modify entity @s ArmorItems[3].tag.CustomModelData set value 7 + +#removal +execute unless block ~ ~ ~ hopper{CustomName:'{"translate":"block.launch.bonsai_pot"}'} run function origami-games:launch/block/bonsai_pot/remove diff --git a/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/remove.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/remove.mcfunction new file mode 100644 index 0000000..86d0d72 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/remove.mcfunction @@ -0,0 +1,9 @@ +#@s - bonsai pot unless block ~ ~ ~ hopper[facing=down]{CustomName:'{"translate":"block.launch.bonsai_pot"}'} +#called by launch/block/bonsai_pot/processes + +#reimburse items +execute align xyz if entity @e[type=item,dx=0,dy=0,dz=0,nbt={Item:{id:"minecraft:hopper",tag:{display:{Name:'{"translate":"block.launch.bonsai_pot"}'}}}}] run loot spawn ~ ~ ~ loot origami-games:launch/blocks/bonsai_pot + +#kill entities +kill @s[type=!player] +execute align xyz run kill @e[type=item,dx=0,dy=0,dz=0,nbt={Item:{id:"minecraft:hopper",tag:{display:{Name:'{"translate":"block.launch.bonsai_pot"}'}}}}] diff --git a/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/spawn_loot.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/spawn_loot.mcfunction new file mode 100644 index 0000000..40a6b87 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/block/bonsai_pot/spawn_loot.mcfunction @@ -0,0 +1,8 @@ +#called by launch/block/bonsai_pot/dirt/[part_]filled + +execute if block ~ ~2 ~ oak_sapling run loot insert ~ ~-1 ~ loot origami-games:launch/blocks/function/bonsai_pot/oak +execute if block ~ ~2 ~ spruce_sapling run loot insert ~ ~-1 ~ loot origami-games:launch/blocks/function/bonsai_pot/spruce +execute if block ~ ~2 ~ birch_sapling run loot insert ~ ~-1 ~ loot origami-games:launch/blocks/function/bonsai_pot/birch +execute if block ~ ~2 ~ jungle_sapling run loot insert ~ ~-1 ~ loot origami-games:launch/blocks/function/bonsai_pot/jungle +execute if block ~ ~2 ~ acacia_sapling run loot insert ~ ~-1 ~ loot origami-games:launch/blocks/function/bonsai_pot/acacia +execute if block ~ ~2 ~ dark_oak_sapling run loot insert ~ ~-1 ~ loot origami-games:launch/blocks/function/bonsai_pot/dark_oak diff --git a/Launch (Data)/data/origami-games/functions/launch/block/disenchanter/create.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/disenchanter/create.mcfunction index e4d5c46..124ca8d 100644 --- a/Launch (Data)/data/origami-games/functions/launch/block/disenchanter/create.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/block/disenchanter/create.mcfunction @@ -7,5 +7,5 @@ kill @s[type=!player] #create disenchanter setblock ~ ~ ~ dropper[facing=up]{CustomName:'{"translate":"block.launch.disenchanter"}'} keep execute unless block ~ ~ ~ dropper{CustomName:'{"translate":"block.launch.disenchanter"}'} run loot spawn ~ ~ ~ loot origami-games:launch/items/disenchanter -summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_crafter","lch_disenchanter"],NoGravity:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.disenchanter"}',Fire:17} +summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_crafter","lch_disenchanter"],NoGravity:1,Silent:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.disenchanter"}',Fire:17} loot replace entity @e[type=armor_stand,tag=lch_disenchanter,distance=...1,sort=nearest,limit=1] armor.head loot origami-games:launch/items/disenchanter diff --git a/Launch (Data)/data/origami-games/functions/launch/block/gravity_pad/create.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/gravity_pad/create.mcfunction index 203eca0..8f211c0 100644 --- a/Launch (Data)/data/origami-games/functions/launch/block/gravity_pad/create.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/block/gravity_pad/create.mcfunction @@ -7,5 +7,5 @@ kill @s[type=!player] #create gravity pad setblock ~ ~ ~ dropper[facing=up]{CustomName:'{"translate":"block.launch.gravity_pad"}',Lock:"lch_gravity_pad"} keep execute unless block ~ ~ ~ dropper{CustomName:'{"translate":"block.launch.gravity_pad"}'} run loot spawn ~ ~ ~ loot origami-games:launch/items/gravity_pad -summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_gravity_pad"],NoGravity:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.gravity_pad"}',Fire:17} +summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_gravity_pad"],NoGravity:1,Silent:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.gravity_pad"}',Fire:17} loot replace entity @e[type=armor_stand,tag=lch_gravity_pad,distance=...1,sort=nearest,limit=1] armor.head loot origami-games:launch/items/gravity_pad diff --git a/Launch (Data)/data/origami-games/functions/launch/block/light_bridge/create.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/light_bridge/create.mcfunction index ef9a2b4..2c6ef5e 100644 --- a/Launch (Data)/data/origami-games/functions/launch/block/light_bridge/create.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/block/light_bridge/create.mcfunction @@ -10,5 +10,5 @@ playsound block.beacon.activate block @a[distance=..10] ~ ~ ~ 1 1 1 #create light bridge setblock ~ ~ ~ dropper[facing=up]{CustomName:'{"translate":"block.launch.light_bridge"}',Lock:"lch_light_bridge"} keep execute unless block ~ ~ ~ dropper{CustomName:'{"translate":"block.launch.light_bridge"}'} run loot spawn ~ ~ ~ loot origami-games:launch/items/light_bridge -summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_light_bridge"],NoGravity:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.light_bridge"}',Fire:17} +summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_light_bridge"],NoGravity:1,Silent:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.light_bridge"}',Fire:17} loot replace entity @e[type=armor_stand,tag=lch_light_bridge,distance=...1,sort=nearest,limit=1] armor.head loot origami-games:launch/items/light_bridge diff --git a/Launch (Data)/data/origami-games/functions/launch/block/synthesiser/create.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/synthesiser/create.mcfunction index 544fac3..b5e8237 100644 --- a/Launch (Data)/data/origami-games/functions/launch/block/synthesiser/create.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/block/synthesiser/create.mcfunction @@ -7,5 +7,5 @@ kill @s[type=!player] #create synthesiser setblock ~ ~ ~ dropper[facing=up]{CustomName:'{"translate":"block.launch.synthesiser"}'} keep execute unless block ~ ~ ~ dropper{CustomName:'{"translate":"block.launch.synthesiser"}'} run loot spawn ~ ~ ~ loot origami-games:launch/items/synthesiser -summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_crafter","lch_synthesiser"],NoGravity:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.synthesiser"}',Fire:17} +summon armor_stand ~ ~ ~ {Tags:["lch_entity","lch_fire","lch_crafter","lch_synthesiser"],NoGravity:1,Silent:1,Small:1,Marker:1,Invisible:1,CustomNameVisible:0,CustomName:'{"translate":"block.launch.synthesiser"}',Fire:17} loot replace entity @e[type=armor_stand,tag=lch_synthesiser,distance=...1,sort=nearest,limit=1] armor.head loot origami-games:launch/items/synthesiser diff --git a/Launch (Data)/data/origami-games/functions/launch/block/synthesiser/recipe_check.mcfunction b/Launch (Data)/data/origami-games/functions/launch/block/synthesiser/recipe_check.mcfunction index 6ca3ddd..31084d2 100644 --- a/Launch (Data)/data/origami-games/functions/launch/block/synthesiser/recipe_check.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/block/synthesiser/recipe_check.mcfunction @@ -65,14 +65,14 @@ execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches . execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..16 if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:smooth_stone"},{Slot:1b,id:"minecraft:dropper"},{Slot:2b,id:"minecraft:smooth_stone"},{Slot:3b,tag:{origami-games:{launch:{item:"magnetite_lump"}}}},{Slot:4b,tag:{origami-games:{launch:{item:"magnetite_lump"}}}},{Slot:5b,tag:{origami-games:{launch:{item:"magnetite_lump"}}}},{Slot:6b,id:"minecraft:smooth_stone"},{Slot:7b,id:"minecraft:smooth_stone"},{Slot:8b,id:"minecraft:smooth_stone"}]} run function origami-games:launch/block/gravity_pad/craft #custom arrows -execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..8 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:arrow"},{Slot:1b,id:"minecraft:arrow"},{Slot:2b,id:"minecraft:arrow"},{Slot:3b,id:"minecraft:arrow"},{Slot:4b,id:"minecraft:gunpowder"},{Slot:5b,id:"minecraft:arrow"},{Slot:6b,id:"minecraft:arrow"},{Slot:7b,id:"minecraft:arrow"},{Slot:8b,id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/explosive/craft +# execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..8 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:arrow"},{Slot:1b,id:"minecraft:arrow"},{Slot:2b,id:"minecraft:arrow"},{Slot:3b,id:"minecraft:arrow"},{Slot:4b,id:"minecraft:gunpowder"},{Slot:5b,id:"minecraft:arrow"},{Slot:6b,id:"minecraft:arrow"},{Slot:7b,id:"minecraft:arrow"},{Slot:8b,id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/explosive/craft -execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..8 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:arrow"},{Slot:1b,id:"minecraft:arrow"},{Slot:2b,id:"minecraft:arrow"},{Slot:3b,id:"minecraft:arrow"},{Slot:4b,tag:{origami-games:{launch:{item:"lightning_rod"}}}},{Slot:5b,id:"minecraft:arrow"},{Slot:6b,id:"minecraft:arrow"},{Slot:7b,id:"minecraft:arrow"},{Slot:8b,id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/lightning/craft +# execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..8 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:arrow"},{Slot:1b,id:"minecraft:arrow"},{Slot:2b,id:"minecraft:arrow"},{Slot:3b,id:"minecraft:arrow"},{Slot:4b,tag:{origami-games:{launch:{item:"lightning_rod"}}}},{Slot:5b,id:"minecraft:arrow"},{Slot:6b,id:"minecraft:arrow"},{Slot:7b,id:"minecraft:arrow"},{Slot:8b,id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/lightning/craft -execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..8 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:arrow"},{Slot:1b,id:"minecraft:arrow"},{Slot:2b,id:"minecraft:arrow"},{Slot:3b,id:"minecraft:arrow"},{Slot:4b,id:"minecraft:ender_pearl"},{Slot:5b,id:"minecraft:arrow"},{Slot:6b,id:"minecraft:arrow"},{Slot:7b,id:"minecraft:arrow"},{Slot:8b,id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/ender/craft -execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..8 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:arrow"},{Slot:1b,id:"minecraft:arrow"},{Slot:2b,id:"minecraft:arrow"},{Slot:3b,id:"minecraft:arrow"},{Slot:4b,tag:{origami-games:{launch:{item:"ender_rod"}}}},{Slot:5b,id:"minecraft:arrow"},{Slot:6b,id:"minecraft:arrow"},{Slot:7b,id:"minecraft:arrow"},{Slot:8b,id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/ender/craft +# execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..8 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:arrow"},{Slot:1b,id:"minecraft:arrow"},{Slot:2b,id:"minecraft:arrow"},{Slot:3b,id:"minecraft:arrow"},{Slot:4b,id:"minecraft:ender_pearl"},{Slot:5b,id:"minecraft:arrow"},{Slot:6b,id:"minecraft:arrow"},{Slot:7b,id:"minecraft:arrow"},{Slot:8b,id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/ender/craft +# execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..8 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:arrow"},{Slot:1b,id:"minecraft:arrow"},{Slot:2b,id:"minecraft:arrow"},{Slot:3b,id:"minecraft:arrow"},{Slot:4b,tag:{origami-games:{launch:{item:"ender_rod"}}}},{Slot:5b,id:"minecraft:arrow"},{Slot:6b,id:"minecraft:arrow"},{Slot:7b,id:"minecraft:arrow"},{Slot:8b,id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/ender/craft -execute if score @s lch_slot_count matches 2 if score @s lch_slot_size matches ..64 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/torch/craft +# execute if score @s lch_slot_count matches 2 if score @s lch_slot_size matches ..64 unless block ~ ~ ~ dropper{Items:[{tag:{origami-games:{launch:{item:"custom_arrow"}}}}]} if block ~ ~ ~ dropper{Items:[{id:"minecraft:arrow"}]} run function origami-games:launch/item/arrow/torch/craft #looking glass execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..64 if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:gold_nugget"},{Slot:1b,id:"minecraft:gold_nugget"},{Slot:2b,id:"minecraft:gold_nugget"},{Slot:3b,id:"minecraft:gold_nugget"},{Slot:4b,id:"minecraft:glass"},{Slot:5b,id:"minecraft:gold_nugget"},{Slot:6b,id:"minecraft:gold_nugget"},{Slot:7b,id:"minecraft:gold_nugget"},{Slot:8b,id:"minecraft:gold_nugget"}]} run function origami-games:launch/item/looking_glass/craft @@ -84,7 +84,10 @@ execute if score @s lch_slot_count matches 3 if score @s lch_slot_size matches 1 execute if score @s lch_slot_count matches 5 if score @s lch_slot_size matches 1 if block ~ ~ ~ dropper{Items:[{Slot:0b,tag:{origami-games:{launch:{item:"magnetite_lump"}}}},{Slot:1b,tag:{origami-games:{launch:{item:"magnetite_lump"}}}},{Slot:3b,id:"minecraft:stick"},{Slot:4b,tag:{origami-games:{launch:{item:"magnetite_lump"}}}},{Slot:6b,id:"minecraft:stick"}]} run function origami-games:launch/item/magnetite/hammer/craft #block breaker -execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..16 if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:diamond"},{Slot:1b,id:"minecraft:diamond"},{Slot:2b,id:"minecraft:diamond"},{Slot:3b,id:"minecraft:iron_ingot"},{Slot:4b,id:"minecraft:stick"},{Slot:5b,id:"minecraft:iron_ingot"},{Slot:6b,id:"minecraft:piston"},{Slot:7b,id:"minecraft:stick"},{Slot:8b,id:"minecraft:piston"}]} run function origami-games:launch/block/block_breaker/craft +execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..16 if block ~ ~ ~ dropper{Items:[{Slot:0b,tag:{origami-games:{launch:{item:"industrial_grade_diamond"}}}},{Slot:1b,tag:{origami-games:{launch:{item:"industrial_grade_diamond"}}}},{Slot:2b,tag:{origami-games:{launch:{item:"industrial_grade_diamond"}}}},{Slot:3b,id:"minecraft:iron_ingot"},{Slot:4b,id:"minecraft:stick"},{Slot:5b,id:"minecraft:iron_ingot"},{Slot:6b,id:"minecraft:piston"},{Slot:7b,id:"minecraft:stick"},{Slot:8b,id:"minecraft:piston"}]} run function origami-games:launch/block/block_breaker/craft #disenchanter execute if score @s lch_slot_count matches 9 if score @s lch_slot_size matches ..16 if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:smooth_stone"},{Slot:1b,id:"minecraft:writable_book"},{Slot:2b,id:"minecraft:smooth_stone"},{Slot:3b,id:"minecraft:smooth_stone"},{Slot:4b,id:"minecraft:enchanting_table"},{Slot:5b,id:"minecraft:smooth_stone"},{Slot:6b,id:"minecraft:smooth_stone"},{Slot:7b,id:"minecraft:obsidian"},{Slot:8b,id:"minecraft:smooth_stone"}]} run function origami-games:launch/block/disenchanter/craft + +#bonsai pot +execute if score @s lch_slot_count matches 6 if score @s lch_slot_size matches ..16 if block ~ ~ ~ dropper{Items:[{Slot:0b,id:"minecraft:bone_block"},{Slot:2b,id:"minecraft:bone_block"},{Slot:3b,id:"minecraft:bone_block"},{Slot:4b,id:"minecraft:flower_pot"},{Slot:5b,id:"minecraft:bone_block"},{Slot:7b,id:"minecraft:bone_block"}]} run function origami-games:launch/block/bonsai_pot/craft diff --git a/Launch (Data)/data/origami-games/functions/launch/build/check.mcfunction b/Launch (Data)/data/origami-games/functions/launch/build/check.mcfunction index eb1fc31..7b7984f 100644 --- a/Launch (Data)/data/origami-games/functions/launch/build/check.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/build/check.mcfunction @@ -4,7 +4,7 @@ #store build number scoreboard players operation build_number.prev lch_general = build_number lch_general #update current build number ***MODIFY BUILD COUNT HERE*** -scoreboard players set build_number lch_general 5 +scoreboard players set build_number lch_general 6 #if updating, send update message execute if score build_number.prev lch_general < build_number lch_general run tellraw @a {"translate":"text.launch.update","clickEvent":{"action":"open_url","value":"https://origami-games.github.io/changelogs/launch"},"color":"aqua"} #if downdating, send warning message diff --git a/Launch (Data)/data/origami-games/functions/launch/clock16.mcfunction b/Launch (Data)/data/origami-games/functions/launch/clock16.mcfunction index 1ba1b75..a053a3b 100644 --- a/Launch (Data)/data/origami-games/functions/launch/clock16.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/clock16.mcfunction @@ -4,22 +4,8 @@ #player clock execute as @a at @s run function origami-games:launch/player/clock16 -#custom blocks -## titanium plating -execute at @e[tag=lch_titanium_plating] run data merge block ~ ~ ~ {SpawnData:{id:armor_stand}} -## block breaker -execute as @e[type=item,tag=!lch_entity,nbt={OnGround:1b,Item:{tag:{origami-games:{launch:{block:"block_breaker"}}},Count:1b}}] at @s if block ~ ~-1 ~ #origami-games:launch/piston align xyz positioned ~.5 ~-.5 ~.5 unless entity @e[type=area_effect_cloud,tag=lch_block_breaker,distance=...1] run function origami-games:launch/block/block_breaker/create -#synthesiser -execute at @e[type=item,nbt={OnGround:1b,Item:{Count:1b,tag:{origami-games:{launch:{item:"redstonic_locator"}}}}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:iron_block",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:crafting_table",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:piston",Count:1b}}] run function origami-games:launch/block/synthesiser/craft - -#custom items -## redstonic locator -execute at @e[type=item,nbt={OnGround:1b,Item:{id:"minecraft:quartz",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:glass",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:green_concrete",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:redstone",Count:1b}}] run function origami-games:launch/item/redstonic_locator/craft -## lightning/ender rods -execute as @e[type=item,nbt={Item:{Count:1b,id:"minecraft:blaze_rod",tag:{origami-games:{launch:{item:"lightning_rod"}}}},OnGround:1b}] at @s run function origami-games:launch/item/lightning_rod/processes -execute as @e[type=item,nbt={Item:{id:"minecraft:blaze_rod",tag:{origami-games:{launch:{item:"lightning_rod"}}}},OnGround:1b},nbt=!{Item:{Count:1b}}] run data merge entity @s {CustomName:"{\"text\":\"\",\"color\":\"gold\"}",CustomNameVisible:true,Tags:[]} -execute as @e[type=item,nbt={Item:{Count:1b,id:"minecraft:blaze_rod",tag:{origami-games:{launch:{item:"ender_rod"}}}},OnGround:1b}] at @s run function origami-games:launch/item/ender_rod/processes -execute as @e[type=item,nbt={Item:{id:"minecraft:blaze_rod",tag:{origami-games:{launch:{item:"ender_rod"}}}},OnGround:1b},nbt=!{Item:{Count:1b}}] run data merge entity @s {CustomName:"{\"text\":\"\",\"color\":\"gold\"}",CustomNameVisible:true,Tags:[]} +#general entity management +execute as @e[type=item] at @s run function origami-games:launch/entity/management/item16 #custom mobs ## sounds diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/management/area_effect_cloud.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/management/area_effect_cloud.mcfunction new file mode 100644 index 0000000..0f01a77 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/management/area_effect_cloud.mcfunction @@ -0,0 +1,20 @@ +#aec management +#@s - aec +#called by launch/tick + +#world generation +## end +execute if entity @s[tag=lch_world_marker_end] unless entity @e[type=area_effect_cloud,tag=lch_end_exit_portal_marker,distance=0..] run summon area_effect_cloud ~ 255 ~ {Age:-2147483648,Duration:-1,WaitTime:-2147483648,Tags:["lch_entity","lch_end_exit_portal_marker"],CustomName:'"lch_end_exit_portal_marker"'} + +execute if entity @s[tag=lch_end_exit_portal_marker,tag=!lch_found_exit_portal] run function origami-games:launch/world/end/exit_portal/find_y +execute if entity @s[tag=lch_end_exit_portal_marker,tag=lch_found_exit_portal] if block ~ ~ ~ bedrock run function origami-games:launch/world/end/dragon_fight/regenerate_structures + +execute if entity @s[tag=lch_end_gateway_marker,tag=!lch_end_gateway_spawned] if block ~ ~ ~ bedrock run function origami-games:launch/world/end/spawn_end_gateway + +execute if entity @s[tag=lch_world_marker_end] at @e[type=end_crystal,distance=0..] if entity @e[type=area_effect_cloud,tag=lch_end_crystal_marker,distance=...1] if entity @e[type=ender_dragon] run function origami-games:launch/world/end/crystals/fight_effects +## overworld +execute if entity @s[tag=lch_meteor_fill] at @e[distance=..20,type=item,tag=!lch_entity] run function origami-games:launch/world/overworld/structure/spawn/meteor_fill + +#custom blocks +## block breaker +execute if entity @s[tag=lch_block_breaker] run function origami-games:launch/block/block_breaker/processes diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/armour_stand_management.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/management/armour_stand.mcfunction similarity index 83% rename from Launch (Data)/data/origami-games/functions/launch/entity/armour_stand_management.mcfunction rename to Launch (Data)/data/origami-games/functions/launch/entity/management/armour_stand.mcfunction index fff1ba9..182791d 100644 --- a/Launch (Data)/data/origami-games/functions/launch/entity/armour_stand_management.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/entity/management/armour_stand.mcfunction @@ -2,6 +2,8 @@ #@s - armour stand #called by launch/tick +#mistake +kill @s[tag=lch_mistake_spawn] #arms execute unless entity @s[tag=lch_entity] run data merge entity @s {ShowArms:1b} #fire stands @@ -23,3 +25,6 @@ execute if entity @s[tag=lch_summon_magnetite_ore] run function origami-games:la #disenchanter execute if entity @s[tag=lch_summon_disenchanter] run function origami-games:launch/block/disenchanter/create execute if entity @s[tag=lch_disenchanter] run function origami-games:launch/block/disenchanter/processes +#bonsai pot +execute if entity @s[tag=lch_summon_bonsai_pot] positioned ~ ~.375 ~ run function origami-games:launch/block/bonsai_pot/create +execute if entity @s[tag=lch_bonsai_pot] run function origami-games:launch/block/bonsai_pot/processes diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/management/arrow.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/management/arrow.mcfunction new file mode 100644 index 0000000..2864ade --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/management/arrow.mcfunction @@ -0,0 +1,8 @@ +#arrow management +#@s - arrow stand +#called by launch/tick + +#custom arrows +execute if entity @s[tag=lch_explosive_arrow,nbt={inGround:1b}] run function origami-games:launch/item/arrow/explosive/land +execute if entity @s[tag=lch_lightning_arrow,nbt={inGround:1b}] run function origami-games:launch/item/arrow/lightning/land +execute if entity @s[tag=lch_torch_arrow,nbt={inGround:1b}] run function origami-games:launch/item/arrow/torch/land diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/management/item.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/management/item.mcfunction new file mode 100644 index 0000000..2ae906c --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/management/item.mcfunction @@ -0,0 +1,23 @@ +#item management +#@s - item +#called by launch/tick + +#custom blocks +## spawner drops +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spawner:{}}}}}}] run function origami-games:launch/block/check_spawner_item + +#custom mobs +## ore spirits +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{function:"ore_spirit"}}}}}] run function origami-games:launch/entity/ore_spirit/check_ore + +#magnetism +execute unless entity @s[tag=lch_entity] if entity @e[type=#origami-games:launch/item/magnetite/pull,tag=lch_holding_magnetite,distance=..6] run function origami-games:launch/item/magnetite/pull + +#renewals +execute if entity @s[tag=lch_sprite_item] if entity @e[tag=lch_sprite,tag=lch_vehicle_root,distance=..1] run data merge entity @s {Age:5850} + +#heads +execute if entity @s[tag=!lch_head,tag=!lch_entity,nbt={Item:{id:"minecraft:player_head"}}] if data entity @s Item.tag unless data entity @s Item.tag.origami-games unless data entity @s Item.tag.SkullOwner.Name run function origami-games:launch/item/recover_player_head + +#crushing +execute if block ~ ~-1 ~ #anvil if block ~ ~ ~ moving_piston run function origami-games:launch/item/crushing diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/management/item/has_launch_data.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/management/item/has_launch_data.mcfunction new file mode 100644 index 0000000..6d5b6b7 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/management/item/has_launch_data.mcfunction @@ -0,0 +1,8 @@ +#@s - @e[type=item,nbt={Item:{tag:{origami-games:{launch:{}}}}}] +#called by launch/entity/management/item + +# lightning/ender rods +execute if entity @s[nbt={Item:{Count:1b,id:"minecraft:blaze_rod",tag:{origami-games:{launch:{item:"lightning_rod"}}}},OnGround:1b}] run function origami-games:launch/item/lightning_rod/processes +execute if entity @s[nbt={Item:{id:"minecraft:blaze_rod",tag:{origami-games:{launch:{item:"lightning_rod"}}}},OnGround:1b},nbt=!{Item:{Count:1b}}] run data merge entity @s {CustomName:"{\"text\":\"\",\"color\":\"gold\"}",CustomNameVisible:true,Tags:[]} +execute if entity @s[nbt={Item:{Count:1b,id:"minecraft:blaze_rod",tag:{origami-games:{launch:{item:"ender_rod"}}}},OnGround:1b}] run function origami-games:launch/item/ender_rod/processes +execute if entity @s[nbt={Item:{id:"minecraft:blaze_rod",tag:{origami-games:{launch:{item:"ender_rod"}}}},OnGround:1b},nbt=!{Item:{Count:1b}}] run data merge entity @s {CustomName:"{\"text\":\"\",\"color\":\"gold\"}",CustomNameVisible:true,Tags:[]} diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/management/item16.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/management/item16.mcfunction new file mode 100644 index 0000000..7543ba4 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/management/item16.mcfunction @@ -0,0 +1,17 @@ +#item management +#@s - item +#called by launch/clock16 + +#nbt checks +tag @s[nbt={Item:{tag:{origami-games:{launch:{}}}}}] add lch_item_has_launch_data + +#custom blocks +## block breaker +execute if entity @s[nbt={OnGround:1b,Item:{tag:{origami-games:{launch:{block:"block_breaker"}}},Count:1b}}] if block ~ ~-1 ~ #origami-games:launch/piston align xyz positioned ~.5 ~-.5 ~.5 unless entity @e[type=area_effect_cloud,tag=lch_block_breaker,distance=...1] run function origami-games:launch/block/block_breaker/create +#synthesiser +execute if entity @s[nbt={OnGround:1b,Item:{Count:1b,tag:{origami-games:{launch:{item:"redstonic_locator"}}}}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:iron_block",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:crafting_table",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:piston",Count:1b}}] run function origami-games:launch/block/synthesiser/craft + +#custom items +execute if entity @s[tag=lch_item_has_launch_data] run function origami-games:launch/entity/management/item/has_launch_data +## redstonic locator +execute if entity @s[tag=!lch_entity,nbt={OnGround:1b,Item:{id:"minecraft:quartz",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:glass",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:green_concrete",Count:1b}}] if entity @e[type=item,distance=...5,nbt={OnGround:1b,Item:{id:"minecraft:redstone",Count:1b}}] run function origami-games:launch/item/redstonic_locator/craft diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/check_ore.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/check_ore.mcfunction index 90e3f34..553880c 100644 --- a/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/check_ore.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/check_ore.mcfunction @@ -11,11 +11,11 @@ function origami-games:launch/entity/summon/ore_spirit #set ore execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"iron"}}}}}] run replaceitem entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head iron_ore execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"gold"}}}}}] run replaceitem entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head gold_ore -execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"coal"}}}}}] run replaceitem entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head coal_ore +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"coal"}}}}}] as @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] run function origami-games:launch/entity/ore_spirit/coal execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"lapis"}}}}}] run replaceitem entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head lapis_ore -execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"diamond"}}}}}] run replaceitem entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head diamond_ore +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"diamond"}}}}}] as @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] run function origami-games:launch/entity/ore_spirit/diamond execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"redstone"}}}}}] run replaceitem entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head redstone_ore -execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"emerald"}}}}}] run replaceitem entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head emerald_ore +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"emerald"}}}}}] as @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] run function origami-games:launch/entity/ore_spirit/emerald execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"nether_quartz"}}}}}] run replaceitem entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head nether_quartz_ore execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{spirit_type:"magnetite"}}}}}] run loot replace entity @e[type=vex,tag=lch_ore_spirit,sort=nearest,limit=1] armor.head loot origami-games:launch/items/magnetite_ore diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/coal.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/coal.mcfunction new file mode 100644 index 0000000..ce20c9a --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/coal.mcfunction @@ -0,0 +1,6 @@ +#called by launch/entity/ore_spirit/check_ore + +setblock ~ ~ ~ coal_ore +loot replace entity @s armor.head mine ~ ~ ~ diamond_pickaxe{Enchantments:[{id:fortune,lvl:3}]} +data modify entity @s ArmorItems[3].id set value "minecraft:coal_ore" +setblock ~ ~ ~ air diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/diamond.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/diamond.mcfunction new file mode 100644 index 0000000..f1f01ca --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/diamond.mcfunction @@ -0,0 +1,6 @@ +#called by launch/entity/ore_spirit/check_ore + +setblock ~ ~ ~ diamond_ore +loot replace entity @s armor.head mine ~ ~ ~ diamond_pickaxe{Enchantments:[{id:fortune,lvl:3}]} +data modify entity @s ArmorItems[3].id set value "minecraft:diamond_ore" +setblock ~ ~ ~ air diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/emerald.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/emerald.mcfunction new file mode 100644 index 0000000..1ef9fdf --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/ore_spirit/emerald.mcfunction @@ -0,0 +1,6 @@ +#called by launch/entity/ore_spirit/check_ore + +setblock ~ ~ ~ emerald_ore +loot replace entity @s armor.head mine ~ ~ ~ diamond_pickaxe{Enchantments:[{id:fortune,lvl:3}]} +data modify entity @s ArmorItems[3].id set value "minecraft:emerald_ore" +setblock ~ ~ ~ air diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/_template.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/_template.mcfunction deleted file mode 100644 index d8cb6d8..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/_template.mcfunction +++ /dev/null @@ -1,9 +0,0 @@ -#BIOME biome spawning -#@s - custom mob found BIOME biome -#called by launch/entity/spawning/overworld - -#check mobs -#execute CONDITIONS run function origami-games:launch/entity/summon/MOB - -#else -execute unless entity @s[y=-512,distance=0] run function origami-games:launch/entity/spawning/biome/generic/global diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/desert.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/desert.mcfunction deleted file mode 100644 index f164dbc..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/desert.mcfunction +++ /dev/null @@ -1,9 +0,0 @@ -#desert biome spawning -#@s - custom mob found desert biome -#called by launch/entity/spawning/overworld - -#check mobs -execute if entity @s[type=husk] run function origami-games:launch/entity/summon/sand_crawler - -#else -execute unless entity @s[y=-512,distance=0] run function origami-games:launch/entity/spawning/biome/generic/global diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/generic/global.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/generic/global.mcfunction deleted file mode 100644 index 65dd801..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/generic/global.mcfunction +++ /dev/null @@ -1,5 +0,0 @@ -#if spawning fails, spawn this mob -#@s - custom mobs after checks and are not custom -#called by launch/entity/spawning/biome/* - -execute if score daytime cardb_data matches 12000..23000 if entity @s[type=wolf] run function origami-games:launch/entity/summon/wolf_rider diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/generic/wooded.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/generic/wooded.mcfunction deleted file mode 100644 index 7d3142b..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/generic/wooded.mcfunction +++ /dev/null @@ -1,5 +0,0 @@ -#generic wooded biome spawning -#@s - custom mobs after checks and are not custom -#called by launch/entity/spawning/overworld - -execute if entity @s[type=skeleton] if block ~ ~-1 ~ grass_block run function origami-games:launch/entity/summon/wood_sprite diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/snowy.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/snowy.mcfunction deleted file mode 100644 index 23d486e..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/snowy.mcfunction +++ /dev/null @@ -1,10 +0,0 @@ -#snowy biome spawning -#@s - custom mob found snow biome -#called by launch/entity/spawning/overworld - -#check mobs -execute if entity @s[type=enderman] run function origami-games:launch/entity/summon/treemanoid -execute if entity @s[type=wolf] run function origami-games:launch/entity/summon/wolf_rider - -#else -execute unless entity @s[y=-512,distance=0] run function origami-games:launch/entity/spawning/biome/generic/global diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/swamp.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/swamp.mcfunction deleted file mode 100644 index f5dfb78..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/biome/swamp.mcfunction +++ /dev/null @@ -1,9 +0,0 @@ -#swamp biome spawning -#@s - custom mob found swamp biome -#called by launch/entity/spawning/overworld - -#check mobs -execute if entity @s[type=slime] unless entity @e[type=slime,tag=lch_slime_queen,distance=..30] run function origami-games:launch/entity/summon/slime_queen - -#else -execute unless entity @s[y=-512,distance=0] run function origami-games:launch/entity/spawning/biome/generic/global diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_conditions.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_conditions.mcfunction deleted file mode 100644 index a0e6009..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_conditions.mcfunction +++ /dev/null @@ -1,19 +0,0 @@ -#checks mob spawning conditions -#@s - mob chosen to be custom -#called by launch/entity/spawning/check_custom - -#cancel if -## spawned from spawner -execute store success score @s lch_mo_sp_spwnr run clone ~-4 ~-1 ~-4 ~4 ~1 ~4 ~-4 ~-1 ~-4 filtered spawner force -tag @s[scores={lch_mo_sp_spwnr=1..}] remove lch_replace -## in water -execute if block ~ ~ ~ water run tag @s remove lch_replace - -#dimensions -execute if entity @s[tag=lch_replace,nbt={Dimension:-1}] run function origami-games:launch/entity/spawning/the_nether -execute if entity @s[tag=lch_replace,nbt={Dimension:1}] run function origami-games:launch/entity/spawning/the_end -execute if entity @s[tag=lch_replace,nbt={Dimension:0}] run function origami-games:launch/entity/spawning/overworld - -#reset scores -tag @s remove lch_replace -scoreboard players reset @s lch_mo_sp_biome diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_custom.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_custom.mcfunction index c94e090..e21600c 100644 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_custom.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_custom.mcfunction @@ -1,14 +1,6 @@ -#mob spawn check -#@s - @e[type=!SPRITE,type=!player,tag=!lch_no_check] -#called by launch/tick +#entity loot table custom check +#@s - @e[type=!#origami-games:launch/sprite,type=!player,tag=lch_check_spawn] at @e[ENTITY_SPAWNING_ITEM,distance=0] +#called by launch/entity/spawning/entity_check -#random -execute store result score @s lch_mo_sp_random run data get entity @s UUIDMost .000000000000000001 -execute if entity @s[scores={lch_mo_sp_random=..-1}] run scoreboard players operation @s lch_mo_sp_random *= #-1 lch_mo_sp_random - -execute if score @s lch_mo_sp_random <= $custom_threshold lch_mo_sp_random run tag @s add lch_replace -execute if entity @s[tag=lch_replace] run function origami-games:launch/entity/spawning/check_conditions - -#post -scoreboard players reset @s lch_mo_sp_random -tag @s add lch_no_check +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity_custom:1b}}}}}] run function origami-games:launch/entity/spawning/check_spawn +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity_custom:0b}}}}}] run function origami-games:launch/entity/spawning/no_spawn diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn.mcfunction new file mode 100644 index 0000000..5d932c5 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn.mcfunction @@ -0,0 +1,5 @@ +#called by launch/entity/spawning/check_custom + +execute unless entity @s[nbt={Item:{tag:{origami-games:{launch:{entity:"none"}}}}}] as @e[type=!#origami-games:launch/sprite,type=!player,tag=lch_check_spawn,distance=0,limit=1] run function origami-games:launch/entity/spawning/check_spawn_entity +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity:"none"}}}}}] run tag @s add lch_no_check +kill @s[type=!player] diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity.mcfunction new file mode 100644 index 0000000..1e30e0f --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity.mcfunction @@ -0,0 +1,8 @@ +#called by launch/entity/spawning/check_spawn + +#debug notification +tellraw @a[tag=lch_debug] [{"selector":"@s"},": ",[{"nbt":"Pos[0]","entity":"@s"}," ",{"nbt":"Pos[1]","entity":"@s"}," ",{"nbt":"Pos[2]","entity":"@s"}]," ",{"nbt":"Item.tag.origami-games.launch.entity","entity":"@e[type=item,distance=0]"}] + +#spawn entity +execute as @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{}}}}}] run function origami-games:launch/entity/spawning/check_spawn_entity/global +execute if score daytime cardb_data matches 12000..23000 as @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{}}}}}] run function origami-games:launch/entity/spawning/check_spawn_entity/night diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity/global.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity/global.mcfunction new file mode 100644 index 0000000..cd94136 --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity/global.mcfunction @@ -0,0 +1,5 @@ +#called by launch/entity/spawning/check_spawn_entity + +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity:"slime_queen"}}}}}] run function origami-games:launch/entity/summon/slime_queen +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity:"wood_sprite"}}}}}] run function origami-games:launch/entity/summon/wood_sprite +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity:"fire_ant"}}}}}] run function origami-games:launch/entity/summon/fire_ant diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity/night.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity/night.mcfunction new file mode 100644 index 0000000..bc6debd --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/check_spawn_entity/night.mcfunction @@ -0,0 +1,5 @@ +#called by launch/entity/spawning/check_spawn_entity + +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity:"wolf_rider"}}}}}] run function origami-games:launch/entity/summon/wolf_rider +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity:"treemanoid"}}}}}] run function origami-games:launch/entity/summon/treemanoid +execute if entity @s[nbt={Item:{tag:{origami-games:{launch:{entity:"sand_crawler"}}}}}] run function origami-games:launch/entity/summon/sand_crawler diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/entity_check.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/entity_check.mcfunction new file mode 100644 index 0000000..b2d9a6a --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/entity_check.mcfunction @@ -0,0 +1,7 @@ +#entity spawning +#@s - @e[type=!#origami-games:launch/sprite,type=!player,tag=lch_check_spawn] +#called by launch/tick + +loot spawn ~ ~ ~ loot origami-games:launch/entities/function/spawning/check_custom +execute as @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{entity_spawning:1b}}}}}] run function origami-games:launch/entity/spawning/check_custom +tag @s remove lch_check_spawn diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/no_spawn.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/no_spawn.mcfunction new file mode 100644 index 0000000..32269dc --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/no_spawn.mcfunction @@ -0,0 +1,4 @@ +#called by launch/entity/spawning/check_custom + +tag @e[type=!#origami-games:launch/sprite,type=!player,tag=lch_check_spawn,distance=0,limit=1] add lch_no_check +kill @s[type=!player] diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/overworld.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/overworld.mcfunction deleted file mode 100644 index 4408b5d..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/overworld.mcfunction +++ /dev/null @@ -1,27 +0,0 @@ -#overworld spawns -#@s - mob spawned in the overworld -#called by launch/entity/spawning/check_conditions - -#check biome -execute positioned ~ 0 ~ if entity @s[distance=..20] run function origami-games:launch/entity/spawning/biome/deep_cave -execute positioned ~ 0 ~ if entity @s[distance=..60] run function origami-games:launch/entity/spawning/biome/cave - -execute run loot spawn ~ ~ ~ loot origami-games:launch/world/detect_biome - -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{plains:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/plains -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{snowy:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/snowy -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{cold:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/cold -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{the_end:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/the_end -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{jungle:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/jungle -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{swamp:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/swamp -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{warm:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/warm -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{ocean:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/ocean -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{desert:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/desert -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{badlands:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/badlands -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{forest:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/forest -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{beach:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/beach -execute if entity @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{wooded:1b}}}}}}] run function origami-games:launch/entity/spawning/biome/generic/wooded - -kill @e[type=item,distance=0,nbt={Item:{tag:{origami-games:{launch:{biome:{}}}}}}] - -tag @s remove lch_replace diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/the_end.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/the_end.mcfunction deleted file mode 100644 index 2de1768..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/the_end.mcfunction +++ /dev/null @@ -1,3 +0,0 @@ -#end spawns -#@s - custom mob spawned in the end -#called by launch/entity/spawning/new_spawn/check diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/the_nether.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/spawning/the_nether.mcfunction deleted file mode 100644 index 00b9ed4..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/entity/spawning/the_nether.mcfunction +++ /dev/null @@ -1,7 +0,0 @@ -#nether spawns -#@s - custom mob spawned in nether -#called by launch/entity/spawning/new_spawn/check - -execute store result score @s lch_mo_sp_biome run clone ~-5 ~-5 ~-5 ~5 ~5 ~5 ~-5 ~-5 ~-5 filtered lava force - -execute if entity @s[type=zombie_pigman,scores={lch_mo_sp_biome=1..}] run function origami-games:launch/entity/summon/fire_ant diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/summon/ore_spirit.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/summon/ore_spirit.mcfunction index f873b84..045a955 100644 --- a/Launch (Data)/data/origami-games/functions/launch/entity/summon/ore_spirit.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/entity/summon/ore_spirit.mcfunction @@ -1,6 +1,6 @@ #called by launch/entity/ore_spirit/check_ore -summon vex ~ ~ ~ {HandItems:[{id:iron_pickaxe,Count:1},{}],HandDropChances:[-1.0F,-1.0F],ArmorDropChances:[-1.0F,-1.0F,-1.0F,1.0F],ActiveEffects:[{Id:14,Duration:999999,ShowParticles:0b,Amplifier:0}],DeathLootTable:"origami-games:launch/entities/ore_spirit",CustomName:'{"translate":"entity.launch.ore_spirit"}',Tags:["lch_entity","lch_ore_spirit"],Attributes:[{Name:"generic.maxHealth",Base:30}],Health:30} +summon vex ~ ~ ~ {HandItems:[{id:iron_pickaxe,Count:1},{}],HandDropChances:[-1.0F,-1.0F],ArmorDropChances:[-1.0F,-1.0F,-1.0F,1.0F],ActiveEffects:[{Id:14,Duration:999999,ShowParticles:0b,Amplifier:0}],DeathLootTable:"origami-games:launch/entities/ore_spirit",CustomName:'{"translate":"entity.launch.ore_spirit"}',Tags:["lch_entity","lch_ore_spirit"],Attributes:[{Name:"generic.maxHealth",Base:10}],Health:10} tp @s[type=!player] ~ -512 ~ data merge entity @s {Health:0,DeathTime:19,DeathLootTable:"minecraft:empty"} diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/summon/sand_crawler.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/summon/sand_crawler.mcfunction index d5eedba..b0caaa2 100644 --- a/Launch (Data)/data/origami-games/functions/launch/entity/summon/sand_crawler.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/entity/summon/sand_crawler.mcfunction @@ -1,6 +1,4 @@ -# - -summon husk ~ ~ ~ {PersistenceRequired:1b,Silent:1,IsBaby:1,CustomName:'{"translate":"entity.launch.sand_crawler"}',Tags:["lch_entity","lch_sand_crawler","lch_passenger","lch_vehicle","lch_sound"],DeathLootTable:"origami-games:launch/entities/sand_crawler",Attributes:[{Name:generic.movementSpeed,Base:.35},{Name:generic.maxHealth,Base:20.0}],Health:20,ArmorItems:[{},{},{},{}],ArmorDropChances:[-1.0F,-1.0F,-1.0F,-1.0F],ActiveEffects:[{Id:14,Amplifier:0,Duration:1999980,ShowParticles:0b},{Id:10,Amplifier:9,Duration:999999,ShowParticles:0b}],Passengers:[{id:slime,Size:1,PersistenceRequired:1b,Silent:1,CustomName:'{"translate":"entity.launch.sand_crawler"}',Tags:["lch_entity","lch_sand_crawler","lch_passenger","lch_vehicle","lch_sound"],DeathLootTable:"origami-games:launch/entities/sand_crawler",Attributes:[{Name:generic.movementSpeed,Base:1},{Name:generic.maxHealth,Base:20.0}],Health:20,ArmorItems:[{},{},{},{}],ArmorDropChances:[-1.0F,-1.0F,-1.0F,-1.0F],ActiveEffects:[{Id:14,Amplifier:0,Duration:1999980,ShowParticles:0b},{Id:10,Amplifier:9,Duration:999999,ShowParticles:0b}],Passengers:[{id:area_effect_cloud,Particle:"block sandstone",Age:-2147483648,Duration:-1,WaitTime:-2147483648,Radius:1.5,CustomName:'{"translate":"entity.launch.sand_crawler"}',Effects:[{Id:25,Amplifier:29,Duration:5,ShowParticles:0b}],Tags:["lch_entity","lch_sand_crawler","lch_passenger"]}]}]} +summon husk ~ ~ ~ {PersistenceRequired:1b,Silent:1,IsBaby:1,CustomName:'{"translate":"entity.launch.sand_crawler"}',Tags:["lch_entity","lch_sand_crawler","lch_passenger","lch_vehicle","lch_sound"],DeathLootTable:"origami-games:launch/entities/sand_crawler",Attributes:[{Name:generic.movementSpeed,Base:.35},{Name:generic.maxHealth,Base:20.0}],Health:20,ArmorItems:[{},{},{},{}],ArmorDropChances:[-1.0F,-1.0F,-1.0F,-1.0F],ActiveEffects:[{Id:14,Amplifier:0,Duration:1999980,ShowParticles:0b},{Id:10,Amplifier:9,Duration:999999,ShowParticles:0b}],Passengers:[{id:slime,Size:1,PersistenceRequired:1b,Silent:1,CustomName:'{"translate":"entity.launch.sand_crawler"}',Tags:["lch_entity","lch_sand_crawler","lch_passenger","lch_vehicle","lch_sound"],DeathLootTable:"origami-games:launch/entities/sand_crawler",Attributes:[{Name:generic.movementSpeed,Base:1},{Name:generic.maxHealth,Base:20.0}],Health:20,ArmorItems:[{},{},{},{}],ArmorDropChances:[-1.0F,-1.0F,-1.0F,-1.0F],ActiveEffects:[{Id:14,Amplifier:0,Duration:1999980,ShowParticles:0b},{Id:10,Amplifier:9,Duration:999999,ShowParticles:0b}],Passengers:[{id:area_effect_cloud,Particle:"block sandstone",Age:-2147483648,Duration:-1,WaitTime:-2147483648,Radius:1.5,CustomName:'{"translate":"entity.launch.sand_crawler"}',Effects:[{Id:25,Amplifier:19,Duration:5,ShowParticles:0b}],Tags:["lch_entity","lch_sand_crawler","lch_passenger"]}]}]} tp @s[type=!player] ~ -512 ~ data merge entity @s {Health:0,DeathTime:19,DeathLootTable:"minecraft:empty"} fill ~ ~ ~ ~ ~ ~ air replace command_block diff --git a/Launch (Data)/data/origami-games/functions/launch/entity/summon/slime_queen.mcfunction b/Launch (Data)/data/origami-games/functions/launch/entity/summon/slime_queen.mcfunction index c4cb707..8692ca7 100644 --- a/Launch (Data)/data/origami-games/functions/launch/entity/summon/slime_queen.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/entity/summon/slime_queen.mcfunction @@ -1,4 +1,3 @@ -#from endermen summon slime ~ ~ ~ {CustomName:'{"translate":"entity.launch.slime_queen"}',PersistenceRequired:1b,Tags:["lch_entity","lch_slime_queen","lch_vehicle"],Size:2,DeathLootTable:"origami-games:launch/entities/slime_queen",Passengers:[{id:area_effect_cloud,Particle:happy_villager,Radius:1.2,Age:-2147483648,Duration:-1,WaitTime:-2147483648,Tags:["lch_entity","lch_slime_queen","lch_passenger"]},{id:slime,PersistenceRequired:1b,Size:1,DeathLootTable:"origami-games:launch/entities/slime_queen",Tags:["lch_entity","lch_slime_queen","lch_passenger","lch_vehicle"],Passengers:[{id:slime,Tags:["lch_entity","lch_slime_queen","lch_passenger","lch_vehicle"],Size:0,DeathLootTable:"origami-games:launch/entities/slime_queen",Passengers:[{id:slime,Tags:["lch_entity","lch_slime_queen","lch_passenger"],Size:0,PersistenceRequired:1b,DeathLootTable:"origami-games:launch/entities/slime_queen"}]}]}]} tp @s[type=!player] ~ -512 ~ data merge entity @s {Health:0,DeathTime:19,DeathLootTable:"minecraft:empty"} diff --git a/Launch (Data)/data/origami-games/functions/launch/item/crushing.mcfunction b/Launch (Data)/data/origami-games/functions/launch/item/crushing.mcfunction new file mode 100644 index 0000000..2343f4d --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/item/crushing.mcfunction @@ -0,0 +1,6 @@ +#item crushing +#@s - item if block ~ ~-1 ~ #anvil if block ~ ~ ~ moving_piston +#called by launch/entity/management/item + +#industrial grade diamond +execute if entity @s[nbt={Item:{id:"minecraft:diamond"}}] run function origami-games:launch/item/industrial_grade_diamond/craft diff --git a/Launch (Data)/data/origami-games/functions/launch/item/dark_flesh/consume.mcfunction b/Launch (Data)/data/origami-games/functions/launch/item/dark_flesh/consume.mcfunction index 4935f4a..2e265dc 100644 --- a/Launch (Data)/data/origami-games/functions/launch/item/dark_flesh/consume.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/item/dark_flesh/consume.mcfunction @@ -6,4 +6,4 @@ effect give @s hunger 30 0 #revoke advancement -advancement revoke @s only origami-games:launch/item/consume_dark_flesh +advancement revoke @s only origami-games:launch/item/dark_flesh/consume diff --git a/Launch (Data)/data/origami-games/functions/launch/item/industrial_grade_diamond/craft.mcfunction b/Launch (Data)/data/origami-games/functions/launch/item/industrial_grade_diamond/craft.mcfunction new file mode 100644 index 0000000..a79c6af --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/item/industrial_grade_diamond/craft.mcfunction @@ -0,0 +1,12 @@ +#craft type = crushing +# item = launch:industrial_grade_diamond +# recipe = 1 diamond +#called by launch/item/crushing + +tag @s add lch_being_crushed + +loot spawn ~ ~ ~ loot origami-games:launch/items/industrial_grade_diamond +data modify entity @e[type=item,tag=!lch_being_crushed,distance=0,limit=1] Item.Count set from entity @s Item.Count +kill @s[type=!player] + +tag @s remove lch_being_crushed diff --git a/Launch (Data)/data/origami-games/functions/launch/item/magnetite/pull.mcfunction b/Launch (Data)/data/origami-games/functions/launch/item/magnetite/pull.mcfunction index 0671263..f769df8 100644 --- a/Launch (Data)/data/origami-games/functions/launch/item/magnetite/pull.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/item/magnetite/pull.mcfunction @@ -11,8 +11,6 @@ execute store result score @s lch_tp_motion_y run data get entity @s Pos[1] 1000 execute store result score @s lch_tp_motion_z run data get entity @s Pos[2] 1000000 tp @s ^ ^ ^0.001 facing entity @e[type=#origami-games:launch/item/magnetite/pull,tag=lch_holding_magnetite,distance=..6,sort=nearest,limit=1] -data merge entity @s[tag=!lch_magnetite_init] {PickupDelay:0} -tag @s add lch_magnetite_init execute store result score @s lch_tp_motion_dx run data get entity @s Pos[0] 1000000 execute store result score @s lch_tp_motion_dy run data get entity @s Pos[1] 1000000 diff --git a/Launch (Data)/data/origami-games/functions/launch/item/redstonic_locator/check_location.mcfunction b/Launch (Data)/data/origami-games/functions/launch/item/redstonic_locator/check_location.mcfunction index 092c00b..4557665 100644 --- a/Launch (Data)/data/origami-games/functions/launch/item/redstonic_locator/check_location.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/item/redstonic_locator/check_location.mcfunction @@ -2,6 +2,10 @@ #@s - player holding redstonic locator #called by launch/player/clock16 +#store y pos +execute store result score @s lch_pl_y run data get entity @s Pos[1] + +#check location execute if score @s lch_pl_y <= $redstonic_locator_limit lch_pl_y if entity @s[nbt={Dimension:0}] run function origami-games:launch/item/redstonic_locator/check_redstone_ore execute if score @s lch_pl_y > $redstonic_locator_limit lch_pl_y run title @s actionbar [{"translate":"item.launch.redstonic_locator","color":"red"},": ",{"translate":"item.launch.redstonic_locator.ore_detection.too_high","color":"dark_red","underlined":true}] execute unless entity @s[nbt={Dimension:0}] run title @s actionbar [{"translate":"item.launch.redstonic_locator","color":"red"},": ",{"translate":"item.launch.redstonic_locator.ore_detection.invalid_dimension","color":"dark_red","underlined":true}] diff --git a/Launch (Data)/data/origami-games/functions/launch/load.mcfunction b/Launch (Data)/data/origami-games/functions/launch/load.mcfunction index aead4ac..c09fbac 100644 --- a/Launch (Data)/data/origami-games/functions/launch/load.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/load.mcfunction @@ -24,7 +24,7 @@ scoreboard objectives add lch_tp_motion_dy dummy scoreboard objectives add lch_tp_motion_dz dummy scoreboard objectives add lch_time dummy -scoreboard players set #year_length lch_time 120 +scoreboard players set #year_length lch_time 48 scoreboard players set #month_amount lch_time 12 scoreboard players set #season_amount lch_time 4 @@ -44,6 +44,8 @@ scoreboard objectives add lch_lb_ray_scss dummy scoreboard objectives add lch_lb_ray dummy scoreboard players set $limit lch_lb_ray 31 +scoreboard objectives add lch_bp_count dummy + scoreboard objectives add lch_gp_cooldown dummy scoreboard players set $start lch_gp_cooldown 10 diff --git a/Launch (Data)/data/origami-games/functions/launch/player/tick.mcfunction b/Launch (Data)/data/origami-games/functions/launch/player/tick.mcfunction index c83ffd4..cd734f8 100644 --- a/Launch (Data)/data/origami-games/functions/launch/player/tick.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/player/tick.mcfunction @@ -3,30 +3,21 @@ #called by #cardboard:player/tick from cardboard:tick #all recipes -recipe give @a * - -#store pos -execute store result score @s lch_pl_y run data get entity @s Pos[1] - -#custom block middle click -loot replace entity @s[nbt={SelectedItem:{id:"minecraft:dropper",tag:{BlockEntityTag:{CustomName:'{"translate":"block.launch.synthesiser"}'}}}}] weapon loot origami-games:launch/items/synthesiser -loot replace entity @s[nbt={SelectedItem:{id:"minecraft:dropper",tag:{BlockEntityTag:{CustomName:'{"translate":"block.launch.light_bridge"}'}}}}] weapon loot origami-games:launch/items/light_bridge -loot replace entity @s[nbt={SelectedItem:{id:"minecraft:dropper",tag:{BlockEntityTag:{CustomName:'{"translate":"block.launch.gravity_pad"}'}}}}] weapon loot origami-games:launch/items/gravity_pad -loot replace entity @s[nbt={SelectedItem:{id:"minecraft:dropper",tag:{BlockEntityTag:{CustomName:'{"translate":"block.launch.disenchanter"}'}}}}] weapon loot origami-games:launch/items/disenchanter +recipe give @s * #light bridge rotation execute if entity @s[scores={lch_lb_insp_drop=1..}] anchored eyes positioned ^ ^ ^ anchored feet run function origami-games:launch/block/light_bridge/rotation/raycast #custom arrows -tag @s[tag=!lch_csb_explosive_arrow,nbt={SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"explosive"}}}}]}}}] add lch_csb_explosive_arrow -tag @s[tag=!lch_csb_lightning_arrow,nbt={SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"lightning"}}}}]}}}] add lch_csb_lightning_arrow -tag @s[tag=!lch_csb_ender_arrow,nbt={SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"ender"}}}}]}}}] add lch_csb_ender_arrow -tag @s[tag=!lch_csb_torch_arrow,nbt={SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"torch"}}}}]}}}] add lch_csb_torch_arrow -execute if entity @s[scores={lch_custo_arprev=1..}] run function origami-games:launch/item/arrow/get_counts -execute store result score @s lch_custo_arprev run clear @s arrow{origami-games:{launch:{item:"custom_arrow"}}} 0 -scoreboard players reset @s lch_cstar_usebow -scoreboard players reset @s lch_cstar_usecsb -tag @s[tag=lch_csb_explosive_arrow,nbt=!{SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"explosive"}}}}]}}}] remove lch_csb_explosive_arrow -tag @s[tag=lch_csb_lightning_arrow,nbt=!{SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"lightning"}}}}]}}}] remove lch_csb_lightning_arrow -tag @s[tag=lch_csb_ender_arrow,nbt=!{SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"ender"}}}}]}}}] remove lch_csb_ender_arrow -tag @s[tag=lch_csb_torch_arrow,nbt=!{SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"torch"}}}}]}}}] remove lch_csb_torch_arrow +# tag @s[tag=!lch_csb_explosive_arrow,nbt={SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"explosive"}}}}]}}}] add lch_csb_explosive_arrow +# tag @s[tag=!lch_csb_lightning_arrow,nbt={SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"lightning"}}}}]}}}] add lch_csb_lightning_arrow +# tag @s[tag=!lch_csb_ender_arrow,nbt={SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"ender"}}}}]}}}] add lch_csb_ender_arrow +# tag @s[tag=!lch_csb_torch_arrow,nbt={SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"torch"}}}}]}}}] add lch_csb_torch_arrow +# execute if entity @s[scores={lch_custo_arprev=1..}] run function origami-games:launch/item/arrow/get_counts +# execute store result score @s lch_custo_arprev run clear @s arrow{origami-games:{launch:{item:"custom_arrow"}}} 0 +# scoreboard players reset @s lch_cstar_usebow +# scoreboard players reset @s lch_cstar_usecsb +# tag @s[tag=lch_csb_explosive_arrow,nbt=!{SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"explosive"}}}}]}}}] remove lch_csb_explosive_arrow +# tag @s[tag=lch_csb_lightning_arrow,nbt=!{SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"lightning"}}}}]}}}] remove lch_csb_lightning_arrow +# tag @s[tag=lch_csb_ender_arrow,nbt=!{SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"ender"}}}}]}}}] remove lch_csb_ender_arrow +# tag @s[tag=lch_csb_torch_arrow,nbt=!{SelectedItem:{tag:{ChargedProjectiles:[{tag:{origami-games:{launch:{arrow:"torch"}}}}]}}}] remove lch_csb_torch_arrow diff --git a/Launch (Data)/data/origami-games/functions/launch/tick.mcfunction b/Launch (Data)/data/origami-games/functions/launch/tick.mcfunction index b6e67a2..bf5bc7e 100644 --- a/Launch (Data)/data/origami-games/functions/launch/tick.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/tick.mcfunction @@ -40,74 +40,39 @@ execute if score $season lch_time matches 1 run function origami-games:launch/wo execute if score $season lch_time matches 2 run function origami-games:launch/world/season/summer execute if score $season lch_time matches 3 run function origami-games:launch/world/season/autumn execute if score $season lch_time matches 4 run function origami-games:launch/world/season/winter -execute in the_end if score $season lch_time matches 1 run function origami-games:launch/world/season/spring -execute in the_end if score $season lch_time matches 2 run function origami-games:launch/world/season/summer -execute in the_end if score $season lch_time matches 3 run function origami-games:launch/world/season/autumn -execute in the_end if score $season lch_time matches 4 run function origami-games:launch/world/season/winter -execute in the_nether if score $season lch_time matches 1 run function origami-games:launch/world/season/spring -execute in the_nether if score $season lch_time matches 2 run function origami-games:launch/world/season/summer -execute in the_nether if score $season lch_time matches 3 run function origami-games:launch/world/season/autumn -execute in the_nether if score $season lch_time matches 4 run function origami-games:launch/world/season/winter #world generation ## end execute at @e[type=end_crystal,sort=random,limit=1,nbt={Dimension:1}] unless entity @e[type=area_effect_cloud,tag=lch_world_marker_end,distance=0..] run summon area_effect_cloud 0 0 0 {Age:-2147483648,Duration:-1,WaitTime:-2147483648,Tags:["lch_entity","lch_world_marker_end"],CustomName:'"lch_world_marker_end"'} -execute at @e[type=area_effect_cloud,tag=lch_world_marker_end] unless entity @e[type=area_effect_cloud,tag=lch_end_exit_portal_marker,distance=0..] run summon area_effect_cloud ~ 255 ~ {Age:-2147483648,Duration:-1,WaitTime:-2147483648,Tags:["lch_entity","lch_end_exit_portal_marker"],CustomName:'"lch_end_exit_portal_marker"'} -execute as @e[type=area_effect_cloud,tag=lch_end_exit_portal_marker,tag=!lch_found_exit_portal] at @s run function origami-games:launch/world/end/exit_portal/find_y - -execute at @e[type=area_effect_cloud,tag=lch_end_exit_portal_marker,tag=lch_found_exit_portal] if block ~ ~ ~ bedrock run function origami-games:launch/world/end/dragon_fight/regenerate_structures execute store result score $ender_dragon_count lch_world_gen if entity @e[type=ender_dragon] -execute if score $ender_dragon_count lch_world_gen > $ender_dragon_count_prev lch_world_gen run function origami-games:launch/world/end/dragon_fight/regenerate_structures +execute if score $ender_dragon_count lch_world_gen > $ender_dragon_count_prev lch_world_gen in the_end run function origami-games:launch/world/end/dragon_fight/regenerate_structures scoreboard players operation $ender_dragon_count_prev lch_world_gen = $ender_dragon_count lch_world_gen -scoreboard players remove $end_chorus_speed_up lch_world_gen 1 -execute if score $end_chorus_speed_up lch_world_gen matches ..0 run scoreboard players reset $end_chorus_speed_up lch_world_gen -execute unless score $end_chorus_speed_up lch_world_gen matches 0.. at @e[type=area_effect_cloud,tag=lch_world_marker_end] run gamerule randomTickSpeed 3 - -execute at @e[type=area_effect_cloud,tag=lch_world_marker_end] at @e[type=end_crystal,distance=0..] if entity @e[type=area_effect_cloud,tag=lch_end_crystal_marker,distance=...1] if entity @e[type=ender_dragon,distance=0..] run function origami-games:launch/world/end/crystals/fight_effects - -execute as @e[type=area_effect_cloud,tag=lch_end_gateway_marker,tag=!lch_end_gateway_spawned] at @s if block ~ ~ ~ bedrock run function origami-games:launch/world/end/spawn_end_gateway -## overworld -execute as @e[type=area_effect_cloud,tag=lch_meteor_fill] at @s at @e[distance=..20,type=item,tag=!lch_entity] run function origami-games:launch/world/overworld/structure/spawn/meteor_fill -kill @e[type=armor_stand,tag=lch_mistake_spawn] - -#armour stands -execute as @e[type=armor_stand] at @s run function origami-games:launch/entity/armour_stand_management +#general entity management +execute as @e[type=area_effect_cloud] at @s run function origami-games:launch/entity/management/area_effect_cloud +execute as @e[type=armor_stand] at @s run function origami-games:launch/entity/management/armour_stand +# execute as @e[type=arrow] at @s run function origami-games:launch/entity/management/arrow +execute as @e[type=item] at @s run function origami-games:launch/entity/management/item #custom blocks -## spawner drops -execute as @e[type=item,nbt={Item:{tag:{origami-games:{launch:{spawner:{}}}}}}] at @s run function origami-games:launch/block/check_spawner_item ## gravity pads scoreboard players remove @e[type=!#origami-games:launch/block/gravity_pad/no_toggle,scores={lch_gp_cooldown=1..}] lch_gp_cooldown 1 scoreboard players reset @e[type=!#origami-games:launch/block/gravity_pad/no_toggle,scores={lch_gp_cooldown=0}] lch_gp_cooldown -## block breaker -execute as @e[type=area_effect_cloud,tag=lch_block_breaker] at @s run function origami-games:launch/block/block_breaker/processes - -#custom arrows -execute as @e[type=arrow,tag=lch_explosive_arrow,nbt={inGround:1b}] at @s run function origami-games:launch/item/arrow/explosive/land -execute as @e[type=arrow,tag=lch_lightning_arrow,nbt={inGround:1b}] at @s run function origami-games:launch/item/arrow/lightning/land -execute as @e[type=arrow,tag=lch_torch_arrow,nbt={inGround:1b}] at @s run function origami-games:launch/item/arrow/torch/land #custom mobs ## mob spawning -execute as @e[type=!#origami-games:launch/sprite,type=!player,tag=!lch_no_check,tag=!lch_entity] at @s run function origami-games:launch/entity/spawning/check_custom +tag @e[type=!#origami-games:launch/sprite,type=!player,tag=!lch_no_check,tag=!lch_entity] add lch_check_spawn +execute as @e[type=!#origami-games:launch/sprite,type=!player,tag=lch_check_spawn] at @s run function origami-games:launch/entity/spawning/entity_check ## sound execute as @e[tag=lch_sound] at @s run function origami-games:launch/entity/sound/checks ## sand crawler effect clear @e[tag=lch_sand_crawler] levitation -### ore spirits -execute as @e[type=item,nbt={Item:{tag:{origami-games:{launch:{function:"ore_spirit"}}}}}] at @s run function origami-games:launch/entity/ore_spirit/check_ore #magnetism tag @e[type=#origami-games:launch/item/magnetite/pull] add lch_holding_magnetite tag @e[type=#origami-games:launch/item/magnetite/pull,nbt=!{HandItems:[{tag:{origami-games:{launch:{magnetite:1b}}}}]},nbt=!{SelectedItem:{tag:{origami-games:{launch:{magnetite:1b}}}}},nbt=!{Inventory:[{Slot:-106b,tag:{origami-games:{launch:{magnetite:1b}}}}]}] remove lch_holding_magnetite -execute as @e[type=item,tag=!lch_entity] at @s if entity @e[type=#origami-games:launch/item/magnetite/pull,tag=lch_holding_magnetite,distance=..6] run function origami-games:launch/item/magnetite/pull - -#renewals -execute as @e[type=item,tag=lch_sprite_item] at @s if entity @e[tag=lch_sprite,tag=lch_vehicle_root,distance=..1] run data merge entity @s {Age:5850} - #removal execute as @e[tag=lch_passenger] at @s unless entity @e[tag=lch_vehicle,distance=..1] run tag @s add lch_remove execute as @e[tag=lch_vehicle] unless data entity @s Passengers run tag @s add lch_remove @@ -115,6 +80,3 @@ execute as @e[tag=lch_vehicle] unless data entity @s Passengers run tag @s add l tag @e[type=slime,tag=!lch_remove,name="entity.launch.sand_crawler",nbt=!{Size:1}] add lch_remove execute as @e[tag=lch_remove] run data merge entity @s {Health:0,DeathTime:19,Time:0,Duration:0,Size:0} - -#heads -execute as @e[type=item,tag=!lch_head,tag=!lch_entity,nbt={Item:{id:"minecraft:player_head"}}] if data entity @s Item.tag unless data entity @s Item.tag.origami-games unless data entity @s Item.tag.SkullOwner.Name at @s run function origami-games:launch/item/recover_player_head diff --git a/Launch (Data)/data/origami-games/functions/launch/world/clock4.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/clock4.mcfunction index b8852c1..b09d5f5 100644 --- a/Launch (Data)/data/origami-games/functions/launch/world/clock4.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/world/clock4.mcfunction @@ -8,7 +8,7 @@ execute as @e[type=area_effect_cloud,tag=lch_chunk_generate] at @s run function kill @e[type=area_effect_cloud,tag=lch_chunk,tag=!lch_chunk_generate] execute store result score $chunks_generating lch_world_gen if entity @e[type=area_effect_cloud,tag=lch_chunk] -title @a[tag=lch_chunk_debug,nbt={Dimension:0}] actionbar [{"text":"lch_chunk "},{"score":{"objective":"lch_world_gen","name":"$chunks_generating"}}] +title @a[tag=lch_debug] actionbar [{"text":"lch_chunk "},{"score":{"objective":"lch_world_gen","name":"$chunks_generating"}}] #reset clock scoreboard players reset world_4 lch_clock diff --git a/Launch (Data)/data/origami-games/functions/launch/world/end/crystals/fight_effects.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/end/crystals/fight_effects.mcfunction index bc3b864..2e49db1 100644 --- a/Launch (Data)/data/origami-games/functions/launch/world/end/crystals/fight_effects.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/world/end/crystals/fight_effects.mcfunction @@ -3,3 +3,4 @@ #called by launch/tick execute if entity @e[type=area_effect_cloud,tag=lch_end_crystal_marker,distance=...1,tag=lch_end_pillar_caged] run function origami-games:launch/world/end/crystals/fight_effects_caged +execute as @e[type=arrow,tag=!lch_end_crystal_arrow_stopped,distance=..10] run data merge entity @s {Tags:["lch_end_crystal_arrow_stopped"],Motion:[0,0,0]} diff --git a/Launch (Data)/data/origami-games/functions/launch/world/end/crystals/fight_effects_caged.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/end/crystals/fight_effects_caged.mcfunction index 75fddef..1d43a00 100644 --- a/Launch (Data)/data/origami-games/functions/launch/world/end/crystals/fight_effects_caged.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/world/end/crystals/fight_effects_caged.mcfunction @@ -3,3 +3,4 @@ #called by launch/world/end/crystals/fight_effects particle minecraft:end_rod ~ ~ ~ 1.5 1.5 1.5 0 25 force @a +effect give @a[gamemode=survival,distance=..10] mining_fatigue 1 4 diff --git a/Launch (Data)/data/origami-games/functions/launch/world/end/dragon_fight/regenerate_structures.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/end/dragon_fight/regenerate_structures.mcfunction index cc5796d..4c6ea69 100644 --- a/Launch (Data)/data/origami-games/functions/launch/world/end/dragon_fight/regenerate_structures.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/world/end/dragon_fight/regenerate_structures.mcfunction @@ -1,3 +1,4 @@ execute as @e[tag=lch_end_crystal_marker] at @s run function origami-games:launch/world/end/crystals/determine_pillar_size +execute as @e[type=enderman,distance=0..,limit=15] at @s align xz run function origami-games:launch/world/end/generate_shulkers fill ~3 ~ ~3 ~-3 ~-4 ~-3 obsidian replace bedrock setblock ~ ~ ~ purpur_pillar diff --git a/Launch (Data)/data/origami-games/functions/launch/world/end/generate_chorus.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/end/generate_chorus.mcfunction deleted file mode 100644 index 3df95bf..0000000 --- a/Launch (Data)/data/origami-games/functions/launch/world/end/generate_chorus.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -execute at @e[type=enderman,distance=0..] align xz run summon minecraft:falling_block ~.5 80 ~.5 {BlockState:{Name:chorus_flower},Time:1} -execute at @e[type=enderman,distance=0..] align xz run summon minecraft:falling_block ~.5 80 ~20.5 {BlockState:{Name:chorus_flower},Time:1} -execute at @e[type=enderman,distance=0..] align xz run summon minecraft:falling_block ~20.5 80 ~.5 {BlockState:{Name:chorus_flower},Time:1} -execute at @e[type=enderman,distance=0..] align xz run summon minecraft:falling_block ~.5 80 ~-20.5 {BlockState:{Name:chorus_flower},Time:1} -execute at @e[type=enderman,distance=0..] align xz run summon minecraft:falling_block ~-20.5 80 ~.5 {BlockState:{Name:chorus_flower},Time:1} -execute as @e[type=enderman,distance=0..] run data merge entity @s {Health:0,DeathTime:19,DeathLootTable:"minecraft:empty"} -execute at @e[type=area_effect_cloud,tag=lch_world_marker_end] run gamerule randomTickSpeed 10000 -scoreboard players operation $end_chorus_speed_up lch_world_gen = $end_chorus_speed_up_start lch_world_gen diff --git a/Launch (Data)/data/origami-games/functions/launch/world/end/generate_shulkers.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/end/generate_shulkers.mcfunction new file mode 100644 index 0000000..ba24f1b --- /dev/null +++ b/Launch (Data)/data/origami-games/functions/launch/world/end/generate_shulkers.mcfunction @@ -0,0 +1,3 @@ +summon shulker ~ ~ ~ {Tags:["lch_entity","lch_shulker_spreadplayers"],Color:16} +spreadplayers ~ ~ 0 1 false @e[type=shulker,tag=lch_shulker_spreadplayers,distance=..1] +data merge entity @s {Health:0,DeathTime:19,DeathLootTable:"minecraft:empty"} diff --git a/Launch (Data)/data/origami-games/functions/launch/world/end/initial_generation.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/end/initial_generation.mcfunction index 59b8977..3be4c9c 100644 --- a/Launch (Data)/data/origami-games/functions/launch/world/end/initial_generation.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/world/end/initial_generation.mcfunction @@ -4,8 +4,8 @@ #summon end crystal markers function origami-games:launch/world/end/crystals/summon_markers -#generate chorus trees -function origami-games:launch/world/end/generate_chorus +#generate shulkers +execute as @e[type=enderman,distance=0..,limit=30] at @s align xz run function origami-games:launch/world/end/generate_shulkers #summon end gateway markers kill @e[type=area_effect_cloud,tag=lch_end_gateway_marker,distance=0..] diff --git a/Launch (Data)/data/origami-games/functions/launch/world/end/spawn_end_gateway.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/end/spawn_end_gateway.mcfunction index 8e28227..26cc480 100644 --- a/Launch (Data)/data/origami-games/functions/launch/world/end/spawn_end_gateway.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/world/end/spawn_end_gateway.mcfunction @@ -7,6 +7,7 @@ particle totem_of_undying ~ ~ ~ 2 2 2 .5 400 force @a playsound block.end_portal.spawn block @a ~ ~ ~ 100 2 1 playsound block.end_portal.spawn block @a ~ ~ ~ 100 1 1 playsound block.end_portal.spawn block @a ~ ~ ~ 100 0 1 +execute at @e[type=shulker] run summon firework_rocket ~ ~ ~ {LifeTime:40} #fangs and vexes summon evoker_fangs ~3 ~-2.5 ~ diff --git a/Launch (Data)/data/origami-games/functions/launch/world/overworld/structure/spawn/notification.mcfunction b/Launch (Data)/data/origami-games/functions/launch/world/overworld/structure/spawn/notification.mcfunction index 28c93a1..f11ca05 100644 --- a/Launch (Data)/data/origami-games/functions/launch/world/overworld/structure/spawn/notification.mcfunction +++ b/Launch (Data)/data/origami-games/functions/launch/world/overworld/structure/spawn/notification.mcfunction @@ -1,2 +1,2 @@ #debug notification called by structure spawns -tellraw @a[tag=lch_chunk_debug] [{"nbt":"Tags","entity":"@s","interpret":true},": ",{"nbt":"Pos[0]","entity":"@s"}," ",{"nbt":"Pos[2]","entity":"@s"}] +tellraw @a[tag=lch_debug] [{"nbt":"Tags","entity":"@s","interpret":true},": ",{"nbt":"Pos[0]","entity":"@s"}," ",{"nbt":"Pos[2]","entity":"@s"}] diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/bonsai_pot.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/bonsai_pot.json new file mode 100644 index 0000000..d53196f --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/bonsai_pot.json @@ -0,0 +1,13 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/items/bonsai_pot" + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/acacia.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/acacia.json new file mode 100644 index 0000000..5035402 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/acacia.json @@ -0,0 +1,23 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:air", + "weight": 7 + }, + { + "type": "minecraft:loot_table", + "name": "minecraft:blocks/acacia_leaves", + "weight": 16 + }, + { + "type": "minecraft:item", + "name": "minecraft:acacia_log" + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/birch.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/birch.json new file mode 100644 index 0000000..05ccefc --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/birch.json @@ -0,0 +1,23 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:air", + "weight": 7 + }, + { + "type": "minecraft:loot_table", + "name": "minecraft:blocks/birch_leaves", + "weight": 16 + }, + { + "type": "minecraft:item", + "name": "minecraft:birch_log" + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/dark_oak.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/dark_oak.json new file mode 100644 index 0000000..f0df1b7 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/dark_oak.json @@ -0,0 +1,23 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:air", + "weight": 7 + }, + { + "type": "minecraft:loot_table", + "name": "minecraft:blocks/dark_oak_leaves", + "weight": 16 + }, + { + "type": "minecraft:item", + "name": "minecraft:dark_oak_log" + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/jungle.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/jungle.json new file mode 100644 index 0000000..fec9a21 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/jungle.json @@ -0,0 +1,23 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:air", + "weight": 7 + }, + { + "type": "minecraft:loot_table", + "name": "minecraft:blocks/jungle_leaves", + "weight": 16 + }, + { + "type": "minecraft:item", + "name": "minecraft:jungle_log" + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/oak.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/oak.json new file mode 100644 index 0000000..d34b093 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/oak.json @@ -0,0 +1,23 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:air", + "weight": 7 + }, + { + "type": "minecraft:loot_table", + "name": "minecraft:blocks/oak_leaves", + "weight": 16 + }, + { + "type": "minecraft:item", + "name": "minecraft:oak_log" + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/spruce.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/spruce.json new file mode 100644 index 0000000..7aace6e --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/bonsai_pot/spruce.json @@ -0,0 +1,23 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:air", + "weight": 7 + }, + { + "type": "minecraft:loot_table", + "name": "minecraft:blocks/spruce_leaves", + "weight": 16 + }, + { + "type": "minecraft:item", + "name": "minecraft:spruce_log" + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/coal.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/coal.json new file mode 100644 index 0000000..1473ff1 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/coal.json @@ -0,0 +1,35 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:coal", + "weight": 15 + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/ore_spirit", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{spirit_type:\"coal\"}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/diamond.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/diamond.json new file mode 100644 index 0000000..53a208b --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/diamond.json @@ -0,0 +1,35 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:diamond", + "weight": 15 + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/ore_spirit", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{spirit_type:\"diamond\"}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/emerald.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/emerald.json new file mode 100644 index 0000000..e37dd09 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/emerald.json @@ -0,0 +1,35 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:emerald", + "weight": 15 + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/ore_spirit", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{spirit_type:\"emerald\"}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/lapis.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/lapis.json new file mode 100644 index 0000000..1e7dddd --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/lapis.json @@ -0,0 +1,43 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 4.0, + "max": 9.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:lapis_lazuli", + "weight": 15 + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/ore_spirit", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{spirit_type:\"lapis\"}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/quartz.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/quartz.json new file mode 100644 index 0000000..24a6f6f --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/quartz.json @@ -0,0 +1,46 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 4.0, + "max": 5.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:uniform_bonus_count", + "parameters": { + "bonusMultiplier": 1 + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:quartz", + "weight": 15 + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/ore_spirit", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{spirit_type:\"nether_quartz\"}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/redstone.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/redstone.json new file mode 100644 index 0000000..e3a7ab9 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit/redstone.json @@ -0,0 +1,46 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:set_count", + "count": { + "min": 4.0, + "max": 5.0, + "type": "minecraft:uniform" + } + }, + { + "function": "minecraft:apply_bonus", + "enchantment": "minecraft:fortune", + "formula": "minecraft:uniform_bonus_count", + "parameters": { + "bonusMultiplier": 1 + } + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:redstone", + "weight": 15 + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/ore_spirit", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{spirit_type:\"redstone\"}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/magnetite_ore.json b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/magnetite_ore.json index c7c85e6..8bc8e9e 100644 --- a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/magnetite_ore.json +++ b/Launch (Data)/data/origami-games/loot_tables/launch/blocks/magnetite_ore.json @@ -19,7 +19,7 @@ }, { "type": "minecraft:loot_table", - "name": "origami-games:launch/blocks/function/ore_spirit", + "name": "origami-games:launch/entities/function/ore_spirit", "weight": 1, "functions": [ { diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/ore_spirit.json similarity index 100% rename from Launch (Data)/data/origami-games/loot_tables/launch/blocks/function/ore_spirit.json rename to Launch (Data)/data/origami-games/loot_tables/launch/entities/function/ore_spirit.json diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/beach.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/beach.json new file mode 100644 index 0000000..5a71292 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/beach.json @@ -0,0 +1,19 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/cold.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/cold.json new file mode 100644 index 0000000..6628a88 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/cold.json @@ -0,0 +1,30 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"treemanoid\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + }, + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ], + "weight": 20 + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/forest.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/forest.json new file mode 100644 index 0000000..7668d5d --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/forest.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"wood_sprite\",entity_custom:1b,entity_spawning:1b}}}" + } + ], + "weight": 3 + }, + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"wolf_rider\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + }, + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ], + "weight": 10 + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/jungle.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/jungle.json new file mode 100644 index 0000000..5a71292 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/jungle.json @@ -0,0 +1,19 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/ocean.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/ocean.json new file mode 100644 index 0000000..5a71292 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/ocean.json @@ -0,0 +1,19 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/plains.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/plains.json new file mode 100644 index 0000000..5a71292 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/plains.json @@ -0,0 +1,19 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/river.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/river.json new file mode 100644 index 0000000..5a71292 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/river.json @@ -0,0 +1,19 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/swamp.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/swamp.json new file mode 100644 index 0000000..8ef65c4 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/swamp.json @@ -0,0 +1,19 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"slime_queen\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/the_end.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/the_end.json new file mode 100644 index 0000000..5a71292 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/the_end.json @@ -0,0 +1,19 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/the_nether.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/the_nether.json new file mode 100644 index 0000000..a830953 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/the_nether.json @@ -0,0 +1,30 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"fire_ant\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + }, + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ], + "weight": 10 + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/warm.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/warm.json new file mode 100644 index 0000000..056e7c5 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/biome/warm.json @@ -0,0 +1,30 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"sand_crawler\",entity_custom:1b,entity_spawning:1b}}}" + } + ] + }, + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity:\"none\",entity_custom:1b,entity_spawning:1b}}}" + } + ], + "weight": 10 + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/check_biome.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/check_biome.json new file mode 100644 index 0000000..62e89e6 --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/check_biome.json @@ -0,0 +1,566 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/cold", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:mountains" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:gravelly_mountains" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:wooded_mountains" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:modified_gravelly_mountains" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:taiga" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:taiga_hills" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:taiga_mountains" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:giant_tree_taiga" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:giant_spruce_taiga" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:giant_tree_taiga_hills" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:giant_spruce_taiga_hills" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/the_end", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:the_end" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:small_end_islands" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:end_midlands" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:end_highlands" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:end_barrens" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/the_nether", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:nether" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/jungle", + "conditions": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:jungle" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:modified_jungle" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:jungle_edge" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:modified_jungle_edge" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:bamboo_jungle" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:bamboo_jungle_hills" + } + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/swamp", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:swamp" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:swamp_hills" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/warm", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:desert" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:desert_hills" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:desert_lakes" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:savanna" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:savanna_plateau" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:shattered_savanna" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:shattered_savanna_plateau" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:badlands" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:badlands_plateau" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:eroded_badlands" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:wooded_badlands_plateau" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:modified_badlands_plateau" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:modified_wooded_badlands_plateau" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/ocean", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:cold_ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:deep_ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:warm_ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:frozen_ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:lukewarm_ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:deep_cold_ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:deep_warm_ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:deep_frozen_ocean" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:deep_lukewarm_ocean" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/forest", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:forest" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:dark_forest" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:dark_forest_hills" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:birch_forest" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:birch_forest_hills" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:flower_forest" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:tall_birch_forest" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:taiga" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:taiga_hills" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:taiga_mountains" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:snowy_taiga" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:snowy_taiga_hills" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:snowy_taiga_mountains" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:giant_tree_taiga" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:giant_spruce_taiga" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:giant_tree_taiga_hills" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:giant_spruce_taiga_hills" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/plains", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:plains" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:sunflower_plains" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/river", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:river" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:frozen_river" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/biome/beach", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:stone_shore" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:beach" + } + }, + { + "condition": "minecraft:location_check", + "predicate": { + "biome": "minecraft:snowy_beach" + } + } + ] + } + ] + }, + { + "type": "minecraft:loot_table", + "name": "minecraft:empty" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/check_custom.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/check_custom.json new file mode 100644 index 0000000..1bfca8b --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/function/spawning/check_custom.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:loot_table", + "name": "origami-games:launch/entities/function/spawning/check_biome" + }, + { + "type": "minecraft:item", + "name": "minecraft:stick", + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{origami-games:{launch:{entity_spawning:1b,entity_custom:0b}}}" + } + ], + "weight": 2 + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/entities/ore_spirit.json b/Launch (Data)/data/origami-games/loot_tables/launch/entities/ore_spirit.json index 7e4d9a8..a2db0b8 100644 --- a/Launch (Data)/data/origami-games/loot_tables/launch/entities/ore_spirit.json +++ b/Launch (Data)/data/origami-games/loot_tables/launch/entities/ore_spirit.json @@ -7,6 +7,11 @@ { "type": "minecraft:loot_table", "name": "origami-games:launch/items/spirit_orb" + }, + { + "type": "minecraft:loot_table", + "name": "minecraft:empty", + "weight": 6 } ] } diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/items/bonsai_pot.json b/Launch (Data)/data/origami-games/loot_tables/launch/items/bonsai_pot.json new file mode 100644 index 0000000..8d6770e --- /dev/null +++ b/Launch (Data)/data/origami-games/loot_tables/launch/items/bonsai_pot.json @@ -0,0 +1,19 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "minecraft:armor_stand", + "functions": [ + { + "function": "set_nbt", + "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_bonsai_pot\"],Invisible:1,Silent:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_bonsai_pot\"'},display:{Name:'{\"translate\":\"block.launch.bonsai_pot\",\"italic\":false,\"color\":\"aqua\"}'},origami-games:{launch:{item:\"bonsai_pot\"}},CustomModelData:7}" + } + ] + } + ] + } + ] +} diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/items/disenchanter.json b/Launch (Data)/data/origami-games/loot_tables/launch/items/disenchanter.json index 1ef743a..bf0acd5 100644 --- a/Launch (Data)/data/origami-games/loot_tables/launch/items/disenchanter.json +++ b/Launch (Data)/data/origami-games/loot_tables/launch/items/disenchanter.json @@ -9,7 +9,7 @@ "functions": [ { "function": "set_nbt", - "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_disenchanter\"],Invisible:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_disenchanter\"'},display:{Name:'{\"translate\":\"block.launch.disenchanter\",\"italic\":false}'},origami-games:{launch:{item:\"disenchanter\"}},CustomModelData:6}" + "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_disenchanter\"],Invisible:1,Silent:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_disenchanter\"'},display:{Name:'{\"translate\":\"block.launch.disenchanter\",\"italic\":false}'},origami-games:{launch:{item:\"disenchanter\"}},CustomModelData:6}" } ] } diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/items/gravity_pad.json b/Launch (Data)/data/origami-games/loot_tables/launch/items/gravity_pad.json index b33a5f9..5bbb0c8 100644 --- a/Launch (Data)/data/origami-games/loot_tables/launch/items/gravity_pad.json +++ b/Launch (Data)/data/origami-games/loot_tables/launch/items/gravity_pad.json @@ -9,7 +9,7 @@ "functions": [ { "function": "set_nbt", - "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_gravity_pad\"],Invisible:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_gravity_pad\"'},display:{Name:'{\"translate\":\"block.launch.gravity_pad\",\"italic\":false,\"color\":\"aqua\"}'},origami-games:{launch:{item:\"gravity_pad\"}},CustomModelData:5}" + "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_gravity_pad\"],Invisible:1,Silent:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_gravity_pad\"'},display:{Name:'{\"translate\":\"block.launch.gravity_pad\",\"italic\":false,\"color\":\"aqua\"}'},origami-games:{launch:{item:\"gravity_pad\"}},CustomModelData:5}" } ] } diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/items/light_bridge.json b/Launch (Data)/data/origami-games/loot_tables/launch/items/light_bridge.json index be176d2..0742c97 100644 --- a/Launch (Data)/data/origami-games/loot_tables/launch/items/light_bridge.json +++ b/Launch (Data)/data/origami-games/loot_tables/launch/items/light_bridge.json @@ -9,7 +9,7 @@ "functions": [ { "function": "set_nbt", - "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_light_bridge\"],Invisible:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_light_bridge\"'},display:{Name:'{\"translate\":\"block.launch.light_bridge\",\"italic\":false,\"color\":\"aqua\"}'},origami-games:{launch:{item:\"light_bridge\"}},CustomModelData:2}" + "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_light_bridge\"],Invisible:1,Silent:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_light_bridge\"'},display:{Name:'{\"translate\":\"block.launch.light_bridge\",\"italic\":false,\"color\":\"aqua\"}'},origami-games:{launch:{item:\"light_bridge\"}},CustomModelData:2}" } ] } diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/items/synthesiser.json b/Launch (Data)/data/origami-games/loot_tables/launch/items/synthesiser.json index a9bd5f6..c833aa9 100644 --- a/Launch (Data)/data/origami-games/loot_tables/launch/items/synthesiser.json +++ b/Launch (Data)/data/origami-games/loot_tables/launch/items/synthesiser.json @@ -9,7 +9,7 @@ "functions": [ { "function": "set_nbt", - "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_synthesiser\"],Invisible:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_synthesiser\"'},display:{Name:'{\"translate\":\"block.launch.synthesiser\",\"italic\":false}'},origami-games:{launch:{item:\"synthesiser\"}},CustomModelData:1}" + "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_synthesiser\"],Invisible:1,Silent:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_synthesiser\"'},display:{Name:'{\"translate\":\"block.launch.synthesiser\",\"italic\":false}'},origami-games:{launch:{item:\"synthesiser\"}},CustomModelData:1}" } ] } diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/items/titanium_plating.json b/Launch (Data)/data/origami-games/loot_tables/launch/items/titanium_plating.json index f73a972..658b55b 100644 --- a/Launch (Data)/data/origami-games/loot_tables/launch/items/titanium_plating.json +++ b/Launch (Data)/data/origami-games/loot_tables/launch/items/titanium_plating.json @@ -9,7 +9,7 @@ "functions": [ { "function": "set_nbt", - "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_titanium_plating\"],Invisible:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_titanium_plating\"'},display:{Name:'{\"translate\":\"block.launch.titanium_plating\",\"italic\":false}'},origami-games:{launch:{item:\"titanium_plating\"}},CustomModelData:3}" + "tag": "{EntityTag:{id:armor_stand,Tags:[\"lch_summon_titanium_plating\"],Invisible:1,Silent:1,Small:1,Marker:1,Invulnerable:1,CustomName:'\"lch_summon_titanium_plating\"'},display:{Name:'{\"translate\":\"block.launch.titanium_plating\",\"italic\":false}'},origami-games:{launch:{item:\"titanium_plating\"}},CustomModelData:3}" } ] } diff --git a/Launch (Data)/data/origami-games/loot_tables/launch/world/structure/desert_tomb/barrel.json b/Launch (Data)/data/origami-games/loot_tables/launch/world/structure/desert_tomb/barrel.json index 8749f42..7a775aa 100644 --- a/Launch (Data)/data/origami-games/loot_tables/launch/world/structure/desert_tomb/barrel.json +++ b/Launch (Data)/data/origami-games/loot_tables/launch/world/structure/desert_tomb/barrel.json @@ -1,5 +1,5 @@ { - "type": "minecraft:chest", + "type": "minecraft:entity", "pools": [ { "rolls": 5, diff --git a/Launch (Data)/pack.mcmeta b/Launch (Data)/pack.mcmeta index c5372bf..fb4b7de 100644 --- a/Launch (Data)/pack.mcmeta +++ b/Launch (Data)/pack.mcmeta @@ -1,6 +1,16 @@ { "pack": { "pack_format": 4, - "description": [{"text":"Launch","color":"aqua"},"\n",{"text":"Origami Games","color":"dark_aqua"}] + "description": [ + { + "text": "Launch", + "color": "aqua" + }, + "\n", + { + "text": "Origami Games", + "color": "dark_aqua" + } + ] } } diff --git a/Launch (Resources)/assets/minecraft/models/item/armor_stand.json b/Launch (Resources)/assets/minecraft/models/item/armor_stand.json index 1670b29..839ad6c 100644 --- a/Launch (Resources)/assets/minecraft/models/item/armor_stand.json +++ b/Launch (Resources)/assets/minecraft/models/item/armor_stand.json @@ -39,6 +39,24 @@ "custom_model_data": 6 }, "model": "origami-games:launch/item/disenchanter" + }, + { + "predicate": { + "custom_model_data": 7 + }, + "model": "origami-games:launch/item/bonsai_pot" + }, + { + "predicate": { + "custom_model_data": 8 + }, + "model": "origami-games:launch/block/bonsai_pot_part_filled" + }, + { + "predicate": { + "custom_model_data": 9 + }, + "model": "origami-games:launch/block/bonsai_pot_filled" } ] } diff --git a/Launch (Resources)/assets/origami-games/lang/en_us.json b/Launch (Resources)/assets/origami-games/lang/en_us.json index e16c968..c4ede3a 100644 --- a/Launch (Resources)/assets/origami-games/lang/en_us.json +++ b/Launch (Resources)/assets/origami-games/lang/en_us.json @@ -35,6 +35,7 @@ "block.launch.gravity_pad": "Gravity Pad", "block.launch.block_breaker": "Block Breaker", "block.launch.disenchanter": "Disenchanter", + "block.launch.bonsai_pot": "Bonsai Pot", "item.launch.redstonic_locator": "Redstonic Locator", "item.launch.redstonic_locator.ore_detection.too_high": "Altitude too high!", @@ -63,6 +64,7 @@ "item.launch.sprite_heart.lore": "Steadily produces particles even after extraction", "item.launch.treemanoid_bark": "Treemanoid Bark", "item.launch.wolf_chop": "Wolf Chop", + "item.launch.cooked_wolf_chop": "Cooked Wolf Chop", "item.launch.wolf_fang": "Wolf Fang", "item.launch.wolf_pelt": "Wolf Pelt", "item.launch.wood_sprite_core": "Wood Sprite Core", diff --git a/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_default.json b/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_default.json new file mode 100644 index 0000000..40fc943 --- /dev/null +++ b/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_default.json @@ -0,0 +1,436 @@ +{ + "textures": { + "case": "origami-games:launch/block/bonsai_pot" + }, + "elements": [ + { + "name": "floor", + "from": [ + 2, + 0, + 2 + ], + "to": [ + 14, + 1, + 14 + ], + "faces": { + "north": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "east": { + "uv": [ + 0, + 2.5, + 6, + 3 + ], + "texture": "#case" + }, + "south": { + "uv": [ + 0, + 4.5, + 6, + 5 + ], + "texture": "#case" + }, + "west": { + "uv": [ + 0, + 3, + 6, + 3.5 + ], + "texture": "#case" + }, + "up": { + "uv": [ + 9, + 1, + 15, + 7 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 0, + 6, + 6 + ], + "texture": "#case" + } + } + }, + { + "name": "wall4", + "from": [ + 1, + 1, + 2 + ], + "to": [ + 2, + 3, + 15 + ], + "faces": { + "north": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "east": { + "uv": [ + 2, + 0, + 3, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 6, + 6, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 0.5, + 6 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 2.5, + 0, + 3, + 6 + ], + "texture": "#case" + } + } + }, + { + "name": "wall3", + "from": [ + 1, + 1, + 1 + ], + "to": [ + 14, + 3, + 2 + ], + "faces": { + "north": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "south": { + "uv": [ + 4.5, + 0, + 5.5, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 6, + 0, + 7, + 0.5 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 4, + 6, + 4.5 + ], + "texture": "#case" + } + } + }, + { + "name": "wall2", + "from": [ + 2, + 1, + 14 + ], + "to": [ + 15, + 3, + 15 + ], + "faces": { + "north": { + "uv": [ + 7, + 0, + 8, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 6, + 6, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 2, + 6, + 2.5 + ], + "texture": "#case" + } + } + }, + { + "name": "wall1", + "from": [ + 14, + 1, + 1 + ], + "to": [ + 15, + 3, + 14 + ], + "faces": { + "north": { + "uv": [ + 6, + 0, + 7, + 0.5 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "west": { + "uv": [ + 3.5, + 0, + 4.5, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 3.5, + 0, + 4, + 6 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 5, + 0, + 5.5, + 6 + ], + "texture": "#case" + } + } + } + ], + "display": { + "thirdperson_righthand": { + "rotation": [ + 0, + 0, + 45 + ], + "translation": [ + 0, + 0, + 0 + ], + "scale": [ + 0.5, + 0.5, + 0.5 + ] + }, + "firstperson_righthand": { + "rotation": [ + 0, + 22.5, + 0 + ], + "translation": [ + 0, + 2, + 0 + ], + "scale": [ + 0.5, + 0.5, + 0.5 + ] + }, + "gui": { + "rotation": [ + 33.75, + 45, + 0 + ], + "translation": [ + 0, + 0, + 0 + ], + "scale": [ + 0.66, + 0.66, + 0.66 + ] + }, + "ground": { + "translation": [ + 0, + 2, + 0 + ], + "scale": [ + 0.25, + 0.25, + 0.25 + ] + }, + "head": { + "scale": [ + 1.975, + 1.975, + 1.975 + ] + } + } +} diff --git a/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_filled.json b/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_filled.json new file mode 100644 index 0000000..317e12e --- /dev/null +++ b/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_filled.json @@ -0,0 +1,443 @@ +{ + "textures": { + "case": "origami-games:launch/block/bonsai_pot", + "filling": "block/dirt" + }, + "elements": [ + { + "name": "floor", + "from": [ + 2, + 0, + 2 + ], + "to": [ + 14, + 1, + 14 + ], + "faces": { + "north": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "east": { + "uv": [ + 0, + 2.5, + 6, + 3 + ], + "texture": "#case" + }, + "south": { + "uv": [ + 0, + 4.5, + 6, + 5 + ], + "texture": "#case" + }, + "west": { + "uv": [ + 0, + 3, + 6, + 3.5 + ], + "texture": "#case" + }, + "up": { + "uv": [ + 9, + 1, + 15, + 7 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 0, + 6, + 6 + ], + "texture": "#case" + } + } + }, + { + "name": "wall4", + "from": [ + 1, + 1, + 2 + ], + "to": [ + 2, + 3, + 15 + ], + "faces": { + "north": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "east": { + "uv": [ + 2, + 0, + 3, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 6, + 6, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 0.5, + 6 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 2.5, + 0, + 3, + 6 + ], + "texture": "#case" + } + } + }, + { + "name": "wall3", + "from": [ + 1, + 1, + 1 + ], + "to": [ + 14, + 3, + 2 + ], + "faces": { + "north": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "south": { + "uv": [ + 4.5, + 0, + 5.5, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 6, + 0, + 7, + 0.5 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 4, + 6, + 4.5 + ], + "texture": "#case" + } + } + }, + { + "name": "wall2", + "from": [ + 2, + 1, + 14 + ], + "to": [ + 15, + 3, + 15 + ], + "faces": { + "north": { + "uv": [ + 7, + 0, + 8, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 6, + 6, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 2, + 6, + 2.5 + ], + "texture": "#case" + } + } + }, + { + "name": "wall1", + "from": [ + 14, + 1, + 1 + ], + "to": [ + 15, + 3, + 14 + ], + "faces": { + "north": { + "uv": [ + 6, + 0, + 7, + 0.5 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "west": { + "uv": [ + 3.5, + 0, + 4.5, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 3.5, + 0, + 4, + 6 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 5, + 0, + 5.5, + 6 + ], + "texture": "#case" + } + } + }, + { + "name": "filling", + "from": [ + 2, + 1, + 2 + ], + "to": [ + 14, + 3, + 14 + ], + "faces": { + "north": { + "uv": [ + 0, + 0, + 12, + 1 + ], + "texture": "#filling" + }, + "east": { + "uv": [ + 0, + 0, + 12, + 1 + ], + "texture": "#filling" + }, + "south": { + "uv": [ + 0, + 0, + 12, + 1 + ], + "texture": "#filling" + }, + "west": { + "uv": [ + 0, + 0, + 12, + 1 + ], + "texture": "#filling" + }, + "up": { + "uv": [ + 0, + 0, + 12, + 12 + ], + "texture": "#filling" + }, + "down": { + "uv": [ + 0, + 0, + 12, + 12 + ], + "texture": "#filling" + } + } + } + ], + "display": { + "head": { + "scale": [ + 1.975, + 1.975, + 1.975 + ] + } + } +} diff --git a/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_part_filled.json b/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_part_filled.json new file mode 100644 index 0000000..b62a1cd --- /dev/null +++ b/Launch (Resources)/assets/origami-games/models/launch/block/bonsai_pot_part_filled.json @@ -0,0 +1,443 @@ +{ + "textures": { + "case": "origami-games:launch/block/bonsai_pot", + "filling": "block/dirt" + }, + "elements": [ + { + "name": "floor", + "from": [ + 2, + 0, + 2 + ], + "to": [ + 14, + 1, + 14 + ], + "faces": { + "north": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "east": { + "uv": [ + 0, + 2.5, + 6, + 3 + ], + "texture": "#case" + }, + "south": { + "uv": [ + 0, + 4.5, + 6, + 5 + ], + "texture": "#case" + }, + "west": { + "uv": [ + 0, + 3, + 6, + 3.5 + ], + "texture": "#case" + }, + "up": { + "uv": [ + 9, + 1, + 15, + 7 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 0, + 6, + 6 + ], + "texture": "#case" + } + } + }, + { + "name": "wall4", + "from": [ + 1, + 1, + 2 + ], + "to": [ + 2, + 3, + 15 + ], + "faces": { + "north": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "east": { + "uv": [ + 2, + 0, + 3, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 6, + 6, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 0.5, + 6 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 2.5, + 0, + 3, + 6 + ], + "texture": "#case" + } + } + }, + { + "name": "wall3", + "from": [ + 1, + 1, + 1 + ], + "to": [ + 14, + 3, + 2 + ], + "faces": { + "north": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "south": { + "uv": [ + 4.5, + 0, + 5.5, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 6, + 0, + 7, + 0.5 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 4, + 6, + 4.5 + ], + "texture": "#case" + } + } + }, + { + "name": "wall2", + "from": [ + 2, + 1, + 14 + ], + "to": [ + 15, + 3, + 15 + ], + "faces": { + "north": { + "uv": [ + 7, + 0, + 8, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 6, + 6, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "west": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "up": { + "uv": [ + 0, + 0, + 6, + 0.5 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 0, + 2, + 6, + 2.5 + ], + "texture": "#case" + } + } + }, + { + "name": "wall1", + "from": [ + 14, + 1, + 1 + ], + "to": [ + 15, + 3, + 14 + ], + "faces": { + "north": { + "uv": [ + 6, + 0, + 7, + 0.5 + ], + "rotation": 270, + "texture": "#case" + }, + "east": { + "uv": [ + 6, + 0.5, + 7, + 6.5 + ], + "rotation": 270, + "texture": "#case" + }, + "south": { + "uv": [ + 0, + 0, + 1, + 2 + ], + "texture": "#case" + }, + "west": { + "uv": [ + 3.5, + 0, + 4.5, + 6 + ], + "rotation": 270, + "texture": "#case" + }, + "up": { + "uv": [ + 3.5, + 0, + 4, + 6 + ], + "texture": "#case" + }, + "down": { + "uv": [ + 5, + 0, + 5.5, + 6 + ], + "texture": "#case" + } + } + }, + { + "name": "filling", + "from": [ + 2, + 1, + 2 + ], + "to": [ + 14, + 2, + 14 + ], + "faces": { + "north": { + "uv": [ + 0, + 0, + 12, + 1 + ], + "texture": "#filling" + }, + "east": { + "uv": [ + 0, + 0, + 12, + 1 + ], + "texture": "#filling" + }, + "south": { + "uv": [ + 0, + 0, + 12, + 1 + ], + "texture": "#filling" + }, + "west": { + "uv": [ + 0, + 0, + 12, + 1 + ], + "texture": "#filling" + }, + "up": { + "uv": [ + 0, + 0, + 12, + 12 + ], + "texture": "#filling" + }, + "down": { + "uv": [ + 0, + 0, + 12, + 12 + ], + "texture": "#filling" + } + } + } + ], + "display": { + "head": { + "scale": [ + 1.975, + 1.975, + 1.975 + ] + } + } +} diff --git a/Launch (Resources)/assets/origami-games/models/launch/item/bonsai_pot.json b/Launch (Resources)/assets/origami-games/models/launch/item/bonsai_pot.json new file mode 100644 index 0000000..6fdcb2a --- /dev/null +++ b/Launch (Resources)/assets/origami-games/models/launch/item/bonsai_pot.json @@ -0,0 +1,3 @@ +{ + "parent": "origami-games:launch/block/bonsai_pot_default" +} diff --git a/Launch (Resources)/assets/origami-games/textures/launch/block/bonsai_pot.png b/Launch (Resources)/assets/origami-games/textures/launch/block/bonsai_pot.png new file mode 100644 index 0000000000000000000000000000000000000000..0276d2b2e6fdbb5581ec75843046fa8fdf338239 GIT binary patch literal 823 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabRA=0VD!!mi71Ki^|4CM&(%vz$xlkv ztH>-n*TA>HIW;5GqpB!1xXLdi zxhgx^GDXSWj?1RP3TQxXYDuC(MQ%=Bu~mhw64+cTAR8pCucQE0Qj%?}N5ROz&|KfZT;I@G*TB%qz|6|nQUMB-?6?$c zic-?7f?V97mH~OTN*N_31y=g{<>lpi<;HsXMd|v6mX?(?(`x^(T@wX0XJUb%AR)~#C?E?l^M`}VnW=gyuzd;a|SyLa!NK7IQB{re9d zJh*r7-iZ?@PM$pZ=+UE7r%v6ubLaT+<7dvCIehqVcX8@&kbNaVe!&b5&u*jv*;1Y^ zjv*GO-v)#iu`2Q`mN?y%dOCaMcl-1&ljhHT!X;=da{9!y;FQ%mGG(mFCq%z)&MW?< z^ZDK5iNE9o8D`BCpC$kE#9gnAH#T?7+%i>-)6H37*X~xck@upV+dlq&q?)YBf7UA{Pr0m(^ zW%qCRCBM(RJ-?+;s=E32{1&V2oc3|oH-^T)_WA$gIA^@t3f`7!lM}uJgN(t`)z4*} HQ$iB}ypT|r literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 23a2716..8a51c88 100644 --- a/README.md +++ b/README.md @@ -43,19 +43,22 @@ A space-themed survival data pack for Minecraft. - *End Stone Fragments* - Drops from *End Stone* - No functionality (yet) + - *Industrial Grade Diamond* + - To obtain, drop a Diamond on to an anvil and push a piston head down on to it - **Custom Mobs** - *Fire Ant* - - Spawn near lava in the Nether + - Spawns in the Nether - *Slime Queen* - Spawns rarely in swamps - *Treemanoid* - Spawns rarely in snowy biomes - *Wolf Rider* - - Spawns globally at night (between `daytime` ticks `12000..23000`) + - Spawns globally at night - *Sand Crawler* - - Spawns in the desert at night (same rate as husks) + - Spawns in deserts at night + - Throws entities that touch it into the air - *Wood Sprite* - - Spawns in wooded areas at night (same rate as skeletons) + - Spawns in wooded areas - *Ore Spirits* - Spawn when breaking ore blocks - Attack you through blocks @@ -65,7 +68,6 @@ A space-themed survival data pack for Minecraft. - Floor crafted with 1 *Redstonic Locator*, 1 *Piston*, 1 *Iron Block* and 1 *Crafting Table* - Essentially, Launch's custom crafter - *Disenchanter* - - Can be placed like normal blocks - Removes enchantments from items when the enchanted item is placed in the first slot of the *Disenchanter* and a normal book is placed in the last slot - Returns an *Enchanted Book*, removes the enchantment from the item and gives a bit of XP - Crafted in Synthesiser with *Smooth Stone*, *Obsidian*, an *Enchanting Table* and a *Book and Quill* @@ -88,15 +90,22 @@ A space-themed survival data pack for Minecraft. - *Block Breaker* - Created by dropping a *Block Breaker* item on to a piston - When powered by redstone, breaks the block the face of the piston head touches - - Crafted in *Synthesiser* with *Diamonds* and *Sticks* like a pickaxe, *Iron Ingots* and *Pistons* + - Crafted in *Synthesiser* with *Industrial Grade Diamonds* and *Sticks* like a pickaxe, *Iron Ingots* and *Pistons* - `DDD` - `ISI` - `PSP` + - Bonsai Pot + - Spawns tree-based loot into any container below the Bonsai Pot when there is a Grass Block and a Sapling above it and when it has dirt in the first slot + - Crafted in Synthesiser with *Bone Blocks* and a *Flower Pot* + - `B_B` + - `BFB` + - `_B_` - **Gameplay Changes** - Made *Shulkers* drop 2 *Shulker Shells* always - Made *Silverfish* drop *Iron Nuggets*, and have a chance to drop *Iron Ingots* with *Looting* - Made *Stone Pickaxes* craftable with all types of stone - Made *Armour Stands* have arms by default + - Made the *Ender Dragon* drop an *Elytra* - Added *Log/Wood* to *Stripped Log/Wood* in the *Stonecutter* - Universal Dyeing - Dyed items can be dyed again @@ -115,4 +124,6 @@ A space-themed survival data pack for Minecraft. - The End - The *Exit Portal* is converted to *Obsidian* and has a *Purpur Pillar* under the *Dragon Egg* - *End Crystal* towers have a new crowning which regenerates at each fight - - *Chorus Fruit* trees are randomly generated upon first generation + - *Shulkers* are randomly generated upon each dragon fight + - *Arrows* shot at *End Crystals* will be deflected + - When near caged *End Crystals*, survival mode users will be affected with *Mining Fatigue*