diff --git a/CHANGELOG.md b/CHANGELOG.md index 462c93237..ca39ac963 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ - Sheet metal blocks are now made in a stonecutter and their yield increased (#1746) @SpicyNoodle5 - Added a small amount of silver to the Bismith (Surface) vein @Pyritie - Added plascrete as an alternative to steel frames in the electric greenhouse @Redeix +- Added the ability for foods to affect the player's temperature @BlueBoat29 ### Bug fixes - Fixed tongs getting stuck in ovens, and now you can use them the same way you'd previously use a Peel @Pyritie - Allowed powders, gears, plates, double plates, springs, and small springs to be heated (#1727) @Redeix diff --git a/defaultconfigs/wan_ancient_beasts-server.toml b/defaultconfigs/wan_ancient_beasts-server.toml index 272020a11..a2a84888a 100644 --- a/defaultconfigs/wan_ancient_beasts-server.toml +++ b/defaultconfigs/wan_ancient_beasts-server.toml @@ -48,7 +48,7 @@ damage = 10.0 #Crusher armor [default: 20] #Range: 0.0 ~ 30.0 - armor = 35.0 + armor = 30.0 #Crusher armor toughness [default: 4] #Range: 0.0 ~ 20.0 armorToughness = 6.0 diff --git a/kubejs/assets/tfg/lang/en_us.json b/kubejs/assets/tfg/lang/en_us.json index b80ac1970..ca602b709 100644 --- a/kubejs/assets/tfg/lang/en_us.json +++ b/kubejs/assets/tfg/lang/en_us.json @@ -1053,7 +1053,12 @@ "tfg.tooltip.sniffer_wool": "§7Harvested from the back of a Sniffer", "tfg.tooltip.wraptor_wool": "§7Harvested from the feathers of a Wraptor", "tfg.tooltip.wraptor_sugar": "§7Don't think about it too much", + "tfg.tooltip.cooling_foods": "§bCools you by: 2°", + "tfg.tooltip.cooling_foods_strong": "§bCools you by: 10°", + "tfg.tooltip.warming_foods": "§6Warms you by: 4°", "tfg.tooltip.obsolete.depreciated": "§cDeprecated, cannot be crafted any more", + "effect.tfg.cooling": "§bCooling", + "effect.tfg.warming": "§6Warming", "tfc.jei.flint_knapping": "Flint Knapping", "tfc.jei.straw_knapping": "Straw Knapping", "tfc.recipe.barrel.tfg.barrel.dyeing.decorative_vase.black": "Dyeing", diff --git a/kubejs/assets/tfg/textures/mob_effect/cooling.png b/kubejs/assets/tfg/textures/mob_effect/cooling.png new file mode 100644 index 000000000..609186a2b Binary files /dev/null and b/kubejs/assets/tfg/textures/mob_effect/cooling.png differ diff --git a/kubejs/assets/tfg/textures/mob_effect/warming.png b/kubejs/assets/tfg/textures/mob_effect/warming.png new file mode 100644 index 000000000..f5342aa65 Binary files /dev/null and b/kubejs/assets/tfg/textures/mob_effect/warming.png differ diff --git a/kubejs/client_scripts/tooltips.js b/kubejs/client_scripts/tooltips.js index 42450700c..29cc84a7d 100644 --- a/kubejs/client_scripts/tooltips.js +++ b/kubejs/client_scripts/tooltips.js @@ -146,6 +146,20 @@ const registerTooltips = (event) => { text.add(1, Text.translate('tfg.tooltip.wraptor_sugar')) }) + //#region temperature changing foods + event.addAdvanced(['#tfg:cooling_foods'], (item, advanced, text) => { + text.add(2, Text.translate('tfg.tooltip.cooling_foods')) + }) + + event.addAdvanced(['#tfg:cooling_foods_strong'], (item, advanced, text) => { + text.add(2, Text.translate('tfg.tooltip.cooling_foods_strong')) + }) + + event.addAdvanced(['#tfg:warming_foods'], (item, advanced, text) => { + text.add(2, Text.translate('tfg.tooltip.warming_foods')) + }) + + //#endregion //#region Deprecated Items event.addAdvanced(['#megacells:mega_interface'], (item, advanced, text) => { diff --git a/kubejs/server_scripts/tfg/tags.js b/kubejs/server_scripts/tfg/tags.js index 1ccdc8c82..9882b19e4 100644 --- a/kubejs/server_scripts/tfg/tags.js +++ b/kubejs/server_scripts/tfg/tags.js @@ -256,6 +256,13 @@ const registerTFGItemTags = (event) => { event.add('tfc:foods/cooked_meats', meat) }) + //These tags are used to add the tooltips and for searchability + global.COOLING_FOODS.forEach(food => { event.add('tfg:cooling_foods', food) }) + + event.add('tfg:cooling_foods_strong', 'tfg:food/ice_soup') + + global.WARMING_FOODS.forEach(food => { event.add('tfg:warming_foods', food) }) + //jam sandwhich stuff const usable_in_jam_sandwich = Ingredient.of('#tfc:foods/usable_in_jam_sandwich').itemIds.toArray().map(String); const preserves = Ingredient.of('#tfc:foods/preserves').itemIds.toArray().map(String); diff --git a/kubejs/startup_scripts/firmalife/modifications.js b/kubejs/startup_scripts/firmalife/modifications.js index 8a9924201..97de6ce74 100644 --- a/kubejs/startup_scripts/firmalife/modifications.js +++ b/kubejs/startup_scripts/firmalife/modifications.js @@ -9,4 +9,22 @@ function registerFirmalifeItemModifications(event) { event.modify('firmalife:mixing_bowl', item => { item.setCraftingRemainder('firmalife:mixing_bowl') }) + + //#region add cooling/heating to foods + global.COOLING_FOODS.forEach(food => { + event.modify(food, item =>{ + item.foodProperties = food => { + food.effect('tfg:cooling', 20, 0, 1) + } + }) + }) + + global.WARMING_FOODS.forEach(food => { + event.modify(food, item =>{ + item.foodProperties = food => { + food.effect('tfg:warming', 20, 1, 1) + } + }) + }) + } \ No newline at end of file diff --git a/kubejs/startup_scripts/tfg/constants.js b/kubejs/startup_scripts/tfg/constants.js index 819f87cf3..4a7f24965 100644 --- a/kubejs/startup_scripts/tfg/constants.js +++ b/kubejs/startup_scripts/tfg/constants.js @@ -166,3 +166,23 @@ global.FOOD_FRUIT = [ {name: 'blossom_berry', id: 'betterend:blossom_berry_product', saturation: 1, water: 7.5, fruit: 1.5, decay: 2 }, {name: 'shadow_berry', id: 'betterend:shadow_berry_cooked', saturation: 1, water: 5, fruit: 1.5, decay: 2 } ]; + +global.COOLING_FOODS = [ + 'firmalife:food/vanilla_ice_cream', + 'firmalife:food/chocolate_ice_cream', + 'firmalife:food/strawberry_ice_cream', + 'firmalife:food/cookie_dough_ice_cream', + 'firmalife:food/banana_split' +]; + +global.COOLING_FOODS_STRONG = [ + 'tfg:ice_soup' +]; + +global.WARMING_FOODS = [ + 'tfc:food/grain_soup', + 'tfc:food/fruit_soup', + 'tfc:food/vegetables_soup', + 'tfc:food/protein_soup', + 'tfc:food/dairy_soup' +]; \ No newline at end of file diff --git a/kubejs/startup_scripts/tfg/items.food.js b/kubejs/startup_scripts/tfg/items.food.js index 58563747a..b000b4ed0 100644 --- a/kubejs/startup_scripts/tfg/items.food.js +++ b/kubejs/startup_scripts/tfg/items.food.js @@ -239,7 +239,8 @@ function registerTFGFoodItems(event) { event.create('tfg:food/ice_soup') .translationKey('item.tfg.food.ice_soup') .texture('tfg:item/food/ice_soup') - .food(food => food.eaten(ctx => { + .food(food => food.effect('tfg:cooling', 100, 0, 1) + .eaten(ctx => { ctx.player.give('tfc:ceramic/bowl') })) // intentionally not tagged as food diff --git a/pakku-lock.json b/pakku-lock.json index db18da023..aa6ce596e 100644 --- a/pakku-lock.json +++ b/pakku-lock.json @@ -11482,33 +11482,9 @@ "modrinth": "PhnM3Lkv" }, "files": [ - { - "type": "curseforge", - "file_name": "Sacks 'N Such-1.20.1-1.2.3-all.jar", - "mc_versions": [ - "1.20.1" - ], - "loaders": [ - "neoforge", - "forge" - ], - "release_type": "release", - "url": "https://edge.forgecdn.net/files/6464/916/Sacks 'N Such-1.20.1-1.2.3-all.jar", - "id": "6464916", - "parent_id": "695822", - "hashes": { - "sha1": "490701ab6768325bf455d19455966567cd01996b", - "md5": "abcc4d700ed32305824902e4f2b29bbb" - }, - "required_dependencies": [ - "302973" - ], - "size": 660385, - "date_published": "2025-04-25T23:21:11.043Z" - }, { "type": "modrinth", - "file_name": "Sacks 'N Such-1.20.1-1.2.3-all.jar", + "file_name": "Sacks 'N Such-1.20.1-1.2.4.jar", "mc_versions": [ "1.20.1" ], @@ -11517,18 +11493,43 @@ "neoforge" ], "release_type": "release", - "url": "https://cdn.modrinth.com/data/PhnM3Lkv/versions/tXZzHNm6/Sacks 'N Such-1.20.1-1.2.3-all.jar", - "id": "tXZzHNm6", + "url": "https://cdn.modrinth.com/data/PhnM3Lkv/versions/PA25BnBO/Sacks 'N Such-1.20.1-1.2.4.jar", + "id": "PA25BnBO", "parent_id": "PhnM3Lkv", "hashes": { - "sha512": "cd1a5514f6231eee01e514be4bd8e05cdcf5411df68327b83586996ddae15d5c6fda3ff2edec22c3aad6ccb0052e45a73c98a19e2832671f34291e2afd7df358", - "sha1": "490701ab6768325bf455d19455966567cd01996b" + "sha512": "c6ca411476f100cee117889e6fa8945d5f6848669f53f87b8bcbcd0ed5697bc795ee6e22202464e1a2687b85adf15396b65899ab4b58d7a73cc196108105e7cc", + "sha1": "9819909ff38f14408e313998d225e986333d52b7" }, "required_dependencies": [ - "JaCEZUhg" + "JaCEZUhg", + "UHJfcchT" ], - "size": 660385, - "date_published": "2025-04-25T23:21:12.798597Z" + "size": 1239847, + "date_published": "2025-09-05T08:32:48.466815Z" + }, + { + "type": "curseforge", + "file_name": "Sacks 'N Such-1.20.1-1.2.4.jar", + "mc_versions": [ + "1.20.1" + ], + "loaders": [ + "neoforge", + "forge" + ], + "release_type": "release", + "url": "https://edge.forgecdn.net/files/6965/231/Sacks 'N Such-1.20.1-1.2.4.jar", + "id": "6965231", + "parent_id": "695822", + "hashes": { + "sha1": "9819909ff38f14408e313998d225e986333d52b7", + "md5": "80004a900325176c2ff9427198dedb42" + }, + "required_dependencies": [ + "302973" + ], + "size": 1239847, + "date_published": "2025-09-05T08:32:46.673Z" } ] },