Compare commits

...

20 commits

Author SHA1 Message Date
LordMZTE 7946054b5f remove broken forgehax mod 2021-09-02 13:38:35 +02:00
LordMZTE a381274ece add inventory essentials
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-12 17:24:27 +01:00
LordMZTE 339dc2da2c Merge remote-tracking branch 'original/master'
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-22 16:05:32 +01:00
Timo Ley afd07d237a Merge pull request 'honey recipes, bugfixes and recipe cleanups' (#7) from LordMZTE/Notex-3:feature/honeyrecipes into master
Reviewed-on: https://data.tilera.xyz/git/Anvilcraft/Notex-3/pulls/7
2021-02-22 15:05:25 +00:00
LordMZTE 4c417953cf honey recipes, bugfixes and recipe cleanups 2021-02-22 15:48:47 +01:00
LordMZTE a9267261e9 Merge remote-tracking branch 'original/master'
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-21 13:50:33 +01:00
Timo Ley 4f94308b7f Merge pull request 'make ae2 and rs silicon compatible' (#6) from LordMZTE/Notex-3:feature/siliconfix into master
Reviewed-on: https://data.tilera.xyz/git/Anvilcraft/Notex-3/pulls/6
2021-02-21 12:50:32 +00:00
LordMZTE ef0bd7d393 make ae2 and rs silicon compatible 2021-02-21 13:47:31 +01:00
LordMZTE 8aa641c98c make ae2 and rs silicon compatible
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-21 13:46:25 +01:00
Timo Ley 4b126d8a37 fix assemblylinemachines iron plate recipes (#5) 2021-02-20 19:43:27 +00:00
LordMZTE 150f7ae1ee Merge remote-tracking branch 'original/master'
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-20 20:43:05 +01:00
LordMZTE f824bf6fbc fix assemblylinemachines iron plate recipes 2021-02-20 20:28:09 +01:00
LordMZTE b2fc3887bd fix assemblylinemachines iron plate recipes
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-20 20:27:17 +01:00
LordMZTE ea0c45f39e Merge remote-tracking branch 'original/master'
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-18 17:57:44 +01:00
Timo Ley 64c9dc48a3 Merge pull request 'fix a bunch of recipe and tag bugs' (#4) from LordMZTE/Notex-3:scriptfixes into master
Reviewed-on: https://data.tilera.xyz/git/Anvilcraft/Notex-3/pulls/4
2021-02-18 16:48:38 +00:00
LordMZTE 3654494ead fix a bunch of recipe and tag bugs 2021-02-18 17:43:21 +01:00
LordMZTE e9e63cbb3a Merge remote-tracking branch 'original/master'
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-18 14:40:21 +01:00
Timo Ley 4c7d8d4eeb Merge pull request 'cleanup haxe code' (#3) from LordMZTE/Notex-3:scriptcleanup into master
Reviewed-on: https://data.tilera.xyz/git/Anvilcraft/Notex-3/pulls/3
2021-02-17 16:20:31 +00:00
LordMZTE e29ff9d743 Merge branch 'scriptcleanup'
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-17 17:20:10 +01:00
LordMZTE cc64199df0 cleanup haxe code 2021-02-17 15:46:14 +01:00
9 changed files with 399 additions and 209 deletions

View file

@ -1,9 +1,3 @@
# v3.2.2
- Added pulverizer recipe for certus quartz
- Added steel plate recipe with multiservo press
- added utility recipes for hoppers and repeaters
- Fix assembly line machines steel recipes
# v3.2.2-1
## mods added
- ender rift
- nether reactor
- modular routers
- Inventory Essentials

View file

@ -0,0 +1,23 @@
angelring:itemring
angelring:itemdiamondring
alchemistry:chemical_combiner
alchemistry:chemical_dissolver
compactmachines:wall
compactmachines:machine_tiny
compactmachines:machine_small
compactmachines:machine_normal
compactmachines:machine_large
compactmachines:machine_giant
compactmachines:machine_large
compactmachines:machine_maximum
compactmachines:personal_shrinking_device
ring_of_teleport:ring_of_teleport
ring_of_enderchest:ring_of_enderchest
ring_of_repair:ring_of_repair
ring_of_blink:ring_of_blink
crossroads:gear_facade_glass
assemblylinemachines:simple_grinder
assemblylinemachines:steel_blade_piece
assemblylinemachines:steel_fluid_tank
enderrift:rift
enderrift:rift_or

View file

@ -4,7 +4,6 @@ import kubejs.Events;
import kubejs.Settings;
import kubejs.events.server.RecipesEvent;
import kubejs.Events.EventType;
import kubejs.Item;
class Main {
static function main() {
@ -13,168 +12,8 @@ class Main {
Settings.logSkippedRecipes = false;
Settings.logErroringRecipes = true;
Events.onEvent(EventType.RecipesEventType, onRecipesEvent);
}
static function onRecipesEvent(event:RecipesEvent) {
// @formatter:off
var removeByOutput = [
"angelring:itemring",
"angelring:itemdiamondring",
"alchemistry:chemical_combiner",
"alchemistry:chemical_dissolver",
"compactmachines:wall",
"compactmachines:machine_tiny",
"compactmachines:machine_small",
"compactmachines:machine_normal",
"compactmachines:machine_large",
"compactmachines:machine_giant",
"compactmachines:machine_large",
"compactmachines:machine_maximum",
"compactmachines:personal_shrinking_device",
"ring_of_teleport:ring_of_teleport",
"ring_of_enderchest:ring_of_enderchest",
"ring_of_repair:ring_of_repair",
"ring_of_blink:ring_of_blink",
"crossroads:gear_facade_glass",
"assemblylinemachines:simple_grinder",
"assemblylinemachines:steel_blade_piece",
"assemblylinemachines:steel_fluid_tank",
"enderrift:rift",
"enderrift:rift_orb"
];
// @formatter:on
for (i in removeByOutput) {
event.remove({output: i});
}
// SHAPED RECIPES
event.shaped("alchemistry:chemical_combiner", ["SSS", "ACA", "SSS"], {
S: "#forge:ingots/steel",
C: "mekanism:chemical_crystallizer",
A: "mekanism:alloy_atomic"
});
event.shaped("alchemistry:chemical_dissolver", ["SSS", "ACA", "SSS"], {
S: "#forge:ingots/steel",
C: "mekanism:chemical_dissolution_chamber",
A: "mekanism:alloy_atomic"
});
event.shaped("compactmachines:wall", ["TTT", "TCT", "TTT"], {
T: "chemlib:ingot_thorium",
C: "#forge:ingots/chromium"
});
event.shaped("compactmachines:machine_tiny", ["CCC", "CTC", "CCC"], {
T: "mekanism:teleportation_core",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_small", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_tiny",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_normal", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_small",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_large", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_normal",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_giant", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_large",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_maximum", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_giant",
C: "compactmachines:wall"
});
event.shaped("compactmachines:personal_shrinking_device", ["III", "ICI", "TTT"], {
T: "mekanism:teleportation_core",
C: "#forge:ingots/chromium",
I: "#forge:ingots"
});
event.shaped("ring_of_teleport:ring_of_teleport", ["EM ", "M M", " M "], {
E: "#forge:ender_pearls",
M: "botania:manasteel_ingot"
});
event.shaped("ring_of_enderchest:ring_of_enderchest", ["EM ", "M M", " M "], {
E: "#forge:chests/ender",
M: "botania:manasteel_ingot"
});
event.shaped("ring_of_repair:ring_of_repair", ["ME ", "E E", " E "], {
M: Item.of("minecraft:enchanted_book", 1, {StoredEnchantments: [{lvl: 1, id: "minecraft:mending"}]}),
E: "botania:elementium_ingot"
});
event.shaped("angelring:itemring", ["WGW", "GRG", "TGT"], {
G: "minecraft:gold_ingot",
R: "angelring:itemdiamondring",
W: "forbidden_arcanus:bat_wing",
T: "minecraft:ghast_tear"
});
event.shaped("angelring:itemdiamondring", ["DED", "ECE", "DED"], {
C: "minecraft:nether_star",
E: "botania:manasteel_ingot",
D: "minecraft:diamond_block"
});
event.shaped("angelring:itemdiamondring", ["DED", "ECE", "DED"], {
C: "minecraft:elytra",
E: "botania:manasteel_ingot",
D: "minecraft:diamond_block"
});
event.shaped(Item.of("minecraft:chest", 4), ["WWW", "W W", "WWW"], {
W: "#minecraft:logs"
});
event.shaped(Item.of("minecraft:stick", 16), ["W", "W"], {
W: "#minecraft:logs"
});
event.shaped("minecraft:hopper", ["IWI", "IWI", " I "], {I: "#forge:ingots/iron", W: "#minecraft:logs"});
event.shaped("minecraft:repeater", ["R R", "SRS", "sss"], {R: "#forge:dusts/redstone", S: "#forge:rods/wooden", s: "minecraft:stone"});
event.shaped("enderrift:rift", ["LEL", "ECE", "LEL"], {
L: "#forge:ingots/lawrencium",
E: "minecraft:ender_eye",
C: "mekanism:teleportation_core"
});
//Steel Fix
event.shaped("assemblylinemachines:simple_grinder", ["sss", "rdr","iii"],{
"s": "#forge:ingots/steel",
"i": "#forge:ingots/iron",
"r": "#forge:dusts/redstone",
"d": "assemblylinemachines:hand_grinder"
});
event.shaped("assemblylinemachines:steel_blade_piece", [" y ", "yxy"], {
"x": "#forge:ingots/steel",
"y": "#forge:nuggets/steel"
});
event.shaped("assemblylinemachines:steel_fluid_tank", ["rsr", "gwg", "rsr"], {
"r": "assemblylinemachines:steel_rod",
"g": "#forge:glass_panes",
"s": "#forge:ingots/steel",
"w": "assemblylinemachines:wooden_fluid_tank"
});
// SHAPELESS RECIPES
event.shapeless("ring_of_blink:ring_of_blink", ["ring_of_teleport:ring_of_teleport", "botania:terrasteel_ingot"]);
Events.onEvent(EventType.ItemTagsEventType, Tags.onItemTagsEvent);
Events.onEvent(EventType.BlockTagsEventType, Tags.onBlockTagsEvent);
Events.onEvent(EventType.RecipesEventType, Recipes.onEvent);
}
}

View file

@ -0,0 +1,298 @@
package;
import kubejs.events.server.RecipesEvent;
import kubejs.Item;
class Recipes {
static final removeByOutput = Util.getFile("remove_by_output.txt");
// @formatter:off
static final honeyLiquids = [
"resourcefulbees:honey",
"productivebees:honey",
"create:honey"
];
// @formatter:on
public static function onEvent(event:RecipesEvent) {
removeRecipes(event);
shapedRecipes(event);
shapelessRecipes(event);
customRecipes(event);
replaceInputs(event);
}
static function removeRecipes(event:RecipesEvent) {
for (i in removeByOutput) {
event.remove({output: i});
}
}
static function shapedRecipes(event:RecipesEvent) {
event.shaped("alchemistry:chemical_combiner", ["SSS", "ACA", "SSS"], {
S: "#forge:ingots/steel",
C: "mekanism:chemical_crystallizer",
A: "mekanism:alloy_atomic"
});
event.shaped("alchemistry:chemical_dissolver", ["SSS", "ACA", "SSS"], {
S: "#forge:ingots/steel",
C: "mekanism:chemical_dissolution_chamber",
A: "mekanism:alloy_atomic"
});
event.shaped("compactmachines:wall", ["TTT", "TCT", "TTT"], {
T: "chemlib:ingot_thorium",
C: "#forge:ingots/chromium"
});
event.shaped("compactmachines:machine_tiny", ["CCC", "CTC", "CCC"], {
T: "mekanism:teleportation_core",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_small", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_tiny",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_normal", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_small",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_large", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_normal",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_giant", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_large",
C: "compactmachines:wall"
});
event.shaped("compactmachines:machine_maximum", ["CCC", "CMC", "CCC"], {
M: "compactmachines:machine_giant",
C: "compactmachines:wall"
});
event.shaped("compactmachines:personal_shrinking_device", ["III", "ICI", "TTT"], {
T: "mekanism:teleportation_core",
C: "#forge:ingots/chromium",
I: "#forge:ingots"
});
event.shaped("ring_of_teleport:ring_of_teleport", ["EM ", "M M", " M "], {
E: "#forge:ender_pearls",
M: "botania:manasteel_ingot"
});
event.shaped("ring_of_enderchest:ring_of_enderchest", ["EM ", "M M", " M "], {
E: "#forge:chests/ender",
M: "botania:manasteel_ingot"
});
event.shaped("ring_of_repair:ring_of_repair", ["ME ", "E E", " E "], {
M: Item.of("minecraft:enchanted_book", 1, {StoredEnchantments: [{lvl: 1, id: "minecraft:mending"}]}),
E: "botania:elementium_ingot"
});
event.shaped("angelring:itemring", ["WGW", "GRG", "TGT"], {
G: "minecraft:gold_ingot",
R: "angelring:itemdiamondring",
W: "forbidden_arcanus:bat_wing",
T: "minecraft:ghast_tear"
});
event.shaped("angelring:itemdiamondring", ["DED", "ECE", "DED"], {
C: "minecraft:nether_star",
E: "botania:manasteel_ingot",
D: "minecraft:diamond_block"
});
event.shaped("angelring:itemdiamondring", ["DED", "ECE", "DED"], {
C: "minecraft:elytra",
E: "botania:manasteel_ingot",
D: "minecraft:diamond_block"
});
event.shaped(Item.of("minecraft:chest", 4), ["WWW", "W W", "WWW"], {
W: "#minecraft:logs"
});
event.shaped(Item.of("minecraft:stick", 16), ["W", "W"], {
W: "#minecraft:logs"
});
event.shaped("minecraft:hopper", ["IWI", "IWI", " I "], {I: "#forge:ingots/iron", W: "#minecraft:logs"});
event.shaped("minecraft:repeater", ["R R", "SRS", "sss"], {R: "#forge:dusts/redstone", S: "#forge:rods/wooden", s: "minecraft:stone"});
event.shaped("enderrift:rift", ["LEL", "ECE", "LEL"], {
L: "#forge:ingots/lawrencium",
E: "minecraft:ender_eye",
C: "mekanism:teleportation_core"
});
}
static function shapelessRecipes(event:RecipesEvent) {
event.shapeless("ring_of_blink:ring_of_blink", ["ring_of_teleport:ring_of_teleport", "botania:terrasteel_ingot"]);
}
static function customRecipes(event:RecipesEvent) {
// Steel plate with multiservo press
event.custom({
type: "thermal:press",
ingredient: {
tag: "forge:ingots/steel"
},
result: [
{
item: "immersiveengineering:plate_steel"
}
]
});
// Certus Quartz dust with pulverizer
event.custom({
type: "thermal:pulverizer",
ingredient: {
tag: "forge:gems/certus_quartz"
},
result: [
{
item: "appliedenergistics2:certus_quartz_dust"
}
]
});
// Resourceful bees honey to honey block in blast chiller
event.custom({
type: "thermal:chiller",
ingredient: {
fluid: "resourcefulbees:honey",
amount: 1000
},
result: [
{
item: "minecraft:honey_block"
}
]
});
// Resourceful bees honey to bottle in fluid encapsulator
event.custom(untyped {
type: "thermal:bottler",
ingredient: [
{
item: "minecraft:glass_bottle"
},
{
fluid: "resourcefulbees:honey",
amount: 250
}
],
result: [
{
item: "minecraft:honey_bottle"
}
]
});
// Honey to sugar
for (honey in honeyLiquids) {
event.custom({
type: "silents_mechanisms:solidifying",
ingredient: {
fluid: honey,
amount: 250
},
process_time: 100,
result: {
item: "minecraft:sugar",
count: 3
}
});
}
// Overwrite glitchy ice and obsidian recipies in solidifier
// @formatter:off
for (
inOutId in [
["minecraft:water", "minecraft:ice", "silents_mechanisms:solidifying/obsidian"],
["minecraft:lava", "minecraft:obsidian", "silents_mechanisms:solidifying/ice"]
]
)
// @formatter:on
{
event.custom({
type: "silents_mechanisms:solidifying",
process_time: 800,
ingredient: {
fluid: inOutId[0]
},
result: {
item: inOutId[1],
count: 1
}
}).id(inOutId[2]);
}
// Ore processing fixes
var enrichmentChamberOreRecipes = [
["forge:ores/nickel", "thermal:nickel_dust"],
["forge:ores/silver", "thermal:silver_dust"],
["forge:ores/aluminum", "silents_mechanisms:aluminum_dust"],
["forge:ores/yellorite", "bigreactors:yellorium_dust"]
];
var bothOreRecipes = [["forge:ores/bismuth", "silents_mechanisms:bismuth_dust"]];
for (r in enrichmentChamberOreRecipes.concat(bothOreRecipes)) {
event.custom({
type: "mekanism:enriching",
input: {
ingredient: {
tag: r[0]
}
},
output: {
item: r[1],
count: 2
}
});
}
for (r in bothOreRecipes) {
event.custom({
type: "thermal:pulverizer",
ingredient: {
tag: r[0]
},
result: [
{
item: r[1],
chance: 2.0
},
{
item: "minecraft:gravel",
chance: 0.2
}
]
});
}
}
static function replaceInputs(event:RecipesEvent) {
// ALM Fixes
var almFixesFilter = {mod: "assemblylinemachines"};
event.replaceInput(almFixesFilter, "assemblylinemachines:steel_ingot", "#forge:ingots/steel");
event.replaceInput(almFixesFilter, "assemblylinemachines:steel_plate", "#forge:plates/steel");
event.replaceInput(almFixesFilter, "assemblylinemachines:steel_rod", "#forge:rods/steel");
event.replaceInput(almFixesFilter, "assemblylinemachines:plastic_sheet", "#forge:plastic");
event.replaceInput(almFixesFilter, "assemblylinemachines:iron_plate", "#forge:plates/iron");
// Silicon Fixes
event.replaceInput({}, "refinedstorage:silicon", "#forge:silicon");
event.replaceInput({}, "appliedenergistics2:silicon", "#forge:silicon");
}
}

View file

@ -0,0 +1,39 @@
package;
import kubejs.events.server.TagsEvent;
class Tags {
public static function onItemTagsEvent(event:TagsEvent) {
itemAndBlockTags(event);
itemTags(event);
}
public static function onBlockTagsEvent(event:TagsEvent) {
itemAndBlockTags(event);
}
static function itemAndBlockTags(event:TagsEvent) {
// Fix ore tags
event.add("forge:ores/copper", ["electrodynamics:orecopper"]);
event.add("forge:ores/tin", ["electrodynamics:oretin"]);
event.add("forge:ores/silver", ["electrodynamics:oresilver"]);
event.add("forge:ores/lead", ["electrodynamics:orelead"]);
event.add("forge:ores/sulfur", ["electrodynamics:oresulfur"]);
event.add("forge:ores/yellorite", ["bigreactors:yellorite_ore"]);
// Trapdoor tags
var trapdoors = ["ars_nouveau:archwood_trapdoor", "rats:pirat_trapdoor"];
event.add("minecraft:trapdoors", trapdoors);
event.add("minecraft:wooden_trapdoors", trapdoors);
}
static function itemTags(event:TagsEvent) {
event.add("forge:plates/iron", ["assemblylinemachines:iron_plate"]);
event.add("forge:plates/steel", ["assemblylinemachines:steel_plate"]);
event.add("forge:plastic", ["assemblylinemachines:plastic_sheet"]);
// Silicon fix
event.add("appliedenergistics2:silicon", ["#forge:silicon"]);
}
}

View file

@ -0,0 +1,20 @@
package;
import haxe.macro.Expr.ExprOf;
class Util {
/**
* Reads a file into an array of lines at compile time
* Removes empty lines
**/
public static macro function getFile(path:String):ExprOf<Array<String>> {
// @formatter:off
return macro $a{
sys.io.File.getContent(path)
.split("\n")
.filter(line -> line.length >= 1)
.map(line -> macro $v{line})
};
// @formatter:on
}
}

View file

@ -2029,6 +2029,20 @@
"included"
]
},
{
"id": "368825",
"file": {
"installer": "internal.dir:mods",
"artifact": "curse.maven:368825:3222115",
"repository": "curse"
},
"type": "mod",
"options": [
"required",
"client",
"included"
]
},
{
"id": "forge",
"versions": "[1.16.4-35.1.37]",
@ -2039,19 +2053,6 @@
"server",
"included"
]
},
{
"id": "forgehax",
"file": {
"installer": "internal.dir:mods",
"link": "https://jenkins.nhackindustries.com/job/ForgeHax/job/1.16/57/artifact/build/libs/ForgeHax-1.16.4-3.2.0-cc283818.jar"
},
"type": "mod",
"options": [
"required",
"client",
"included"
]
}
]
}

View file

@ -1,11 +0,0 @@
{
"type": "thermal:press",
"ingredient": {
"tag": "forge:ingots/steel"
},
"result": [
{
"item": "immersiveengineering:plate_steel"
}
]
}

View file

@ -1,13 +0,0 @@
{
"type": "thermal:pulverizer",
"ingredient": {
"tag": "forge:gems/certus_quartz"
},
"result": [
{
"item": "appliedenergistics2:certus_quartz_dust",
"count": 1
}
],
"energy_mod": 0.5
}