* changed Caelum to be on the server too, since tfc-caelum is also a server mod * added caelum + tfc-caelum to pakku * fixed stress levels on the rolling mill * fixed lang files for universal circuits * changed early game recipes to use small gears instead of large, to avoid duping, and make cogs easier * Update carryon-common.toml Carry On's config doesn't seem to work with tags (#), so I explicitly added the framedblocks chest and the tfc chests to the whitelist. I also removed storage drawers since they aren't in use. Signed-off-by: NobleWasTaken <137561393+NobleWasTaken@users.noreply.github.com> * - Missed this commit last time oops * Fixed nano legs buff from also removing speed buff, for now * Added recycling recipes for your old molds * lowered recipe speed of bulk washing * Added more details to ore hazards field guide entry * Bump actions/download-artifact in the dependencies group Bumps the dependencies group with 1 update: [actions/download-artifact](https://github.com/actions/download-artifact). Updates `actions/download-artifact` from 4.2.1 to 4.3.0 - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v4.2.1...v4.3.0) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: 4.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies ... Signed-off-by: dependabot[bot] <support@github.com> * will you leave me alone if I submit these, ftbquests? * more create SU adjustments * - Added recipe to separate fertilizer into pure sources, and mix them back together. - Added recipes to sew hides together and cut them apart. * ore basics + hazards field guide entry tweaks * big field guide update! all ore veins are now generated with our tool! * toned down how many sticks were being placed in the nether * remove caelum + tfc caelum #922 * - Added recipe to separate fertilizer into pure sources, and mix them back together. (#927) - Added recipes to sew hides together and cut them apart. * the placeholder programmed circuit recipe is now a stick + wrench, so it doesn't confuse new players as much * updated changelog * changed some create recipes to use bolts instead of nuggets, so they're available earlier * moved surface_kaolin to mechanics category * changed realgar item set * Add README file to server overrides * Fix tips quest issues (#937) * - Fixed supports * fixed some incorrect assembler recipes for create items * improved texture of nether quartz ore + the raw ore block of the quartz material set * greate buffs * remove brick duping * removed treated wood boats * clay decomposition now requires HV * added a potential fix for #944 suggested by ghosti, cleaned up some other abuses of it in tag events so now it's just indicators that still have to use it * fixed tfc tool tags * fluix's displayed formula is now more accurate to its material composition * nerfed stone dust centrifuging, added a basic tape recipe that uses tfc glue * fixes #932 * Allow red/tin alloy double ingot piles, add textures (#948) * Mv quest rework (#920) * Changes for MV Quests * First fix for Progression tab * fixes lang title Signed-off-by: TomPlop <tomdidome@gmail.com> * Changes for LV, fixes for quest categories, adding GT Tips, adding Gregtech energy, rework of Progression tab * fix macerator separator --------- Signed-off-by: TomPlop <tomdidome@gmail.com> * - the other ae2 wireless terminals are now all in late EV - MEGA ae2 stuff now requires naq instead of a singularity * coke and coal are no longer gems, and moss is no longer dirt * fixed some icon sets * the nether now has a gas collector recipe * update changelog * some more ae2 tweaking * better recipe for the universal wireless terminal * swapped colors of nickel and platinum, so nickel more closely matches the tfc textures * doubled capacity of greate shafts! also adjusted the alternator to match * fix: gui_main_menu * pakku update * fix: gui_main_menu 2 * Update mods * removed beneath's cursecoal and sylvite veins, made tfg ones instead so they're added to the field guide * new main menu panorama! * update changelog * update changelog * added death punishment mod + config * updated the greate mixer workaround quest * Rubber processing recipes audit (#949) * Rubber recipe changes - Latex can now be extracted from rubber trees' logs, saplings, leaves via the vacuum chamber (ULV) or extractor(LV) - values: 1000mB per log, 100mB per sapling, 50mB per leaves; Extractor recipes do this in bulk and output 1000mB per operation - Dandelions and goldenrods can, with added sodium hydroxide, be turned into latex in a chem reactor - Sticky resin recipes (from both conifer pitch and latex) require wood ash now instead of sulfur - Latex -> Vulcanized latex recipe now requires sulfur instead of wood ash - Vulcanized latex now becomes raw rubber pulp in a solidifier or vacuum chamber at a rate of 250mB/raw pulp - Latex soaked glove recipe now is a barrel recipe that takes 50 seconds instead of a vat recipe * Correctly set latex soaked gloves recipe to 50 seconds (was 100 seconds in previous commit) * Quest/patchouli book updates - Tried to catch every mention of the old rubber making recipes. * Revert Latex-soaked gloves recipe change as it didn't need to change - Originally I wanted to make vulc latex -> raw rubber a Vat recipe, this isn't the case anymore so there is no reason to change this recipe. * Rebalanced recipe values - Logs now only give 250mB of latex - Increase overall in time required vacuumizing directly into latex (now roughly takes 150 seconds per 1000mB, logs slightly faster) - Gregtech fluid extraction recipes for these have been rebalanced to be around 4x faster and in bulk (roughly 37.5 seconds per 1000mB, logs slightly faster) - Made vacuum chamber recipes use kubejs tag: field for allowing tags in recipe * Lang & Quest updates - Changed rubber ingot quest dependency to be on vacuum chamber instead of extractor - Removed LV circuit quest dependency on rubber (this hasn't required rubber for a while) - Lang changes - fix ambiguous wording, typos, titles too long for book * updated langs * oops, missed quest langs * pushing algo_rithm's lang changes * updated punishment-for-death pakku * update configs * langs * Update CHANGELOG.md * Update mods * CHANGELOG * Update build.yml --------- Signed-off-by: NobleWasTaken <137561393+NobleWasTaken@users.noreply.github.com> Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: TomPlop <tomdidome@gmail.com> Co-authored-by: NobleWasTaken <137561393+NobleWasTaken@users.noreply.github.com> Co-authored-by: Redeix <59435925+Redeix@users.noreply.github.com> Co-authored-by: Redeix <brayden.j.m.ford@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Xikaro <55663835+Xikaro@users.noreply.github.com> Co-authored-by: Nebby1999 <nebby131999@gmail.com> Co-authored-by: Nebby <78170922+Nebby1999@users.noreply.github.com> Co-authored-by: AirRice <jpumph2@gmail.com> Co-authored-by: TomPlop <tomdidome@gmail.com> Co-authored-by: Xikaro <os.valerievich@ya.ru>
158 lines
No EOL
5.1 KiB
JavaScript
158 lines
No EOL
5.1 KiB
JavaScript
// priority: 10
|
|
|
|
const STONE_TYPES_TO_COBBLE = {
|
|
gabbro: 'tfc:rock/cobble/gabbro',
|
|
shale: 'tfc:rock/cobble/shale',
|
|
claystone: 'tfc:rock/cobble/claystone',
|
|
limestone: 'tfc:rock/cobble/limestone',
|
|
conglomerate: 'tfc:rock/cobble/conglomerate',
|
|
dolomite: 'tfc:rock/cobble/dolomite',
|
|
chert: 'tfc:rock/cobble/chert',
|
|
chalk: 'tfc:rock/cobble/chalk',
|
|
rhyolite: 'tfc:rock/cobble/rhyolite',
|
|
dacite: 'tfc:rock/cobble/dacite',
|
|
quartzite: 'tfc:rock/cobble/quartzite',
|
|
slate: 'tfc:rock/cobble/slate',
|
|
phyllite: 'tfc:rock/cobble/phyllite',
|
|
schist: 'tfc:rock/cobble/schist',
|
|
gneiss: 'tfc:rock/cobble/gneiss',
|
|
marble: 'tfc:rock/cobble/marble',
|
|
basalt: 'tfc:rock/cobble/basalt',
|
|
diorite: 'tfc:rock/cobble/diorite',
|
|
andesite: 'tfc:rock/cobble/andesite',
|
|
granite: 'tfc:rock/cobble/granite',
|
|
deepslate: 'minecraft:cobbled_deepslate',
|
|
pyroxenite: 'minecraft:blackstone',
|
|
dripstone: 'minecraft:dripstone_block',
|
|
}
|
|
|
|
const registerGTCEULoots = (event) => {
|
|
|
|
// Have to define these here because normal loot table jsons don't support checking for hammers
|
|
event.addBlockLootModifier('minecraft:deepslate')
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addLoot('minecraft:cobbled_deepslate')
|
|
|
|
event.addBlockLootModifier('minecraft:blackstone')
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addLoot('tfc:sand/black')
|
|
|
|
event.addBlockLootModifier('minecraft:dripstone_block')
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addLoot('tfc:sand/brown')
|
|
|
|
event.addBlockLootModifier('tfg:rock/hardened_blackstone')
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addLoot('tfc:sand/black')
|
|
|
|
event.addBlockLootModifier('tfg:rock/hardened_deepslate')
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addLoot('tfc:sand/black')
|
|
|
|
event.addBlockLootModifier('tfg:rock/hardened_dripstone')
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addLoot('tfc:sand/brown')
|
|
|
|
event.addBlockLootModifier('minecraft:gilded_blackstone')
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addSequenceLoot(
|
|
LootEntry.of('tfc:sand/black'),
|
|
LootEntry.of('tfc:powder/native_gold')
|
|
)
|
|
|
|
event.addBlockLootModifier('beneath:crackrack')
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addLoot('tfc:sand/pink')
|
|
|
|
// Crush raw rock into cobble
|
|
global.ORE_BEARING_STONES.forEach(stoneType => {
|
|
event.addBlockLootModifier(`tfc:rock/raw/${stoneType}`)
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addLoot(STONE_TYPES_TO_COBBLE[stoneType]);
|
|
})
|
|
|
|
// Go through all materials
|
|
forEachMaterial(material => {
|
|
|
|
if (material.hasProperty(PropertyKey.ORE)) {
|
|
|
|
// Indicator buds
|
|
if (material.hasProperty(PropertyKey.GEM)) {
|
|
let normalDrop = ChemicalHelper.get(TagPrefix.gemChipped, material, 1)
|
|
let sawDrop = ChemicalHelper.get(TagPrefix.gem, material, 1)
|
|
|
|
let bud = `gtceu:${material.getName()}_bud_indicator`;
|
|
|
|
event.addBlockLootModifier(bud)
|
|
.matchMainHand("tfc:gem_saw")
|
|
.addLoot(sawDrop);
|
|
|
|
event.addBlockLootModifier(bud)
|
|
.not(n => n.matchMainHand("tfc:gem_saw"))
|
|
.addLoot(normalDrop);
|
|
}
|
|
|
|
let richRawOre = ChemicalHelper.get(TFGTagPrefix.richRawOre, material, 1)
|
|
let normalRawOre = ChemicalHelper.get(TagPrefix.rawOre, material, 1)
|
|
let poorRawOre = ChemicalHelper.get(TFGTagPrefix.poorRawOre, material, 1)
|
|
|
|
// I LOVE LOOTJS I LOVE LOOTJS I LOVE LOOTJS
|
|
let rawOreBlock = `:${ChemicalHelper.get(TagPrefix.rawOreBlock, material, 1).getItem()}`;
|
|
if (material == GTMaterials.Copper || material == GTMaterials.Gold || material == GTMaterials.Iron)
|
|
rawOreBlock = "minecraft" + rawOreBlock;
|
|
else
|
|
rawOreBlock = "gtceu" + rawOreBlock;
|
|
|
|
event.addBlockLootModifier(rawOreBlock)
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addWeightedLoot([4, 6],
|
|
[
|
|
richRawOre.withChance(0.2),
|
|
normalRawOre.withChance(0.6),
|
|
poorRawOre.withChance(0.2)
|
|
]);
|
|
|
|
// Stone ores
|
|
global.ORE_BEARING_STONES.forEach(stoneType => {
|
|
|
|
let stoneTypeMaterial = TFGHelpers.getMaterial(stoneType)
|
|
|
|
// Material doesn't work here because of reasons
|
|
if (stoneTypeMaterial == null) {
|
|
if (stoneType == "pyroxenite")
|
|
stoneTypeMaterial = GTMaterials.Blackstone;
|
|
else if (stoneType == "deepslate")
|
|
stoneTypeMaterial = GTMaterials.Deepslate;
|
|
}
|
|
|
|
let stoneTypeDust = ChemicalHelper.get(TagPrefix.dust, stoneTypeMaterial, 1)
|
|
|
|
// break with pickaxe
|
|
event.addBlockLootModifier(`gtceu:${stoneType}_${material.getName()}_ore`)
|
|
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
|
.addWeightedLoot([
|
|
richRawOre.withChance(0.2),
|
|
normalRawOre.withChance(0.6),
|
|
poorRawOre.withChance(0.2)
|
|
])
|
|
.addLoot(
|
|
LootEntry.of(stoneTypeDust).when((c) => c.randomChance(0.25))
|
|
)
|
|
|
|
// break with hammer
|
|
event.addBlockLootModifier(`gtceu:${stoneType}_${material.getName()}_ore`)
|
|
.matchMainHand('#forge:tools/hammers')
|
|
.addLoot(STONE_TYPES_TO_COBBLE[stoneType]);
|
|
})
|
|
}
|
|
})
|
|
} |