aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtnhlanth/common/tileentity
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gtnhlanth/common/tileentity')
-rw-r--r--src/main/java/gtnhlanth/common/tileentity/MTELINAC.java5
-rw-r--r--src/main/java/gtnhlanth/common/tileentity/MTESourceChamber.java1
-rw-r--r--src/main/java/gtnhlanth/common/tileentity/MTESynchrotron.java28
-rw-r--r--src/main/java/gtnhlanth/common/tileentity/MTETargetChamber.java1
4 files changed, 23 insertions, 12 deletions
diff --git a/src/main/java/gtnhlanth/common/tileentity/MTELINAC.java b/src/main/java/gtnhlanth/common/tileentity/MTELINAC.java
index 94571d10e0..b7902c5d24 100644
--- a/src/main/java/gtnhlanth/common/tileentity/MTELINAC.java
+++ b/src/main/java/gtnhlanth/common/tileentity/MTELINAC.java
@@ -180,7 +180,8 @@ public class MTELINAC extends MTEEnhancedMultiBlockBase<MTELINAC> implements ISu
.addInfo("Controller block for the LINAC")
.addInfo("Accelerates charged particles to higher energies")
.addInfo("Increasing length increases output energy, but decreases focus")
- .addInfo("Use a lower temperature coolant to improve focus")
+ .addInfo("Use a lower temperature coolant to improve output focus")
+ .addInfo("Output energy does not scale for input energies higher than 7500 keV")
// .addInfo("Extendable, with a minimum length of 18 blocks")
.addInfo(DescTextLocalization.BLUEPRINT_INFO)
.addInfo(DescTextLocalization.BEAMLINE_SCANNER_INFO)
@@ -347,6 +348,8 @@ public class MTELINAC extends MTEEnhancedMultiBlockBase<MTELINAC> implements ISu
inputEnergy = this.getInputInformation()
.getEnergy();
+
+ inputEnergy = Math.min(inputEnergy, 7500); // Does not scale past 7500 keV, prevents double LINAC issue
/*
* outputEnergy = Math.min(
* (1 + inputEnergy / Particle.getParticleFromId(outputParticle)
diff --git a/src/main/java/gtnhlanth/common/tileentity/MTESourceChamber.java b/src/main/java/gtnhlanth/common/tileentity/MTESourceChamber.java
index d978b1eaab..cec44a111a 100644
--- a/src/main/java/gtnhlanth/common/tileentity/MTESourceChamber.java
+++ b/src/main/java/gtnhlanth/common/tileentity/MTESourceChamber.java
@@ -126,6 +126,7 @@ public class MTESourceChamber extends MTEEnhancedMultiBlockBase<MTESourceChamber
final MultiblockTooltipBuilder tt = new MultiblockTooltipBuilder();
tt.addMachineType("Particle Source")
.addInfo("Controller block for the Source Chamber")
+ .addInfo("Output energy scales with EU/t up to the point shown in the recipe")
.addInfo(BLUEPRINT_INFO)
.addInfo(DescTextLocalization.BEAMLINE_SCANNER_INFO)
.addSeparator()
diff --git a/src/main/java/gtnhlanth/common/tileentity/MTESynchrotron.java b/src/main/java/gtnhlanth/common/tileentity/MTESynchrotron.java
index 3b67f8e172..e5778f0efc 100644
--- a/src/main/java/gtnhlanth/common/tileentity/MTESynchrotron.java
+++ b/src/main/java/gtnhlanth/common/tileentity/MTESynchrotron.java
@@ -493,9 +493,14 @@ public class MTESynchrotron extends MTEEnhancedMultiBlockBase<MTESynchrotron> im
final MultiblockTooltipBuilder tt = new MultiblockTooltipBuilder();
tt.addMachineType("Particle Accelerator")
.addInfo("Controller block for the Synchrotron")
- .addInfo("Torus-shaped, accelerates electrons to produce high-energy electromagnetic radiation")
+ .addInfo("Torus-shaped, accelerates electrons to produce high-energy electromagnetic radiation,")
+ .addInfo("in the form of photons")
+ .addInfo("Antenna Casings can be one of two tiers, upgrade them to improve output rate and energy scaling")
+ .addInfo("Minimum input focus: " + MIN_INPUT_FOCUS)
.addInfo(DescTextLocalization.BLUEPRINT_INFO)
.addInfo(DescTextLocalization.BEAMLINE_SCANNER_INFO)
+
+ .addInfo("Use a lower temperature coolant to improve output focus")
.addInfo("Valid Coolants:");
// Valid coolant list
@@ -854,10 +859,13 @@ public class MTESynchrotron extends MTEEnhancedMultiBlockBase<MTESynchrotron> im
private static float getVoltageFactor(long mEU, int antennaTier) {
// float factor = (float) Math.pow(1.00004, -mEU * Math.pow(antennaTier, 1.0/3.0) + 80000);
- float factor = (float) -Math.pow(1.1, -mEU / 2000 * Math.pow(antennaTier, 2.0 / 3.0)) + 1; // Strictly improves
- // with higher tier
- // antenna
- return (float) Math.max(1.0, factor);
+ // float factor = (float) -Math.pow(1.1, -mEU / 2000 * Math.pow(antennaTier, 2.0 / 3.0)) + 1; // Strictly
+ // improves
+ // with higher tier
+ // antenna
+ float factor = (float) (Math.sqrt(mEU) / 1500);
+
+ return factor;
}
@@ -893,11 +901,11 @@ public class MTESynchrotron extends MTEEnhancedMultiBlockBase<MTESynchrotron> im
// Punny, right?
private static float getOutputRatetio(float voltageFactor, int antennaTier) {
- return (float) (voltageFactor / (10 / Math.pow(2.5, antennaTier))); // Scale ratio with antenna tier, such a
- // high
- // exponential should be fine so long as
- // there
- // are only few antenna tiers
+ return (float) (voltageFactor / (10.0 / Math.pow(2.5, antennaTier))); // Scale ratio with antenna tier, such a
+ // high
+ // exponential should be fine so long as
+ // there
+ // are only few antenna tiers
}
@Override
diff --git a/src/main/java/gtnhlanth/common/tileentity/MTETargetChamber.java b/src/main/java/gtnhlanth/common/tileentity/MTETargetChamber.java
index 8545d5e23a..cd598f1bd0 100644
--- a/src/main/java/gtnhlanth/common/tileentity/MTETargetChamber.java
+++ b/src/main/java/gtnhlanth/common/tileentity/MTETargetChamber.java
@@ -101,7 +101,6 @@ public class MTETargetChamber extends MTEEnhancedMultiBlockBase<MTETargetChamber
.addElement('u', ofBlock(LanthItemList.TARGET_RECEPTACLE_CASING, 0))
.addElement('i', ofBlock(LanthItemList.TARGET_HOLDER, 0))
.addElement('o', buildHatchAdder(MTETargetChamber.class).atLeast(OutputBus).casingIndex(CASING_INDEX_CENTRE).dot(4).build())
-
.build();
}
//spotless:on