public bool CollectDataFromBinary(BinaryTable table, int index)
        {
            BuffConfigRecord record = GetRecord(table, index);

            Id          = DBCUtil.ExtractInt(table, record.Id, 0);
            Description = DBCUtil.ExtractString(table, record.Description, "");
            Script      = DBCUtil.ExtractString(table, record.Script, "");
            AttrId      = DBCUtil.ExtractInt(table, record.AttrId, 0);
            MaxCount    = DBCUtil.ExtractInt(table, record.MaxCount, 0);
            return(true);
        }
        private static unsafe byte[] GetRecordBytes(BuffConfigRecord record)
        {
            byte[] bytes = new byte[sizeof(BuffConfigRecord)];
            fixed(byte *p = bytes)
            {
                BuffConfigRecord *temp = (BuffConfigRecord *)p;

                *temp = record;
            }

            return(bytes);
        }
        public void AddToBinary(BinaryTable table)
        {
            BuffConfigRecord record = new BuffConfigRecord();

            record.Id          = DBCUtil.SetValue(table, Id, 0);
            record.Description = DBCUtil.SetValue(table, Description, "");
            record.Script      = DBCUtil.SetValue(table, Script, "");
            record.AttrId      = DBCUtil.SetValue(table, AttrId, 0);
            record.MaxCount    = DBCUtil.SetValue(table, MaxCount, 0);
            byte[] bytes = GetRecordBytes(record);
            table.Records.Add(bytes);
        }