diff --git a/kubejs/data/tfg/loot_tables/chests/cruncher_nest.json b/kubejs/data/tfg/loot_tables/chests/cruncher_nest.json new file mode 100644 index 000000000..bd728cd64 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/chests/cruncher_nest.json @@ -0,0 +1,429 @@ +{ + "type": "minecraft:chest", + "pools": [ + { + "bonus_rolls": 0, + "entries": [ + { + "type": "minecraft:item", + "name": "gtceu:aluminium_fluid_cell", + "weight": 30, + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{Fluid: {Amount: 1000, FluidName: \"gtceu:rocket_fuel\"}}" + } + ] + }, + { + "type": "minecraft:item", + "name": "ad_astra:gas_tank", + "weight": 30, + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{BotariumData: {StoredFluids: [{Amount: 1000, Fluid: \"tfg:compressed_heliox_3\"}]}}" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:long_stainless_steel_rod", + "weight": 50 + }, + { + "type": "minecraft:item", + "name": "gtceu:stainless_steel_plate", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:stainless_steel_tiny_fluid_pipe", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 3, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:long_titanium_rod", + "weight": 30 + }, + { + "type": "minecraft:item", + "name": "gtceu:titanium_plate", + "weight": 30 + }, + { + "type": "minecraft:item", + "name": "gtceu:titanium_screw", + "weight": 30, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 5, + "min": 2 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:steel_plate", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 3, + "min": 2 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:double_steel_plate", + "weight": 50 + }, + { + "type": "minecraft:item", + "name": "gtceu:aluminium_double_wire", + "weight": 30, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 5, + "min": 2 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:kanthal_double_wire", + "weight": 30, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 5, + "min": 2 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:ev_vanadium_battery", + "weight": 20, + "functions": [ + { + "function": "minecraft:set_nbt", + "tag": "{Charge: 1200000}" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:ev_electric_pump", + "weight": 30 + }, + { + "type": "minecraft:item", + "name": "gtceu:ev_conveyor_module", + "weight": 30 + }, + { + "type": "minecraft:item", + "name": "gtceu:ev_electric_motor", + "weight": 30 + }, + { + "type": "minecraft:item", + "name": "gtceu:stainless_steel_ingot", + "weight": 65, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 8, + "min": 3 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:aluminium_ingot", + "weight": 80, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 16, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:titanium_ingot", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 5, + "min": 2 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:micro_processor_computer", + "weight": 20 + }, + { + "type": "minecraft:item", + "name": "gtceu:micro_processor_assembly", + "weight": 20, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 3, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:micro_processor", + "weight": 20, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 5, + "min": 2 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:uranium_ingot", + "weight": 20, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 6, + "min": 2 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:uranium_235_ingot", + "weight": 10, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 5, + "min": 3 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:thorium_232_rod", + "weight": 10, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 12, + "min": 7 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:thorium_230_rod", + "weight": 20, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 12, + "min": 7 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "species:music_disk_spawner", + "weight": 8 + }, + { + "type": "minecraft:item", + "name": "gtceu:rich_raw_pitchblende", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 10, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:raw_pitchblende", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 10, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:poor_raw_pitchblende", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 10, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:rich_raw_thorium", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 10, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:poor_raw_thorium", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 10, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + }, + { + "type": "minecraft:item", + "name": "gtceu:raw_thorium", + "weight": 50, + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 10, + "min": 1 + }, + "function": "minecraft:set_count" + } + ] + } + ], + "rolls": { + "type": "minecraft:uniform", + "max": 12, + "min": 9 + } + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/structures/dino_nests/cruncher.nbt b/kubejs/data/tfg/structures/dino_nests/cruncher.nbt new file mode 100644 index 000000000..38d73cc77 Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/cruncher.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/crusher.nbt b/kubejs/data/tfg/structures/dino_nests/crusher.nbt new file mode 100644 index 000000000..2d6137148 Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/crusher.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/eater.nbt b/kubejs/data/tfg/structures/dino_nests/eater.nbt new file mode 100644 index 000000000..682e1054f Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/eater.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/glider.nbt b/kubejs/data/tfg/structures/dino_nests/glider.nbt new file mode 100644 index 000000000..01b602b41 Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/glider.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/goober.nbt b/kubejs/data/tfg/structures/dino_nests/goober.nbt new file mode 100644 index 000000000..0cc4c8d6d Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/goober.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/sniffer.nbt b/kubejs/data/tfg/structures/dino_nests/sniffer.nbt new file mode 100644 index 000000000..78141f4cf Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/sniffer.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/soarer.nbt b/kubejs/data/tfg/structures/dino_nests/soarer.nbt new file mode 100644 index 000000000..7ce5b1fc7 Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/soarer.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/springling.nbt b/kubejs/data/tfg/structures/dino_nests/springling.nbt new file mode 100644 index 000000000..5caaf38df Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/springling.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/surfer.nbt b/kubejs/data/tfg/structures/dino_nests/surfer.nbt new file mode 100644 index 000000000..12030c6c4 Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/surfer.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/walker.nbt b/kubejs/data/tfg/structures/dino_nests/walker.nbt new file mode 100644 index 000000000..d824b504b Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/walker.nbt differ diff --git a/kubejs/data/tfg/structures/dino_nests/wraptor.nbt b/kubejs/data/tfg/structures/dino_nests/wraptor.nbt new file mode 100644 index 000000000..1b1318e1f Binary files /dev/null and b/kubejs/data/tfg/structures/dino_nests/wraptor.nbt differ diff --git a/kubejs/data/tfg/worldgen/structure/mars/dino_nests.json b/kubejs/data/tfg/worldgen/structure/mars/dino_nests.json new file mode 100644 index 000000000..01ad32dab --- /dev/null +++ b/kubejs/data/tfg/worldgen/structure/mars/dino_nests.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:jigsaw", + "biomes": "#tfg:has_structure/dino_nests", + "max_distance_from_center": 1, + "project_start_to_heightmap": "OCEAN_FLOOR", + "size": 1, + "spawn_overrides": {}, + "start_height": { + "absolute": 0 + }, + "start_pool": "tfg:mars/dino_nests", + "step": "surface_structures", + "terrain_adaptation": "none", + "use_expansion_hack": false +} \ No newline at end of file diff --git a/kubejs/data/tfg/worldgen/structure/mars/surfer_nest.json b/kubejs/data/tfg/worldgen/structure/mars/surfer_nest.json new file mode 100644 index 000000000..d75e84549 --- /dev/null +++ b/kubejs/data/tfg/worldgen/structure/mars/surfer_nest.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:jigsaw", + "biomes": "#tfg:has_structure/surfer_nest", + "max_distance_from_center": 1, + "project_start_to_heightmap": "OCEAN_FLOOR", + "size": 1, + "spawn_overrides": {}, + "start_height": { + "absolute": 0 + }, + "start_pool": "tfg:mars/surfer_nest", + "step": "surface_structures", + "terrain_adaptation": "none", + "use_expansion_hack": false +} \ No newline at end of file diff --git a/kubejs/data/tfg/worldgen/structure_set/mars/dino_nests.json b/kubejs/data/tfg/worldgen/structure_set/mars/dino_nests.json new file mode 100644 index 000000000..d8879dfb4 --- /dev/null +++ b/kubejs/data/tfg/worldgen/structure_set/mars/dino_nests.json @@ -0,0 +1,17 @@ +{ + "structures": [ + { + "structure": "tfg:mars/dino_nests", + "weight": 1 + } + ], + "placement": { + "type": "tfc:climate", + "salt": 25635345, + "spacing": 10, + "separation": 7, + "climate": { + "min_temperature": -105 + } + } +} \ No newline at end of file diff --git a/kubejs/data/tfg/worldgen/structure_set/mars/surfer_nest.json b/kubejs/data/tfg/worldgen/structure_set/mars/surfer_nest.json new file mode 100644 index 000000000..562b5e805 --- /dev/null +++ b/kubejs/data/tfg/worldgen/structure_set/mars/surfer_nest.json @@ -0,0 +1,17 @@ +{ + "structures": [ + { + "structure": "tfg:mars/surfer_nest", + "weight": 1 + } + ], + "placement": { + "type": "tfc:climate", + "salt": 25635345, + "spacing": 25, + "separation": 18, + "climate": { + "min_temperature": -105 + } + } +} \ No newline at end of file diff --git a/kubejs/data/tfg/worldgen/template_pool/mars/dino_nests.json b/kubejs/data/tfg/worldgen/template_pool/mars/dino_nests.json new file mode 100644 index 000000000..fe2866cd2 --- /dev/null +++ b/kubejs/data/tfg/worldgen/template_pool/mars/dino_nests.json @@ -0,0 +1,96 @@ +{ + "name": "tfg:mars/dino_nests", + "fallback": "minecraft:empty", + "elements": [ + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/cruncher", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/crusher", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/eater", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/glider", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/goober", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/sniffer", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/soarer", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/springling", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/walker", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + }, + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/wraptor", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/worldgen/template_pool/mars/surfer_nest.json b/kubejs/data/tfg/worldgen/template_pool/mars/surfer_nest.json new file mode 100644 index 000000000..8b676a67c --- /dev/null +++ b/kubejs/data/tfg/worldgen/template_pool/mars/surfer_nest.json @@ -0,0 +1,15 @@ +{ + "name": "tfg:mars/surfer_nest", + "fallback": "minecraft:empty", + "elements": [ + { + "weight": 1, + "element": { + "location": "tfg:dino_nests/surfer", + "projection": "terrain_matching", + "processors": "minecraft:empty", + "element_type": "minecraft:single_pool_element" + } + } + ] +} \ No newline at end of file diff --git a/kubejs/data/wan_ancient_beasts/loot_tables/blocks/straw_block.json b/kubejs/data/wan_ancient_beasts/loot_tables/blocks/straw_block.json new file mode 100644 index 000000000..c1e0b0905 --- /dev/null +++ b/kubejs/data/wan_ancient_beasts/loot_tables/blocks/straw_block.json @@ -0,0 +1,4 @@ +{ + "type": "minecraft:block", + "pools": [] +} \ No newline at end of file diff --git a/kubejs/server_scripts/ad_astra/tags.js b/kubejs/server_scripts/ad_astra/tags.js index ea67864e2..442d50e2d 100644 --- a/kubejs/server_scripts/ad_astra/tags.js +++ b/kubejs/server_scripts/ad_astra/tags.js @@ -414,6 +414,14 @@ const registerAdAstraBiomeTags = (event) => { event.add('sandworm_mod:can_spawn_sandworms', 'tfg:mars/martian_dunes') event.add('sandworm_mod:can_spawn_sandworms', 'tfg:mars/martian_deep_desert') + event.add('tfg:has_structure/dino_nests', 'tfg:mars/amber_plains') + event.add('tfg:has_structure/dino_nests', 'tfg:mars/rusticus_plains') + event.add('tfg:has_structure/dino_nests', 'tfg:mars/sangnum_plains') + event.add('tfg:has_structure/dino_nests', 'tfg:mars/amber_hills') + event.add('tfg:has_structure/dino_nests', 'tfg:mars/rusticus_hills') + event.add('tfg:has_structure/dino_nests', 'tfg:mars/sangnum_hills') + event.add('tfg:has_structure/surfer_nest', 'tfg:mars/martian_river') + event.add('tfg:has_dark_sand_particles', 'tfg:mars/martian_dunes') event.add('tfg:has_dark_sand_particles', 'tfg:mars/martian_deep_desert') event.add('tfg:has_dark_sand_particles', 'tfg:mars/martian_mountains') diff --git a/kubejs/server_scripts/species/loot.js b/kubejs/server_scripts/species/loot.js index 3e02716d9..df3ccd87e 100644 --- a/kubejs/server_scripts/species/loot.js +++ b/kubejs/server_scripts/species/loot.js @@ -44,6 +44,7 @@ function registerSpeciesLoots(event) { .addLoot('tfc:large_raw_hide') .addWeightedLoot([10, 13], ['minecraft:bone']) .addWeightedLoot([14, 24], ['tfg:food/raw_cruncher_ribs']) + .addSequenceLoot(LootEntry.of('species:cruncher_egg').when(c => c.randomChance(0.5))) event.addEntityLootModifier('species:cruncher') .matchMainHand('#forge:tools/butchery_knives') diff --git a/kubejs/server_scripts/tfg/entities.js b/kubejs/server_scripts/tfg/entities.js index 9317a2899..88aa8fe1e 100644 --- a/kubejs/server_scripts/tfg/entities.js +++ b/kubejs/server_scripts/tfg/entities.js @@ -20,7 +20,7 @@ const NEW_MOB_MAX_HP = { "species:stackatick": 20, "species:springling": 60, "species:quake": 130, - "species:cruncher": 800 + "species:cruncher": 1200 } EntityEvents.spawned((event) => {