partial void Merge(UpgradeComponent entity, ItemDTO dto, object state) { var upgradeComponent = dto.UpgradeComponent; if (upgradeComponent == null) { return; } var flags = upgradeComponent.Flags; if (flags != null) { entity.UpgradeComponentFlags = this.upgradeComponentFlagCollectionConverter.Convert(flags, upgradeComponent); } var infusionUpgradeFlags = upgradeComponent.InfusionUpgradeFlags; if (infusionUpgradeFlags != null) { entity.InfusionUpgradeFlags = this.infusionSlotFlagCollectionConverter.Convert(infusionUpgradeFlags, upgradeComponent); } entity.Suffix = upgradeComponent.Suffix; var infixUpgrade = upgradeComponent.InfixUpgrade; if (infixUpgrade != null) { entity.InfixUpgrade = this.infixUpgradeConverter.Convert(infixUpgrade, upgradeComponent); } entity.Bonuses = upgradeComponent.Bonuses; }
partial void Merge(UpgradeComponent entity, ItemDTO dto, object state) { var details = dto.Details; if (details == null) { return; } var flags = details.Flags; if (flags != null) { entity.UpgradeComponentFlags = this.upgradeComponentFlagCollectionConverter.Convert(flags, details); } var infusionUpgradeFlags = details.InfusionUpgradeFlags; if (infusionUpgradeFlags != null) { entity.InfusionUpgradeFlags = this.infusionSlotFlagCollectionConverter.Convert(infusionUpgradeFlags, details); } entity.Suffix = details.Suffix; var infixUpgrade = details.InfixUpgrade; if (infixUpgrade != null) { entity.InfixUpgrade = this.infixUpgradeConverter.Convert(infixUpgrade, details); } entity.Bonuses = details.Bonuses; }
private void Refresh(UpgradeComponent comp, Upgrade upgrade) { int level = ShipUpgrade.Instance.GetUpgrade(upgrade); int max = ShipUpgrade.Instance.GetUpgradeMax(upgrade); if (level < max) { (int, int)res = ShipUpgrade.Instance.GetNextLevelCost(upgrade); comp.Set(res.Item1, res.Item2, level, max); } else { comp.Set(max); } }
public override void process(Entity entity) { UpgradeComponent upgrade = entity.getComponent <UpgradeComponent>(); Collider entityCollider = entity.getComponent <Collider>(); var colliders = Physics.boxcastBroadphase(entityCollider.bounds, 1 << 1); foreach (var collider in colliders) { var upgrades = collider.getComponent <PlayerUpgradesComponent>(); if (upgrades != null) { upgrades.AddUpgrade(upgrade.Upgrade); entity.destroy(); break; } } }
public static async Task GetItems() { List <Item> allItems = new List <Item>(); List <int> allIds = apiOperations.GetAllIds(ITEMS_SUFFIX); Console.WriteLine($"Got {allIds.Count} items Ids"); for (int i = 0; i < allIds.Count; i += 200) { IEnumerable <int> idsToDownload = allIds.Skip(i).Take(200); StringBuilder endpoint = new StringBuilder(ITEMS_SUFFIX).Append("?ids="); foreach (var id in idsToDownload) { endpoint.Append(id) .Append(','); } endpoint.Length--; List <APIResult <Item> > result = apiOperations.GetObjectsByIds <Item>(endpoint.ToString()); foreach (var apiItem in result) { Item itemToAdd = apiItem.ResultObject; switch (itemToAdd.Type) { case "Armor": Armor armor = JsonConvert.DeserializeObject <Armor>(apiItem.AdditionalDetails); armor.Id = itemToAdd.Id; itemToAdd.Armor = armor; itemToAdd.ArmorId = armor.Id; dbOperations.AddWithoutCommit <Armor>(armor); break; case "Weapon": Weapon weapon = JsonConvert.DeserializeObject <Weapon>(apiItem.AdditionalDetails); weapon.Id = itemToAdd.Id; itemToAdd.Weapon = weapon; itemToAdd.WeaponId = weapon.Id; dbOperations.AddWithoutCommit <Weapon>(weapon); break; case "Back": BackItem backItem = JsonConvert.DeserializeObject <BackItem>(apiItem.AdditionalDetails); if (backItem == null) { backItem = new BackItem(); } backItem.Id = itemToAdd.Id; itemToAdd.BackItem = backItem; itemToAdd.BackItemId = backItem.Id; dbOperations.AddWithoutCommit <BackItem>(backItem); break; case "Consumable": Consumable consumable = JsonConvert.DeserializeObject <Consumable>(apiItem.AdditionalDetails); consumable.Id = itemToAdd.Id; itemToAdd.Consumable = consumable; itemToAdd.ConsumableId = consumable.Id; dbOperations.AddWithoutCommit <Consumable>(consumable); break; case "Container": Container container = JsonConvert.DeserializeObject <Container>(apiItem.AdditionalDetails); container.Id = itemToAdd.Id; itemToAdd.Container = container; itemToAdd.ContainerId = container.Id; dbOperations.AddWithoutCommit <Container>(container); break; case "Gathering": GatheringTool gathering = JsonConvert.DeserializeObject <GatheringTool>(apiItem.AdditionalDetails); gathering.Id = itemToAdd.Id; itemToAdd.GatheringTool = gathering; itemToAdd.GatheringToolId = gathering.Id; dbOperations.AddWithoutCommit <GatheringTool>(gathering); break; case "Gizmo": Gizmo gizmo = JsonConvert.DeserializeObject <Gizmo>(apiItem.AdditionalDetails); gizmo.Id = itemToAdd.Id; itemToAdd.Gizmo = gizmo; itemToAdd.GizmoId = gizmo.Id; dbOperations.AddWithoutCommit <Gizmo>(gizmo); break; case "MiniPet": Miniature mini = JsonConvert.DeserializeObject <Miniature>(apiItem.AdditionalDetails); mini.Id = itemToAdd.Id; itemToAdd.Miniature = mini; itemToAdd.MiniatureId = mini.Id; dbOperations.AddWithoutCommit <Miniature>(mini); break; case "Tool": SalvageKit salvage = JsonConvert.DeserializeObject <SalvageKit>(apiItem.AdditionalDetails); salvage.Id = itemToAdd.Id; itemToAdd.SalvageKit = salvage; itemToAdd.SalvageKitId = salvage.Id; dbOperations.AddWithoutCommit <SalvageKit>(salvage); break; case "Trinket": Trinket trinket = JsonConvert.DeserializeObject <Trinket>(apiItem.AdditionalDetails); trinket.Id = itemToAdd.Id; itemToAdd.Trinket = trinket; itemToAdd.TrinketId = trinket.Id; dbOperations.AddWithoutCommit <Trinket>(trinket); break; case "UpgradeComponent": UpgradeComponent upgrade = JsonConvert.DeserializeObject <UpgradeComponent>(apiItem.AdditionalDetails); upgrade.Id = itemToAdd.Id; itemToAdd.UpgradeComponent = upgrade; itemToAdd.UpgradeComponentId = upgrade.Id; dbOperations.AddWithoutCommit <UpgradeComponent>(upgrade); break; default: break; } allItems.Add(apiItem.ResultObject); } Console.WriteLine($"Loaded {allItems.Count} out of {allIds.Count} items"); } await dbOperations.AddToEntity <Item>(allItems); Console.WriteLine("Getting items completed"); }