aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGlease <4586901+Glease@users.noreply.github.com>2022-11-17 15:54:39 +0800
committerGlease <4586901+Glease@users.noreply.github.com>2022-11-17 15:54:39 +0800
commit821359eacd58950716552786b4d79b78d98cb91b (patch)
tree55e78ca706cac8e9b73fa9d069baa10586bdabe7 /src
parent7992858a8df4c0568f30defd0ecce9d9db53e1df (diff)
downloadGT5-Unofficial-821359eacd58950716552786b4d79b78d98cb91b.tar.gz
GT5-Unofficial-821359eacd58950716552786b4d79b78d98cb91b.tar.bz2
GT5-Unofficial-821359eacd58950716552786b4d79b78d98cb91b.zip
add makeshift doc
Diffstat (limited to 'src')
-rw-r--r--src/main/java/net/glease/ggfab/mte/MTE_AdvAssLine.java24
-rw-r--r--src/main/resources/assets/ggfab/lang/en_US.lang7
2 files changed, 27 insertions, 4 deletions
diff --git a/src/main/java/net/glease/ggfab/mte/MTE_AdvAssLine.java b/src/main/java/net/glease/ggfab/mte/MTE_AdvAssLine.java
index 911d376a86..63f6a1feea 100644
--- a/src/main/java/net/glease/ggfab/mte/MTE_AdvAssLine.java
+++ b/src/main/java/net/glease/ggfab/mte/MTE_AdvAssLine.java
@@ -24,16 +24,15 @@ import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagInt;
import net.minecraft.nbt.NBTTagList;
+import net.minecraft.server.MinecraftServer;
import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.world.World;
import net.minecraftforge.common.util.Constants;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.FluidStack;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
+import java.util.*;
import java.util.stream.IntStream;
import static com.gtnewhorizon.structurelib.structure.StructureUtility.*;
@@ -141,6 +140,22 @@ public class MTE_AdvAssLine extends GT_MetaTileEntity_AssemblyLine {
}
@Override
+ public void initDefaultModes(NBTTagCompound aNBT) {
+ super.initDefaultModes(aNBT);
+ if (getBaseMetaTileEntity().isServerSide()) {
+ UUID ownerUuid = getBaseMetaTileEntity().getOwnerUuid();
+ @SuppressWarnings("unchecked") List<EntityPlayerMP> l = MinecraftServer.getServer().getConfigurationManager().playerEntityList;
+ for (EntityPlayerMP p : l) {
+ if (p.getUniqueID().equals(ownerUuid)) {
+ for (int i = 0; i < 7; i++) {
+ p.addChatMessage(new ChatComponentTranslation("ggfab.info.advassline." + i));
+ }
+ }
+ }
+ }
+ }
+
+ @Override
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
if (aSide == aFacing) {
if (stuck) {
@@ -192,6 +207,7 @@ public class MTE_AdvAssLine extends GT_MetaTileEntity_AssemblyLine {
tt.addMachineType("Assembling Line")
.addInfo("Controller block for the Advanced Assembling Line")
.addInfo("Built exactly the same as standard Assembling Line")
+ .addInfo("Place in world to get more info. It will be a lengthy read.")
.addInfo("Assembling Line with item pipelining")
.addInfo("All fluids are however consumed at start")
.addInfo("Use voltage of worst energy hatch for overclocking")
diff --git a/src/main/resources/assets/ggfab/lang/en_US.lang b/src/main/resources/assets/ggfab/lang/en_US.lang
index a8f72df14d..d4a9e1234a 100644
--- a/src/main/resources/assets/ggfab/lang/en_US.lang
+++ b/src/main/resources/assets/ggfab/lang/en_US.lang
@@ -1,3 +1,10 @@
+ggfab.info.advassline.0=Advanced Assembly Line Help
+ggfab.info.advassline.1=This is advanced assembly line from §6GigaGram§rFab.
+ggfab.info.advassline.2=It supports item pipelining. That is, it will mimic a real assembly line by consuming ingredients one by one instead of all at start. In effect, it offers a parallelism up to however many item input this recipe requires.
+ggfab.info.advassline.3=You can think of an advanced assembly line as a collection of assembly slices. Each assembly slice is capably of processing each step independent of other slices.
+ggfab.info.advassline.4=It will start processing once the input bus contents align with any stored data stick. The first slice will consume the input in Bus #1. After (recipe time/number of inputs) time, the first slice's work is concluded and will start the second slice. At the same time, first slice will look for input in input bus #1. If there are still enough input there slice #1 will start working again.
+ggfab.info.advassline.5=The terminal slice (the n-th slice, where n is number of item input in recipe) will put the recipe output in output bus when it has concluded his work. Whenever a non-terminal slice finished its work, it will try to pass the work onto next slice. If the next slice cannot find the materials in its input bus, the just-finished slice will remain in §4STUCK§r state and hang the assembly line. To help locate these §4STUCK§r assembly lines, the controller's front face will have its status light turned orange.
+ggfab.info.advassline.6=The EU/t cost of this machine is number of slices active multiplied by the original recipe EU/t. §4STUCK§r slices do not consume power.
ggfab.waila.advassline.slice=Slice %s: %s s/%s s
ggfab.waila.advassline.slice.small=Slice %s: %s ticks remaining
ggfab.waila.advassline.slice.idle=Slice %s: Idle