aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com
diff options
context:
space:
mode:
authorDetrav <witalyezep@gmail.com>2016-04-07 23:21:06 +0300
committerDetrav <witalyezep@gmail.com>2016-04-07 23:21:06 +0300
commit7f8cf963b3755a6afdc00e4a6fc4a7cf00c54209 (patch)
tree6f19ba128aa4d6c4099f071551e1a486f142dd01 /src/main/java/com
parente819015db99e2ad58770d91a5973f1927ea0060a (diff)
downloadGT5-Unofficial-7f8cf963b3755a6afdc00e4a6fc4a7cf00c54209.tar.gz
GT5-Unofficial-7f8cf963b3755a6afdc00e4a6fc4a7cf00c54209.tar.bz2
GT5-Unofficial-7f8cf963b3755a6afdc00e4a6fc4a7cf00c54209.zip
Fix "charge send to player gui"
Diffstat (limited to 'src/main/java/com')
-rw-r--r--src/main/java/com/detrav/gui/DetravPortableChargerGui.java16
-rw-r--r--src/main/java/com/detrav/gui/containers/DetravPortableChargerContainer.java13
-rw-r--r--src/main/java/com/detrav/net/DetravNetwork.java2
-rw-r--r--src/main/java/com/detrav/net/DetravPortableChargerPacker02.java36
-rw-r--r--src/main/java/com/detrav/proxies/CommonProxy.java1
5 files changed, 61 insertions, 7 deletions
diff --git a/src/main/java/com/detrav/gui/DetravPortableChargerGui.java b/src/main/java/com/detrav/gui/DetravPortableChargerGui.java
index e440f45874..67c33b25c1 100644
--- a/src/main/java/com/detrav/gui/DetravPortableChargerGui.java
+++ b/src/main/java/com/detrav/gui/DetravPortableChargerGui.java
@@ -22,25 +22,33 @@ public class DetravPortableChargerGui extends GuiContainer {
ResourceLocation location = null;
private String mName = "Portable Charger";
- ItemStack mItem = null;
+ public static long charge = 0;
+ //ItemStack mItem = null;
+ DetravPortableChargerContainer container = null;
+ private ItemStack mItem;
public DetravPortableChargerGui(InventoryPlayer player, World aWorld, ItemStack aStack) {
super(new DetravPortableChargerContainer(player, aWorld, aStack));
- mItem = aStack;
+ container = (DetravPortableChargerContainer) inventorySlots;
location = new ResourceLocation(RES_PATH_GUI + "1by1.png");
+ mItem = container.mItem;
+ if (mItem != null) {
+ charge = DetravMetaGeneratedTool01.INSTANCE.getRealCharge(mItem);
+ }
}
@Override
protected void drawGuiContainerForegroundLayer(int par1, int par2) {
fontRendererObj.drawString(mName, 8, 4, 4210752);
+
if(mItem!=null) {
//GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
//EnumChatFormatting.AQUA + "" + + EnumChatFormatting.GRAY);
Long[] tStats = DetravMetaGeneratedTool01.INSTANCE.getElectricStats(mItem);
- long tCharge = DetravMetaGeneratedTool01.INSTANCE.getRealCharge(mItem);
+ //long tCharge = DetravMetaGeneratedTool01.INSTANCE.getRealCharge(mItem);
long loss = DetravMetaGeneratedTool01.INSTANCE.getElectricStatsLoss(mItem);
- fontRendererObj.drawString(GT_Utility.formatNumbers(tCharge) + " / " + GT_Utility.formatNumbers(Math.abs(tStats[0])) + " EU", 8, 14, 4210752);
+ fontRendererObj.drawString(GT_Utility.formatNumbers(charge) + " / " + GT_Utility.formatNumbers(Math.abs(tStats[0])) + " EU", 8, 14, 4210752);
fontRendererObj.drawString("Voltage/Loss: " + V[(int) (tStats[2] >= 0 ? tStats[2] < V.length ? tStats[2] : V.length - 1 : 1)] + " / "+ loss, 8, 24, 4210752);
}
}
diff --git a/src/main/java/com/detrav/gui/containers/DetravPortableChargerContainer.java b/src/main/java/com/detrav/gui/containers/DetravPortableChargerContainer.java
index b11f2368ce..8be85ee690 100644
--- a/src/main/java/com/detrav/gui/containers/DetravPortableChargerContainer.java
+++ b/src/main/java/com/detrav/gui/containers/DetravPortableChargerContainer.java
@@ -1,19 +1,20 @@
package com.detrav.gui.containers;
import com.detrav.items.DetravMetaGeneratedTool01;
+import com.detrav.net.DetravNetwork;
+import com.detrav.net.DetravPortableChargerPacker02;
import gregtech.api.items.GT_MetaBase_Item;
import gregtech.api.util.GT_ModHandler;
import gregtech.common.items.armor.SlotLocked;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.inventory.Slot;
-import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
-import net.minecraft.util.ChatComponentText;
import net.minecraft.world.World;
import org.lwjgl.Sys;
@@ -103,6 +104,14 @@ public class DetravPortableChargerContainer extends Container {
int removeEnergy = GT_ModHandler.chargeElectricItem(item, (int) energyToTransfer, Integer.MAX_VALUE, false, false);
if(removeEnergy==0) return;
GT_ModHandler.dischargeElectricItem(mItem,(int)(removeEnergy+loss*aTimer),Integer.MAX_VALUE,false,false,true);
+
+ if(aWorld.isRemote) return;
+ if(aPlayer instanceof EntityPlayerMP) {
+ DetravPortableChargerPacker02 packet = new DetravPortableChargerPacker02();
+ packet.charge = selfCharge - removeEnergy + loss * aTimer;
+ DetravNetwork.INSTANCE.sendToPlayer(packet, (EntityPlayerMP)aPlayer);
+ //crafters
+ }
}
/*@Override
diff --git a/src/main/java/com/detrav/net/DetravNetwork.java b/src/main/java/com/detrav/net/DetravNetwork.java
index ea79d4cdc3..3e0fce1b0c 100644
--- a/src/main/java/com/detrav/net/DetravNetwork.java
+++ b/src/main/java/com/detrav/net/DetravNetwork.java
@@ -31,7 +31,7 @@ public class DetravNetwork extends MessageToMessageCodec<FMLProxyPacket, DetravP
{
INSTANCE = this;
this.mChannel = NetworkRegistry.INSTANCE.newChannel("DetravScanner", new ChannelHandler[]{this, new HandlerShared()});
- this.mSubChannels = new DetravPacket[]{new DetravProPickPacket01()};
+ this.mSubChannels = new DetravPacket[]{new DetravProPickPacket01(),new DetravPortableChargerPacker02()};
}
@Override
diff --git a/src/main/java/com/detrav/net/DetravPortableChargerPacker02.java b/src/main/java/com/detrav/net/DetravPortableChargerPacker02.java
new file mode 100644
index 0000000000..d5643ca984
--- /dev/null
+++ b/src/main/java/com/detrav/net/DetravPortableChargerPacker02.java
@@ -0,0 +1,36 @@
+package com.detrav.net;
+
+import com.detrav.gui.DetravPortableChargerGui;
+import com.google.common.io.ByteArrayDataInput;
+import com.google.common.io.ByteArrayDataOutput;
+import com.google.common.io.ByteStreams;
+
+/**
+ * Created by wital_000 on 07.04.2016.
+ */
+public class DetravPortableChargerPacker02 extends DetravPacket {
+ public long charge = 0;
+ @Override
+ public int getPacketID() {
+ return 1;
+ }
+
+ @Override
+ public byte[] encode() {
+ ByteArrayDataOutput tOut = ByteStreams.newDataOutput(1);
+ tOut.writeLong(charge);
+ return tOut.toByteArray();
+ }
+
+ @Override
+ public Object decode(ByteArrayDataInput aData) {
+ DetravPortableChargerPacker02 packet = new DetravPortableChargerPacker02();
+ packet.charge = aData.readLong();
+ return packet;
+ }
+
+ @Override
+ public void process() {
+ DetravPortableChargerGui.charge = charge;
+ }
+}
diff --git a/src/main/java/com/detrav/proxies/CommonProxy.java b/src/main/java/com/detrav/proxies/CommonProxy.java
index 5fdca5ab4e..c9fb3ca5ab 100644
--- a/src/main/java/com/detrav/proxies/CommonProxy.java
+++ b/src/main/java/com/detrav/proxies/CommonProxy.java
@@ -61,6 +61,7 @@ public class CommonProxy implements IGuiHandler {
}
}
+
public void openProPickGui()
{