aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/tectech/recipe/TecTechRecipeMaps.java
blob: de98a2c27492020cef2ca7c6025039629f98711e (plain)
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
package tectech.recipe;

import java.util.ArrayList;
import java.util.List;

import com.gtnewhorizons.modularui.common.widget.ProgressBar;

import gregtech.api.gui.modularui.GTUITextures;
import gregtech.api.recipe.RecipeMap;
import gregtech.api.recipe.RecipeMapBackend;
import gregtech.api.recipe.RecipeMapBuilder;
import gregtech.api.util.GTRecipe;
import gregtech.nei.formatter.HeatingCoilSpecialValueFormatter;
import tectech.thing.CustomItemList;
import tectech.thing.gui.TecTechUITextures;

public class TecTechRecipeMaps {

    public static void init() {}

    public static final List<GTRecipe.RecipeAssemblyLine> researchableALRecipeList = new ArrayList<>();

    public static final RecipeMap<RecipeMapBackend> eyeOfHarmonyRecipes = RecipeMapBuilder.of("gt.recipe.eyeofharmony")
        .maxIO(
            EyeOfHarmonyFrontend.maxItemInputs,
            EyeOfHarmonyFrontend.maxItemOutputs,
            EyeOfHarmonyFrontend.maxFluidInputs,
            EyeOfHarmonyFrontend.maxFluidOutputs)
        .minInputs(1, 0)
        .progressBar(GTUITextures.PROGRESSBAR_HAMMER, ProgressBar.Direction.DOWN)
        .progressBarPos(78, 24 + 2)
        .logoPos(10, 10)
        .neiHandlerInfo(
            builder -> builder.setDisplayStack(CustomItemList.Machine_Multi_EyeOfHarmony.get(1))
                .setHeight(314)
                .setMaxRecipesPerPage(1))
        .frontend(EyeOfHarmonyFrontend::new)
        .build();
    public static final RecipeMap<RecipeMapBackend> researchStationFakeRecipes = RecipeMapBuilder
        .of("gt.recipe.researchStation")
        .maxIO(1, 1, 0, 0)
        .useSpecialSlot()
        .slotOverlays((index, isFluid, isOutput, isSpecial) -> {
            if (isSpecial) {
                return GTUITextures.OVERLAY_SLOT_DATA_ORB;
            }
            if (isOutput) {
                return TecTechUITextures.OVERLAY_SLOT_MESH;
            }
            return GTUITextures.OVERLAY_SLOT_MICROSCOPE;
        })
        .addSpecialTexture(19, 12, 84, 60, TecTechUITextures.PICTURE_HEAT_SINK)
        .addSpecialTexture(41, 22, 40, 40, TecTechUITextures.PICTURE_RACK_LARGE)
        .logo(TecTechUITextures.PICTURE_TECTECH_LOGO)
        .logoSize(18, 18)
        .logoPos(151, 63)
        .neiTransferRect(81, 33, 25, 18)
        .neiTransferRect(124, 33, 18, 29)
        .frontend(ResearchStationFrontend::new)
        .neiHandlerInfo(builder -> builder.setDisplayStack(CustomItemList.Machine_Multi_Research.get(1)))
        .build();

    public static final RecipeMap<RecipeMapBackend> godforgePlasmaRecipes = RecipeMapBuilder.of("gt.recipe.fog_plasma")
        .maxIO(1, 1, 1, 1)
        .progressBar(TecTechUITextures.PROGRESSBAR_GODFORGE_PLASMA, ProgressBar.Direction.RIGHT)
        .progressBarPos(78, 33)
        .neiTransferRect(78, 33, 20, 20)
        .frontend(GodforgePlasmaFrontend::new)
        .build();
    public static final RecipeMap<RecipeMapBackend> godforgeExoticMatterRecipes = RecipeMapBuilder
        .of("gt.recipe.fog_exotic")
        .maxIO(1, 1, 2, 1)
        .progressBar(TecTechUITextures.PROGRESSBAR_GODFORGE_PLASMA, ProgressBar.Direction.RIGHT)
        .progressBarPos(78, 33)
        .neiTransferRect(78, 33, 20, 20)
        .frontend(GodforgeExoticFrontend::new)
        .build();
    public static final RecipeMap<RecipeMapBackend> godforgeMoltenRecipes = RecipeMapBuilder.of("gt.recipe.fog_molten")
        .maxIO(6, 6, 1, 2)
        .minInputs(1, 0)
        .progressBar(TecTechUITextures.PROGRESSBAR_GODFORGE_PLASMA, ProgressBar.Direction.RIGHT)
        .neiSpecialInfoFormatter(HeatingCoilSpecialValueFormatter.INSTANCE)
        .logo(TecTechUITextures.PICTURE_GODFORGE_LOGO)
        .logoSize(18, 18)
        .logoPos(151, 63)
        .build();

    public static final RecipeMap<RecipeMapBackend> godforgeFakeUpgradeCostRecipes = RecipeMapBuilder
        .of("gt.recipe.upgrade_costs")
        .maxIO(12, 2, 0, 2)
        .addSpecialTexture(83, 38, 30, 13, GTUITextures.PICTURE_ARROW_GRAY)
        .dontUseProgressBar()
        .neiTransferRect(83, 38, 30, 13)
        .frontend(GodforgeUpgradeCostFrontend::new)
        .neiHandlerInfo(
            builder -> builder.setDisplayStack(CustomItemList.Machine_Multi_ForgeOfGods.get(1))
                .setHeight(100))
        .build();

}