Public Repository for the Magicbane Shadowbane Emulator
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

247 lines
5.5 KiB

// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
// Magicbane Emulator Project © 2013 - 2022
// www.magicbane.com
package engine.net.client.msg.chat;
import engine.Enum.GameObjectType;
import engine.net.AbstractConnection;
import engine.net.ByteBufferReader;
import engine.net.ByteBufferWriter;
import engine.net.client.Protocol;
import engine.objects.PlayerCharacter;
public class GuildEnterWorldMsg extends AbstractChatMsg {
protected String name;
protected int guildTitle;
protected int charterType;
protected int unknown04;
protected int guildUUID;
protected int unknown05;
protected int unknown06;
/**
* This is the general purpose constructor.
*/
public GuildEnterWorldMsg(PlayerCharacter source) {
super(Protocol.GUILDMEMBERONLINE, source, "[!PLAYERRANK!] !PLAYERNAME! is online");
this.name = "";
this.guildTitle = 0;
this.charterType = 9;
this.unknown02 = 12;
this.unknown04 = 2;
this.guildUUID = 0;
this.unknown05 = 0x2E46D00C;
this.unknown06 = 0;
}
/**
* Copy constructor
*/
public GuildEnterWorldMsg(GuildEnterWorldMsg msg) {
super(msg);
this.name = msg.name;
this.guildTitle = msg.guildTitle;
this.charterType = msg.charterType;
this.unknown04 = msg.unknown04;
this.guildUUID = msg.guildUUID;
this.unknown05 = msg.unknown05;
this.unknown06 = msg.unknown06;
}
/**
* 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 GuildEnterWorldMsg(AbstractConnection origin, ByteBufferReader reader) {
super(Protocol.GUILDMEMBERONLINE, origin, reader);
}
/**
* Serializes the subclass specific items to the supplied ByteBufferWriter.
*/
@Override
protected void _serialize(ByteBufferWriter writer) {
writer.putString(this.name);
writer.putInt(guildTitle);
writer.put((byte) 1); // forgot this
writer.putInt(this.charterType);
writer.putInt(this.unknown02);
writer.putInt(this.unknown04);
writer.putInt(GameObjectType.Guild.ordinal());
writer.putInt(this.guildUUID);
writer.putString(this.message);
writer.putInt(this.unknown05);
writer.putInt(this.unknown06);
}
/**
* Deserializes the subclass specific items from the supplied ByteBufferReader.
*/
@Override
protected void _deserialize(ByteBufferReader reader) {
this.name = reader.getString();
this.guildTitle = reader.getInt();
reader.get(); // forgot this
this.unknown02 = reader.getInt();
this.charterType = reader.getInt();
this.unknown04 = reader.getInt();
reader.getInt(); // Object Type Padding
this.guildUUID = reader.getInt();
this.message = reader.getString();
this.unknown05 = reader.getInt();
this.unknown06 = reader.getInt();
}
/**
* @return the name
*/
public String getName() {
return name;
}
/**
* @param name
* the name to set
*/
public void setName(String name) {
this.name = name;
}
/**
* @return the guildTitle
*/
public int getGuildTitle() {
return guildTitle;
}
/**
* @param guildTitle
* the guildTitle to set
*/
public void setGuildTitle(int guildTitle) {
this.guildTitle = guildTitle;
}
/**
* @return the unknown02
*/
@Override
public int getUnknown02() {
return unknown02;
}
/**
* @param unknown02
* the unknown02 to set
*/
@Override
public void setUnknown02(int unknown02) {
this.unknown02 = unknown02;
}
/**
* @return the unknown03
*/
public int getCharter() {
return charterType;
}
/**
* @param unknown03
* the unknown03 to set
*/
public void setCharter(int charter) {
this.charterType = charter;
}
/**
* @return the unknown04
*/
public int getUnknown04() {
return unknown04;
}
/**
* @param unknown04
* the unknown04 to set
*/
public void setUnknown04(int unknown04) {
this.unknown04 = unknown04;
}
/**
* @return the guildUUID
*/
public int getGuildUUID() {
return guildUUID;
}
/**
* @param guildUUID
* the guildUUID to set
*/
public void setGuildUUID(int guildUUID) {
this.guildUUID = guildUUID;
}
/**
* @return the message
*/
@Override
public String getMessage() {
return message;
}
/**
* @param message
* the message to set
*/
@Override
public void setMessage(String message) {
this.message = message;
}
/**
* @return the unknown05
*/
public int getUnknown05() {
return unknown05;
}
/**
* @param unknown05
* the unknown05 to set
*/
public void setUnknown05(int unknown05) {
this.unknown05 = unknown05;
}
/**
* @return the unknown06
*/
public int getUnknown06() {
return unknown06;
}
/**
* @param unknown06
* the unknown06 to set
*/
public void setUnknown06(int unknown06) {
this.unknown06 = unknown06;
}
}