Package logisticspipes.network.packets.module

Source Code of logisticspipes.network.packets.module.SupplierPipeModePacket

package logisticspipes.network.packets.module;

import logisticspipes.modules.ModuleActiveSupplier;
import logisticspipes.modules.ModuleActiveSupplier.PatternMode;
import logisticspipes.modules.ModuleActiveSupplier.SupplyMode;
import logisticspipes.network.PacketHandler;
import logisticspipes.network.abstractpackets.ModernPacket;
import logisticspipes.network.abstractpackets.ModuleCoordinatesPacket;
import logisticspipes.network.packets.modules.SupplierPipeMode;
import logisticspipes.proxy.MainProxy;
import net.minecraft.entity.player.EntityPlayer;

public class SupplierPipeModePacket extends ModuleCoordinatesPacket {

  public SupplierPipeModePacket(int id) {
    super(id);
  }

  @Override
  public ModernPacket template() {
    return new SupplierPipeModePacket(getId());
  }

  @Override
  public void processPacket(EntityPlayer player) {
    final ModuleActiveSupplier module = this.getLogisticsModule(player, ModuleActiveSupplier.class);
    if(module == null) return;
    int mode;
    if(module.hasPatternUpgrade()) {
      mode = module.getPatternMode().ordinal() +1;
      if(mode >= PatternMode.values().length) {
        mode=0;
      }
      module.setPatternMode(PatternMode.values()[mode]);
    } else {
      mode = module.getSupplyMode().ordinal() +1;
      if(mode >= SupplyMode.values().length) {
        mode=0;
      }
      module.setSupplyMode(SupplyMode.values()[mode]);
    }
    MainProxy.sendPacketToPlayer(PacketHandler.getPacket(SupplierPipeMode.class).setHasPatternUpgrade(module.hasPatternUpgrade()).setInteger(mode).setPacketPos(this), player);
  }
}
TOP

Related Classes of logisticspipes.network.packets.module.SupplierPipeModePacket

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.