hassansyyid

TileEntityPowerline

Jun 23rd, 2015
321
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.15 KB | None | 0 0
  1. package com.arisux.avp.entities.tile;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5.  
  6. import net.minecraft.block.Block;
  7. import net.minecraft.init.Blocks;
  8. import net.minecraft.nbt.NBTTagCompound;
  9. import net.minecraft.network.NetworkManager;
  10. import net.minecraft.network.Packet;
  11. import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
  12. import net.minecraft.tileentity.TileEntity;
  13. import net.minecraft.world.World;
  14.  
  15. public class TileEntityPowerline extends PoweredTileEntity
  16. {
  17.     public TileEntityRepulsionGenerator originalpowersource = null;
  18.     @Override
  19.     public void onVoltageTick()
  20.     {
  21.         ;
  22.     }
  23.    
  24.     @Override
  25.     public Packet getDescriptionPacket()
  26.     {
  27.         NBTTagCompound nbtTag = new NBTTagCompound();
  28.         this.writeToNBT(nbtTag);
  29.         return new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, 1, nbtTag);
  30.     }
  31.  
  32.     @Override
  33.     public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity packet)
  34.     {
  35.         this.readFromNBT(packet.func_148857_g());
  36.     }
  37.    
  38.     @Override
  39.     public void writeToNBT(NBTTagCompound nbt)
  40.     {
  41.         super.writeToNBT(nbt);
  42.     }
  43.    
  44.     @Override
  45.     public void readFromNBT(NBTTagCompound nbt)
  46.     {
  47.         super.readFromNBT(nbt);
  48.     }
  49.    
  50.     @Override
  51.     public double getMinOperatingVoltage()
  52.     {
  53.         return 0;
  54.     }
  55.    
  56.     @Override
  57.     public double getMaxOperatingVoltage()
  58.     {
  59.         return 10000;
  60.     }
  61.    
  62.     @Override
  63.     public double getMinOperatingAmps()
  64.     {
  65.         return 0;
  66.     }
  67.    
  68.     @Override
  69.     public double getMaxOperatingAmps()
  70.     {
  71.         return 1000;
  72.     }
  73.    
  74.     @Override
  75.     public double getResistance()
  76.     {
  77.         return 0.002;
  78.     }
  79.    
  80.     @Override
  81.     public boolean canOutputPower()
  82.     {
  83.         if(isOriginalPowerSourceAttached()){
  84.             return true;
  85.         }
  86.         else{
  87.         return false;
  88.         }
  89.     }
  90.    
  91.     @Override
  92.     public Block getBlockType()
  93.     {
  94.         return Blocks.beacon;
  95.     }
  96.  
  97.     @Override
  98.     public void onOverloadTick()
  99.     {
  100.         ;
  101.     }
  102.  
  103.     @Override
  104.     public void onUnderloadTick()
  105.     {
  106.         ;
  107.     }
  108.  
  109.     @Override
  110.     public boolean isOriginalPowerSourceAttached() {
  111.         getOriginalPowerSource();
  112.         if(getPowerSource() != null){
  113.             return true;
  114.         }
  115.         else{
  116.             return false;
  117.         }
  118.     }
  119.  
  120.     @Override
  121.     public void getOriginalPowerSource() {
  122.         List<PoweredTileEntity> list = new ArrayList<PoweredTileEntity>();
  123.         list.add(this.getTop());
  124.         list.add(this.getBack());
  125.         list.add(this.getBottom());
  126.         list.add(this.getLeft());
  127.         list.add(this.getRight());
  128.         list.add(this.getFront());
  129.         boolean stop = false;
  130.         while(!stop){
  131.             for(PoweredTileEntity p : list){
  132.                 if(p instanceof TileEntityRepulsionGenerator || p instanceof TileEntityPowerline){
  133.                     if(p instanceof TileEntityRepulsionGenerator){
  134.                         setOriginalPowerSource((TileEntityRepulsionGenerator) p);
  135.                         stop = true;
  136.                     }
  137.                     else if(p instanceof TileEntityPowerline && p.getPowerSource() != null){
  138.                             setOriginalPowerSource((TileEntityRepulsionGenerator) p.getPowerSource());
  139.                             stop = true;
  140.                     }
  141.                 }
  142.                
  143.             }
  144.         }
  145.     }
  146.     @Override
  147.     public void setOriginalPowerSource(TileEntityRepulsionGenerator e) {
  148.         originalpowersource = e;
  149.        
  150.     }
  151.     @Override
  152.     public TileEntityRepulsionGenerator getPowerSource(){
  153.         if(originalpowersource != null){
  154.             return originalpowersource;
  155.         }
  156.         return null;
  157.     }
  158. }
Advertisement
Add Comment
Please, Sign In to add comment