Guest User

Untitled

a guest
Aug 27th, 2015
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.75 KB | None | 0 0
  1. package com.mierzen.recall;
  2.  
  3. import net.minecraft.entity.Entity;
  4. import net.minecraft.entity.player.EntityPlayer;
  5. import net.minecraft.nbt.NBTTagCompound;
  6. import net.minecraft.util.ChunkCoordinates;
  7. import net.minecraft.world.World;
  8. import net.minecraftforge.common.IExtendedEntityProperties;
  9.  
  10. public class ExtendedPlayer implements IExtendedEntityProperties
  11. {
  12.     public final static String EXT_PROP_NAME = References.MODID + "ExtendedPlayer";
  13.     private final EntityPlayer player;
  14.     private long lastTeleported; // Date saved as long
  15.     private int portalPosX;
  16.     private int portalPosY;
  17.     private int portalPosZ;
  18.  
  19.     public ExtendedPlayer(EntityPlayer player)
  20.     {
  21.         this.player = player;
  22.         this.lastTeleported = 0;
  23.     }
  24.  
  25.     public static final void register(EntityPlayer player)
  26.     {
  27.         player.registerExtendedProperties(ExtendedPlayer.EXT_PROP_NAME, new ExtendedPlayer(player));
  28.     }
  29.  
  30.     public static final ExtendedPlayer get(EntityPlayer player)
  31.     {
  32.         return (ExtendedPlayer)player.getExtendedProperties(EXT_PROP_NAME);
  33.     }
  34.  
  35.     @Override
  36.     public void saveNBTData(NBTTagCompound compound)
  37.     {
  38.         NBTTagCompound properties = new NBTTagCompound();
  39.         properties.setLong(References.NBT_LAST_TELEPORTED_NAME, lastTeleported);
  40.         properties.setInteger(References.NBT_PORTAL_X_NAME, portalPosX);
  41.         properties.setInteger(References.NBT_PORTAL_Y_NAME, portalPosY);
  42.         properties.setInteger(References.NBT_PORTAL_Z_NAME, portalPosZ);
  43.         compound.setTag(EXT_PROP_NAME, properties);
  44.     }
  45.  
  46.     @Override
  47.     public void loadNBTData(NBTTagCompound compound)
  48.     {
  49.         NBTTagCompound properties = (NBTTagCompound)compound.getTag(EXT_PROP_NAME);
  50.         lastTeleported = properties.getLong(References.NBT_LAST_TELEPORTED_NAME);
  51.         portalPosX = properties.getInteger(References.NBT_PORTAL_X_NAME);
  52.         portalPosY = properties.getInteger(References.NBT_PORTAL_Y_NAME);
  53.         portalPosZ = properties.getInteger(References.NBT_PORTAL_Z_NAME);
  54.     }
  55.  
  56.     @Override
  57.     public void init(Entity entity, World world)
  58.     {
  59.  
  60.     }
  61.  
  62.     public long getLastTeleported()
  63.     {
  64.         return lastTeleported;
  65.     }
  66.  
  67.     public void setLastTeleported(long lastTeleported)
  68.     {
  69.         this.lastTeleported = lastTeleported;
  70.     }
  71.  
  72.     public void copy(ExtendedPlayer props)
  73.     {
  74.         lastTeleported = props.lastTeleported;
  75.     }
  76.  
  77.     public ChunkCoordinates getPortalPos()
  78.     {
  79.         return new ChunkCoordinates(portalPosX, portalPosY, portalPosZ);
  80.     }
  81.  
  82.     public void setPortalPos(ChunkCoordinates portalPos)
  83.     {
  84.         this.portalPosX = portalPos.posX;
  85.         this.portalPosY = portalPos.posY;
  86.         this.portalPosZ = portalPos.posZ;
  87.     }
  88. }
Advertisement
Add Comment
Please, Sign In to add comment