public static void Load(Entity Entity) { MySqlCommand Command = new MySqlCommand(MySqlCommandType.SELECT); Command.Select("subclasses").Where("id", Entity.UID); MySqlReader Reader = new MySqlReader(Command); while (Reader.Read()) { Statement.SubClass Sub = new Statement.SubClass(); Sub.ID = Reader.ReadByte("uid"); Sub.Level = Reader.ReadByte("level"); Sub.Phase = Reader.ReadByte("phase"); Entity.SubClasses.Classes.Add(Sub.ID, Sub); Game_SubClass packet = new Game_SubClass(); packet.ClassId = (Game_SubClass.ID)Sub.ID; packet.Phase = Sub.Phase; packet.Type = Game_SubClass.Types.Learn; Entity.Owner.Send(packet); packet.Type = Game_SubClass.Types.MartialPromoted; Entity.Owner.Send(packet); } Reader.Close(); Reader.Dispose(); }
public Game_SubClassInfo(Game.Entity c, Game_SubClass.Types Type) { this.mData = new Byte[26 + (c.SubClasses.Classes.Count * 3) + 8]; Writer.WriteUInt16((UInt16)(mData.Length - 8), 0, mData); Writer.WriteUInt16((UInt16)2320, 2, mData); Writer.WriteByte((Byte)Type, 4, mData); Writer.WriteUInt16((UInt16)c.SubClasses.StudyPoints, 6, mData); Writer.WriteUInt16((UInt16)c.SubClasses.Classes.Count, 22, mData); foreach (Statement.SubClass subc in c.SubClasses.Classes.Values) { Writer.WriteByte((Byte)subc.ID, Offset, mData); Offset++; Writer.WriteByte((Byte)subc.Phase, Offset, mData); Offset++; Writer.WriteByte((Byte)subc.Level, Offset, mData); Offset++; } }