* Item sizes and some helpful tags * Try putting item sizes in a KJS script (NOT TESTED) * Move Greate tags to KJS, add sizes for various pipes and cables * Whoops, accidentally overrode tiny pipe size * Air duct sizes * Prettier config and tags moved to JS - Added `.prettierrc` file, which configures the tab width and code wrapping point for the Prettier formatter. - Moved remaining tags from JSON to JS files. * Delete floating carpet tag JSON Signed-off-by: KonSola5 <125081901+KonSola5@users.noreply.github.com> --------- Signed-off-by: KonSola5 <125081901+KonSola5@users.noreply.github.com> Co-authored-by: Redeix <brayden.j.m.ford@gmail.com>
857 lines
28 KiB
JavaScript
857 lines
28 KiB
JavaScript
// priority: 0
|
|
"use strict";
|
|
|
|
/** @param {Internal.TFCDataEventJS} event */
|
|
function registerTFCDataForTFG(event) {
|
|
registerTFGHeatData(event);
|
|
registerTFGItemSize(event);
|
|
registerTFGSupportData(event);
|
|
registerTFGFoodData(event);
|
|
registerTFGCropRanges(event);
|
|
registerTFGFLPlanters(event);
|
|
}
|
|
|
|
/** @param {Internal.TFCDataEventJS} event */
|
|
function registerTFGHeatData(event) {
|
|
event.itemHeat("tfg:latex_soaked_gloves", 1, null, null);
|
|
|
|
global.MINECRAFT_DYE_NAMES.forEach((color) => {
|
|
event.itemHeat(`tfg:decorative_vase/unfired/${color}`, 1, null, null);
|
|
});
|
|
event.itemHeat("tfg:decorative_vase/unfired", 1, null, null);
|
|
|
|
event.itemHeat("tfg:sunflower_product", 1, null, null);
|
|
event.itemHeat("tfg:roasted_sunflower_seeds", 1, null, null);
|
|
event.itemHeat("#tfc:powders", 1, null, null);
|
|
}
|
|
|
|
/** @param {Internal.TFCDataEventJS} event */
|
|
function registerTFGItemSize(event) {
|
|
/**
|
|
* Turns an array of items into an ingredient that is an alternative of items in the array.
|
|
* @param {Internal.Ingredient_[]} items Items to to take.
|
|
* @returns {Internal.Ingredient}
|
|
*/
|
|
function orArray(items) {
|
|
// I hate type wrapping
|
|
return /** @type {Internal.Ingredient[]} */ (items).reduce(
|
|
(/** @type {Internal.Ingredient} */ previous, current) => previous.or(current),
|
|
Ingredient.none
|
|
);
|
|
}
|
|
|
|
global.MINECRAFT_DYE_NAMES.forEach((color) => {
|
|
event.itemSize(`tfg:decorative_vase/${color}`, "normal", "medium", `decorative_vase/${color}`);
|
|
event.itemSize(`tfg:decorative_vase/unfired/${color}`, "normal", "medium", `decorative_vase/unfired/${color}`);
|
|
});
|
|
event.itemSize("tfg:decorative_vase", "normal", "medium", "decorative_vase");
|
|
event.itemSize("tfg:decorative_vase/unfired", "normal", "medium", "decorative_vase/unfired");
|
|
|
|
event.itemSize("tfg:fishing_net/wood", "large", "medium", "wood_fishing_net");
|
|
event.itemSize("tfg:fishing_net/brass", "large", "medium", "brass_fishing_net");
|
|
event.itemSize("tfg:fishing_net/rose_gold", "large", "medium", "rose_gold_fishing_net");
|
|
event.itemSize("tfg:fishing_net/sterling_silver", "large", "medium", "sterling_silver_fishing_net");
|
|
event.itemSize("tfg:fishing_net/invar", "large", "medium", "invar_fishing_net");
|
|
event.itemSize("tfg:fishing_net/cupronickel", "large", "medium", "cupronickel_fishing_net");
|
|
event.itemSize("tfg:fishing_net/tin_alloy", "large", "medium", "tin_alloy_fishing_net");
|
|
event.itemSize("tfg:fishing_net/magnalium", "large", "medium", "magnalium_fishing_net");
|
|
|
|
event.itemSize("tfg:trowel", "large", "medium", "trowel");
|
|
|
|
event.itemSize("tfg:railgun_ammo_shell", "large", "heavy", "trowel");
|
|
|
|
event.itemSize("tfg:harvest_basket", "large", "medium", "harvest_basket");
|
|
event.itemSize("tfg:aluminium_harvest_basket", "large", "medium", "aluminium_harvest_basket");
|
|
|
|
event.itemSize("tfg:rapeseed_product", "small", "light", "rapeseed_product");
|
|
event.itemSize("tfg:sunflower_product", "small", "light", "sunflower_product");
|
|
event.itemSize("betterend:amber_root_product", "small", "light", "amber_roots");
|
|
event.itemSize("betterend:blossom_berry_product", "small", "light", "amber_roots");
|
|
event.itemSize("betterend:cave_pumpkin", "small", "light", "amber_roots");
|
|
event.itemSize("betterend:chorus_mushroom_product", "small", "light", "amber_roots");
|
|
event.itemSize("betterend:shadow_berry_product", "small", "light", "amber_roots");
|
|
|
|
event.itemSize(Ingredient.of("#minecraft:buttons"), "very_small", "very_light", "buttons");
|
|
event.itemSize(Ingredient.of("#forge:buzz_saw_heads"), "large", "heavy", "buzz_saw_blades");
|
|
event.itemSize(
|
|
Ingredient.of("#minecraft:wool_carpets").or("#domum_ornamentum:floating_carpet"),
|
|
"small",
|
|
"very_light",
|
|
"carpets"
|
|
);
|
|
event.itemSize("create:chain_conveyor", "large", "medium", "chain_conveyor");
|
|
event.itemSize("create:flywheel", "large", "medium", "flywheel");
|
|
event.itemSize("create:large_water_wheel", "very_large", "heavy", "large_water_wheel");
|
|
event.itemSize("create:water_wheel", "large", "medium", "water_wheel");
|
|
event.itemSize(Ingredient.of("#forge:dense_plates"), "large", "medium", "dense_plates");
|
|
event.itemSize(Ingredient.of("#forge:dusts"), "small", "very_light", "dusts");
|
|
event.itemSize(Ingredient.of("#forge:pure_dusts"), "small", "very_light", "pure_dusts");
|
|
event.itemSize(Ingredient.of("#forge:impure_dusts"), "small", "very_light", "impure_dusts");
|
|
event.itemSize(orArray(global.FRAMED_HALF_BLOCKS), "small", "very_light", "framed_half_blocks");
|
|
event.itemSize(orArray(global.FRAMED_TINY_BLOCKS), "very_small", "very_light", "framed_tiny_blocks");
|
|
event.itemSize(Ingredient.of("#forge:gears"), "large", "heavy", "gears");
|
|
event.itemSize(Ingredient.of("#forge:glass_panes"), "small", "very_light", "glass_panes");
|
|
event.itemSize(Ingredient.of("#greate:crushing_wheels"), "large", "medium", "crushing_wheels");
|
|
event.itemSize(Ingredient.of("#gtceu:molds"), "large", "heavy", "gregtech_molds");
|
|
event.itemSize(Ingredient.of("#forge:hot_ingots"), "large", "medium", "hot_ingots");
|
|
event.itemSize(Ingredient.of("#forge:rods/long"), "large", "medium", "long_rods");
|
|
event.itemSize(Ingredient.of("#tfg:metal_bars"), "small", "very_light", "metal_bars");
|
|
event.itemSize(
|
|
Ingredient.of("#tfc:mud_bricks").or("#tfc:wet_mud_bricks"),
|
|
"very_small",
|
|
"very_light",
|
|
"mud_bricks"
|
|
);
|
|
event.itemSize(Ingredient.of("#forge:rotors"), "normal", "medium", "rotors");
|
|
event.itemSize(Ingredient.of("#forge:small_gears"), "normal", "medium", "small_gears");
|
|
event.itemSize(Ingredient.of("#forge:small_springs"), "small", "very_light", "small_springs");
|
|
event.itemSize(Ingredient.of("#forge:springs"), "large", "medium", "springs");
|
|
event.itemSize(
|
|
Ingredient.of("#forge:storage_blocks").subtract(
|
|
orArray([
|
|
"minecraft:stone",
|
|
"minecraft:bricks",
|
|
"minecraft:quartz_block",
|
|
"minecraft:amethyst_block",
|
|
"minecraft:glass",
|
|
"minecraft:clay",
|
|
"minecraft:ice",
|
|
"minecraft:bone_block",
|
|
"minecraft:obsidian",
|
|
"minecraft:glowstone",
|
|
"ae2:quartz_block",
|
|
"gtceu:red_granite",
|
|
"gtceu:light_concrete",
|
|
"gtceu:dark_concrete",
|
|
"create:cardboard_block",
|
|
])
|
|
),
|
|
"large",
|
|
"medium",
|
|
"storage_blocks"
|
|
);
|
|
event.itemSize(Ingredient.of("#forge:turbine_blades"), "large", "heavy", "turbine_blades");
|
|
event.itemSize("gtceu:turbine_rotor", "very_large", "very_heavy", "turbine_rotors");
|
|
event.itemSize("vintageimprovements:centrifuge", "very_large", "heavy", "vintage_centrifuge");
|
|
event.itemSize("vintageimprovements:helve_hammer", "large", "medium", "vintage_helve_hammer");
|
|
event.itemSize("vintageimprovements:lathe", "normal", "medium", "vintage_lathe");
|
|
event.itemSize(Ingredient.of("#forge:whisks"), "large", "medium", "whisks");
|
|
|
|
// Fluid pipes
|
|
event.itemSize(Ingredient.of("#forge:tiny_fluid_pipes"), "tiny", "very_light", "tiny_fluid_pipes");
|
|
event.itemSize(Ingredient.of("#forge:small_fluid_pipes"), "very_small", "very_light", "small_fluid_pipes");
|
|
event.itemSize(Ingredient.of("#forge:large_fluid_pipes"), "normal", "light", "large_fluid_pipes");
|
|
event.itemSize(Ingredient.of("#forge:huge_fluid_pipes"), "normal", "medium", "huge_fluid_pipes");
|
|
event.itemSize(
|
|
Ingredient.of("#forge:quadruple_fluid_pipes").or("#forge:nonuple_fluid_pipes"),
|
|
"normal",
|
|
"medium",
|
|
"multiple_fluid_pipes"
|
|
);
|
|
|
|
// Item pipes
|
|
event.itemSize(
|
|
Ingredient.of("#forge:small_item_pipes").or("#forge:small_restrictive_pipes"),
|
|
"very_small",
|
|
"very_light",
|
|
"small_item_pipes"
|
|
);
|
|
event.itemSize(
|
|
Ingredient.of("#forge:large_item_pipes").or("#forge:large_restrictive_pipes"),
|
|
"normal",
|
|
"light",
|
|
"large_item_pipes"
|
|
);
|
|
event.itemSize(
|
|
Ingredient.of("#forge:huge_item_pipes").or("#forge:huge_restrictive_pipes"),
|
|
"normal",
|
|
"medium",
|
|
"huge_item_pipes"
|
|
);
|
|
|
|
// Air ducts
|
|
event.itemSize("gtceu:small_duct_pipe", "very_small", "very_light", "small_duct_pipe");
|
|
event.itemSize("gtceu:large_duct_pipe", "normal", "light", "large_duct_pipe");
|
|
event.itemSize("gtceu:huge_duct_pipe", "normal", "medium", "huge_duct_pipe");
|
|
|
|
// Cables
|
|
event.itemSize(Ingredient.of("#forge:single_cables").or("#forge:single_wires"), "tiny", "very_light", "cables_1x");
|
|
event.itemSize(
|
|
Ingredient.of("#forge:double_cables").or("#forge:double_wires"),
|
|
"very_small",
|
|
"very_light",
|
|
"cables_2x"
|
|
);
|
|
event.itemSize(Ingredient.of("#forge:octal_cables").or("#forge:octal_wires"), "normal", "light", "cables_8x");
|
|
event.itemSize(Ingredient.of("#forge:hex_cables").or("#forge:hex_wires"), "normal", "medium", "cables_16x");
|
|
event.itemSize("computercraft:cable", "tiny", "very_light", "networking_cable");
|
|
event.itemSize("gtceu:normal_optical_pipe", "very_small", "very_light", "optical_fiber_cable");
|
|
event.itemSize(
|
|
Ingredient.of("#ae2:glass_cable").or("#ae2:covered_cable").or("#ae2:smart_cable"),
|
|
"very_small",
|
|
"very_light",
|
|
"me_cables"
|
|
);
|
|
event.itemSize(
|
|
Ingredient.of("#ae2:covered_dense_cable").or("#ae2:smart_dense_cable"),
|
|
"normal",
|
|
"light",
|
|
"me_dense_cables"
|
|
);
|
|
event.itemSize(
|
|
orArray([
|
|
"ae2:quartz_fixture",
|
|
"ae2:light_detector",
|
|
"ae2:wireless_access_point",
|
|
"ae2:quartz_fiber",
|
|
"ae2:toggle_bus",
|
|
"ae2:inverted_toggle_bus",
|
|
"ae2:cable_anchor",
|
|
"ae2:level_emitter",
|
|
"ae2:energy_level_emitter",
|
|
"expatternprovider:threshold_level_emitter",
|
|
]),
|
|
"tiny",
|
|
"very_light",
|
|
"ae2_tiny_parts"
|
|
);
|
|
event.itemSize(
|
|
orArray([
|
|
"ae2:monitor",
|
|
"ae2:semi_dark_monitor",
|
|
"ae2:dark_monitor",
|
|
"ae2:storage_bus",
|
|
"ae2:import_bus",
|
|
"ae2:export_bus",
|
|
"ae2:annihilation_plane",
|
|
"ae2:formation_plane",
|
|
"ae2:pattern_encoding_terminal",
|
|
"ae2:crafting_terminal",
|
|
"ae2:terminal",
|
|
"ae2:storage_monitor",
|
|
"ae2:conversion_monitor",
|
|
"ae2:cable_pattern_provider",
|
|
"ae2:cable_interface",
|
|
"ae2:pattern_access_terminal",
|
|
"ae2:cable_energy_acceptor",
|
|
"ae2:me_p2p_tunnel",
|
|
"ae2:redstone_p2p_tunnel",
|
|
"ae2:item_p2p_tunnel",
|
|
"ae2:fluid_p2p_tunnel",
|
|
"ae2:light_p2p_tunnel",
|
|
"ae2:facade",
|
|
"expatternprovider:ex_interface_part",
|
|
"expatternprovider:ex_export_bus_part",
|
|
"expatternprovider:ex_import_bus_part",
|
|
"expatternprovider:ex_pattern_access_part",
|
|
"expatternprovider:tag_storage_bus",
|
|
"expatternprovider:tag_export_bus",
|
|
"expatternprovider:mod_storage_bus",
|
|
"expatternprovider:mod_export_bus",
|
|
"expatternprovider:active_formation_plane",
|
|
"expatternprovider:precise_export_bus",
|
|
"expatternprovider:precise_storage_bus",
|
|
"expatternprovider:threshold_export_bus",
|
|
"expatternprovider:oversize_interface_part",
|
|
]),
|
|
"very_small",
|
|
"very_light",
|
|
"ae2_small_parts"
|
|
);
|
|
}
|
|
|
|
//up, down, horizontal
|
|
/** @param {Internal.TFCDataEventJS} event */
|
|
function registerTFGSupportData(event) {
|
|
event.support("tfg:light_concrete_support_horizontal", 4, 4, 8, "light_concrete_support");
|
|
event.support("tfg:dark_concrete_support_horizontal", 4, 4, 8, "dark_concrete_support");
|
|
event.support("tfg:reinforced_light_concrete_support_horizontal", 6, 6, 16, "reinforced_light_concrete_support");
|
|
event.support("tfg:reinforced_dark_concrete_support_horizontal", 6, 6, 16, "reinforced_dark_concrete_support");
|
|
event.support("tfg:rebar_support_horizontal", 4, 4, 8, "rebar_support");
|
|
event.support("tfg:steel_support_horizontal", 6, 6, 16, "steel_support");
|
|
|
|
const other_stone = ["pyroxenite", "migmatite", "travertine"];
|
|
const stone_types = global.TFC_STONE_TYPES.concat(other_stone);
|
|
|
|
stone_types.forEach((stone) => {
|
|
event.support(`tfg:${stone}_support_horizontal`, 2, 2, 4, `${stone}_support`);
|
|
});
|
|
|
|
global.AD_ASTRA_WOOD.forEach((wood) => {
|
|
event.support(`tfg:${wood.name}_support_horizontal`, 2, 2, 4, `${wood.name}_support`);
|
|
});
|
|
}
|
|
/** @param {Internal.TFCDataEventJS} event */
|
|
function registerTFGFoodData(event) {
|
|
// meats
|
|
|
|
event.foodItem("tfg:food/raw_birt", (food) => {
|
|
food.hunger(4);
|
|
food.protein(1.5);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_birt", (food) => {
|
|
food.hunger(4);
|
|
food.saturation(2);
|
|
food.protein(2.5);
|
|
food.decayModifier(2.25);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_crawlermari", (food) => {
|
|
food.hunger(4);
|
|
food.water(5);
|
|
food.protein(1.1);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_crawlermari", (food) => {
|
|
food.hunger(4);
|
|
food.saturation(2);
|
|
food.protein(2.2);
|
|
food.decayModifier(2.25);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_limpet", (food) => {
|
|
food.hunger(4);
|
|
food.water(5);
|
|
food.protein(1.2);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_limpet", (food) => {
|
|
food.hunger(5);
|
|
food.saturation(2);
|
|
food.protein(2.4);
|
|
food.decayModifier(2.25);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_moon_rabbit", (food) => {
|
|
food.hunger(3);
|
|
food.protein(2.0);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_moon_rabbit", (food) => {
|
|
food.hunger(6);
|
|
food.saturation(2.5);
|
|
food.protein(5);
|
|
food.decayModifier(2.25);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_glacian_mutton", (food) => {
|
|
food.hunger(3);
|
|
food.protein(2.0);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_glacian_mutton", (food) => {
|
|
food.hunger(6);
|
|
food.saturation(3);
|
|
food.protein(5);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_sniffer_beef", (food) => {
|
|
food.hunger(3);
|
|
food.protein(2.0);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_sniffer_beef", (food) => {
|
|
food.hunger(6);
|
|
food.saturation(4);
|
|
food.protein(7);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_wraptor", (food) => {
|
|
food.hunger(3);
|
|
food.protein(2.0);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_wraptor", (food) => {
|
|
food.hunger(6);
|
|
food.saturation(4);
|
|
food.protein(5);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_springling_chops", (food) => {
|
|
food.hunger(2);
|
|
food.protein(1.5);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_springling_chops", (food) => {
|
|
food.hunger(4);
|
|
food.saturation(3);
|
|
food.protein(5);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_walker_steak", (food) => {
|
|
food.hunger(3);
|
|
food.protein(2.0);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_walker_steak", (food) => {
|
|
food.hunger(6);
|
|
food.saturation(3);
|
|
food.protein(8);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_glider_wings", (food) => {
|
|
food.hunger(1);
|
|
food.protein(1.5);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_glider_wings", (food) => {
|
|
food.hunger(3);
|
|
food.saturation(3);
|
|
food.protein(3);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_whole_soarer", (food) => {
|
|
food.hunger(3);
|
|
food.protein(2.0);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_whole_soarer", (food) => {
|
|
food.hunger(6);
|
|
food.saturation(6);
|
|
food.protein(4);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_crusher_meat", (food) => {
|
|
food.hunger(3);
|
|
food.protein(1.5);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_crusher_meat", (food) => {
|
|
food.hunger(5);
|
|
food.saturation(6);
|
|
food.protein(4);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
event.foodItem("tfg:food/raw_goober_meat", (food) => {
|
|
food.hunger(2);
|
|
food.protein(3.0);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("tfg:food/cooked_goober_meat", (food) => {
|
|
food.hunger(4);
|
|
food.saturation(3);
|
|
food.protein(6);
|
|
food.decayModifier(1.5);
|
|
});
|
|
|
|
// high-tech food
|
|
|
|
global.FOOD_FRUIT.forEach((fruit) => {
|
|
event.foodItem(`tfg:food/freeze_dried/${fruit.name}`, (food) => {
|
|
food.hunger(4);
|
|
food.saturation(fruit.saturation);
|
|
food.water(0);
|
|
food.fruit(fruit.fruit);
|
|
food.decayModifier(fruit.decay);
|
|
});
|
|
});
|
|
|
|
event.foodItem("tfg:food/calorie_paste", (food) => {
|
|
food.hunger(6);
|
|
food.saturation(4);
|
|
food.decayModifier(4.5);
|
|
food.grain(0.1);
|
|
food.vegetables(0.2);
|
|
food.protein(0.2);
|
|
});
|
|
|
|
event.foodItem("tfg:food/meal_bag", (food) => {
|
|
food.type("dynamic");
|
|
});
|
|
|
|
// crops
|
|
|
|
event.foodItem("tfg:roasted_sunflower_seeds", (food) => {
|
|
food.hunger(4);
|
|
food.decayModifier(0.5);
|
|
food.grain(0.1);
|
|
food.saturation(0.5);
|
|
});
|
|
|
|
event.foodItem("tfg:sunflower_product", (food) => {
|
|
food.decayModifier(0.5);
|
|
});
|
|
|
|
event.foodItem("betterend:amber_root_product", (food) => {
|
|
food.hunger(4);
|
|
food.decayModifier(1);
|
|
food.saturation(1);
|
|
food.grain(3);
|
|
});
|
|
|
|
event.foodItem("betterend:blossom_berry_product", (food) => {
|
|
food.hunger(5);
|
|
food.decayModifier(2);
|
|
food.saturation(1);
|
|
food.water(7.5);
|
|
food.fruit(1.5);
|
|
});
|
|
|
|
event.foodItem("betterend:cave_pumpkin", (food) => {
|
|
food.hunger(4);
|
|
food.saturation(0);
|
|
food.decayModifier(0.5);
|
|
});
|
|
|
|
event.foodItem("betterend:cave_pumpkin_chunks", (food) => {
|
|
food.hunger(4);
|
|
food.saturation(1);
|
|
food.decayModifier(2.5);
|
|
food.water(5);
|
|
food.fruit(0.8);
|
|
});
|
|
|
|
event.foodItem("betterend:cave_pumpkin_pie_dough", (food) => {
|
|
food.hunger(2);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("betterend:cave_pumpkin_pie_raw", (food) => {
|
|
food.hunger(2);
|
|
food.decayModifier(3);
|
|
});
|
|
|
|
event.foodItem("betterend:cave_pumpkin_pie", (food) => {
|
|
food.hunger(4);
|
|
food.saturation(4);
|
|
food.decayModifier(2);
|
|
food.water(5);
|
|
food.fruit(4);
|
|
food.grain(2);
|
|
});
|
|
|
|
event.foodItem("betterend:chorus_mushroom_product", (food) => {
|
|
food.hunger(2);
|
|
food.saturation(1);
|
|
food.decayModifier(3);
|
|
food.water(3);
|
|
food.vegetables(1.5);
|
|
});
|
|
|
|
event.foodItem("betterend:chorus_mushroom_cooked", (food) => {
|
|
food.hunger(2);
|
|
food.saturation(2.5);
|
|
food.decayModifier(1.5);
|
|
food.vegetables(2);
|
|
});
|
|
|
|
event.foodItem("betterend:shadow_berry_product", (food) => {
|
|
food.hunger(5);
|
|
food.decayModifier(2);
|
|
food.saturation(1);
|
|
food.water(5);
|
|
food.fruit(1.5);
|
|
});
|
|
|
|
event.foodItem("betterend:shadow_berry_cooked", (food) => {
|
|
food.hunger(5);
|
|
food.decayModifier(1);
|
|
food.saturation(2);
|
|
food.fruit(2);
|
|
});
|
|
|
|
event.foodItem("betterend:bolux_mushroom_product", (food) => {
|
|
food.hunger(2);
|
|
food.saturation(1);
|
|
food.decayModifier(3);
|
|
food.water(3);
|
|
food.vegetables(1.5);
|
|
});
|
|
|
|
event.foodItem("betterend:bolux_mushroom_cooked", (food) => {
|
|
food.hunger(2);
|
|
food.saturation(2.5);
|
|
food.decayModifier(1.5);
|
|
food.vegetables(2);
|
|
});
|
|
|
|
// misc
|
|
|
|
event.foodItem("tfg:food/ice_soup", (food) => {
|
|
food.hunger(1);
|
|
food.water(20);
|
|
food.decayModifier(0);
|
|
});
|
|
|
|
event.drinkable("tfg:semiheavy_ammoniacal_water", (data) => {
|
|
data.thirst(10);
|
|
data.effect("minecraft:nausea", (effect) => {
|
|
effect.chance(0.5);
|
|
effect.duration(200);
|
|
});
|
|
});
|
|
}
|
|
|
|
/** @param {Internal.TFCDataEventJS} event */
|
|
function registerTFGCropRanges(event) {
|
|
// Earth
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(20);
|
|
climate.maxHydration(80);
|
|
climate.minTemperature(5);
|
|
climate.maxTemperature(40);
|
|
climate.hydrationWiggle(7.5);
|
|
climate.temperatureWiggle(5.5);
|
|
}, "tfg:sunflower");
|
|
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(10);
|
|
climate.maxHydration(60);
|
|
climate.minTemperature(-5);
|
|
climate.maxTemperature(25);
|
|
climate.hydrationWiggle(7.5);
|
|
climate.temperatureWiggle(1.5);
|
|
}, "tfg:rapeseed");
|
|
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(15);
|
|
climate.maxHydration(65);
|
|
climate.minTemperature(-8);
|
|
climate.maxTemperature(25);
|
|
climate.hydrationWiggle(6.5);
|
|
climate.temperatureWiggle(3);
|
|
}, "tfg:flax");
|
|
|
|
// Mars
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(0);
|
|
climate.maxHydration(40);
|
|
climate.minTemperature(-150);
|
|
climate.maxTemperature(15);
|
|
climate.hydrationWiggle(7.5);
|
|
climate.temperatureWiggle(5.5);
|
|
}, "betterend:amber_root");
|
|
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(0);
|
|
climate.maxHydration(100);
|
|
climate.minTemperature(-80);
|
|
climate.maxTemperature(30);
|
|
climate.hydrationWiggle(7.5);
|
|
climate.temperatureWiggle(5.5);
|
|
}, "betterend:blossom_berry");
|
|
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(0);
|
|
climate.maxHydration(40);
|
|
climate.minTemperature(-150);
|
|
climate.maxTemperature(15);
|
|
climate.hydrationWiggle(7.5);
|
|
climate.temperatureWiggle(5.5);
|
|
}, "betterend:bolux_mushroom");
|
|
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(0);
|
|
climate.maxHydration(60);
|
|
climate.minTemperature(-100);
|
|
climate.maxTemperature(30);
|
|
climate.hydrationWiggle(7.5);
|
|
climate.temperatureWiggle(5.5);
|
|
}, "betterend:cave_pumpkin_plant");
|
|
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(0);
|
|
climate.maxHydration(40);
|
|
climate.minTemperature(-150);
|
|
climate.maxTemperature(15);
|
|
climate.hydrationWiggle(7.5);
|
|
climate.temperatureWiggle(5.5);
|
|
}, "betterend:chorus_mushroom");
|
|
|
|
event.climateRange((climate) => {
|
|
climate.minHydration(0);
|
|
climate.maxHydration(100);
|
|
climate.minTemperature(-80);
|
|
climate.maxTemperature(30);
|
|
climate.hydrationWiggle(7.5);
|
|
climate.temperatureWiggle(5.5);
|
|
}, "betterend:shadow_berry");
|
|
}
|
|
|
|
/** @param {Internal.TFCDataEventJS} event */
|
|
function registerTFGFLPlanters(event) {
|
|
event.firmalifePlantable(
|
|
"tfg:sunflower_seeds",
|
|
"large",
|
|
0,
|
|
3,
|
|
0.15,
|
|
"tfg:sunflower_seeds",
|
|
"tfg:sunflower_product",
|
|
"nitrogen",
|
|
[
|
|
"tfg:block/crop/sunflower_greenhouse_0",
|
|
"tfg:block/crop/sunflower_greenhouse_1",
|
|
"tfg:block/crop/sunflower_greenhouse_2",
|
|
"tfg:block/crop/sunflower_greenhouse_3",
|
|
],
|
|
null
|
|
);
|
|
|
|
event.firmalifePlantable(
|
|
"tfg:rapeseed_seeds",
|
|
"large",
|
|
0,
|
|
3,
|
|
0.15,
|
|
"tfg:rapeseed_seeds",
|
|
"tfg:rapeseed_product",
|
|
"phosphorous",
|
|
[
|
|
"tfg:block/crop/rapeseed_greenhouse_0",
|
|
"tfg:block/crop/rapeseed_greenhouse_1",
|
|
"tfg:block/crop/rapeseed_greenhouse_2",
|
|
"tfg:block/crop/rapeseed_greenhouse_3",
|
|
],
|
|
null
|
|
);
|
|
|
|
event.firmalifePlantable(
|
|
"tfg:flax_seeds",
|
|
"large",
|
|
0,
|
|
3,
|
|
0.2,
|
|
"tfg:flax_seeds",
|
|
"tfg:flax_product",
|
|
"nitrogen",
|
|
[
|
|
"tfg:block/crop/flax_age_0",
|
|
"tfg:block/crop/flax_age_1",
|
|
"tfg:block/crop/flax_age_5_top",
|
|
"tfg:block/crop/flax_age_6_top",
|
|
],
|
|
null
|
|
);
|
|
|
|
event.firmalifePlantable(
|
|
"betterend:amber_root_seeds",
|
|
"large",
|
|
0,
|
|
3,
|
|
0.15,
|
|
"betterend:amber_root_seeds",
|
|
"betterend:amber_root_product",
|
|
"phosphorous",
|
|
[
|
|
"betterend:block/amber_root_0",
|
|
"betterend:block/amber_root_1",
|
|
"betterend:block/amber_root_2",
|
|
"betterend:block/amber_root_3",
|
|
],
|
|
null
|
|
);
|
|
|
|
event.firmalifePlantable(
|
|
"betterend:blossom_berry_seeds",
|
|
"large",
|
|
0,
|
|
3,
|
|
0.15,
|
|
"betterend:blossom_berry_seeds",
|
|
"betterend:blossom_berry_product",
|
|
"potassium",
|
|
[
|
|
"betterend:block/blossom_berry_seed_0",
|
|
"betterend:block/blossom_berry_seed_1",
|
|
"betterend:block/blossom_berry_seed_2",
|
|
"betterend:block/blossom_berry_seed_3",
|
|
],
|
|
null
|
|
);
|
|
|
|
event.firmalifePlantable(
|
|
"betterend:bolux_mushroom_seeds",
|
|
"quad",
|
|
1,
|
|
3,
|
|
0.15,
|
|
"betterend:bolux_mushroom_seeds",
|
|
"betterend:bolux_mushroom_product",
|
|
"phosphorous",
|
|
[
|
|
"betterend:block/bolux_mushroom_greenhouse_0",
|
|
"betterend:block/bolux_mushroom_greenhouse_1",
|
|
"betterend:block/bolux_mushroom_greenhouse_2",
|
|
"betterend:block/bolux_mushroom_greenhouse_3",
|
|
],
|
|
null
|
|
);
|
|
|
|
event.firmalifePlantable(
|
|
"betterend:chorus_mushroom_seeds",
|
|
"quad",
|
|
1,
|
|
3,
|
|
0.15,
|
|
"betterend:chorus_mushroom_seeds",
|
|
"betterend:chorus_mushroom_product",
|
|
"phosphorous",
|
|
[
|
|
"betterend:block/chorus_mushroom_0",
|
|
"betterend:block/chorus_mushroom_1",
|
|
"betterend:block/chorus_mushroom_2",
|
|
"betterend:block/chorus_mushroom_3",
|
|
],
|
|
null
|
|
);
|
|
|
|
event.firmalifePlantable(
|
|
"betterend:cave_pumpkin_plant_seeds",
|
|
"hanging",
|
|
2,
|
|
3,
|
|
0.15,
|
|
"betterend:cave_pumpkin_plant_seeds",
|
|
"betterend:cave_pumpkin",
|
|
"phosphorous",
|
|
[
|
|
"betterend:block/cave_pumpkin_greenhouse_0",
|
|
"betterend:block/cave_pumpkin_greenhouse_1",
|
|
"betterend:block/cave_pumpkin_greenhouse_2",
|
|
"betterend:block/cave_pumpkin_greenhouse_3",
|
|
],
|
|
//'betterend:block/cave_pumpkin_greenhouse_fruit'
|
|
"betterend:block/cave_pumpkin_top" // TODO: check
|
|
);
|
|
|
|
event.firmalifePlantable(
|
|
"betterend:shadow_berry_seeds",
|
|
"quad",
|
|
1,
|
|
3,
|
|
0.15,
|
|
"betterend:shadow_berry_seeds",
|
|
"betterend:shadow_berry_product",
|
|
"potassium",
|
|
[
|
|
"betterend:block/shadow_berry_greenhouse_0",
|
|
"betterend:block/shadow_berry_greenhouse_1",
|
|
"betterend:block/shadow_berry_greenhouse_2",
|
|
"betterend:block/shadow_berry_greenhouse_3",
|
|
],
|
|
null
|
|
);
|
|
}
|