From 3e10a6c7ababebd41e78523ff001c0a67b315319 Mon Sep 17 00:00:00 2001 From: EERussianguy Date: Tue, 25 Apr 2023 10:36:21 -0400 Subject: [PATCH] advancement tree, requisite tag updates. --- resources/advancements.py | 104 ++++++++++++++++ resources/assets.py | 8 +- resources/constants.py | 4 +- resources/data.py | 10 +- resources/generate_resources.py | 2 + .../com/eerussianguy/firmalife/FirmaLife.java | 2 + .../greenhouse/ClimateStationBlock.java | 15 ++- .../common/misc/FLInteractionManager.java | 10 ++ .../firmalife/common/util/FLAdvancements.java | 22 ++++ .../assets/firmalife/lang/en_us.json | 84 ++++++++++++- .../advancements/story/all_cheese.json | 114 ++++++++++++++++++ .../firmalife/advancements/story/ashtray.json | 39 ++++++ .../firmalife/advancements/story/bacon.json | 39 ++++++ .../firmalife/advancements/story/baller.json | 39 ++++++ .../advancements/story/big_cellar.json | 30 +++++ .../advancements/story/big_greenhouse.json | 30 +++++ .../advancements/story/burrito_taco.json | 54 +++++++++ .../firmalife/advancements/story/cellar.json | 37 ++++++ .../advancements/story/cheese_wheel.json | 37 ++++++ .../advancements/story/chocolate.json | 37 ++++++ .../advancements/story/chromite.json | 39 ++++++ .../advancements/story/climate_station.json | 39 ++++++ .../advancements/story/dribbler.json | 39 ++++++ .../firmalife/advancements/story/dry.json | 39 ++++++ .../advancements/story/greenhouse.json | 37 ++++++ .../firmalife/advancements/story/hanger.json | 37 ++++++ .../firmalife/advancements/story/hive.json | 39 ++++++ .../advancements/story/iron_composter.json | 39 ++++++ .../firmalife/advancements/story/jarbnet.json | 37 ++++++ .../advancements/story/jarring_station.json | 39 ++++++ .../firmalife/advancements/story/jars.json | 39 ++++++ .../firmalife/advancements/story/mixer.json | 39 ++++++ .../advancements/story/nutritive_basin.json | 39 ++++++ .../firmalife/advancements/story/oven.json | 57 +++++++++ .../advancements/story/oven_finishes.json | 84 +++++++++++++ .../advancements/story/oven_hopper.json | 39 ++++++ .../advancements/story/pickled_egg.json | 39 ++++++ .../firmalife/advancements/story/pie.json | 39 ++++++ .../firmalife/advancements/story/pizza.json | 39 ++++++ .../advancements/story/planters.json | 114 ++++++++++++++++++ .../advancements/story/preserves.json | 37 ++++++ .../firmalife/advancements/story/rennet.json | 39 ++++++ .../firmalife/advancements/story/root.json | 29 +++++ .../firmalife/advancements/story/shelf.json | 37 ++++++ .../firmalife/advancements/story/smoker.json | 33 +++++ .../advancements/story/sprinkler.json | 39 ++++++ .../advancements/story/stovetop_grill.json | 30 +++++ .../advancements/story/stovetop_pot.json | 30 +++++ .../firmalife/advancements/story/vat.json | 39 ++++++ .../firmalife/advancements/story/wax.json | 39 ++++++ .../firmalife/tags/blocks/food_shelves.json | 25 ++++ .../data/firmalife/tags/blocks/hangers.json | 25 ++++ .../data/firmalife/tags/blocks/jarbnets.json | 25 ++++ .../data/firmalife/tags/blocks/planters.json | 3 +- .../tags/items/all_copper_greenhouse.json | 10 ++ .../tags/items/all_iron_greenhouse.json | 8 ++ .../items/all_treated_wood_greenhouse.json | 8 ++ .../tags/items/cellar_insulation.json | 10 ++ .../firmalife/tags/items/cheese_wheels.json | 12 ++ .../firmalife/tags/items/food_shelves.json | 25 ++++ .../data/firmalife/tags/items/greenhouse.json | 10 ++ .../data/firmalife/tags/items/hangers.json | 25 ++++ .../data/firmalife/tags/items/jarbnets.json | 25 ++++ 63 files changed, 2177 insertions(+), 15 deletions(-) create mode 100644 resources/advancements.py create mode 100644 src/main/java/com/eerussianguy/firmalife/common/util/FLAdvancements.java create mode 100644 src/main/resources/data/firmalife/advancements/story/all_cheese.json create mode 100644 src/main/resources/data/firmalife/advancements/story/ashtray.json create mode 100644 src/main/resources/data/firmalife/advancements/story/bacon.json create mode 100644 src/main/resources/data/firmalife/advancements/story/baller.json create mode 100644 src/main/resources/data/firmalife/advancements/story/big_cellar.json create mode 100644 src/main/resources/data/firmalife/advancements/story/big_greenhouse.json create mode 100644 src/main/resources/data/firmalife/advancements/story/burrito_taco.json create mode 100644 src/main/resources/data/firmalife/advancements/story/cellar.json create mode 100644 src/main/resources/data/firmalife/advancements/story/cheese_wheel.json create mode 100644 src/main/resources/data/firmalife/advancements/story/chocolate.json create mode 100644 src/main/resources/data/firmalife/advancements/story/chromite.json create mode 100644 src/main/resources/data/firmalife/advancements/story/climate_station.json create mode 100644 src/main/resources/data/firmalife/advancements/story/dribbler.json create mode 100644 src/main/resources/data/firmalife/advancements/story/dry.json create mode 100644 src/main/resources/data/firmalife/advancements/story/greenhouse.json create mode 100644 src/main/resources/data/firmalife/advancements/story/hanger.json create mode 100644 src/main/resources/data/firmalife/advancements/story/hive.json create mode 100644 src/main/resources/data/firmalife/advancements/story/iron_composter.json create mode 100644 src/main/resources/data/firmalife/advancements/story/jarbnet.json create mode 100644 src/main/resources/data/firmalife/advancements/story/jarring_station.json create mode 100644 src/main/resources/data/firmalife/advancements/story/jars.json create mode 100644 src/main/resources/data/firmalife/advancements/story/mixer.json create mode 100644 src/main/resources/data/firmalife/advancements/story/nutritive_basin.json create mode 100644 src/main/resources/data/firmalife/advancements/story/oven.json create mode 100644 src/main/resources/data/firmalife/advancements/story/oven_finishes.json create mode 100644 src/main/resources/data/firmalife/advancements/story/oven_hopper.json create mode 100644 src/main/resources/data/firmalife/advancements/story/pickled_egg.json create mode 100644 src/main/resources/data/firmalife/advancements/story/pie.json create mode 100644 src/main/resources/data/firmalife/advancements/story/pizza.json create mode 100644 src/main/resources/data/firmalife/advancements/story/planters.json create mode 100644 src/main/resources/data/firmalife/advancements/story/preserves.json create mode 100644 src/main/resources/data/firmalife/advancements/story/rennet.json create mode 100644 src/main/resources/data/firmalife/advancements/story/root.json create mode 100644 src/main/resources/data/firmalife/advancements/story/shelf.json create mode 100644 src/main/resources/data/firmalife/advancements/story/smoker.json create mode 100644 src/main/resources/data/firmalife/advancements/story/sprinkler.json create mode 100644 src/main/resources/data/firmalife/advancements/story/stovetop_grill.json create mode 100644 src/main/resources/data/firmalife/advancements/story/stovetop_pot.json create mode 100644 src/main/resources/data/firmalife/advancements/story/vat.json create mode 100644 src/main/resources/data/firmalife/advancements/story/wax.json create mode 100644 src/main/resources/data/firmalife/tags/blocks/food_shelves.json create mode 100644 src/main/resources/data/firmalife/tags/blocks/hangers.json create mode 100644 src/main/resources/data/firmalife/tags/blocks/jarbnets.json create mode 100644 src/main/resources/data/firmalife/tags/items/all_copper_greenhouse.json create mode 100644 src/main/resources/data/firmalife/tags/items/all_iron_greenhouse.json create mode 100644 src/main/resources/data/firmalife/tags/items/all_treated_wood_greenhouse.json create mode 100644 src/main/resources/data/firmalife/tags/items/cellar_insulation.json create mode 100644 src/main/resources/data/firmalife/tags/items/cheese_wheels.json create mode 100644 src/main/resources/data/firmalife/tags/items/food_shelves.json create mode 100644 src/main/resources/data/firmalife/tags/items/greenhouse.json create mode 100644 src/main/resources/data/firmalife/tags/items/hangers.json create mode 100644 src/main/resources/data/firmalife/tags/items/jarbnets.json diff --git a/resources/advancements.py b/resources/advancements.py new file mode 100644 index 00000000..76ed7f37 --- /dev/null +++ b/resources/advancements.py @@ -0,0 +1,104 @@ +from mcresources import ResourceManager, utils, advancements +from mcresources.advancements import AdvancementCategory +from mcresources.type_definitions import Json + +from constants import * + + +def generate(rm: ResourceManager): + story = AdvancementCategory(rm, 'story', 'firmalife:textures/block/sealed_bricks.png') + + story.advancement('root', icon('firmalife:empty_jar'), 'Firmalife Story', 'Things to do with Firmalife.', None, root_trigger(), chat=False) + story.advancement('rennet', icon('firmalife:rennet'), 'A Useful Stomach', 'Kill an animal for some rennet.', 'root', inventory_changed('firmalife:rennet')) + story.advancement('cheese_wheel', icon('firmalife:chevre_wheel'), 'A Wheel of Cheese', 'Craft your first cheese wheel.', 'rennet', inventory_changed('#firmalife:cheese_wheels')) + story.advancement('all_cheese', icon('firmalife:food/gouda'), 'Lactose Larry', 'Cut off a slice of every kind of cheese.', 'cheese_wheel', multiple(*[inventory_changed('firmalife:food/%s' % c, name=c) for c in ('gouda', 'chevre', 'cheddar', 'feta', 'rayja_metok', 'shosha')]), requirements=[[c] for c in ('gouda', 'chevre', 'cheddar', 'feta', 'rayja_metok', 'shosha')], frame='challenge') + story.advancement('climate_station', icon('firmalife:climate_station'), 'Climate Control', 'Craft a climate station.', 'root', inventory_changed('firmalife:climate_station')) + story.advancement('cellar', icon('firmalife:sealed_bricks'), 'A Waxy Solution', 'Craft a cellar block.', 'climate_station', inventory_changed('#firmalife:cellar_insulation')) + story.advancement('big_cellar', icon('firmalife:sealed_door'), 'The Dungeon', 'Activate a cellar of more than 200 blocks.', 'cellar', generic('firmalife:big_cellar', None), frame='goal') + story.advancement('shelf', icon('firmalife:wood/food_shelf/kapok'), 'Shelve it', 'Craft a food shelf.', 'cellar', inventory_changed('#firmalife:food_shelves')) + story.advancement('hanger', icon('firmalife:wood/hanger/birch'), 'Hang it', 'Craft a food hanger.', 'cellar', inventory_changed('#firmalife:hangers')) + story.advancement('greenhouse', icon('firmalife:copper_greenhouse_wall'), 'It\'s like a house, but Green.', 'Craft a greenhouse block.', 'climate_station', inventory_changed('#firmalife:greenhouse')) + story.advancement('big_greenhouse', icon('firmalife:stainless_steel_greenhouse_wall'), 'Food for Days', 'Activate a stainless steel greenhouse of more than 200 blocks.', 'greenhouse', generic('firmalife:big_stainless_greenhouse', None), frame='goal') + story.advancement('dribbler', icon('firmalife:dribbler'), 'Dribbler', 'Craft a Dribbler.', 'greenhouse', inventory_changed('firmalife:dribbler')) + story.advancement('sprinkler', icon('firmalife:sprinkler'), 'Sprinkler', 'Craft a Sprinkler.', 'greenhouse', inventory_changed('firmalife:sprinkler')) + story.advancement('planters', icon('firmalife:large_planter'), 'Planter City', 'Craft every kind of greenhouse planter.', 'greenhouse', multiple(*[inventory_changed('firmalife:%s_planter' % p, name=p) for p in PLANTERS]), requirements=[[p] for p in PLANTERS], frame='goal') + story.advancement('nutritive_basin', icon('firmalife:nutritive_basin'), 'Balance (TM)', 'Craft a nutritive basin.', 'greenhouse', inventory_changed('firmalife:nutritive_basin')) + story.advancement('hive', icon('firmalife:beehive'), 'So they just move in on their own?', 'Craft a beehive.', 'root', inventory_changed('firmalife:beehive')) + story.advancement('wax', icon('firmalife:beeswax'), 'Does this hurt the bee?', 'Get some beeswax from a hive.', 'hive', inventory_changed('firmalife:beeswax')) + story.advancement('jars', icon('firmalife:empty_jar'), 'minecraft.jar', 'Craft an empty jar.', 'hive', inventory_changed('firmalife:empty_jar')) + story.advancement('jarbnet', icon('firmalife:wood/jarbnet/palm'), 'Cupholder', 'Craft a jarbnet.', 'jars', inventory_changed('#firmalife:jarbnets')) + story.advancement('preserves', icon('firmalife:blueberry_jar'), 'Cannery', 'Craft fruit preserves.', 'jars', inventory_changed('#firmalife:foods/preserves')) + story.advancement('jarring_station', icon('firmalife:jarring_station'), 'Industrial Cannery', 'Craft a jarring station.', 'preserves', inventory_changed('firmalife:jarring_station'), frame='challenge') + story.advancement('smoker', icon('tfc:food/venison'), 'Up in Smoke', 'Place some string for smoking.', 'root', placed_block('firmalife:wool_string')) + story.advancement('dry', icon('firmalife:drying_mat'), 'Hydrophobic', 'Craft a drying mat.', 'root', inventory_changed('firmalife:drying_mat')) + story.advancement('oven', icon('firmalife:oven_bottom'), 'Bread Machine', 'Craft a top and bottom oven, and a chimney.', 'root', multiple(inventory_changed('firmalife:oven_bottom', name='ob'), inventory_changed('firmalife:oven_top', name='ot'), inventory_changed('firmalife:oven_chimney', name='ot')), requirements=[['ot'], ['oc'], ['ob']]) + story.advancement('oven_hopper', icon('firmalife:oven_hopper'), 'Hop it', 'Craft an oven hopper.', 'oven', inventory_changed('firmalife:oven_hopper')) + story.advancement('ashtray', icon('firmalife:ashtray'), 'Free Fertilizer', 'Craft an ashtray.', 'oven', inventory_changed('firmalife:ashtray')) + story.advancement('vat', icon('firmalife:vat'), 'A Large Vat', 'Craft a vat.', 'oven', inventory_changed('firmalife:vat')) + story.advancement('stovetop_pot', icon('tfc:ceramic/pot'), 'Stovetop Pot', 'Put a pot on a bottom oven.', 'oven', generic('firmalife:stovetop_pot', None)) + story.advancement('stovetop_grill', icon('tfc:wrought_iron_grill'), 'Stovetop Grill', 'Put a grill on a bottom oven.', 'oven', generic('firmalife:stovetop_grill', None)) + story.advancement('oven_finishes', icon('firmalife:oven_insulation'), 'Finish him!', 'Craft all oven finishes, and oven insulation.', 'oven', multiple(*[inventory_changed('firmalife:%s' % c, name=c) for c in ('oven_insulation', 'rustic_finish', 'stone_finish', 'tile_finish')]), requirements=[[c] for c in ('oven_insulation', 'rustic_finish', 'stone_finish', 'tile_finish')]) + story.advancement('mixer', icon('firmalife:mixing_bowl'), 'Mixer', 'Craft a mixing bowl.', 'wax', inventory_changed('firmalife:mixing_bowl')) + story.advancement('chocolate', icon('firmalife:food/dark_chocolate'), 'Chocolatier', 'Make some chocolate.', 'mixer', inventory_changed('#firmalife:foods/chocolate')) + story.advancement('chromite', icon('firmalife:ore/small_chromite'), 'Shiny and Chrome', 'Find some chromite.', 'root', inventory_changed('firmalife:ore/small_chromite')) + story.advancement('iron_composter', icon('firmalife:iron_composter'), 'Rusty Composter', 'Craft an iron composter', 'root', inventory_changed('firmalife:iron_composter')) + story.advancement('pizza', icon('firmalife:food/cooked_pizza'), 'Pizzeria', 'Bake some pizza in an oven.', 'oven', inventory_changed('firmalife:food/cooked_pizza')) + story.advancement('pie', icon('firmalife:food/cooked_pie'), 'Pie in the Face', 'Bake a pie.', 'oven', inventory_changed('firmalife:food/cooked_pie')) + story.advancement('burrito_taco', icon('firmalife:food/burrito'), 'Taqueria', 'Make a burrito and a taco.', 'oven', multiple(inventory_changed('firmalife:food/taco', name='taco'), inventory_changed('firmalife:food/burrito', name='burrito')), requirements=[['taco'], ['burrito']], frame='challenge') + story.advancement('baller', icon('firmalife:seed_ball'), 'Baller', 'Craft a seed ball.', 'root', inventory_changed('firmalife:seed_ball')) + story.advancement('pickled_egg', icon('firmalife:food/pickled_egg'), 'You put WHAT in this?', 'Craft a pickled egg.', 'root', inventory_changed('firmalife:food/pickled_egg')) + story.advancement('bacon', icon('firmalife:food/cooked_bacon'), 'Sizzle', 'Cook some bacon', 'root', inventory_changed('firmalife:food/bacon')) + +def kill_mob(mob: str, other: Dict = None) -> Json: + return generic('minecraft:player_killed_entity', {'entity': [entity_predicate(mob, other)]}) + +# if the predicate is (and usually it will be) an EntityPredicate.Composite, this should be inside an array. +# EntityPredicate.Composite wraps a vanilla loot event in a trigger event +def entity_predicate(mob: str, other: Dict = None) -> Json: + dic = { + 'condition': 'minecraft:entity_properties', + 'predicate': {'type': mob}, # can be a hashtag to refer to entity tags + 'entity': 'this', + } + if other is not None: + dic.update(other) + return dic + + +def consume_item(item: str, name: str = 'item_consumed') -> Json: + if isinstance(item, str) and name == 'item_consumed': + name = item.split(':')[1] + return generic('minecraft:consume_item', {'item': utils.item_predicate(item)}, name=name) + +def icon(name: str) -> Json: + return {'item': name} + +def biome(biome_name: str) -> Json: + return generic('minecraft:location', {'location': {'biome': 'tfc:%s' % biome_name}}, name=biome_name) + +def multiple(*conditions: Json) -> Json: + merged = {} + for c in conditions: + merged.update(c) + return merged + +def generic(trigger_type: str, conditions: Json, name: str = 'special_condition') -> Json: + return {name: {'trigger': trigger_type, 'conditions': conditions}} + +def inventory_changed(item: str | Json, name: str = 'item_obtained') -> Json: + if isinstance(item, str) and name == 'item_obtained': + name = item.split(':')[1] + return {name: advancements.inventory_changed(item)} + +def item_use_on_block(block: str, item: str, name: str = 'item_use_on_block_condition'): + block_json = {'tag': block[1:]} if block[0] == '#' else {'blocks': [block]} + return {name: {'trigger': 'minecraft:item_used_on_block', 'conditions': { + 'location': {'block': block_json}, + 'item': {'items': [item]} + }}} + +def placed_block(block: str, name: str = 'block_placed_condition') -> Json: + return {name: {'trigger': 'minecraft:placed_block', 'conditions': {'block': block}}} + +def root_trigger() -> Json: + return {'in_game_condition': {'trigger': 'minecraft:tick'}} \ No newline at end of file diff --git a/resources/assets.py b/resources/assets.py index eec1e18a..d8368219 100644 --- a/resources/assets.py +++ b/resources/assets.py @@ -180,7 +180,7 @@ def generate(rm: ResourceManager): block = rm.blockstate('%s_wheel' % cheese, variants=dict( ('age=%s,count=%s' % (a, c), {'model': 'firmalife:block/cheese/%s_%s_%s' % (cheese, a, c)}) for a in ('fresh', 'aged', 'vintage') for c in range(1, 5) - )).with_lang(lang('%s cheese wheel', cheese)).with_tag('cheese_wheels') + )).with_lang(lang('%s cheese wheel', cheese)).with_tag('cheese_wheels').with_item_tag('cheese_wheels') block.with_block_loot([{ 'name': 'firmalife:food/%s' % cheese, 'functions': [loot_tables.set_count(c)], @@ -252,12 +252,12 @@ def generate(rm: ResourceManager): flower_pot_cross(rm, herb, 'firmalife:plant/potted/%s' % herb, 'plant/flowerpot/%s' % herb, 'firmalife:block/plant/%s/1' % herb, 'firmalife:plant/%s' % herb) for wood in TFC_WOODS.keys(): - block = rm.blockstate('firmalife:wood/food_shelf/%s' % wood, variants=four_rotations('firmalife:block/wood/food_shelf/%s' % wood, (270, 180, None, 90))) + block = rm.blockstate('firmalife:wood/food_shelf/%s' % wood, variants=four_rotations('firmalife:block/wood/food_shelf/%s' % wood, (270, 180, None, 90))).with_tag('food_shelves').with_item_tag('food_shelves') block.with_block_loot('firmalife:wood/food_shelf/%s' % wood).with_lang(lang('%s food shelf', wood)).with_tag('minecraft:mineable/axe') rm.item_model('firmalife:wood/food_shelf/%s' % wood, parent='firmalife:block/wood/food_shelf/%s' % wood, no_textures=True) rm.block_model('firmalife:wood/food_shelf/%s' % wood, parent='firmalife:block/food_shelf_base', textures={'wood': 'tfc:block/wood/planks/%s' % wood}) - block = rm.blockstate('firmalife:wood/hanger/%s' % wood, model='firmalife:block/wood/hanger/%s' % wood) + block = rm.blockstate('firmalife:wood/hanger/%s' % wood, model='firmalife:block/wood/hanger/%s' % wood).with_tag('hangers').with_item_tag('hangers') block.with_block_loot('firmalife:wood/hanger/%s' % wood).with_lang(lang('%s hanger' % wood)).with_tag('minecraft:mineable/axe') rm.item_model('firmalife:wood/hanger/%s' % wood, parent='firmalife:block/wood/hanger/%s' % wood, no_textures=True) rm.block_model('firmalife:wood/hanger/%s' % wood, parent='firmalife:block/hanger_base', textures={'wood': 'tfc:block/wood/planks/%s' % wood, 'string': 'minecraft:block/white_wool'}) @@ -266,7 +266,7 @@ def generate(rm: ResourceManager): **four_rotations('firmalife:block/wood/jarbnet/%s' % wood, (90, None, 180, 270), suffix=',open=true'), **four_rotations('firmalife:block/wood/jarbnet/%s_shut' % wood, (90, None, 180, 270), suffix=',open=false'), }) - block.with_block_loot('firmalife:wood/jarbnet/%s' % wood).with_lang(lang('%s jarbnet', wood)).with_tag('minecraft:mineable/axe') + block.with_block_loot('firmalife:wood/jarbnet/%s' % wood).with_lang(lang('%s jarbnet', wood)).with_tag('minecraft:mineable/axe').with_tag('jarbnets').with_item_tag('jarbnets') rm.item_model('firmalife:wood/jarbnet/%s' % wood, parent='firmalife:block/wood/jarbnet/%s' % wood, no_textures=True) textures = {'planks': 'tfc:block/wood/planks/%s' % wood, 'sheet': 'tfc:block/wood/sheet/%s' % wood, 'log': 'tfc:block/wood/log/%s' % wood} rm.block_model('firmalife:wood/jarbnet/%s' % wood, parent='firmalife:block/jarbnet', textures=textures) diff --git a/resources/constants.py b/resources/constants.py index bb13e291..1ada89c2 100644 --- a/resources/constants.py +++ b/resources/constants.py @@ -109,7 +109,7 @@ class Wood(NamedTuple): 'exposed_copper': 'copper', 'weathered_treated_wood': 'treated_wood' } -PLANTERS = ('hanging', 'bonsai', 'quad', 'large', 'trellis') +PLANTERS = ('hanging', 'bonsai', 'quad', 'large', 'trellis', 'hydroponic') CARVINGS = { 'none': ['XXXXX', 'XXXXX', 'XXXXX', 'X X', 'XXXXX'], @@ -220,7 +220,7 @@ def preset_vein(ore: str, vein_type: str, rocks: List[str], spoiler_ore: Optiona 'firmalife.bee.parasitic_infection': 'Parasitic Infection: %s', **{'firmalife.bee.disease%s' % i: d for i, d in enumerate(GENETIC_DISEASES)}, **{'firmalife.bee.infection%s' % i: d for i, d in enumerate(PARASITIC_INFECTIONS)}, - 'firmalife.beehive.honey': 'Honey: %s / 16', + 'firmalife.beehive.honey': 'Honey: %s / 12', 'firmalife.beehive.bee': 'Frame %s: ', 'firmalife.beehive.bee_cold': 'Too cold! Minimum: %s C, Current: %s C', 'firmalife.beehive.has_queen': 'Has Queen. ', diff --git a/resources/data.py b/resources/data.py index e8ed096b..0b84d3c9 100644 --- a/resources/data.py +++ b/resources/data.py @@ -74,12 +74,12 @@ def generate(rm: ResourceManager): rm.block_tag('bee_restoration_plants', *['tfc:plant/%s' % p for p in TFC_FLOWERS]) rm.block_tag('bee_restoration_water_plants', *['tfc:plant/%s' % p for p in TFC_FLOATING_FLOWERS]) rm.block_tag('bee_plants', '#firmalife:bee_restoration_plants', '#firmalife:bee_restoration_water_plants', '#firmalife:planters') - rm.block_tag('all_iron_greenhouse', '#firmalife:iron_greenhouse', '#firmalife:rusted_iron_greenhouse') - rm.block_tag('all_copper_greenhouse', *['#firmalife:%s_greenhouse' % g for g in ('exposed_copper', 'weathered_copper', 'copper', 'oxidized_copper')]) - rm.block_tag('all_treated_wood_greenhouse', '#firmalife:treated_wood_greenhouse', '#firmalife:weathered_treated_wood_greenhouse') - rm.block_tag('greenhouse', '#firmalife:all_iron_greenhouse', '#firmalife:all_copper_greenhouse', '#firmalife:all_treated_wood_greenhouse', '#firmalife:stainless_steel_greenhouse') + block_and_item_tag(rm, 'all_iron_greenhouse', '#firmalife:iron_greenhouse', '#firmalife:rusted_iron_greenhouse') + block_and_item_tag(rm, 'all_copper_greenhouse', *['#firmalife:%s_greenhouse' % g for g in ('exposed_copper', 'weathered_copper', 'copper', 'oxidized_copper')]) + block_and_item_tag(rm, 'all_treated_wood_greenhouse', '#firmalife:treated_wood_greenhouse', '#firmalife:weathered_treated_wood_greenhouse') + block_and_item_tag(rm, 'greenhouse', '#firmalife:all_iron_greenhouse', '#firmalife:all_copper_greenhouse', '#firmalife:all_treated_wood_greenhouse', '#firmalife:stainless_steel_greenhouse') + block_and_item_tag(rm, 'cellar_insulation', 'firmalife:sealed_bricks', 'firmalife:sealed_door', 'firmalife:sealed_trapdoor', 'firmalife:sealed_wall') rm.block_tag('drops_fruit_leaf', '#tfc:fruit_tree_leaves') - rm.block_tag('cellar_insulation', 'firmalife:sealed_bricks', 'firmalife:sealed_door', 'firmalife:sealed_trapdoor', 'firmalife:sealed_wall') rm.block_tag('buzzing_leaves', 'firmalife:plant/fig_leaves') rm.block_tag('pipe_replaceable', '#tfc:dirt', '#tfc:grass', '#minecraft:base_stone_overworld', '#forge:gravel', '#minecraft:sand', '#tfc:can_carve') rm.block_tag('tfc:thorny_bushes', 'firmalife:plant/pineapple_bush') diff --git a/resources/generate_resources.py b/resources/generate_resources.py index b5db4ac0..ccd86137 100644 --- a/resources/generate_resources.py +++ b/resources/generate_resources.py @@ -11,6 +11,7 @@ import recipes import data import world_gen +import advancements class ModificationLoggingResourceManager(ResourceManager): @@ -52,6 +53,7 @@ def generate_all(rm: ResourceManager): data.generate(rm) metal_stuff.generate(rm) world_gen.generate(rm) + advancements.generate(rm) rm.flush() diff --git a/src/main/java/com/eerussianguy/firmalife/FirmaLife.java b/src/main/java/com/eerussianguy/firmalife/FirmaLife.java index 1794b2a1..9a5d8446 100644 --- a/src/main/java/com/eerussianguy/firmalife/FirmaLife.java +++ b/src/main/java/com/eerussianguy/firmalife/FirmaLife.java @@ -1,5 +1,6 @@ package com.eerussianguy.firmalife; +import com.eerussianguy.firmalife.common.util.FLAdvancements; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.fml.InterModComms; @@ -84,6 +85,7 @@ public void setup(FMLCommonSetupEvent event) FLInteractionManager.init(); FLFoodTraits.init(); FLBlocks.registerFlowerPotFlowers(); + FLAdvancements.init(); TFCConfig.SERVER.enablePumpkinCarving.set(false); }); FLItemStackModifiers.init(); diff --git a/src/main/java/com/eerussianguy/firmalife/common/blocks/greenhouse/ClimateStationBlock.java b/src/main/java/com/eerussianguy/firmalife/common/blocks/greenhouse/ClimateStationBlock.java index e081096f..62cc10d7 100644 --- a/src/main/java/com/eerussianguy/firmalife/common/blocks/greenhouse/ClimateStationBlock.java +++ b/src/main/java/com/eerussianguy/firmalife/common/blocks/greenhouse/ClimateStationBlock.java @@ -3,9 +3,14 @@ import java.util.Random; import java.util.Set; +import com.eerussianguy.firmalife.common.FLHelpers; +import com.eerussianguy.firmalife.common.blocks.FLBlocks; +import com.eerussianguy.firmalife.common.util.FLAdvancements; +import com.eerussianguy.firmalife.common.util.GreenhouseType; import net.minecraft.core.BlockPos; import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.LivingEntity; @@ -100,9 +105,17 @@ public InteractionResult use(BlockState state, Level level, BlockPos pos, Player else { either.ifLeft(info -> { + if (info.positions().size() > 200 && player instanceof ServerPlayer server && info.type().id.toString().contains("stainless_steel")) + { + FLAdvancements.BIG_STAINLESS_GREENHOUSE.trigger(server); + } player.displayClientMessage(new TranslatableComponent(MOD_ID + ".greenhouse.found", info.positions().size()), true); }); either.ifRight(positions -> { + if (positions.size() > 200 && player instanceof ServerPlayer server) + { + FLAdvancements.BIG_CELLAR.trigger(server); + } player.displayClientMessage(new TranslatableComponent(MOD_ID + ".cellar.found", positions.size()), true); }); return InteractionResult.sidedSuccess(level.isClientSide); @@ -113,7 +126,7 @@ public InteractionResult use(BlockState state, Level level, BlockPos pos, Player @SuppressWarnings("deprecation") public void randomTick(BlockState state, ServerLevel level, BlockPos pos, Random random) { - if (random.nextInt(5) == 0) + if (random.nextInt(4) == 0) { super.randomTick(state, level, pos, random); // causes a block tick } diff --git a/src/main/java/com/eerussianguy/firmalife/common/misc/FLInteractionManager.java b/src/main/java/com/eerussianguy/firmalife/common/misc/FLInteractionManager.java index 20d85fae..2deb5b39 100644 --- a/src/main/java/com/eerussianguy/firmalife/common/misc/FLInteractionManager.java +++ b/src/main/java/com/eerussianguy/firmalife/common/misc/FLInteractionManager.java @@ -1,8 +1,10 @@ package com.eerussianguy.firmalife.common.misc; import com.eerussianguy.firmalife.common.blocks.OvenBottomBlock; +import com.eerussianguy.firmalife.common.util.FLAdvancements; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionResult; import net.minecraft.world.item.crafting.Ingredient; @@ -33,6 +35,10 @@ public static void init() { level.setBlockAndUpdate(abovePos, FLBlocks.STOVETOP_GRILL.get().defaultBlockState()); if (context.getPlayer() == null || !context.getPlayer().isCreative()) stack.shrink(1); + if (context.getPlayer() instanceof ServerPlayer server) + { + FLAdvancements.STOVETOP_GRILL.trigger(server); + } return InteractionResult.SUCCESS; } @@ -48,6 +54,10 @@ public static void init() { level.setBlockAndUpdate(abovePos, FLBlocks.STOVETOP_POT.get().defaultBlockState()); if (context.getPlayer() == null || !context.getPlayer().isCreative()) stack.shrink(1); + if (context.getPlayer() instanceof ServerPlayer server) + { + FLAdvancements.STOVETOP_POT.trigger(server); + } return InteractionResult.SUCCESS; } diff --git a/src/main/java/com/eerussianguy/firmalife/common/util/FLAdvancements.java b/src/main/java/com/eerussianguy/firmalife/common/util/FLAdvancements.java new file mode 100644 index 00000000..5a4a6e43 --- /dev/null +++ b/src/main/java/com/eerussianguy/firmalife/common/util/FLAdvancements.java @@ -0,0 +1,22 @@ +package com.eerussianguy.firmalife.common.util; + +import com.eerussianguy.firmalife.common.FLHelpers; +import net.minecraft.advancements.CriteriaTriggers; + +import net.dries007.tfc.util.advancements.GenericTrigger; + +public final class FLAdvancements +{ + public static void init() {} + + public static final GenericTrigger BIG_CELLAR = registerGeneric("big_cellar"); + public static final GenericTrigger BIG_STAINLESS_GREENHOUSE = registerGeneric("big_stainless_greenhouse"); + public static final GenericTrigger STOVETOP_POT = registerGeneric("stovetop_pot"); + public static final GenericTrigger STOVETOP_GRILL = registerGeneric("stovetop_grill"); + + public static GenericTrigger registerGeneric(String name) + { + return CriteriaTriggers.register(new GenericTrigger(FLHelpers.identifier(name))); + } + +} diff --git a/src/main/resources/assets/firmalife/lang/en_us.json b/src/main/resources/assets/firmalife/lang/en_us.json index ecd8d213..485b4b13 100644 --- a/src/main/resources/assets/firmalife/lang/en_us.json +++ b/src/main/resources/assets/firmalife/lang/en_us.json @@ -589,7 +589,7 @@ "firmalife.bee.infection3": "Wax Moths", "firmalife.bee.infection4": "Hive Beetles", "firmalife.bee.infection5": "Mites", - "firmalife.beehive.honey": "Honey: %s / 16", + "firmalife.beehive.honey": "Honey: %s / 12", "firmalife.beehive.bee": "Frame %s: ", "firmalife.beehive.bee_cold": "Too cold! Minimum: %s C, Current: %s C", "firmalife.beehive.has_queen": "Has Queen. ", @@ -671,5 +671,85 @@ "block.firmalife.fluid.metal.chromium": "Molten Chromium", "fluid.firmalife.metal.chromium": "Molten Chromium", "item.firmalife.bucket.metal.chromium": "Molten Chromium Bucket", - "metal.firmalife.chromium": "Chromium" + "metal.firmalife.chromium": "Chromium", + "firmalife.advancements.story.root.title": "Firmalife Story", + "firmalife.advancements.story.root.description": "Things to do with Firmalife.", + "firmalife.advancements.story.rennet.title": "A Useful Stomach", + "firmalife.advancements.story.rennet.description": "Kill an animal for some rennet.", + "firmalife.advancements.story.cheese_wheel.title": "A Wheel of Cheese", + "firmalife.advancements.story.cheese_wheel.description": "Craft your first cheese wheel.", + "firmalife.advancements.story.all_cheese.title": "Lactose Larry", + "firmalife.advancements.story.all_cheese.description": "Cut off a slice of every kind of cheese.", + "firmalife.advancements.story.climate_station.title": "Climate Control", + "firmalife.advancements.story.climate_station.description": "Craft a climate station.", + "firmalife.advancements.story.cellar.title": "A Waxy Solution", + "firmalife.advancements.story.cellar.description": "Craft a cellar block.", + "firmalife.advancements.story.big_cellar.title": "The Dungeon", + "firmalife.advancements.story.big_cellar.description": "Activate a cellar of more than 200 blocks.", + "firmalife.advancements.story.shelf.title": "Shelve it", + "firmalife.advancements.story.shelf.description": "Craft a food shelf.", + "firmalife.advancements.story.hanger.title": "Hang it", + "firmalife.advancements.story.hanger.description": "Craft a food hanger.", + "firmalife.advancements.story.greenhouse.title": "It's like a house, but Green.", + "firmalife.advancements.story.greenhouse.description": "Craft a greenhouse block.", + "firmalife.advancements.story.big_greenhouse.title": "Food for Days", + "firmalife.advancements.story.big_greenhouse.description": "Activate a stainless steel greenhouse of more than 200 blocks.", + "firmalife.advancements.story.dribbler.title": "Dribbler", + "firmalife.advancements.story.dribbler.description": "Craft a Dribbler.", + "firmalife.advancements.story.sprinkler.title": "Sprinkler", + "firmalife.advancements.story.sprinkler.description": "Craft a Sprinkler.", + "firmalife.advancements.story.planters.title": "Planter City", + "firmalife.advancements.story.planters.description": "Craft every kind of greenhouse planter.", + "firmalife.advancements.story.nutritive_basin.title": "Balance (TM)", + "firmalife.advancements.story.nutritive_basin.description": "Craft a nutritive basin.", + "firmalife.advancements.story.hive.title": "So they just move in on their own?", + "firmalife.advancements.story.hive.description": "Craft a beehive.", + "firmalife.advancements.story.wax.title": "Does this hurt the bee?", + "firmalife.advancements.story.wax.description": "Get some beeswax from a hive.", + "firmalife.advancements.story.jars.title": "minecraft.jar", + "firmalife.advancements.story.jars.description": "Craft an empty jar.", + "firmalife.advancements.story.jarbnet.title": "Cupholder", + "firmalife.advancements.story.jarbnet.description": "Craft a jarbnet.", + "firmalife.advancements.story.preserves.title": "Cannery", + "firmalife.advancements.story.preserves.description": "Craft fruit preserves.", + "firmalife.advancements.story.jarring_station.title": "Industrial Cannery", + "firmalife.advancements.story.jarring_station.description": "Craft a jarring station.", + "firmalife.advancements.story.smoker.title": "Up in Smoke", + "firmalife.advancements.story.smoker.description": "Place some string for smoking.", + "firmalife.advancements.story.dry.title": "Hydrophobic", + "firmalife.advancements.story.dry.description": "Craft a drying mat.", + "firmalife.advancements.story.oven.title": "Bread Machine", + "firmalife.advancements.story.oven.description": "Craft a top and bottom oven, and a chimney.", + "firmalife.advancements.story.oven_hopper.title": "Hop it", + "firmalife.advancements.story.oven_hopper.description": "Craft an oven hopper.", + "firmalife.advancements.story.ashtray.title": "Free Fertilizer", + "firmalife.advancements.story.ashtray.description": "Craft an ashtray.", + "firmalife.advancements.story.vat.title": "A Large Vat", + "firmalife.advancements.story.vat.description": "Craft a vat.", + "firmalife.advancements.story.stovetop_pot.title": "Stovetop Pot", + "firmalife.advancements.story.stovetop_pot.description": "Put a pot on a bottom oven.", + "firmalife.advancements.story.stovetop_grill.title": "Stovetop Grill", + "firmalife.advancements.story.stovetop_grill.description": "Put a grill on a bottom oven.", + "firmalife.advancements.story.oven_finishes.title": "Finish him!", + "firmalife.advancements.story.oven_finishes.description": "Craft all oven finishes, and oven insulation.", + "firmalife.advancements.story.mixer.title": "Mixer", + "firmalife.advancements.story.mixer.description": "Craft a mixing bowl.", + "firmalife.advancements.story.chocolate.title": "Chocolatier", + "firmalife.advancements.story.chocolate.description": "Make some chocolate.", + "firmalife.advancements.story.chromite.title": "Shiny and Chrome", + "firmalife.advancements.story.chromite.description": "Find some chromite.", + "firmalife.advancements.story.iron_composter.title": "Rusty Composter", + "firmalife.advancements.story.iron_composter.description": "Craft an iron composter", + "firmalife.advancements.story.pizza.title": "Pizzeria", + "firmalife.advancements.story.pizza.description": "Bake some pizza in an oven.", + "firmalife.advancements.story.pie.title": "Pie in the Face", + "firmalife.advancements.story.pie.description": "Bake a pie.", + "firmalife.advancements.story.burrito_taco.title": "Taqueria", + "firmalife.advancements.story.burrito_taco.description": "Make a burrito and a taco.", + "firmalife.advancements.story.baller.title": "Baller", + "firmalife.advancements.story.baller.description": "Craft a seed ball.", + "firmalife.advancements.story.pickled_egg.title": "You put WHAT in this?", + "firmalife.advancements.story.pickled_egg.description": "Craft a pickled egg.", + "firmalife.advancements.story.bacon.title": "Sizzle", + "firmalife.advancements.story.bacon.description": "Cook some bacon" } \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/all_cheese.json b/src/main/resources/data/firmalife/advancements/story/all_cheese.json new file mode 100644 index 00000000..044cb43f --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/all_cheese.json @@ -0,0 +1,114 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/cheese_wheel", + "criteria": { + "gouda": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/gouda" + ] + } + ] + } + }, + "chevre": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/chevre" + ] + } + ] + } + }, + "cheddar": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/cheddar" + ] + } + ] + } + }, + "feta": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/feta" + ] + } + ] + } + }, + "rayja_metok": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/rayja_metok" + ] + } + ] + } + }, + "shosha": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/shosha" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:food/gouda" + }, + "title": { + "translate": "firmalife.advancements.story.all_cheese.title" + }, + "description": { + "translate": "firmalife.advancements.story.all_cheese.description" + }, + "frame": "challenge", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "gouda" + ], + [ + "chevre" + ], + [ + "cheddar" + ], + [ + "feta" + ], + [ + "rayja_metok" + ], + [ + "shosha" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/ashtray.json b/src/main/resources/data/firmalife/advancements/story/ashtray.json new file mode 100644 index 00000000..39f46e0f --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/ashtray.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "ashtray": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:ashtray" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:ashtray" + }, + "title": { + "translate": "firmalife.advancements.story.ashtray.title" + }, + "description": { + "translate": "firmalife.advancements.story.ashtray.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "ashtray" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/bacon.json b/src/main/resources/data/firmalife/advancements/story/bacon.json new file mode 100644 index 00000000..607cf2a2 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/bacon.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "food/bacon": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/bacon" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:food/cooked_bacon" + }, + "title": { + "translate": "firmalife.advancements.story.bacon.title" + }, + "description": { + "translate": "firmalife.advancements.story.bacon.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "food/bacon" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/baller.json b/src/main/resources/data/firmalife/advancements/story/baller.json new file mode 100644 index 00000000..658f5198 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/baller.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "seed_ball": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:seed_ball" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:seed_ball" + }, + "title": { + "translate": "firmalife.advancements.story.baller.title" + }, + "description": { + "translate": "firmalife.advancements.story.baller.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "seed_ball" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/big_cellar.json b/src/main/resources/data/firmalife/advancements/story/big_cellar.json new file mode 100644 index 00000000..9cc190e1 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/big_cellar.json @@ -0,0 +1,30 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/cellar", + "criteria": { + "special_condition": { + "trigger": "firmalife:big_cellar" + } + }, + "display": { + "icon": { + "item": "firmalife:sealed_door" + }, + "title": { + "translate": "firmalife.advancements.story.big_cellar.title" + }, + "description": { + "translate": "firmalife.advancements.story.big_cellar.description" + }, + "frame": "goal", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "special_condition" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/big_greenhouse.json b/src/main/resources/data/firmalife/advancements/story/big_greenhouse.json new file mode 100644 index 00000000..ddecee9a --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/big_greenhouse.json @@ -0,0 +1,30 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/greenhouse", + "criteria": { + "special_condition": { + "trigger": "firmalife:big_stainless_greenhouse" + } + }, + "display": { + "icon": { + "item": "firmalife:stainless_steel_greenhouse_wall" + }, + "title": { + "translate": "firmalife.advancements.story.big_greenhouse.title" + }, + "description": { + "translate": "firmalife.advancements.story.big_greenhouse.description" + }, + "frame": "goal", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "special_condition" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/burrito_taco.json b/src/main/resources/data/firmalife/advancements/story/burrito_taco.json new file mode 100644 index 00000000..f3d30e55 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/burrito_taco.json @@ -0,0 +1,54 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "taco": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/taco" + ] + } + ] + } + }, + "burrito": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/burrito" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:food/burrito" + }, + "title": { + "translate": "firmalife.advancements.story.burrito_taco.title" + }, + "description": { + "translate": "firmalife.advancements.story.burrito_taco.description" + }, + "frame": "challenge", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "taco" + ], + [ + "burrito" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/cellar.json b/src/main/resources/data/firmalife/advancements/story/cellar.json new file mode 100644 index 00000000..76504382 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/cellar.json @@ -0,0 +1,37 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/climate_station", + "criteria": { + "cellar_insulation": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "firmalife:cellar_insulation" + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:sealed_bricks" + }, + "title": { + "translate": "firmalife.advancements.story.cellar.title" + }, + "description": { + "translate": "firmalife.advancements.story.cellar.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "cellar_insulation" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/cheese_wheel.json b/src/main/resources/data/firmalife/advancements/story/cheese_wheel.json new file mode 100644 index 00000000..42205a66 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/cheese_wheel.json @@ -0,0 +1,37 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/rennet", + "criteria": { + "cheese_wheels": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "firmalife:cheese_wheels" + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:chevre_wheel" + }, + "title": { + "translate": "firmalife.advancements.story.cheese_wheel.title" + }, + "description": { + "translate": "firmalife.advancements.story.cheese_wheel.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "cheese_wheels" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/chocolate.json b/src/main/resources/data/firmalife/advancements/story/chocolate.json new file mode 100644 index 00000000..3f70e2aa --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/chocolate.json @@ -0,0 +1,37 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/mixer", + "criteria": { + "foods/chocolate": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "firmalife:foods/chocolate" + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:food/dark_chocolate" + }, + "title": { + "translate": "firmalife.advancements.story.chocolate.title" + }, + "description": { + "translate": "firmalife.advancements.story.chocolate.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "foods/chocolate" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/chromite.json b/src/main/resources/data/firmalife/advancements/story/chromite.json new file mode 100644 index 00000000..18f211b3 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/chromite.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "ore/small_chromite": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:ore/small_chromite" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:ore/small_chromite" + }, + "title": { + "translate": "firmalife.advancements.story.chromite.title" + }, + "description": { + "translate": "firmalife.advancements.story.chromite.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "ore/small_chromite" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/climate_station.json b/src/main/resources/data/firmalife/advancements/story/climate_station.json new file mode 100644 index 00000000..cd4139e8 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/climate_station.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "climate_station": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:climate_station" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:climate_station" + }, + "title": { + "translate": "firmalife.advancements.story.climate_station.title" + }, + "description": { + "translate": "firmalife.advancements.story.climate_station.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "climate_station" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/dribbler.json b/src/main/resources/data/firmalife/advancements/story/dribbler.json new file mode 100644 index 00000000..30f36aa7 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/dribbler.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/greenhouse", + "criteria": { + "dribbler": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:dribbler" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:dribbler" + }, + "title": { + "translate": "firmalife.advancements.story.dribbler.title" + }, + "description": { + "translate": "firmalife.advancements.story.dribbler.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "dribbler" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/dry.json b/src/main/resources/data/firmalife/advancements/story/dry.json new file mode 100644 index 00000000..ceae26a1 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/dry.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "drying_mat": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:drying_mat" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:drying_mat" + }, + "title": { + "translate": "firmalife.advancements.story.dry.title" + }, + "description": { + "translate": "firmalife.advancements.story.dry.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "drying_mat" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/greenhouse.json b/src/main/resources/data/firmalife/advancements/story/greenhouse.json new file mode 100644 index 00000000..605c8ff4 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/greenhouse.json @@ -0,0 +1,37 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/climate_station", + "criteria": { + "greenhouse": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "firmalife:greenhouse" + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:copper_greenhouse_wall" + }, + "title": { + "translate": "firmalife.advancements.story.greenhouse.title" + }, + "description": { + "translate": "firmalife.advancements.story.greenhouse.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "greenhouse" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/hanger.json b/src/main/resources/data/firmalife/advancements/story/hanger.json new file mode 100644 index 00000000..510fbed6 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/hanger.json @@ -0,0 +1,37 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/cellar", + "criteria": { + "hangers": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "firmalife:hangers" + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:wood/hanger/birch" + }, + "title": { + "translate": "firmalife.advancements.story.hanger.title" + }, + "description": { + "translate": "firmalife.advancements.story.hanger.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "hangers" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/hive.json b/src/main/resources/data/firmalife/advancements/story/hive.json new file mode 100644 index 00000000..8189fc96 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/hive.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "beehive": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:beehive" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:beehive" + }, + "title": { + "translate": "firmalife.advancements.story.hive.title" + }, + "description": { + "translate": "firmalife.advancements.story.hive.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "beehive" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/iron_composter.json b/src/main/resources/data/firmalife/advancements/story/iron_composter.json new file mode 100644 index 00000000..aaf1c692 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/iron_composter.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "iron_composter": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:iron_composter" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:iron_composter" + }, + "title": { + "translate": "firmalife.advancements.story.iron_composter.title" + }, + "description": { + "translate": "firmalife.advancements.story.iron_composter.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "iron_composter" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/jarbnet.json b/src/main/resources/data/firmalife/advancements/story/jarbnet.json new file mode 100644 index 00000000..41f8dbc6 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/jarbnet.json @@ -0,0 +1,37 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/jars", + "criteria": { + "jarbnets": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "firmalife:jarbnets" + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:wood/jarbnet/palm" + }, + "title": { + "translate": "firmalife.advancements.story.jarbnet.title" + }, + "description": { + "translate": "firmalife.advancements.story.jarbnet.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "jarbnets" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/jarring_station.json b/src/main/resources/data/firmalife/advancements/story/jarring_station.json new file mode 100644 index 00000000..092bab85 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/jarring_station.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/preserves", + "criteria": { + "jarring_station": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:jarring_station" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:jarring_station" + }, + "title": { + "translate": "firmalife.advancements.story.jarring_station.title" + }, + "description": { + "translate": "firmalife.advancements.story.jarring_station.description" + }, + "frame": "challenge", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "jarring_station" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/jars.json b/src/main/resources/data/firmalife/advancements/story/jars.json new file mode 100644 index 00000000..921728fc --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/jars.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/hive", + "criteria": { + "empty_jar": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:empty_jar" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:empty_jar" + }, + "title": { + "translate": "firmalife.advancements.story.jars.title" + }, + "description": { + "translate": "firmalife.advancements.story.jars.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "empty_jar" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/mixer.json b/src/main/resources/data/firmalife/advancements/story/mixer.json new file mode 100644 index 00000000..249ba273 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/mixer.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/wax", + "criteria": { + "mixing_bowl": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:mixing_bowl" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:mixing_bowl" + }, + "title": { + "translate": "firmalife.advancements.story.mixer.title" + }, + "description": { + "translate": "firmalife.advancements.story.mixer.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "mixing_bowl" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/nutritive_basin.json b/src/main/resources/data/firmalife/advancements/story/nutritive_basin.json new file mode 100644 index 00000000..e74c1fc7 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/nutritive_basin.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/greenhouse", + "criteria": { + "nutritive_basin": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:nutritive_basin" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:nutritive_basin" + }, + "title": { + "translate": "firmalife.advancements.story.nutritive_basin.title" + }, + "description": { + "translate": "firmalife.advancements.story.nutritive_basin.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "nutritive_basin" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/oven.json b/src/main/resources/data/firmalife/advancements/story/oven.json new file mode 100644 index 00000000..906fff54 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/oven.json @@ -0,0 +1,57 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "ob": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:oven_bottom" + ] + } + ] + } + }, + "ot": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:oven_chimney" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:oven_bottom" + }, + "title": { + "translate": "firmalife.advancements.story.oven.title" + }, + "description": { + "translate": "firmalife.advancements.story.oven.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "ot" + ], + [ + "oc" + ], + [ + "ob" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/oven_finishes.json b/src/main/resources/data/firmalife/advancements/story/oven_finishes.json new file mode 100644 index 00000000..585c477a --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/oven_finishes.json @@ -0,0 +1,84 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "oven_insulation": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:oven_insulation" + ] + } + ] + } + }, + "rustic_finish": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:rustic_finish" + ] + } + ] + } + }, + "stone_finish": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:stone_finish" + ] + } + ] + } + }, + "tile_finish": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:tile_finish" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:oven_insulation" + }, + "title": { + "translate": "firmalife.advancements.story.oven_finishes.title" + }, + "description": { + "translate": "firmalife.advancements.story.oven_finishes.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "oven_insulation" + ], + [ + "rustic_finish" + ], + [ + "stone_finish" + ], + [ + "tile_finish" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/oven_hopper.json b/src/main/resources/data/firmalife/advancements/story/oven_hopper.json new file mode 100644 index 00000000..9df0b1c7 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/oven_hopper.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "oven_hopper": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:oven_hopper" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:oven_hopper" + }, + "title": { + "translate": "firmalife.advancements.story.oven_hopper.title" + }, + "description": { + "translate": "firmalife.advancements.story.oven_hopper.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "oven_hopper" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/pickled_egg.json b/src/main/resources/data/firmalife/advancements/story/pickled_egg.json new file mode 100644 index 00000000..cfbe9f33 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/pickled_egg.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "food/pickled_egg": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/pickled_egg" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:food/pickled_egg" + }, + "title": { + "translate": "firmalife.advancements.story.pickled_egg.title" + }, + "description": { + "translate": "firmalife.advancements.story.pickled_egg.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "food/pickled_egg" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/pie.json b/src/main/resources/data/firmalife/advancements/story/pie.json new file mode 100644 index 00000000..f3b5003a --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/pie.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "food/cooked_pie": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/cooked_pie" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:food/cooked_pie" + }, + "title": { + "translate": "firmalife.advancements.story.pie.title" + }, + "description": { + "translate": "firmalife.advancements.story.pie.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "food/cooked_pie" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/pizza.json b/src/main/resources/data/firmalife/advancements/story/pizza.json new file mode 100644 index 00000000..a605f142 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/pizza.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "food/cooked_pizza": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:food/cooked_pizza" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:food/cooked_pizza" + }, + "title": { + "translate": "firmalife.advancements.story.pizza.title" + }, + "description": { + "translate": "firmalife.advancements.story.pizza.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "food/cooked_pizza" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/planters.json b/src/main/resources/data/firmalife/advancements/story/planters.json new file mode 100644 index 00000000..7d6f4320 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/planters.json @@ -0,0 +1,114 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/greenhouse", + "criteria": { + "hanging": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:hanging_planter" + ] + } + ] + } + }, + "bonsai": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:bonsai_planter" + ] + } + ] + } + }, + "quad": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:quad_planter" + ] + } + ] + } + }, + "large": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:large_planter" + ] + } + ] + } + }, + "trellis": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:trellis_planter" + ] + } + ] + } + }, + "hydroponic": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:hydroponic_planter" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:large_planter" + }, + "title": { + "translate": "firmalife.advancements.story.planters.title" + }, + "description": { + "translate": "firmalife.advancements.story.planters.description" + }, + "frame": "goal", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "hanging" + ], + [ + "bonsai" + ], + [ + "quad" + ], + [ + "large" + ], + [ + "trellis" + ], + [ + "hydroponic" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/preserves.json b/src/main/resources/data/firmalife/advancements/story/preserves.json new file mode 100644 index 00000000..729987e1 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/preserves.json @@ -0,0 +1,37 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/jars", + "criteria": { + "foods/preserves": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "firmalife:foods/preserves" + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:blueberry_jar" + }, + "title": { + "translate": "firmalife.advancements.story.preserves.title" + }, + "description": { + "translate": "firmalife.advancements.story.preserves.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "foods/preserves" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/rennet.json b/src/main/resources/data/firmalife/advancements/story/rennet.json new file mode 100644 index 00000000..952fc331 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/rennet.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "rennet": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:rennet" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:rennet" + }, + "title": { + "translate": "firmalife.advancements.story.rennet.title" + }, + "description": { + "translate": "firmalife.advancements.story.rennet.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "rennet" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/root.json b/src/main/resources/data/firmalife/advancements/story/root.json new file mode 100644 index 00000000..20a46701 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/root.json @@ -0,0 +1,29 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "criteria": { + "in_game_condition": { + "trigger": "minecraft:tick" + } + }, + "display": { + "icon": { + "item": "firmalife:empty_jar" + }, + "title": { + "translate": "firmalife.advancements.story.root.title" + }, + "description": { + "translate": "firmalife.advancements.story.root.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": false, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "in_game_condition" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/shelf.json b/src/main/resources/data/firmalife/advancements/story/shelf.json new file mode 100644 index 00000000..8c5b8dfc --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/shelf.json @@ -0,0 +1,37 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/cellar", + "criteria": { + "food_shelves": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "firmalife:food_shelves" + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:wood/food_shelf/kapok" + }, + "title": { + "translate": "firmalife.advancements.story.shelf.title" + }, + "description": { + "translate": "firmalife.advancements.story.shelf.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "food_shelves" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/smoker.json b/src/main/resources/data/firmalife/advancements/story/smoker.json new file mode 100644 index 00000000..fac7b928 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/smoker.json @@ -0,0 +1,33 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/root", + "criteria": { + "block_placed_condition": { + "trigger": "minecraft:placed_block", + "conditions": { + "block": "firmalife:wool_string" + } + } + }, + "display": { + "icon": { + "item": "tfc:food/venison" + }, + "title": { + "translate": "firmalife.advancements.story.smoker.title" + }, + "description": { + "translate": "firmalife.advancements.story.smoker.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "block_placed_condition" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/sprinkler.json b/src/main/resources/data/firmalife/advancements/story/sprinkler.json new file mode 100644 index 00000000..bdd40346 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/sprinkler.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/greenhouse", + "criteria": { + "sprinkler": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:sprinkler" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:sprinkler" + }, + "title": { + "translate": "firmalife.advancements.story.sprinkler.title" + }, + "description": { + "translate": "firmalife.advancements.story.sprinkler.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "sprinkler" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/stovetop_grill.json b/src/main/resources/data/firmalife/advancements/story/stovetop_grill.json new file mode 100644 index 00000000..c0a48c44 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/stovetop_grill.json @@ -0,0 +1,30 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "special_condition": { + "trigger": "firmalife:stovetop_grill" + } + }, + "display": { + "icon": { + "item": "tfc:wrought_iron_grill" + }, + "title": { + "translate": "firmalife.advancements.story.stovetop_grill.title" + }, + "description": { + "translate": "firmalife.advancements.story.stovetop_grill.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "special_condition" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/stovetop_pot.json b/src/main/resources/data/firmalife/advancements/story/stovetop_pot.json new file mode 100644 index 00000000..ac01bbb2 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/stovetop_pot.json @@ -0,0 +1,30 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "special_condition": { + "trigger": "firmalife:stovetop_pot" + } + }, + "display": { + "icon": { + "item": "tfc:ceramic/pot" + }, + "title": { + "translate": "firmalife.advancements.story.stovetop_pot.title" + }, + "description": { + "translate": "firmalife.advancements.story.stovetop_pot.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "special_condition" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/vat.json b/src/main/resources/data/firmalife/advancements/story/vat.json new file mode 100644 index 00000000..42181323 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/vat.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/oven", + "criteria": { + "vat": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:vat" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:vat" + }, + "title": { + "translate": "firmalife.advancements.story.vat.title" + }, + "description": { + "translate": "firmalife.advancements.story.vat.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "vat" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/advancements/story/wax.json b/src/main/resources/data/firmalife/advancements/story/wax.json new file mode 100644 index 00000000..94ef2d69 --- /dev/null +++ b/src/main/resources/data/firmalife/advancements/story/wax.json @@ -0,0 +1,39 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "parent": "firmalife:story/hive", + "criteria": { + "beeswax": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "firmalife:beeswax" + ] + } + ] + } + } + }, + "display": { + "icon": { + "item": "firmalife:beeswax" + }, + "title": { + "translate": "firmalife.advancements.story.wax.title" + }, + "description": { + "translate": "firmalife.advancements.story.wax.description" + }, + "frame": "task", + "show_toast": true, + "announce_to_chat": true, + "hidden": false, + "background": "firmalife:textures/block/sealed_bricks.png" + }, + "requirements": [ + [ + "beeswax" + ] + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/blocks/food_shelves.json b/src/main/resources/data/firmalife/tags/blocks/food_shelves.json new file mode 100644 index 00000000..cf2532f2 --- /dev/null +++ b/src/main/resources/data/firmalife/tags/blocks/food_shelves.json @@ -0,0 +1,25 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "firmalife:wood/food_shelf/acacia", + "firmalife:wood/food_shelf/ash", + "firmalife:wood/food_shelf/aspen", + "firmalife:wood/food_shelf/birch", + "firmalife:wood/food_shelf/blackwood", + "firmalife:wood/food_shelf/chestnut", + "firmalife:wood/food_shelf/douglas_fir", + "firmalife:wood/food_shelf/hickory", + "firmalife:wood/food_shelf/kapok", + "firmalife:wood/food_shelf/maple", + "firmalife:wood/food_shelf/oak", + "firmalife:wood/food_shelf/palm", + "firmalife:wood/food_shelf/pine", + "firmalife:wood/food_shelf/rosewood", + "firmalife:wood/food_shelf/sequoia", + "firmalife:wood/food_shelf/spruce", + "firmalife:wood/food_shelf/sycamore", + "firmalife:wood/food_shelf/white_cedar", + "firmalife:wood/food_shelf/willow" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/blocks/hangers.json b/src/main/resources/data/firmalife/tags/blocks/hangers.json new file mode 100644 index 00000000..dd91cffe --- /dev/null +++ b/src/main/resources/data/firmalife/tags/blocks/hangers.json @@ -0,0 +1,25 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "firmalife:wood/hanger/acacia", + "firmalife:wood/hanger/ash", + "firmalife:wood/hanger/aspen", + "firmalife:wood/hanger/birch", + "firmalife:wood/hanger/blackwood", + "firmalife:wood/hanger/chestnut", + "firmalife:wood/hanger/douglas_fir", + "firmalife:wood/hanger/hickory", + "firmalife:wood/hanger/kapok", + "firmalife:wood/hanger/maple", + "firmalife:wood/hanger/oak", + "firmalife:wood/hanger/palm", + "firmalife:wood/hanger/pine", + "firmalife:wood/hanger/rosewood", + "firmalife:wood/hanger/sequoia", + "firmalife:wood/hanger/spruce", + "firmalife:wood/hanger/sycamore", + "firmalife:wood/hanger/white_cedar", + "firmalife:wood/hanger/willow" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/blocks/jarbnets.json b/src/main/resources/data/firmalife/tags/blocks/jarbnets.json new file mode 100644 index 00000000..eb3a3d5f --- /dev/null +++ b/src/main/resources/data/firmalife/tags/blocks/jarbnets.json @@ -0,0 +1,25 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "firmalife:wood/jarbnet/acacia", + "firmalife:wood/jarbnet/ash", + "firmalife:wood/jarbnet/aspen", + "firmalife:wood/jarbnet/birch", + "firmalife:wood/jarbnet/blackwood", + "firmalife:wood/jarbnet/chestnut", + "firmalife:wood/jarbnet/douglas_fir", + "firmalife:wood/jarbnet/hickory", + "firmalife:wood/jarbnet/kapok", + "firmalife:wood/jarbnet/maple", + "firmalife:wood/jarbnet/oak", + "firmalife:wood/jarbnet/palm", + "firmalife:wood/jarbnet/pine", + "firmalife:wood/jarbnet/rosewood", + "firmalife:wood/jarbnet/sequoia", + "firmalife:wood/jarbnet/spruce", + "firmalife:wood/jarbnet/sycamore", + "firmalife:wood/jarbnet/white_cedar", + "firmalife:wood/jarbnet/willow" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/blocks/planters.json b/src/main/resources/data/firmalife/tags/blocks/planters.json index 6c57fe24..70920ad2 100644 --- a/src/main/resources/data/firmalife/tags/blocks/planters.json +++ b/src/main/resources/data/firmalife/tags/blocks/planters.json @@ -6,6 +6,7 @@ "firmalife:bonsai_planter", "firmalife:quad_planter", "firmalife:large_planter", - "firmalife:trellis_planter" + "firmalife:trellis_planter", + "firmalife:hydroponic_planter" ] } \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/all_copper_greenhouse.json b/src/main/resources/data/firmalife/tags/items/all_copper_greenhouse.json new file mode 100644 index 00000000..88ff0f03 --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/all_copper_greenhouse.json @@ -0,0 +1,10 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "#firmalife:exposed_copper_greenhouse", + "#firmalife:weathered_copper_greenhouse", + "#firmalife:copper_greenhouse", + "#firmalife:oxidized_copper_greenhouse" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/all_iron_greenhouse.json b/src/main/resources/data/firmalife/tags/items/all_iron_greenhouse.json new file mode 100644 index 00000000..2a2bf654 --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/all_iron_greenhouse.json @@ -0,0 +1,8 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "#firmalife:iron_greenhouse", + "#firmalife:rusted_iron_greenhouse" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/all_treated_wood_greenhouse.json b/src/main/resources/data/firmalife/tags/items/all_treated_wood_greenhouse.json new file mode 100644 index 00000000..a4bc59e8 --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/all_treated_wood_greenhouse.json @@ -0,0 +1,8 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "#firmalife:treated_wood_greenhouse", + "#firmalife:weathered_treated_wood_greenhouse" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/cellar_insulation.json b/src/main/resources/data/firmalife/tags/items/cellar_insulation.json new file mode 100644 index 00000000..282c48e8 --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/cellar_insulation.json @@ -0,0 +1,10 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "firmalife:sealed_bricks", + "firmalife:sealed_door", + "firmalife:sealed_trapdoor", + "firmalife:sealed_wall" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/cheese_wheels.json b/src/main/resources/data/firmalife/tags/items/cheese_wheels.json new file mode 100644 index 00000000..341f83ba --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/cheese_wheels.json @@ -0,0 +1,12 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "firmalife:rajya_metok_wheel", + "firmalife:cheddar_wheel", + "firmalife:gouda_wheel", + "firmalife:feta_wheel", + "firmalife:chevre_wheel", + "firmalife:shosha_wheel" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/food_shelves.json b/src/main/resources/data/firmalife/tags/items/food_shelves.json new file mode 100644 index 00000000..cf2532f2 --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/food_shelves.json @@ -0,0 +1,25 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "firmalife:wood/food_shelf/acacia", + "firmalife:wood/food_shelf/ash", + "firmalife:wood/food_shelf/aspen", + "firmalife:wood/food_shelf/birch", + "firmalife:wood/food_shelf/blackwood", + "firmalife:wood/food_shelf/chestnut", + "firmalife:wood/food_shelf/douglas_fir", + "firmalife:wood/food_shelf/hickory", + "firmalife:wood/food_shelf/kapok", + "firmalife:wood/food_shelf/maple", + "firmalife:wood/food_shelf/oak", + "firmalife:wood/food_shelf/palm", + "firmalife:wood/food_shelf/pine", + "firmalife:wood/food_shelf/rosewood", + "firmalife:wood/food_shelf/sequoia", + "firmalife:wood/food_shelf/spruce", + "firmalife:wood/food_shelf/sycamore", + "firmalife:wood/food_shelf/white_cedar", + "firmalife:wood/food_shelf/willow" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/greenhouse.json b/src/main/resources/data/firmalife/tags/items/greenhouse.json new file mode 100644 index 00000000..d489589c --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/greenhouse.json @@ -0,0 +1,10 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "#firmalife:all_iron_greenhouse", + "#firmalife:all_copper_greenhouse", + "#firmalife:all_treated_wood_greenhouse", + "#firmalife:stainless_steel_greenhouse" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/hangers.json b/src/main/resources/data/firmalife/tags/items/hangers.json new file mode 100644 index 00000000..dd91cffe --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/hangers.json @@ -0,0 +1,25 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "firmalife:wood/hanger/acacia", + "firmalife:wood/hanger/ash", + "firmalife:wood/hanger/aspen", + "firmalife:wood/hanger/birch", + "firmalife:wood/hanger/blackwood", + "firmalife:wood/hanger/chestnut", + "firmalife:wood/hanger/douglas_fir", + "firmalife:wood/hanger/hickory", + "firmalife:wood/hanger/kapok", + "firmalife:wood/hanger/maple", + "firmalife:wood/hanger/oak", + "firmalife:wood/hanger/palm", + "firmalife:wood/hanger/pine", + "firmalife:wood/hanger/rosewood", + "firmalife:wood/hanger/sequoia", + "firmalife:wood/hanger/spruce", + "firmalife:wood/hanger/sycamore", + "firmalife:wood/hanger/white_cedar", + "firmalife:wood/hanger/willow" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/firmalife/tags/items/jarbnets.json b/src/main/resources/data/firmalife/tags/items/jarbnets.json new file mode 100644 index 00000000..eb3a3d5f --- /dev/null +++ b/src/main/resources/data/firmalife/tags/items/jarbnets.json @@ -0,0 +1,25 @@ +{ + "__comment__": "This file was automatically created by mcresources", + "replace": false, + "values": [ + "firmalife:wood/jarbnet/acacia", + "firmalife:wood/jarbnet/ash", + "firmalife:wood/jarbnet/aspen", + "firmalife:wood/jarbnet/birch", + "firmalife:wood/jarbnet/blackwood", + "firmalife:wood/jarbnet/chestnut", + "firmalife:wood/jarbnet/douglas_fir", + "firmalife:wood/jarbnet/hickory", + "firmalife:wood/jarbnet/kapok", + "firmalife:wood/jarbnet/maple", + "firmalife:wood/jarbnet/oak", + "firmalife:wood/jarbnet/palm", + "firmalife:wood/jarbnet/pine", + "firmalife:wood/jarbnet/rosewood", + "firmalife:wood/jarbnet/sequoia", + "firmalife:wood/jarbnet/spruce", + "firmalife:wood/jarbnet/sycamore", + "firmalife:wood/jarbnet/white_cedar", + "firmalife:wood/jarbnet/willow" + ] +} \ No newline at end of file