Skip to content

Commit

Permalink
Merge pull request #791 from MuteTiefling/booksaw
Browse files Browse the repository at this point in the history
Books from Bookshelves
  • Loading branch information
MuteTiefling authored Nov 26, 2023
2 parents 59d8385 + 210602f commit 80c9abd
Show file tree
Hide file tree
Showing 8 changed files with 119 additions and 7 deletions.
2 changes: 2 additions & 0 deletions changelogs/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
- Add Randomize Glyph to Death Tomes [\#785](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/785)
- Dissolution Chamber can now bottle any XP fluid [\#788](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/788)
- Cable Anchors may now be made in a sawmill at reduced material cost [\#789](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/789)
- Bookshelves may be processed in a saw mill to extract books [\#791](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/791)
- [Expert] Awkward potions are no longer brewable with Netherwart to promote the use of the far easier to obtain Abjuration Essence [\#751](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/751)
- [Expert] Nether Wart may now be used to make Ethanol more efficiently [\#751](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/751)
- [Expert] The Break Glyph no longer requires Iron, making it accessible closer to when a Tier 2 book is available [\#751](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/751)
Expand All @@ -35,6 +36,7 @@
- [Expert] Chapter 1 quest clarifications to help guide players to things like the Storage Lectern [\#787](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/787)
- [Expert] Various Twilight bosses now drop some essences to give the player a jump start before they get their production going [\#787](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/787)
- [Expert] Compressed Stone may now be found in the Troll vaults [\#787](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/787)
- [Expert] Dimensional Storage Crystals may now be produced in a Thermal saw [\#791](https://github.com/EnigmaticaModpacks/Enigmatica9/issues/791)

### 🐛 Fixed Bugs

Expand Down
18 changes: 12 additions & 6 deletions kubejs/server_scripts/base/recipes/create/cutting.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ ServerEvents.recipes((event) => {
const recipes = [
{
input: ['naturesaura:ancient_log'],
outputs: ['6x naturesaura:ancient_planks'],
outputs: ['6x naturesaura:ancient_planks', 'naturesaura:gold_powder'],
processingTime: 50,
id: `${id_prefix}ancient_planks_from_ancient_log`
},
{
input: ['naturesaura:ancient_bark'],
outputs: ['6x naturesaura:ancient_planks'],
outputs: ['6x naturesaura:ancient_planks', 'naturesaura:gold_powder'],
processingTime: 50,
id: `${id_prefix}ancient_planks_from_ancient_bark`
},
Expand Down Expand Up @@ -85,6 +85,12 @@ ServerEvents.recipes((event) => {
outputs: ['8x ae2:cable_anchor'],
processingTime: 30,
id: `${id_prefix}cable_anchor`
},
{
input: ['#forge:bookshelves'],
outputs: ['3x minecraft:book', `6x ${sawdust}`],
processingTime: 30,
id: `${id_prefix}book_from_bookshelves`
}
];

Expand All @@ -94,7 +100,7 @@ ServerEvents.recipes((event) => {
output = material.log.stripped;
recipes.push({
input: [input],
outputs: [output],
outputs: [output, bark],
processingTime: 50,
id: `${id_prefix}${output.replace(':', '_')}_from_${input.replace(':', '_')}`
});
Expand All @@ -104,7 +110,7 @@ ServerEvents.recipes((event) => {
output = material.wood.stripped;
recipes.push({
input: [input],
outputs: [output],
outputs: [output, bark],
processingTime: 50,
id: `${id_prefix}${output.replace(':', '_')}_from_${input.replace(':', '_')}`
});
Expand All @@ -114,15 +120,15 @@ ServerEvents.recipes((event) => {
output = material.plank.block;
recipes.push({
input: [input],
outputs: [`6x ${output}`],
outputs: [`6x ${output}`, sawdust],
processingTime: 50,
id: `${id_prefix}${output.replace(':', '_')}_from_${input.replace(':', '_')}`
});

input = material.wood.stripped;
recipes.push({
input: [input],
outputs: [`6x ${output}`],
outputs: [`6x ${output}`, sawdust],
processingTime: 50,
id: `${id_prefix}${output.replace(':', '_')}_from_${input.replace(':', '_')}`
});
Expand Down
1 change: 1 addition & 0 deletions kubejs/server_scripts/base/recipes/enigmatica/remove.js
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,7 @@ ServerEvents.recipes((event) => {
{ id: /mekanism:crushing\/biofuel/ },
{ id: 'mekanism:processing/netherite/dust_to_ancient_debris' },
{ id: 'mekanism:processing/bronze/ingot/from_infusing' },
{ id: 'mekanism:sawing/bookshelf' },

{ id: 'minecraft:bone_meal' },
{ id: 'minecraft:glass' },
Expand Down
11 changes: 11 additions & 0 deletions kubejs/server_scripts/base/recipes/immersiveengineering/sawmill.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,17 @@ ServerEvents.recipes((event) => {
output: '8x ae2:cable_anchor',
secondaries: [],
id: `${id_prefix}cable_anchor`
},
{
energy: 512,
input: ['#forge:bookshelves'],
output: `6x ${sawdust}`,
secondaries: [
{ output: 'minecraft:book', stripping: false },
{ output: 'minecraft:book', stripping: false },
{ output: 'minecraft:book', stripping: false }
],
id: `${id_prefix}book_from_bookshelves`
}
];

Expand Down
9 changes: 9 additions & 0 deletions kubejs/server_scripts/base/recipes/thermal/sawmill.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,15 @@ ServerEvents.recipes((event) => {
result: [{ item: 'ae2:cable_anchor', count: 8 }],
energy: 1000,
id: `${id_prefix}cable_anchor`
},
{
ingredient: { tag: 'forge:bookshelves' },
result: [
{ item: 'minecraft:book', count: 3 },
{ item: sawdust, chance: 6 }
],
energy: 1000,
id: `${id_prefix}book_from_bookshelves`
}
];

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ ServerEvents.recipes((event) => {
input: ['occultism:dimensional_matrix'],
output: '21x kubejs:dimensional_storage_crystal',
secondaries: [{ output: 'ae2:certus_quartz_dust', stripping: false }],
id: `${id_prefix}oak_planks_from_oak_log`
id: `${id_prefix}dimensional_storage_crystal`
},
{
energy: 500,
Expand Down
77 changes: 77 additions & 0 deletions kubejs/server_scripts/expert/recipes/thermal/sawmill.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
ServerEvents.recipes((event) => {
if (global.isExpertMode == false) {
return;
}

const id_prefix = 'enigmatica:expert/thermal/sawmill/';

const recipes = [
{
ingredient: { item: 'occultism:dimensional_matrix' },
result: [
{ item: 'kubejs:dimensional_storage_crystal', count: 27 },
{ item: 'ae2:certus_quartz_dust', chance: 1.0 }
],
energy: 5000,
id: `${id_prefix}dimensional_storage_crystal`
}
];

wood_properties.forEach((material) => {
// Log to Stripped
let input = material.log.block,
output = material.log.stripped;
recipes.push({
ingredient: { item: input },
result: [
{ item: output, count: 1 },
{ item: bark, chance: 1.25 }
],
energy: 1000,
id: `${id_prefix}${output.replace(':', '_')}_from_${input.replace(':', '_')}`
});

// Wood to Stripped
input = material.wood.block;
output = material.wood.stripped;
recipes.push({
ingredient: { item: input },
result: [
{ item: output, count: 1 },
{ item: bark, chance: 1.25 }
],
energy: 1000,
id: `${id_prefix}${output.replace(':', '_')}_from_${input.replace(':', '_')}`
});

// Stripped to Plank
input = material.log.stripped;
output = material.plank.block;
recipes.push({
ingredient: [{ item: input }],
result: [
{ item: output, count: 6 },
{ item: sawdust, chance: 0.5 }
],
energy: 1000,
id: `${id_prefix}${output.replace(':', '_')}_from_${input.replace(':', '_')}`
});

input = material.wood.stripped;
output = material.plank.block;
recipes.push({
ingredient: [{ item: input }],
result: [
{ item: output, count: 6 },
{ item: sawdust, chance: 0.5 }
],
energy: 1000,
id: `${id_prefix}${output.replace(':', '_')}_from_${input.replace(':', '_')}`
});
});

recipes.forEach((recipe) => {
recipe.type = 'thermal:sawmill';
event.custom(recipe).id(recipe.id);
});
});
6 changes: 6 additions & 0 deletions kubejs/server_scripts/normal/recipes/mekanism/sawing.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,12 @@ ServerEvents.recipes((event) => {
input: ['#forge:rods/all_metal'],
output: '8x ae2:cable_anchor',
id: `${id_prefix}cable_anchor`
},
{
input: ['#forge:bookshelves'],
output: '3x minecraft:book',
secondary: { output: sawdust, count: 6, chance: 1.0 },
id: `${id_prefix}book_from_bookshelves`
}
];

Expand Down

0 comments on commit 80c9abd

Please sign in to comment.