public Item(IDatabasePreloader databasePreloader, DbCharacterItems dbItem) : this(databasePreloader, dbItem.Type, dbItem.TypeId) { Bag = dbItem.Bag; Slot = dbItem.Slot; Quality = dbItem.Quality; if (dbItem.GemTypeId1 != 0) { Gem1 = new Gem(databasePreloader, dbItem.GemTypeId1); } if (dbItem.GemTypeId2 != 0) { Gem2 = new Gem(databasePreloader, dbItem.GemTypeId2); } if (dbItem.GemTypeId3 != 0) { Gem3 = new Gem(databasePreloader, dbItem.GemTypeId3); } if (dbItem.GemTypeId4 != 0) { Gem4 = new Gem(databasePreloader, dbItem.GemTypeId4); } if (dbItem.GemTypeId5 != 0) { Gem5 = new Gem(databasePreloader, dbItem.GemTypeId5); } if (dbItem.GemTypeId6 != 0) { Gem6 = new Gem(databasePreloader, dbItem.GemTypeId6); } Count = dbItem.Count; }
internal async Task SaveItemInInventory(object[] args) { int charId = (int)args[0]; byte type = (byte)args[1]; byte typeId = (byte)args[2]; byte count = (byte)args[3]; ushort quality = (ushort)args[4]; byte bag = (byte)args[5]; byte slot = (byte)args[6]; int gem1 = (int)args[7]; int gem2 = (int)args[8]; int gem3 = (int)args[9]; int gem4 = (int)args[10]; int gem5 = (int)args[11]; int gem6 = (int)args[12]; bool hasColor = (bool)args[13]; byte alpha = (byte)args[14]; byte saturation = (byte)args[15]; byte r = (byte)args[16]; byte g = (byte)args[17]; byte b = (byte)args[18]; DateTime creationTime = (DateTime)args[19]; DateTime?expirationTime = (DateTime?)args[20]; var dbItem = new DbCharacterItems() { CharacterId = charId, Type = type, TypeId = typeId, Count = count, Quality = quality, Bag = bag, Slot = slot, GemTypeId1 = gem1, GemTypeId2 = gem2, GemTypeId3 = gem3, GemTypeId4 = gem4, GemTypeId5 = gem5, GemTypeId6 = gem6, HasDyeColor = hasColor, DyeColorAlpha = alpha, DyeColorSaturation = saturation, DyeColorR = r, DyeColorG = g, DyeColorB = b, CreationTime = creationTime, ExpirationTime = expirationTime }; _database.CharacterItems.Add(dbItem); await _database.SaveChangesAsync(); }
internal static async Task SaveItemInInventory(object[] args) { int charId = (int)args[0]; byte type = (byte)args[1]; byte typeId = (byte)args[2]; byte count = (byte)args[3]; byte bag = (byte)args[4]; byte slot = (byte)args[5]; int gem1 = (int)args[6]; int gem2 = (int)args[7]; int gem3 = (int)args[8]; int gem4 = (int)args[9]; int gem5 = (int)args[10]; int gem6 = (int)args[11]; bool hasColor = (bool)args[12]; byte alpha = (byte)args[13]; byte saturation = (byte)args[14]; byte r = (byte)args[15]; byte g = (byte)args[16]; byte b = (byte)args[16]; using var database = DependencyContainer.Instance.Resolve <IDatabase>(); var dbItem = new DbCharacterItems() { CharacterId = charId, Type = type, TypeId = typeId, Count = count, Bag = bag, Slot = slot, GemTypeId1 = gem1, GemTypeId2 = gem2, GemTypeId3 = gem3, GemTypeId4 = gem4, GemTypeId5 = gem5, GemTypeId6 = gem6, HasDyeColor = hasColor, DyeColorAlpha = alpha, DyeColorSaturation = saturation, DyeColorR = r, DyeColorG = g, DyeColorB = b }; database.CharacterItems.Add(dbItem); await database.SaveChangesAsync(); }
public Item(IDatabasePreloader databasePreloader, DbCharacterItems dbCharacterItem) : this(databasePreloader, dbCharacterItem.Type, dbCharacterItem.TypeId, dbCharacterItem.Count) { Bag = dbCharacterItem.Bag; Slot = dbCharacterItem.Slot; Quality = dbCharacterItem.Quality; CreationTime = dbCharacterItem.CreationTime; ExpirationTime = dbCharacterItem.ExpirationTime; if (!string.IsNullOrWhiteSpace(dbCharacterItem.Craftname)) { ParseCraftname(dbCharacterItem.Craftname); } if (dbCharacterItem.HasDyeColor) { DyeColor = new DyeColor(dbCharacterItem.DyeColorAlpha, dbCharacterItem.DyeColorSaturation, dbCharacterItem.DyeColorR, dbCharacterItem.DyeColorG, dbCharacterItem.DyeColorB); } if (dbCharacterItem.GemTypeId1 != 0) { Gem1 = new Gem(databasePreloader, dbCharacterItem.GemTypeId1, 0); } if (dbCharacterItem.GemTypeId2 != 0) { Gem2 = new Gem(databasePreloader, dbCharacterItem.GemTypeId2, 1); } if (dbCharacterItem.GemTypeId3 != 0) { Gem3 = new Gem(databasePreloader, dbCharacterItem.GemTypeId3, 2); } if (dbCharacterItem.GemTypeId4 != 0) { Gem4 = new Gem(databasePreloader, dbCharacterItem.GemTypeId4, 3); } if (dbCharacterItem.GemTypeId5 != 0) { Gem5 = new Gem(databasePreloader, dbCharacterItem.GemTypeId5, 4); } if (dbCharacterItem.GemTypeId6 != 0) { Gem6 = new Gem(databasePreloader, dbCharacterItem.GemTypeId6, 5); } }
internal static async Task SaveItemInInventory(object[] args) { int charId = (int)args[0]; byte type = (byte)args[1]; byte typeId = (byte)args[2]; byte count = (byte)args[3]; byte bag = (byte)args[4]; byte slot = (byte)args[5]; using var database = DependencyContainer.Instance.Resolve <IDatabase>(); var dbItem = new DbCharacterItems() { CharacterId = charId, Type = type, TypeId = typeId, Count = count, Bag = bag, Slot = slot, }; database.CharacterItems.Add(dbItem); await database.SaveChangesAsync(); }