Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.theviolentsquirrels.questsystem.tileentity;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.entity.player.EntityPlayerMP;
- import net.minecraft.nbt.NBTTagCompound;
- import net.minecraft.network.NetworkManager;
- import net.minecraft.network.Packet;
- import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
- import net.minecraft.tileentity.TileEntity;
- import net.minecraftforge.fml.common.FMLLog;
- public class TileEntityBlockExpContainer extends TileEntity {
- private int experienceTotal;
- @Override
- public void writeToNBT(NBTTagCompound compound) {
- super.writeToNBT(compound);
- compound.setInteger("experienceTotal", this.experienceTotal);
- }
- @Override
- public void readFromNBT(NBTTagCompound compound) {
- super.readFromNBT(compound);
- this.experienceTotal = compound.getInteger("experienceTotal");
- }
- public boolean drainExperienceFromPlayer(EntityPlayer playerIn) {
- if (!this.worldObj.isRemote && playerIn instanceof EntityPlayerMP) {
- EntityPlayerMP playerMP;
- playerMP = (EntityPlayerMP) playerIn;
- if (playerMP.experienceTotal > 0) {
- this.experienceTotal += playerMP.experienceTotal;
- playerMP.experienceTotal = 0;
- playerMP.experienceLevel = 0;
- playerMP.experience = 0.0f;
- } else return (false);
- }
- return (true);
- }
- public int getExperienceTotal() {
- return (this.experienceTotal);
- }
- public void setExperienceTotal(int experienceTotal) {
- this.experienceTotal = experienceTotal;
- }
- @Override
- public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity pkt) {
- super.onDataPacket(net, pkt);
- this.readFromNBT(pkt.getNbtCompound());
- }
- @Override
- public Packet getDescriptionPacket() {
- NBTTagCompound compound = new NBTTagCompound();
- int metadata;
- this.writeToNBT(compound);
- metadata = this.getBlockMetadata();
- return (new S35PacketUpdateTileEntity(this.pos, metadata, compound));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement