Skip to content

Commit

Permalink
Fix for EnigmaticaModpacks#677 + bunch of EMI/JEI QoL
Browse files Browse the repository at this point in the history
  • Loading branch information
Kanzaji committed Dec 2, 2023
1 parent be49565 commit 7b1208f
Show file tree
Hide file tree
Showing 10 changed files with 107 additions and 43 deletions.
34 changes: 22 additions & 12 deletions kubejs/assets/emi/index/stacks/emi_added_items.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
{
"added": [
{
"stack": "item:immersiveengineering:alloy_smelter"
},
{
"stack": "item:immersiveengineering:arc_furnace"
},
Expand All @@ -12,9 +9,6 @@
{
"stack": "item:immersiveengineering:auto_workbench"
},
{
"stack": "item:immersiveengineering:blast_furnace"
},
{
"stack": "item:immersiveengineering:bottling_machine"
},
Expand Down Expand Up @@ -61,19 +55,28 @@
"stack": "item:immersiveengineering:tank"
},
{
"stack": "item:occultism:iesnium_ore"
"stack": "item:emendatusenigmatica:bitumen_sandstone_ore",
"after": "item:emendatusenigmatica:iron_ore"
},
{
"stack": "item:emendatusenigmatica:quartz_netherrack_ore",
"after": "item:emendatusenigmatica:bitumen_sandstone_ore"
},
{
"stack": "item:emendatusenigmatica:bitumen_sandstone_ore"
"stack": "item:occultism:iesnium_ore",
"after": "item:emendatusenigmatica:quartz_netherrack_ore"
},
{
"stack": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:reactive\",lvl:1s}]}"
"stack": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:reactive\",lvl:1s}]}",
"after": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:mana_boost\",lvl:3s}]}"
},
{
"stack": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:reactive\",lvl:2s}]}"
"stack": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:reactive\",lvl:2s}]}",
"after": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:reactive\",lvl:1s}]}"
},
{
"stack": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:reactive\",lvl:3s}]}"
"stack": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:reactive\",lvl:3s}]}",
"after": "item:minecraft:enchanted_book{StoredEnchantments:[{id:\"ars_nouveau:reactive\",lvl:2s}]}"
},
{
"stack": "item:ars_nouveau:novice_boots{Damage:0,an_stack_perks:{color:\"\",perks:[],tier:2}}",
Expand Down Expand Up @@ -170,6 +173,13 @@
{
"stack": "item:ars_nouveau:archmage_hood{Damage:0,an_stack_perks:{color:\"\",perks:[],tier:1}}",
"after": "item:ars_nouveau:archmage_hood{Damage:0}"
},
{
"stack": "item:immersiveengineering:alloy_smelter"
},
{
"stack": "item:immersiveengineering:blast_furnace"
}
]
],
"priority": 100
}
2 changes: 1 addition & 1 deletion kubejs/assets/emi/index/stacks/emi_disabled_items.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
"/thermal.*sulfur_ore/",
"/mekanism.*fluorite_ore/",
"/rftoolsbase:dimensionalshard_/",
"/emendatusenigmatica:.*_cluster_shard\\b/",
"/pendorite/",
"/ametrine/",
"/theoneprobe/",
Expand All @@ -28,6 +27,7 @@
"createaddition:biomass",
"createaddition:bioethanol_bucket",
"createaddition:seed_oil_bucket",
"/emendatusenigmatica:.*_cluster_shard\\b/",
"engineersdecor:factory_dropper",
"engineersdecor:factory_hopper",
"engineersdecor:factory_placer",
Expand Down
2 changes: 2 additions & 0 deletions kubejs/assets/emi/index/stacks/emi_hidden_items.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
"/densetrees/",
"/emendatusenigmatica:bitumen_.*_ore/",
"emendatusenigmatica:bitumen_ore",
"emendatusenigmatica:quartz_netherrack_ore",
"emendatusenigmatica:quartz_ore",
"/hexerei:.*selenite/",
"hexerei:creative_waxing_kit",
"/kubejs:.*indicator/",
Expand Down
16 changes: 1 addition & 15 deletions kubejs/client_scripts/base/emi_add_items.js
Original file line number Diff line number Diff line change
@@ -1,15 +1 @@
ClientEvents.highPriorityAssets((event) => {
// https://github.com/emilyploszaj/emi/wiki/Hiding-and-Adding-Index-Stacks

const payload = {added: []};
added_items.base.forEach((item) => {
if (item.nbt == null) item.nbt = '';
if (item.after == null) {
payload.added.push({ stack: `item:${item.id}${item.nbt}`})
} else {
payload.added.push({ stack: `item:${item.id}${item.nbt}`, after: `item:${item.after}`})
}
});

JsonIO.write(`kubejs/assets/emi/index/stacks/emi_added_items.json`, payload);
});
// TODO: Remove next breaking update
22 changes: 10 additions & 12 deletions kubejs/client_scripts/constants/jei_add.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,9 @@ const added_items = {

// Base
added_items.base = [
{ id: 'immersiveengineering:alloy_smelter' },
{ id: 'immersiveengineering:arc_furnace' },
{ id: 'immersiveengineering:assembler' },
{ id: 'immersiveengineering:auto_workbench' },
{ id: 'immersiveengineering:blast_furnace' },
{ id: 'immersiveengineering:bottling_machine' },
{ id: 'immersiveengineering:coke_oven' },
{ id: 'immersiveengineering:crusher' },
Expand All @@ -36,21 +34,21 @@ added_items.base = [
{ id: 'immersiveengineering:silo' },
{ id: 'immersiveengineering:squeezer' },
{ id: 'immersiveengineering:tank' },
{ id: 'occultism:iesnium_ore' },
{ id: 'emendatusenigmatica:bitumen_sandstone_ore' },
{ id: 'minecraft:enchanted_book', nbt: '{StoredEnchantments:[{id:"ars_nouveau:reactive",lvl:1s}]}' },
{ id: 'minecraft:enchanted_book', nbt: '{StoredEnchantments:[{id:"ars_nouveau:reactive",lvl:2s}]}' },
{ id: 'minecraft:enchanted_book', nbt: '{StoredEnchantments:[{id:"ars_nouveau:reactive",lvl:3s}]}' }
{ id: 'emendatusenigmatica:bitumen_sandstone_ore', after: 'emendatusenigmatica:iron_ore' },
{ id: 'emendatusenigmatica:quartz_netherrack_ore', after: 'emendatusenigmatica:bitumen_sandstone_ore' },
{ id: 'occultism:iesnium_ore', after: 'emendatusenigmatica:quartz_netherrack_ore' },
{ id: 'minecraft:enchanted_book', nbt: '{StoredEnchantments:[{id:"ars_nouveau:reactive",lvl:1s}]}', after: 'minecraft:enchanted_book{StoredEnchantments:[{id:"ars_nouveau:mana_boost",lvl:3s}]}' },
{ id: 'minecraft:enchanted_book', nbt: '{StoredEnchantments:[{id:"ars_nouveau:reactive",lvl:2s}]}', after: 'minecraft:enchanted_book{StoredEnchantments:[{id:"ars_nouveau:reactive",lvl:1s}]}' },
{ id: 'minecraft:enchanted_book', nbt: '{StoredEnchantments:[{id:"ars_nouveau:reactive",lvl:3s}]}', after: 'minecraft:enchanted_book{StoredEnchantments:[{id:"ars_nouveau:reactive",lvl:2s}]}' }
];

// Normal
// Dev Note: Scripts for Normal aren't created yet, as nothing is here!
// If you want to add entries here, you need to copy `emi_add_items.js` and `jei_add_items.js` from base to normal mode, and change the array they work on!
added_items.normal = [];
added_items.normal = [
{ id: 'immersiveengineering:alloy_smelter' },
{ id: 'immersiveengineering:blast_furnace' }
];

// Expert
// Dev Note: Scripts for Expert aren't created yet, as nothing is here!
// If you want to add entries here, you need to copy `emi_add_items.js` and `jei_add_items.js` from base to expert mode, and change the array they work on!
added_items.expert = [];

// Automated addition:
Expand Down
8 changes: 5 additions & 3 deletions kubejs/client_scripts/constants/jei_hidden_disabled.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,6 @@ jei.base.items.disabled = [
/mekanism.*fluorite_ore/,
/rftoolsbase:dimensionalshard_/,

/emendatusenigmatica:.*_cluster_shard\b/,

/pendorite/,
/ametrine/,

Expand Down Expand Up @@ -66,6 +64,8 @@ jei.base.items.disabled = [
'createaddition:bioethanol_bucket',
'createaddition:seed_oil_bucket',

/emendatusenigmatica:.*_cluster_shard\b/,

'engineersdecor:factory_dropper',
'engineersdecor:factory_hopper',
'engineersdecor:factory_placer',
Expand Down Expand Up @@ -130,7 +130,9 @@ jei.base.items.hidden = [

/emendatusenigmatica:bitumen_.*_ore/,
'emendatusenigmatica:bitumen_ore',

'emendatusenigmatica:quartz_netherrack_ore',
'emendatusenigmatica:quartz_ore',

/hexerei:.*selenite/,
'hexerei:creative_waxing_kit',

Expand Down
21 changes: 21 additions & 0 deletions kubejs/client_scripts/expert/emi_add_items.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
ClientEvents.highPriorityAssets((event) => {
// https://github.com/emilyploszaj/emi/wiki/Hiding-and-Adding-Index-Stacks
if (global.isExpertMode == false) {
return;
}
const modes = ['base', 'expert'];
const payload = {added: [], priority: 100};

modes.forEach(mode => {
added_items[mode].forEach((item) => {
if (item.nbt == null) item.nbt = '';
if (item.after == null) {
payload.added.push({ stack: `item:${item.id}${item.nbt}`})
} else {
payload.added.push({ stack: `item:${item.id}${item.nbt}`, after: `item:${item.after}`})
}
});
})

JsonIO.write(`kubejs/assets/emi/index/stacks/emi_added_items.json`, payload);
});
12 changes: 12 additions & 0 deletions kubejs/client_scripts/expert/jei_add_items.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
JEIEvents.addItems((event) => {
if (global.isExpertMode == false) {
return;
}
added_items.expert.forEach((item) => {
if (item.nbt == null) {
event.add(Item.of(item.id));
} else {
event.add(Item.of(item.id, item.nbt));
}
});
});
21 changes: 21 additions & 0 deletions kubejs/client_scripts/normal/emi_add_items.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
ClientEvents.highPriorityAssets((event) => {
// https://github.com/emilyploszaj/emi/wiki/Hiding-and-Adding-Index-Stacks
if (global.isNormalMode == false) {
return;
}
const modes = ['base', 'normal'];
const payload = {added: [], priority: 100};

modes.forEach(mode => {
added_items[mode].forEach((item) => {
if (item.nbt == null) item.nbt = '';
if (item.after == null) {
payload.added.push({ stack: `item:${item.id}${item.nbt}`})
} else {
payload.added.push({ stack: `item:${item.id}${item.nbt}`, after: `item:${item.after}`})
}
});
})

JsonIO.write(`kubejs/assets/emi/index/stacks/emi_added_items.json`, payload);
});
12 changes: 12 additions & 0 deletions kubejs/client_scripts/normal/jei_add_items.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
JEIEvents.addItems((event) => {
if (global.isNormalMode == false) {
return;
}
added_items.normal.forEach((item) => {
if (item.nbt == null) {
event.add(Item.of(item.id));
} else {
event.add(Item.of(item.id, item.nbt));
}
});
});

0 comments on commit 7b1208f

Please sign in to comment.