コード例 #1
0
        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();
        }
コード例 #2
0
        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++;
            }
        }