using System.Collections.Generic; using Cal; using MongoDB.Bson.Serialization.Attributes; using MongoDB.Bson.Serialization.Options; namespace ET { public enum StarSoulItemSortType: byte { /// /// 优先品质 /// QualityFirst, /// /// 优先套装 /// TypeFirst, /// /// 优先等级 /// LevelFirst, } public class StarSoulItem { public long Id; /// /// 套装Id /// public int typeId; public byte level; public int exp; /// /// 装备栏 /// public EquipType posType; public Quality quality; public bool isUsed; public bool isLocked; // [BsonRepresentation(MongoDB.Bson.BsonType.Double, AllowTruncation = true)] public int mainAttribute; public int[] viceAttribute = new int[4]; [BsonRepresentation(MongoDB.Bson.BsonType.Double, AllowTruncation = true)] public float[] viceAdd = new float[4]; } public class StarSoulSuit { [System.Flags] public enum StarSoulSuitType:byte { None, Suit4=1, /// /// 不要使用,不存在这种情况 /// Suit8=1<<1, Suit4And8 = Suit4|Suit8, } public int Id; public StarSoulSuitType type; } public class StarSoulBag: Entity { public const ushort MaxCount = 1000; public int ItemCount; public StarSoulItemSortType sortType; [BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)] public SortedDictionary itemDic = new SortedDictionary(); public long lastSortTime; public const int sortTimeIntervel = 120 * 1000; public List Suits = new List(); [BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)] public Dictionary usedStarSoulDic = new Dictionary(); } }