Advertisement
TitanChase

Untitled

Apr 20th, 2014
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. package mods.chase.fm.buildings.blocks.tileentity;
  2.  
  3. import mods.chase.fm.buildings.FactionBuilding;
  4. import mods.chase.fm.faction.Faction;
  5. import net.minecraft.inventory.InventoryBasic;
  6. import net.minecraft.nbt.NBTTagCompound;
  7. import net.minecraft.tileentity.TileEntity;
  8.  
  9. public class FactionBuildingTileEntity extends TileEntity
  10. {
  11.  
  12. InventoryBasic theInventory;
  13.  
  14. public FactionBuildingTileEntity(Faction faction, FactionBuilding building)
  15. {
  16. theInventory = new InventoryBasic(theBuilding.getBuildingName(), true, 34);
  17. /*for (int i = 0; i < building.getBlocksRequiredToBuild().length; i++)
  18. {
  19. */
  20. if(!this.worldObj.isRemote)
  21. faction.getFactionBuildings().add(this);
  22. }
  23.  
  24. public InventoryBasic getInv()
  25. {
  26. return theInventory;
  27. }
  28.  
  29. public void readFromNBT(NBTTagCompound nbtTag)
  30. {
  31. theFaction.getFactionBuildings().clear();
  32. int[] coords = nbtTag.getIntArray("FMbuildingCoords");
  33. for (int i = 0; i < coords.length / 3; i++)
  34. {
  35. int x = coords[(i * 3)];
  36. int y = coords[(i * 3) + 1];
  37. int z = coords[(i * 3) + 2];
  38. TileEntity tile = this.worldObj.getTileEntity(x, y, z);
  39. if(tile instanceof FactionBuildingTileEntity)
  40. {
  41. theFaction.getFactionBuildings().add((FactionBuildingTileEntity) tile);
  42. }
  43. }
  44. super.readFromNBT(nbtTag);
  45. }
  46.  
  47. public void writeToNBT(NBTTagCompound nbtTag)
  48. {
  49. int[] coords = new int[theFaction.getFactionBuildings().size() * 3];
  50. for (int i = 0; i < theFaction.getFactionBuildings().size(); i++)
  51. {
  52. FactionBuildingTileEntity entity = theFaction.getFactionBuildings().get(i);
  53. coords[(i * 3)] = entity.xCoord;
  54. coords[(i * 3) + 1] = entity.yCoord;
  55. coords[(i * 3) + 2] = entity.zCoord;
  56. }
  57. nbtTag.setIntArray("FMbuildingCoords", coords);
  58. super.writeToNBT(nbtTag);
  59. }
  60.  
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement