Package de.eydamos.backpack.network.message

Source Code of de.eydamos.backpack.network.message.MessagePersonalBackpack

package de.eydamos.backpack.network.message;

import cpw.mods.fml.common.network.ByteBufUtils;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
import de.eydamos.backpack.handler.EventHandlerClientOnly;
import de.eydamos.backpack.saves.PlayerSave;
import de.eydamos.backpack.util.BackpackUtil;
import io.netty.buffer.ByteBuf;
import net.minecraft.item.ItemStack;

public class MessagePersonalBackpack implements IMessage, IMessageHandler<MessagePersonalBackpack, IMessage> {
    protected String playerUUID = "";
    protected int backpackDamage = -1;

    public MessagePersonalBackpack() {}
   
    public MessagePersonalBackpack(String UUID) {
        playerUUID = UUID;
    }

    public MessagePersonalBackpack(String UUID, int damage) {
        playerUUID = UUID;
        backpackDamage = damage;
    }

    @Override
    public void fromBytes(ByteBuf buffer) {
        playerUUID = ByteBufUtils.readUTF8String(buffer);
        backpackDamage = buffer.readInt();
    }

    @Override
    public void toBytes(ByteBuf buffer) {
        ByteBufUtils.writeUTF8String(buffer, playerUUID);
        buffer.writeInt(backpackDamage);
    }

    @Override
    public IMessage onMessage(MessagePersonalBackpack message, MessageContext ctx) {
        IMessage returnMessage = null;
        if(BackpackUtil.isServerSide()) {
            PlayerSave playerSave = new PlayerSave(message.playerUUID);
            ItemStack backpack = playerSave.getPersonalBackpack();
            if(backpack != null) {
                returnMessage = new MessagePersonalBackpack(message.playerUUID, backpack.getItemDamage());
            } else {
                returnMessage = new MessagePersonalBackpack(message.playerUUID);
            }
        } else {
            EventHandlerClientOnly.backpackDamage.put(message.playerUUID, message.backpackDamage);
        }
        return returnMessage;
    }

}
TOP

Related Classes of de.eydamos.backpack.network.message.MessagePersonalBackpack

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.