1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
package bwcrossmod.tgregworks;
import static gregtech.api.enums.Mods.TinkersGregworks;
import net.minecraftforge.common.config.Property;
import bartworks.MainMod;
import bartworks.system.material.Werkstoff;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import gregtech.GT_Version;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import vexatos.tgregworks.TGregworks;
import vexatos.tgregworks.item.ItemTGregPart;
import vexatos.tgregworks.reference.Config;
@Mod(
modid = MaterialsInjector.MOD_ID,
name = MaterialsInjector.NAME,
version = MaterialsInjector.VERSION,
dependencies = """
required-after:IC2;\
required-after:gregtech;\
required-after:bartworks;\
before:TGregworks;\
before:miscutils;""")
public class MaterialsInjector {
public static final String NAME = "BartWorks Mod Additions - TGregworks Container";
public static final String VERSION = GT_Version.VERSION;
public static final String MOD_ID = "bartworkscrossmodtgregworkscontainer";
@Mod.EventHandler
public void init(FMLInitializationEvent init) {
if (TinkersGregworks.isModLoaded()) {
MaterialsInjector.run();
}
}
public static void run() {
MainMod.LOGGER.info("Registering TGregworks - BartWorks tool parts.");
Werkstoff.werkstoffHashSet.stream()
.filter(x -> x.hasItemType(OrePrefixes.gem) || x.hasItemType(OrePrefixes.plate))
.map(Werkstoff::getBridgeMaterial)
.filter(x -> x.mMetaItemSubID == -1)
.filter(x -> x.mDurability != 0)
.forEach(m -> {
setConfigProps(m);
registerParts(m);
});
TGregworks.registry.configProps.clear();
TGregworks.registry.configIDs.clear();
ItemTGregPart.toolMaterialNames = TGregworks.registry.toolMaterialNames;
}
private static void registerParts(Materials m) {
TGregworks.registry.toolMaterialNames.add(m.mDefaultLocalName);
int matID = TGregworks.registry.getMaterialID(m);
TGregworks.registry.addToolMaterial(matID, m);
TGregworks.registry.addBowMaterial(matID, m);
TGregworks.registry.addArrowMaterial(matID, m);
TGregworks.registry.matIDs.put(m, matID);
TGregworks.registry.materialIDMap.put(matID, m);
}
private static void setConfigProps(Materials m) {
if (TGregworks.config.get(Config.Category.Enable, m.mName, true)
.getBoolean(true)) {
TGregworks.registry.toolMaterials.add(m);
Property configProp = TGregworks.config
.get(Config.onMaterial(Config.MaterialID), m.mName, 0, null, 0, 100000);
TGregworks.registry.configProps.put(m, configProp);
TGregworks.registry.configIDs.add(configProp.getInt());
}
}
}
|