Files
Server/src/engine/net/client/msg/ShowVaultInventoryMsg.java
T

86 lines
2.8 KiB
Java
Raw Normal View History

2022-04-30 09:41:17 -04:00
// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
// Magicbane Emulator Project © 2013 - 2022
// www.magicbane.com
package engine.net.client.msg;
import engine.net.AbstractConnection;
import engine.net.ByteBufferReader;
import engine.net.ByteBufferWriter;
2024-04-06 15:30:35 -04:00
import engine.net.Protocol;
2022-04-30 09:41:17 -04:00
import engine.objects.*;
import java.util.ArrayList;
/**
* Vault inventory contents
2023-07-15 09:23:48 -04:00
*
2022-04-30 09:41:17 -04:00
* @author Eighty
*/
public class ShowVaultInventoryMsg extends ClientNetMsg {
2023-07-15 09:23:48 -04:00
PlayerCharacter pc;
int accountType;
int accountID;
int npcType;
int npcID;
/**
* This is the general purpose constructor.
*/
public ShowVaultInventoryMsg(PlayerCharacter pc, Account account, NPC npc) {
super(Protocol.SHOWVAULTINVENTORY);
this.pc = pc;
this.accountType = account.getObjectType().ordinal();
this.accountID = account.getObjectUUID();
this.npcType = npc.getObjectType().ordinal();
this.npcID = npc.getObjectUUID();
}
/**
* This constructor is used by NetMsgFactory. It attempts to deserialize the ByteBuffer into a message. If a BufferUnderflow occurs (based on reading past the limit) then this constructor Throws that Exception to the caller.
*/
public ShowVaultInventoryMsg(AbstractConnection origin,
ByteBufferReader reader) {
super(Protocol.SHOWVAULTINVENTORY, origin, reader);
}
/**
* Serializes the subclass specific items from the supplied NetMsgReader.
*/
@Override
2024-05-12 13:36:47 -04:00
protected void _serialize(ByteBufferWriter writer) {
2023-07-15 09:23:48 -04:00
writer.putInt(accountType);
writer.putInt(accountID);
writer.putInt(npcType);
writer.putInt(npcID);
writer.putString(pc.getFirstName());
ArrayList<Item> vault = pc.getAccount().getVault();
Item.putList(writer, vault, false, pc.getObjectUUID());
writer.putInt(AbstractCharacter.getVaultCapacity());
}
/**
* Deserializes the subclass specific items to the supplied NetMsgWriter.
*/
@Override
protected void _deserialize(ByteBufferReader reader) {
}
@Override
protected int getPowerOfTwoBufferSize() {
return 17;
}
2022-04-30 09:41:17 -04:00
}