You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
2.7 KiB
Java
65 lines
2.7 KiB
Java
package net.brokenmoon.afloydwiremod.mixin;
|
|
|
|
import net.brokenmoon.afloydwiremod.WireMod;
|
|
import net.brokenmoon.afloydwiremod.api.AbstractWireTileEntity;
|
|
import net.brokenmoon.afloydwiremod.gui.GuiWiring;
|
|
import net.brokenmoon.afloydwiremod.item.ToolWiring;
|
|
import net.brokenmoon.afloydwiremod.mixinInterfaces.IEntityPlayer;
|
|
import net.brokenmoon.afloydwiremod.mixinInterfaces.INetHandler;
|
|
import net.brokenmoon.afloydwiremod.packet.*;
|
|
import net.brokenmoon.afloydwiremod.tileentity.ChipTileEntity;
|
|
import net.minecraft.client.Minecraft;
|
|
import net.minecraft.src.NetClientHandler;
|
|
import net.minecraft.src.TileEntity;
|
|
import org.spongepowered.asm.mixin.Mixin;
|
|
import org.spongepowered.asm.mixin.Shadow;
|
|
|
|
@Mixin(value = NetClientHandler.class, remap = false)
|
|
public class MixinNetClientHandler implements INetHandler {
|
|
@Shadow
|
|
Minecraft mc;
|
|
@Override
|
|
public void wiremodHandleOpenProgrammerGUI(WiremodProgrammerGuiPacket packet) {
|
|
((IEntityPlayer)this.mc.thePlayer).displayGuiProgrammer((ChipTileEntity)this.mc.theWorld.getBlockTileEntity(packet.x, packet.y, packet.z));
|
|
}
|
|
|
|
@Override
|
|
public void wiremodHandleProgramTile(WiremodProgrammerPacket wiremodProgrammerPacket) {
|
|
|
|
}
|
|
|
|
@Override
|
|
public void wiremodHandleOpenWiringGUI(WiremodWiringGuiPacket packet) {
|
|
((IEntityPlayer)this.mc.thePlayer).displayGuiWiring(((ToolWiring)this.mc.thePlayer.inventory.getCurrentItem().getItem()), (AbstractWireTileEntity) this.mc.theWorld.getBlockTileEntity(packet.x, packet.y, packet.z), packet.x2, packet.y2, packet.z2);
|
|
}
|
|
|
|
@Override
|
|
public void wiremodHandleIODisc(WiremodPacketSyncIO packet) {
|
|
boolean test = this.mc.theWorld.getBlockTileEntity(packet.x, packet.y, packet.z) instanceof ChipTileEntity;
|
|
System.out.println("Sync Try! " + " " + packet.x + " " + packet.y + " " + packet.z + " " + test);
|
|
TileEntity tileentity;
|
|
if (this.mc.theWorld.blockExists(packet.x, packet.y, packet.z) && (tileentity = this.mc.theWorld.getBlockTileEntity(packet.x, packet.y, packet.z)) instanceof AbstractWireTileEntity) {
|
|
AbstractWireTileEntity wireEntity = (AbstractWireTileEntity)tileentity;
|
|
wireEntity.inputs = packet.io;
|
|
wireEntity.outputs = packet.oi;
|
|
System.out.println("Synced!");
|
|
wireEntity.onInventoryChanged();
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void wiremodHandleWireChips(WiremodWiringPacket wiremodWiringPacket) {
|
|
|
|
}
|
|
|
|
@Override
|
|
public void wiremodHandleWireToolGui(WiremodSettingsGuiPacket wiremodSettingsGuiPacket) {
|
|
|
|
}
|
|
|
|
@Override
|
|
public void wiremodHandleWireToolSettingsGui(WiremodWireGuiPacket wiremodWireGuiPacket) {
|
|
((IEntityPlayer)this.mc.thePlayer).displayGuiWireSettings();
|
|
}
|
|
}
|