fixed butchery knife meat bonus, added it to all the non-earth animals too

This commit is contained in:
Pyritie 2025-09-03 21:18:51 +01:00
parent 63a85f1777
commit 91a78b4bfc
9 changed files with 252 additions and 207 deletions

View file

@ -15,6 +15,7 @@
- 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
- Fixed rapeseed wild block model @BlueBoat29
- Fixed butchery knife not giving additional meat when used to kill an animal @Pyritie
### Translation updates
- Chinese (simplified) @jmecn & @CN059
- Ukranian @MetEnBouldry

View file

@ -52,7 +52,7 @@
"entries": [
{
"type": "minecraft:item",
"name": "tfc:small_raw_hide"
"name": "tfc:small_sheepskin_hide"
}
]
}

View file

@ -12,6 +12,6 @@ function registerAdAstraLoots(event) {
.addWeightedLoot([5, 8], ['tfg:food/raw_crawlermari'])
event.addEntityLootModifier('ad_astra:star_crawler')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/raw_crawlermari'])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_crawlermari'])
}

View file

@ -181,6 +181,7 @@ LootJS.modifiers((event) => {
registerSpeciesLoots(event)
registerTFCLoots(event)
registerTFGLoots(event)
registerWansAncientBeastsLoots(event)
});
/**

View file

@ -8,15 +8,23 @@ function registerSpeciesLoots(event) {
.addWeightedLoot([1, 2], ['gtceu:blue_alloy_single_wire'])
event.addEntityLootModifier('species:birt')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 3], ['tfc:food/raw_birt'])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 3], ['tfg:food/raw_birt'])
event.addEntityLootModifier('species:limpet')
.addWeightedLoot([5, 8], ['tfg:food/raw_limpet'])
event.addEntityLootModifier('species:limpet')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/raw_limpet'])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_limpet'])
event.addEntityLootModifier('species:goober')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_goober_meat'])
event.addEntityLootModifier('species:springling')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 3], ['tfg:food/raw_springling_chops'])
}

View file

@ -6,9 +6,8 @@ function registerTFCLoots(event) {
event.addEntityLootModifier('tfc:black_bear')
.addWeightedLoot([8, 12], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:black_bear')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([4, 6], ['tfc:food/bear'])
@ -16,7 +15,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([10, 16], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:grizzly_bear')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([5, 8], ['tfc:food/bear'])
@ -25,7 +24,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([2, 5], ['tfc:blubber'])
event.addEntityLootModifier('tfc:polar_bear')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([7, 10], ['tfc:food/bear'])
@ -33,7 +32,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([6, 10], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:cougar')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([3, 5], ['tfc:food/gran_feline'])
@ -41,7 +40,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([6, 10], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:panther')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([3, 5], ['tfc:food/gran_feline'])
@ -49,7 +48,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([9, 14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:sabertooth')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([4, 7], ['tfc:food/gran_feline'])
@ -57,7 +56,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([9, 14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:lion')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([4, 7], ['tfc:food/gran_feline'])
@ -65,7 +64,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([9, 14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:tiger')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([4, 7], ['tfc:food/gran_feline'])
@ -73,7 +72,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([2, 5], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:ocelot')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 2], ['tfc:food/gran_feline'])
@ -81,7 +80,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([2, 5], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:cat')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 2], ['tfc:food/gran_feline'])
@ -89,7 +88,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([9, 14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:sabertooth')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([4, 7], ['tfc:food/gran_feline'])
@ -97,7 +96,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([5, 8], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:dog')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfc:food/wolf'])
@ -105,7 +104,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([5, 8], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:wolf')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfc:food/wolf'])
@ -113,7 +112,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([8, 12], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:direwolf')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([4, 6], ['tfc:food/wolf'])
@ -121,7 +120,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([4, 7], ['tfc:food/hyena'])
event.addEntityLootModifier('tfc:hyena')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfc:food/hyena'])
@ -129,7 +128,7 @@ function registerTFCLoots(event) {
.addWeightedLoot([4, 7], ['tfc:food/fox'])
event.addEntityLootModifier('tfc:fox')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfc:food/fox'])
@ -138,117 +137,117 @@ function registerTFCLoots(event) {
.addSequenceLoot(LootEntry.of('tfc:metal/fish_hook/copper').when(c => c.randomChance(0.2)))
event.addEntityLootModifier('tfc:crocodile')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 5], ['tfc:food/bluegill', 'tfc:food/crappie', 'tfc:food/lake_trout', 'tfc:food/rainbow_trout', 'tfc:food/frog_legs'])
// Passive animals
event.addEntityLootModifier('tfc:alpaca')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([5, 10], ['tfc:food/camelidae'])
event.addEntityLootModifier('tfc:boar')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfc:food/pork'])
event.addEntityLootModifier('tfc:bongo')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:caribou')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([3, 5], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:chicken')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 3], ['tfc:food/chicken'])
event.addEntityLootModifier('tfc:cow')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([8, 12], ['tfc:food/beef'])
event.addEntityLootModifier('tfc:deer')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:donkey')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([7, 10], ['tfc:food/horse_meat'])
event.addEntityLootModifier('tfc:duck')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 3], ['tfc:food/duck'])
event.addEntityLootModifier('tfc:frog')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 2], ['tfc:food/frog_legs'])
event.addEntityLootModifier('tfc:gazelle')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:goat')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([4, 6], ['tfc:food/chevon'])
event.addEntityLootModifier('tfc:grouse')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 2], ['tfc:food/grouse'])
event.addEntityLootModifier('tfc:horse')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([7, 10], ['tfc:food/horse_meat'])
event.addEntityLootModifier('tfc:moose')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([5, 10], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:mule')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([7, 10], ['tfc:food/horse_meat'])
event.addEntityLootModifier('tfc:musk_ox')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([7, 10], ['tfc:food/mutton'])
event.addEntityLootModifier('tfc:peafowl')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 2], ['tfc:food/peafowl'])
event.addEntityLootModifier('tfc:pheasant')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 2], ['tfc:food/pheasant'])
event.addEntityLootModifier('tfc:pig')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([5, 7], ['tfc:food/pork'])
event.addEntityLootModifier('tfc:quail')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 3], ['tfc:food/quail'])
event.addEntityLootModifier('tfc:rabbit')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addLoot('tfc:food/rabbit')
event.addEntityLootModifier('tfc:sheep')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([6, 9], ['tfc:food/mutton'])
event.addEntityLootModifier('tfc:turkey')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 2], ['tfc:food/turkey'])
event.addEntityLootModifier('tfc:turtle')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addLoot('tfc:food/turtle')
event.addEntityLootModifier('tfc:wildebeest')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([4, 7], ['tfc:food/beef'])
event.addEntityLootModifier('tfc:yak')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([7, 10], ['tfc:food/chevon'])

View file

@ -0,0 +1,168 @@
"use strict";
function registerTFGLoots(event) {
//#region Vase Loot
global.MINECRAFT_DYE_NAMES.forEach(color => {
event.addBlockLootModifier(`tfg:decorative_vase/generated/${color}`)
.removeLoot(Ingredient.all)
//ore
.pool((pool) => {
pool.rolls([4, 6]);
pool.addAlternativesLoot(
LootEntry.of('tfc:ore/normal_bismuthinite').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_bismuthinite').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_native_copper').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_native_copper').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_sphalerite').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_sphalerite').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_cassiterite').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_cassiterite').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_native_gold').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_native_gold').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_native_silver').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_native_silver').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_hematite').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_hematite').when((c) => c.randomChance(0.2)),
LootEntry.of('gtceu:rich_raw_rock_salt').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:rich_raw_salt').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:rich_raw_saltpeter').when((c) => c.randomChance(0.1))
);
})
//seeds
.pool((pool) => {
pool.rolls([2, 8]);
pool.addAlternativesLoot(
LootEntry.of('tfc:seeds/onion').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:seeds/cabbage').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:seeds/potato').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:seeds/jute').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:seeds/sugarcane').when((c) => c.randomChance(0.1)),
LootEntry.of('firmalife:plant/pineapple_bush').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:plant/peach_sapling').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:plant/red_apple_sapling').when((c) => c.randomChance(0.1)));
})
//loot
.pool((pool) => {
pool.rolls([0, 3]);
pool.addAlternativesLoot(
LootEntry.of('tfc:wool_yarn').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:blubber').when((c) => c.randomChance(0.1)),
LootEntry.of('minecraft:bone').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:kaolin_clay').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:glue').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:burlap_cloth').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:wool_cloth').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:mortar').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:leather').when((c) => c.randomChance(0.1)),
LootEntry.of('chalk:black_chalk').when((c) => c.randomChance(0.1)),
LootEntry.of('chalk:red_chalk').when((c) => c.randomChance(0.1)),
LootEntry.of('chalk:white_chalk').when((c) => c.randomChance(0.1)),
LootEntry.of('minecraft:goat_horn').when((c) => c.randomChance(0.1)),
LootEntry.of('tfg:regeneration_pill').when((c) => c.randomChance(0.1)),
LootEntry.of('tfg:water_breathing_pill').when((c) => c.randomChance(0.1)),
LootEntry.of('tfg:night_vision_pill').when((c) => c.randomChance(0.1)),
LootEntry.of('tfg:haste_pill').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:small_raw_hide').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:medium_raw_hide').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:large_raw_hide').when((c) => c.randomChance(0.1)),
LootEntry.of('firmalife:beeswax').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:bismuth_bronze_pickaxe_head').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:bismuth_bronze_axe_head').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:bismuth_bronze_shovel_head').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:bismuth_bronze_knife_head').when((c) => c.randomChance(0.1)));
})
});
//#region Blocks
event.addBlockLootModifier('minecraft:campfire')
.removeLoot(Ingredient.all)
.addLoot('minecraft:campfire')
//#endregion
//Cross-mod glass compat
const STRONG_GLASSES = [
['create:dark_oak_window', true],
['create:mangrove_window', true],
['create:ornate_iron_window', true],
['create:industrial_iron_window', true],
['create:weathered_iron_window', true],
['create:cherry_window', true],
['create:bamboo_window', true],
['createdeco:andesite_window', true],
['createdeco:copper_window', true],
['createdeco:iron_window', true],
['createdeco:industrial_iron_window', true],
['createdeco:brass_window', true],
['createdeco:zinc_window', true],
['everycomp:c/domum_ornamentum/cactus_window_pane', false],
['everycomp:c/domum_ornamentum/cactus_extra_window_pane', false]
]
const GLASSES = [
'create:framed_glass',
'create:vertical_framed_glass',
'create:horizontal_framed_glass',
'create:tiled_glass'
]
STRONG_GLASSES.forEach(glass => {
event.addBlockLootModifier(glass[0])
.addLoot(glass[0])
if (glass[1]) {
event.addBlockLootModifier(`${glass[0]}_pane`)
.addLoot(`${glass[0]}_pane`)
}
});
GLASSES.forEach(glass => {
event.addBlockLootModifier(glass)
.matchMainHand(Item.of('tfc:gem_saw'))
.addLoot(glass)
event.addBlockLootModifier(`${glass}_pane`)
.matchMainHand(Item.of('tfc:gem_saw'))
.addLoot(`${glass}_pane`)
})
global.TFC_WOOD_TYPES.forEach(wood => {
const id = `everycomp:c/tfc/${wood}_window_pane`
event.addBlockLootModifier(id)
.addLoot(id)
})
global.AFC_WOOD_TYPES.forEach(wood => {
const id = `everycomp:c/afc/${wood}_window_pane`
event.addBlockLootModifier(id)
.addLoot(id)
})
global.AD_ASTRA_WOOD.forEach(wood => {
const id = `everycomp:c/ad_astra/${wood.name}_window_pane`
event.addBlockLootModifier(id)
.addLoot(id)
})
// Extra animal drop amounts for butchery knives
event.addEntityLootModifier('tfg:glacian_ram')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([6, 9], ['tfg:food/raw_glacian_mutton'])
event.addEntityLootModifier('tfg:moon_rabbit')
.matchMainHand('#forge:tools/butchery_knives')
.addLoot('tfg:food/raw_moon_rabbit')
event.addEntityLootModifier('tfg:sniffer')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([6, 9], ['tfg:food/raw_sniffer_beef'])
};

View file

@ -1,155 +0,0 @@
"use strict";
function registerTFGLoots(event) {
//#region Vase Loot
global.MINECRAFT_DYE_NAMES.forEach(color => {
event.addBlockLootModifier(`tfg:decorative_vase/generated/${color}`)
.removeLoot(Ingredient.all)
//ore
.pool((pool) => {
pool.rolls([4, 6]);
pool.addAlternativesLoot(
LootEntry.of('tfc:ore/normal_bismuthinite').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_bismuthinite').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_native_copper').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_native_copper').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_sphalerite').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_sphalerite').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_cassiterite').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_cassiterite').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_native_gold').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_native_gold').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_native_silver').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_native_silver').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:ore/normal_hematite').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:ore/rich_hematite').when((c) => c.randomChance(0.2)),
LootEntry.of('gtceu:rich_raw_rock_salt').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:rich_raw_salt').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:rich_raw_saltpeter').when((c) => c.randomChance(0.1))
);
})
//seeds
.pool((pool) => {
pool.rolls([2, 8]);
pool.addAlternativesLoot(
LootEntry.of('tfc:seeds/onion').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:seeds/cabbage').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:seeds/potato').when((c) => c.randomChance(0.2)),
LootEntry.of('tfc:seeds/jute').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:seeds/sugarcane').when((c) => c.randomChance(0.1)),
LootEntry.of('firmalife:plant/pineapple_bush').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:plant/peach_sapling').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:plant/red_apple_sapling').when((c) => c.randomChance(0.1)));
})
//loot
.pool((pool) => {
pool.rolls([0, 3]);
pool.addAlternativesLoot(
LootEntry.of('tfc:wool_yarn').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:blubber').when((c) => c.randomChance(0.1)),
LootEntry.of('minecraft:bone').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:kaolin_clay').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:glue').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:burlap_cloth').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:wool_cloth').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:mortar').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:leather').when((c) => c.randomChance(0.1)),
LootEntry.of('chalk:black_chalk').when((c) => c.randomChance(0.1)),
LootEntry.of('chalk:red_chalk').when((c) => c.randomChance(0.1)),
LootEntry.of('chalk:white_chalk').when((c) => c.randomChance(0.1)),
LootEntry.of('minecraft:goat_horn').when((c) => c.randomChance(0.1)),
LootEntry.of('tfg:regeneration_pill').when((c) => c.randomChance(0.1)),
LootEntry.of('tfg:water_breathing_pill').when((c) => c.randomChance(0.1)),
LootEntry.of('tfg:night_vision_pill').when((c) => c.randomChance(0.1)),
LootEntry.of('tfg:haste_pill').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:small_raw_hide').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:medium_raw_hide').when((c) => c.randomChance(0.1)),
LootEntry.of('tfc:large_raw_hide').when((c) => c.randomChance(0.1)),
LootEntry.of('firmalife:beeswax').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:bismuth_bronze_pickaxe_head').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:bismuth_bronze_axe_head').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:bismuth_bronze_shovel_head').when((c) => c.randomChance(0.1)),
LootEntry.of('gtceu:bismuth_bronze_knife_head').when((c) => c.randomChance(0.1)));
})
});
//#region Blocks
event.addBlockLootModifier('minecraft:campfire')
.removeLoot(Ingredient.all)
.addLoot('minecraft:campfire')
//#endregion
//Cross-mod glass compat
const STRONG_GLASSES = [
['create:dark_oak_window', true],
['create:mangrove_window', true],
['create:ornate_iron_window', true],
['create:industrial_iron_window', true],
['create:weathered_iron_window', true],
['create:cherry_window', true],
['create:bamboo_window', true],
['createdeco:andesite_window', true],
['createdeco:copper_window', true],
['createdeco:iron_window', true],
['createdeco:industrial_iron_window', true],
['createdeco:brass_window', true],
['createdeco:zinc_window', true],
['everycomp:c/domum_ornamentum/cactus_window_pane', false],
['everycomp:c/domum_ornamentum/cactus_extra_window_pane', false]
]
const GLASSES = [
'create:framed_glass',
'create:vertical_framed_glass',
'create:horizontal_framed_glass',
'create:tiled_glass'
]
STRONG_GLASSES.forEach(glass => {
event.addBlockLootModifier(glass[0])
.addLoot(glass[0])
if (glass[1]) {
event.addBlockLootModifier(`${glass[0] }_pane`)
.addLoot(`${glass[0] }_pane`)
}
});
GLASSES.forEach(glass => {
event.addBlockLootModifier(glass)
.matchMainHand(Item.of('tfc:gem_saw'))
.addLoot(glass)
event.addBlockLootModifier(`${glass }_pane`)
.matchMainHand(Item.of('tfc:gem_saw'))
.addLoot(`${glass }_pane`)
})
global.TFC_WOOD_TYPES.forEach(wood => {
const id = `everycomp:c/tfc/${ wood }_window_pane`
event.addBlockLootModifier(id)
.addLoot(id)
})
global.AFC_WOOD_TYPES.forEach(wood => {
const id = `everycomp:c/afc/${ wood }_window_pane`
event.addBlockLootModifier(id)
.addLoot(id)
})
global.AD_ASTRA_WOOD.forEach(wood => {
const id = `everycomp:c/ad_astra/${ wood.name }_window_pane`
event.addBlockLootModifier(id)
.addLoot(id)
})
};

View file

@ -0,0 +1,23 @@
// priority: 0
"use strict";
function registerWansAncientBeastsLoots(event) {
// Extra animal drop amounts for butchery knives
event.addEntityLootModifier('wan_ancient_beasts:crusher')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 3], ['tfg:food/raw_crusher_meat'])
event.addEntityLootModifier('wan_ancient_beasts:glider')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 3], ['tfg:food/raw_glider_wings'])
event.addEntityLootModifier('wan_ancient_beasts:soarer')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([1, 2], ['tfg:food/raw_whole_soarer'])
event.addEntityLootModifier('wan_ancient_beasts:walker')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([6, 12], ['tfg:food/raw_walker_steak'])
}