blob: bfd545b653f3d400c07ba5e0631bb10816ee88b9 (
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
|
package kubatech.tileentity.gregtech.multiblock.eigmodes;
import static kubatech.api.utils.StringUtils.voltageTooltipFormatted;
import net.minecraft.util.EnumChatFormatting;
import gregtech.api.util.MultiblockTooltipBuilder;
import kubatech.api.eig.EIGMode;
import kubatech.tileentity.gregtech.multiblock.MTEExtremeIndustrialGreenhouse;
public class EIGNormalMode extends EIGMode {
public static final EIGNormalMode instance = new EIGNormalMode();
@Override
public int getUIIndex() {
return 0;
}
@Override
public String getName() {
return "normal";
}
@Override
public int getMinVoltageTier() {
return MTEExtremeIndustrialGreenhouse.EIG_BALANCE_REGULAR_MODE_MIN_TIER;
}
@Override
public int getMinGlassTier() {
return 0;
}
@Override
public int getStartingSlotCount() {
return 1;
}
@Override
public int getSlotPerTierMultiplier() {
return 2;
}
@Override
public int getSeedCapacityPerSlot() {
return 64;
}
@Override
public int getWeedEXMultiplier() {
return 1;
}
@Override
public int getMaxFertilizerUsagePerSeed() {
return 2;
}
@Override
public double getFertilizerBoost() {
return 2.0d;
}
@Override
public MultiblockTooltipBuilder addTooltipInfo(MultiblockTooltipBuilder builder) {
String minVoltageTier = voltageTooltipFormatted(this.getMinVoltageTier());
String minVoltageTierMinus1 = voltageTooltipFormatted(this.getMinVoltageTier() - 1);
double fertilizerBonusMultiplier = this.getFertilizerBoost() * 100;
String fertilizerBonus = String.format("%.0f%%", fertilizerBonusMultiplier);
return builder.addSeparator()
.addInfo(EnumChatFormatting.GOLD + "Normal Crops:")
.addInfo("Minimal voltage tier: " + minVoltageTier)
.addInfo("Starting with " + this.getStartingSlotCount() + " slot")
.addInfo(
"Every tier past " + minVoltageTier + ", slots are multiplied by " + this.getSlotPerTierMultiplier())
.addInfo("Every slot adds " + this.getSeedCapacityPerSlot() + " seed to the total seed capacity")
.addInfo("Base process time: 5 sec")
.addInfo("Process time is divided by number of tiers past " + minVoltageTierMinus1 + " (Minimum 1 sec)")
.addInfo("All crops are grown at the end of the operation")
.addInfo("Does not drop seeds")
.addInfo("Can consume up to " + this.getMaxFertilizerUsagePerSeed() + " fertilizer per seed per cycle")
.addInfo("Boost per fertilizer: " + fertilizerBonus);
}
@Override
public int getSlotCount(int machineTier) {
int tierAboveMin = machineTier - this.getMinVoltageTier();
if (tierAboveMin < 0) return 0;
return (1 << tierAboveMin);
}
}
|