public void SetUnitCount(CombatItemData cd, int count) { switch (cd.GetCombatItemType()) { case 1: { var index = GetDataIndex(m_vSpellCount, cd); if (index != -1) { m_vSpellCount[index].Value = count; } else { var ds = new DataSlot(cd, count); m_vSpellCount.Add(ds); } break; } default: { var index = GetDataIndex(m_vUnitCount, cd); if (index != -1) { m_vUnitCount[index].Value = count; } else { var ds = new DataSlot(cd, count); m_vUnitCount.Add(ds); } break; } } }
public void AddUsedTroop(CombatItemData cid, int value) { if (State == UserState.PVP) { var info = default(AttackInfo); if (!AttackingInfo.TryGetValue(GetId(), out info)) { Logger.Error("Unable to obtain attack info."); } else { var dataSlot = info.UsedTroop.Find(t => t.Data.GetGlobalID() == cid.GetGlobalID()); if (dataSlot != null) { // Troops already exist. int i = info.UsedTroop.IndexOf(dataSlot); dataSlot.Value = dataSlot.Value + value; info.UsedTroop[i] = dataSlot; } else { DataSlot ds = new DataSlot(cid, value); info.UsedTroop.Add(ds); } } } //else // Logger.Write("Unsupported state! AddUsedTroop only for PVP for now.PVE Comming Soon"); }
public void AddUnitToQueue(CombatItemData cd, int count) { for (int i = 0; i < m_vUnits.Count; i++) { if ((CombatItemData)m_vUnits[i].Data == cd) { if (count != 1) { m_vUnits[i].Value += count; return; } else { m_vUnits[i].Value++; return; } } } DataSlot ds = new DataSlot(cd, count); m_vUnits.Add(ds); if (m_vTimer == null) { m_vTimer = new Timer(); int trainingTime = cd.GetTrainingTime(m_vLevel.GetPlayerAvatar().GetUnitUpgradeLevel(cd)); m_vTimer.StartTimer(trainingTime, m_vLevel.GetTime()); } }
public void RemoveUnit(CombatItemData cd) { int index = -1; if (GetSlotCount() >= 1) { for (int i = 0; i < GetSlotCount(); i++) { if (m_vUnits[i].Data == cd) { index = i; } } } if (index != -1) { if (m_vUnits[index].Value >= 1) { m_vUnits[index].Value--; if (m_vUnits[index].Value == 0) { m_vUnits.RemoveAt(index); if (GetSlotCount() >= 1) { DataSlot ds = m_vUnits[0]; CombatItemData newcd = (CombatItemData)m_vUnits[0].Data; ClientAvatar ca = GetParent().GetLevel().GetHomeOwnerAvatar(); m_vTimer = new Timer(); int trainingTime = newcd.GetTrainingTime(ca.GetUnitUpgradeLevel(newcd)); m_vTimer.StartTimer(trainingTime, GetParent().GetLevel().GetTime()); } } } } }
public void SetUnitUpgradeLevel(CombatItemData cd, int level) { switch (cd.GetCombatItemType()) { case 2: { int index = GetDataIndex(this.m_heroUpgradeLevel, cd); if (index != -1) { m_heroUpgradeLevel[index].Value = level; } else { DataSlot ds = new DataSlot(cd, level); m_heroUpgradeLevel.Add(ds); } break; } case 1: { int index = GetDataIndex(this.m_spellUpgradeLevel, cd); if (index != -1) { m_spellUpgradeLevel[index].Value = level; } else { DataSlot ds = new DataSlot(cd, level); m_spellUpgradeLevel.Add(ds); } break; } default: { int index = GetDataIndex(this.m_unitUpgradeLevel, cd); if (index != -1) { m_unitUpgradeLevel[index].Value = level; } else { DataSlot ds = new DataSlot(cd, level); m_unitUpgradeLevel.Add(ds); } break; } } }
public void SetResourceCap(ResourceData rd, int value) { int index = GetDataIndex(m_vResourceCaps, rd); if (index == -1) { DataSlot ds = new DataSlot(rd, value); m_vResourceCaps.Add(ds); } else { m_vResourceCaps[index].Value = value; } }
public void SetHeroHealth(HeroData hd, int health) { var index = GetDataIndex(m_vHeroHealth, hd); if (index == -1) { var ds = new DataSlot(hd, health); m_vHeroHealth.Add(ds); } else { m_vHeroHealth[index].Value = health; } }
public void SetHeroState(HeroData hd, int state) { var index = GetDataIndex(m_vHeroState, hd); if (index == -1) { var ds = new DataSlot(hd, state); m_vHeroState.Add(ds); } else { m_vHeroState[index].Value = state; } }
public void SetResourceCount(ResourceData rd, int value) { var index = GetDataIndex(m_vResources, rd); if (index == -1) { var ds = new DataSlot(rd, value); m_vResources.Add(ds); } else { m_vResources[index].Value = value; } }
public void SetAchievment(AchievementData ad, bool finished) { int index = GetDataIndex(this.Achievements, ad); int value = finished ? 1 : 0; if (index != -1) { this.Achievements[index].Value = value; } else { DataSlot ds = new DataSlot(ad, value); this.Achievements.Add(ds); } }
public void SetAchievment(AchievementData ad, bool finished) { var index = GetDataIndex(Achievements, ad); var value = finished ? 1 : 0; if (index != -1) { Achievements[index].Value = value; } else { var ds = new DataSlot(ad, value); Achievements.Add(ds); } }
public void SetHeroHealth(HeroData hd, int health) { int index = GetDataIndex(this.m_heroHealth, hd); if (index == -1) { DataSlot ds = new DataSlot(hd, health); m_heroHealth.Add(ds); } else { m_heroHealth[index].Value = health; } }
public void SetHeroState(HeroData hd, int state) { int index = GetDataIndex(this.m_heroState, hd); if (index == -1) { DataSlot ds = new DataSlot(hd, state); m_heroState.Add(ds); } else { m_heroState[index].Value = state; } }
public void SetResourceCount(ResourceData rd, int value) { int index = GetDataIndex(m_vResources, rd); if (index == -1) { var ds = new DataSlot(rd, value); m_vResources.Add(ds); } else { m_vResources[index].Value = value; } //LogicLevel::getComponentManager(v18); //LogicComponentManager::divideAvatarResourcesToStorages(v19) }
public void LoadFromJSON(string jsonString) { JObject jObject = JObject.Parse(jsonString); this.m_vId = jObject["avatar_id"].ToObject <long>(); this.m_vToken = jObject["token"].ToObject <string>(); this.m_vCurrentHomeId = jObject["current_home_id"].ToObject <long>(); this.m_vAllianceId = jObject["alliance_id"].ToObject <long>(); this.m_vAvatarName = jObject["avatar_name"].ToObject <string>(); this.m_vAvatarLevel = jObject["avatar_level"].ToObject <int>(); this.m_vExperience = jObject["experience"].ToObject <int>(); this.m_vCurrentGems = jObject["current_gems"].ToObject <int>(); this.SetScore(jObject["score"].ToObject <int>()); this.m_vNameChangingLeft = jObject["nameChangesLeft"].ToObject <byte>(); this.m_vnameChosenByUser = jObject["nameChosenByUser"].ToObject <byte>(); using (IEnumerator <JToken> enumerator = ((JArray)jObject["resources"]).GetEnumerator()) { while (enumerator.MoveNext()) { JObject jsonObject = (JObject)enumerator.Current; DataSlot dataSlot = new DataSlot(null, 0); dataSlot.Load(jsonObject); base.GetResources().Add(dataSlot); } } using (IEnumerator <JToken> enumerator = ((JArray)jObject["decks"]).GetEnumerator()) { while (enumerator.MoveNext()) { JObject jsonObject2 = (JObject)enumerator.Current; DataSlot dataSlot2 = new DataSlot(null, 0); dataSlot2.Load(jsonObject2); this.m_vUnitCount.Add(dataSlot2); } } this.TutorialStepsCount = jObject["tutorial_step"].ToObject <uint>(); using (IEnumerator <JToken> enumerator = ((JArray)jObject["achievements_progress"]).GetEnumerator()) { while (enumerator.MoveNext()) { JObject jsonObject3 = (JObject)enumerator.Current; DataSlot dataSlot3 = new DataSlot(null, 0); dataSlot3.Load(jsonObject3); this.Achievements.Add(dataSlot3); } } }
public void AddUnitToQueue(CombatItemData cd) { for (var i = 0; i < m_vUnits.Count; i++) { if ((CombatItemData)m_vUnits[i].Data == cd) { m_vUnits[i].Value++; return; } } var ds = new DataSlot(cd, 1); m_vUnits.Add(ds); if (m_vTimer == null) { } }
public void AddUnitToProductionQueue(CombatItemData cd) { if(CanAddUnitToQueue(cd)) { for(int i=0;i<GetSlotCount();i++) { if ((CombatItemData)m_vUnits[i].Data == cd) { m_vUnits[i].Value++; return; } } DataSlot ds = new DataSlot(cd, 1); m_vUnits.Add(ds); if(m_vTimer == null) { ClientAvatar ca = GetParent().GetLevel().GetHomeOwnerAvatar(); m_vTimer = new Timer(); int trainingTime = cd.GetTrainingTime(ca.GetUnitUpgradeLevel(cd)); m_vTimer.StartTimer(trainingTime, GetParent().GetLevel().GetTime()); } } }
public void AddUnitToProductionQueue(CombatItemData cd) { if (CanAddUnitToQueue(cd)) { for (var i = 0; i < GetSlotCount(); i++) { if ((CombatItemData)m_vUnits[i].Data == cd) { m_vUnits[i].Value++; return; } } var ds = new DataSlot(cd, 1); m_vUnits.Add(ds); if (m_vTimer == null) { var ca = GetParent().GetLevel().GetHomeOwnerAvatar(); m_vTimer = new Timer(); var trainingTime = cd.GetTrainingTime(ca.GetUnitUpgradeLevel(cd)); m_vTimer.StartTimer(trainingTime, GetParent().GetLevel().GetTime()); } } }
public void LoadFromJSON(string jsonString) { var jsonObject = JObject.Parse(jsonString); this.UserId = jsonObject["avatar_id"].ToObject <long>(); this.HighID = jsonObject["id_high_int"].ToObject <int>(); this.LowID = jsonObject["id_low_int"].ToObject <int>(); this.UserToken = jsonObject["token"].ToObject <string>(); this.Region = jsonObject["region"].ToObject <string>(); this.IPAddress = jsonObject["IPAddress"].ToObject <string>(); this.m_vAccountCreationDate = jsonObject["avatar_creation_date"].ToObject <DateTime>(); this.AccountPrivileges = jsonObject["avatar_privilages"].ToObject <byte>(); this.AccountBanned = jsonObject["avatar_banned"].ToObject <bool>(); this.m_vActiveLayout = jsonObject["active_layout"].ToObject <int>(); this.LastTickSaved = jsonObject["last_tick_save"].ToObject <DateTime>(); this.m_vAndroid = jsonObject["android"].ToObject <bool>(); this.CurrentHomeId = jsonObject["current_home_id"].ToObject <long>(); this.AllianceId = jsonObject["alliance_id"].ToObject <long>(); SetAllianceCastleLevel(jsonObject["alliance_castle_level"].ToObject <int>()); SetAllianceCastleTotalCapacity(jsonObject["alliance_castle_total_capacity"].ToObject <int>()); SetAllianceCastleUsedCapacity(jsonObject["alliance_castle_used_capacity"].ToObject <int>()); SetTownHallLevel(jsonObject["townhall_level"].ToObject <int>()); this.AvatarName = jsonObject["avatar_name"].ToObject <string>(); this.m_vAvatarLevel = jsonObject["avatar_level"].ToObject <int>(); this.m_vExperience = jsonObject["experience"].ToObject <int>(); this.m_vCurrentGems = jsonObject["current_gems"].ToObject <int>(); SetScore(jsonObject["score"].ToObject <int>()); this.m_vNameChangingLeft = jsonObject["nameChangesLeft"].ToObject <byte>(); this.m_vnameChosenByUser = jsonObject["nameChosenByUser"].ToObject <byte>(); this.m_vShieldTime = jsonObject["shield_time"].ToObject <int>(); this.m_vProtectionTime = jsonObject["protection_time"].ToObject <int>(); this.FacebookId = jsonObject["fb_id"].ToObject <string>(); this.FacebookToken = jsonObject["fb_token"].ToObject <string>(); this.GoogleId = jsonObject["gg_id"].ToObject <string>(); this.m_vReceived = jsonObject["troops_received"].ToObject <int>(); this.m_vDonated = jsonObject["troops_donated"].ToObject <int>(); this.GoogleToken = jsonObject["gg_token"].ToObject <string>(); this.TroopRequestMessage = jsonObject["rq_message"].ToObject <string>(); JArray jsonBookmarkedClan = (JArray)jsonObject["bookmark"]; foreach (JObject jobject in jsonBookmarkedClan) { JObject data = (JObject)jobject; BookmarkSlot ds = new BookmarkSlot(0); ds.Load(data); BookmarkedClan.Add(ds); } JArray jsonResources = (JArray)jsonObject["resources"]; foreach (JObject resource in jsonResources) { DataSlot ds = new DataSlot(null, 0); ds.Load(resource); GetResources().Add(ds); } JArray jsonUnits = (JArray)jsonObject["units"]; foreach (JObject unit in jsonUnits) { DataSlot ds = new DataSlot(null, 0); ds.Load(unit); m_vUnitCount.Add(ds); } JArray jsonSpells = (JArray)jsonObject["spells"]; foreach (JObject spell in jsonSpells) { DataSlot ds = new DataSlot(null, 0); ds.Load(spell); m_vSpellCount.Add(ds); } JArray jsonUnitLevels = (JArray)jsonObject["unit_upgrade_levels"]; foreach (JObject unitLevel in jsonUnitLevels) { DataSlot ds = new DataSlot(null, 0); ds.Load(unitLevel); m_vUnitUpgradeLevel.Add(ds); } JArray jsonSpellLevels = (JArray)jsonObject["spell_upgrade_levels"]; foreach (JObject data in jsonSpellLevels) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); m_vSpellUpgradeLevel.Add(ds); } JArray jsonHeroLevels = (JArray)jsonObject["hero_upgrade_levels"]; foreach (JObject data in jsonHeroLevels) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); m_vHeroUpgradeLevel.Add(ds); } JArray jsonHeroHealth = (JArray)jsonObject["hero_health"]; foreach (JObject data in jsonHeroHealth) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); m_vHeroHealth.Add(ds); } JArray jsonHeroState = (JArray)jsonObject["hero_state"]; foreach (JObject data in jsonHeroState) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); m_vHeroState.Add(ds); } JArray jsonAllianceUnits = (JArray)jsonObject["alliance_units"]; foreach (JObject data in jsonAllianceUnits) { DonationSlot ds = new DonationSlot(0, 0, 0, 0); ds.Load(data); AllianceUnits.Add(ds); } TutorialStepsCount = jsonObject["tutorial_step"].ToObject <uint>(); JArray jsonAchievementsProgress = (JArray)jsonObject["achievements_progress"]; foreach (JObject data in jsonAchievementsProgress) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); Achievements.Add(ds); } JArray jsonNpcStars = (JArray)jsonObject["npc_stars"]; foreach (JObject data in jsonNpcStars) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); NpcStars.Add(ds); } JArray jsonNpcLootedGold = (JArray)jsonObject["npc_looted_gold"]; foreach (JObject data in jsonNpcLootedGold) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); NpcLootedGold.Add(ds); } JArray jsonNpcLootedElixir = (JArray)jsonObject["npc_looted_elixir"]; foreach (JObject data in jsonNpcLootedElixir) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); NpcLootedElixir.Add(ds); } JArray jsonQuickTrain1 = (JArray)jsonObject["quick_train_1"]; foreach (JObject data in jsonQuickTrain1) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); QuickTrain1.Add(ds); } JArray jsonQuickTrain2 = (JArray)jsonObject["quick_train_2"]; foreach (JObject data in jsonQuickTrain2) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); QuickTrain2.Add(ds); } JArray jsonQuickTrain3 = (JArray)jsonObject["quick_train_3"]; foreach (JObject data in jsonQuickTrain3) { DataSlot ds = new DataSlot(null, 0); ds.Load(data); QuickTrain3.Add(ds); } m_vPremium = jsonObject["Premium"].ToObject <bool>(); }
public void LoadFromJson(string jsonString) { var jsonObject = JObject.Parse(jsonString); m_vId = jsonObject["avatar_id"].ToObject <long>(); m_vHighInt = jsonObject["id_high_int"].ToObject <int>(); m_vLowInt = jsonObject["id_low_int"].ToObject <int>(); m_vToken = jsonObject["token"].ToObject <string>(); m_vRegion = jsonObject["region"].ToObject <string>(); m_vAccountCreationDate = jsonObject["avatar_creation_date"].ToObject <DateTime>(); m_vActiveLayout = jsonObject["active_layout"].ToObject <int>(); m_vAndroid = jsonObject["android"].ToObject <bool>(); m_vCurrentHomeId = jsonObject["current_home_id"].ToObject <long>(); m_vAllianceId = jsonObject["alliance_id"].ToObject <long>(); SetAllianceCastleLevel(jsonObject["alliance_castle_level"].ToObject <int>()); SetAllianceCastleTotalCapacity(jsonObject["alliance_castle_total_capacity"].ToObject <int>()); SetAllianceCastleUsedCapacity(jsonObject["alliance_castle_used_capacity"].ToObject <int>()); SetTownHallLevel(jsonObject["townhall_level"].ToObject <int>()); m_vAvatarName = jsonObject["avatar_name"].ToObject <string>(); m_vAvatarLevel = jsonObject["avatar_level"].ToObject <int>(); m_vExperience = jsonObject["experience"].ToObject <int>(); m_vCurrentGems = jsonObject["current_gems"].ToObject <int>(); SetScore(jsonObject["score"].ToObject <int>()); m_vNameChangingLeft = jsonObject["nameChangesLeft"].ToObject <byte>(); m_vnameChosenByUser = jsonObject["nameChosenByUser"].ToObject <byte>(); var jsonBookmarkedClan = (JArray)jsonObject["bookmark"]; foreach (JObject jobject in jsonBookmarkedClan) { var data = (JObject)jobject; var ds = new BookmarkSlot(0); ds.Load(data); BookmarkedClan.Add(ds); } var jsonResources = (JArray)jsonObject["resources"]; foreach (JObject resource in jsonResources) { var ds = new DataSlot(null, 0); ds.Load(resource); GetResources().Add(ds); } var jsonUnits = (JArray)jsonObject["units"]; foreach (JObject unit in jsonUnits) { var ds = new DataSlot(null, 0); ds.Load(unit); m_vUnitCount.Add(ds); } var jsonSpells = (JArray)jsonObject["spells"]; foreach (JObject spell in jsonSpells) { var ds = new DataSlot(null, 0); ds.Load(spell); m_vSpellCount.Add(ds); } var jsonUnitLevels = (JArray)jsonObject["unit_upgrade_levels"]; foreach (JObject unitLevel in jsonUnitLevels) { var ds = new DataSlot(null, 0); ds.Load(unitLevel); m_vUnitUpgradeLevel.Add(ds); } var jsonSpellLevels = (JArray)jsonObject["spell_upgrade_levels"]; foreach (JObject data in jsonSpellLevels) { var ds = new DataSlot(null, 0); ds.Load(data); m_vSpellUpgradeLevel.Add(ds); } var jsonHeroLevels = (JArray)jsonObject["hero_upgrade_levels"]; foreach (JObject data in jsonHeroLevels) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroUpgradeLevel.Add(ds); } var jsonHeroHealth = (JArray)jsonObject["hero_health"]; foreach (JObject data in jsonHeroHealth) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroHealth.Add(ds); } var jsonHeroState = (JArray)jsonObject["hero_state"]; foreach (JObject data in jsonHeroState) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroState.Add(ds); } var jsonAllianceUnits = (JArray)jsonObject["alliance_units"]; foreach (JObject data in jsonAllianceUnits) { var ds = new TroopDataSlot(null, 0, 0); ds.Load(data); AllianceUnits.Add(ds); } TutorialStepsCount = jsonObject["tutorial_step"].ToObject <uint>(); var jsonAchievementsProgress = (JArray)jsonObject["achievements_progress"]; foreach (JObject data in jsonAchievementsProgress) { var ds = new DataSlot(null, 0); ds.Load(data); Achievements.Add(ds); } var jsonNpcStars = (JArray)jsonObject["npc_stars"]; foreach (JObject data in jsonNpcStars) { var ds = new DataSlot(null, 0); ds.Load(data); NpcStars.Add(ds); } var jsonNpcLootedGold = (JArray)jsonObject["npc_looted_gold"]; foreach (JObject data in jsonNpcLootedGold) { var ds = new DataSlot(null, 0); ds.Load(data); NpcLootedGold.Add(ds); } var jsonNpcLootedElixir = (JArray)jsonObject["npc_looted_elixir"]; foreach (JObject data in jsonNpcLootedElixir) { var ds = new DataSlot(null, 0); ds.Load(data); NpcLootedElixir.Add(ds); } var jsonQuickTrain1 = (JArray)jsonObject["quick_train_1"]; foreach (JObject data in jsonQuickTrain1) { var ds = new DataSlot(null, 0); ds.Load(data); QuickTrain1.Add(ds); } var jsonQuickTrain2 = (JArray)jsonObject["quick_train_2"]; foreach (JObject data in jsonQuickTrain2) { var ds = new DataSlot(null, 0); ds.Load(data); QuickTrain2.Add(ds); } var jsonQuickTrain3 = (JArray)jsonObject["quick_train_3"]; foreach (JObject data in jsonQuickTrain3) { var ds = new DataSlot(null, 0); ds.Load(data); QuickTrain3.Add(ds); } m_vPremium = jsonObject["Premium"].ToObject <bool>(); }
public void SetAchievment(AchievementData ad, bool finished) { int index = GetDataIndex(this.Achievements, ad); int value = finished ? 1 : 0; if (index != -1) this.Achievements[index].Value = value; else { DataSlot ds = new DataSlot(ad, value); this.Achievements.Add(ds); } }
public void LoadFromJSON(string jsonString) { JObject jsonObject = JObject.Parse(jsonString); m_vId = jsonObject["avatar_id"].ToObject<long>(); m_vCurrentHomeId = jsonObject["current_home_id"].ToObject<long>(); m_vAllianceId = jsonObject["alliance_id"].ToObject<long>(); SetAllianceCastleLevel(jsonObject["alliance_castle_level"].ToObject<int>()); SetAllianceCastleTotalCapacity(jsonObject["alliance_castle_total_capacity"].ToObject<int>()); SetAllianceCastleUsedCapacity(jsonObject["alliance_castle_used_capacity"].ToObject<int>()); SetTownHallLevel(jsonObject["townhall_level"].ToObject<int>()); m_vAvatarName = jsonObject["avatar_name"].ToObject<string>(); m_vAvatarLevel = jsonObject["avatar_level"].ToObject<int>(); m_vExperience = jsonObject["experience"].ToObject<int>(); m_vCurrentGems = jsonObject["current_gems"].ToObject<int>(); m_vScore = jsonObject["score"].ToObject<int>(); m_vIsAvatarNameSet = jsonObject["is_avatar_name_set"].ToObject<byte>(); /*JArray jsonMaxResources = (JArray)jsonObject["max_resources"]; foreach (JObject resource in jsonMaxResources) { var ds = new DataSlot(null, 0); ds.Load(resource); m_vResourceCaps.Add(ds); }*/ JArray jsonResources = (JArray)jsonObject["resources"]; foreach (JObject resource in jsonResources) { var ds = new DataSlot(null, 0); ds.Load(resource); GetResources().Add(ds); } JArray jsonUnits = (JArray)jsonObject["units"]; foreach (JObject unit in jsonUnits) { var ds = new DataSlot(null, 0); ds.Load(unit); m_vUnitCount.Add(ds); } JArray jsonSpells = (JArray)jsonObject["spells"]; foreach (JObject spell in jsonSpells) { var ds = new DataSlot(null, 0); ds.Load(spell); m_vSpellCount.Add(ds); } JArray jsonUnitLevels = (JArray)jsonObject["unit_upgrade_levels"]; foreach (JObject unitLevel in jsonUnitLevels) { var ds = new DataSlot(null, 0); ds.Load(unitLevel); m_vUnitUpgradeLevel.Add(ds); } JArray jsonSpellLevels = (JArray)jsonObject["spell_upgrade_levels"]; foreach (JObject data in jsonSpellLevels) { var ds = new DataSlot(null, 0); ds.Load(data); m_vSpellUpgradeLevel.Add(ds); } JArray jsonHeroLevels = (JArray)jsonObject["hero_upgrade_levels"]; foreach (JObject data in jsonHeroLevels) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroUpgradeLevel.Add(ds); } JArray jsonHeroHealth = (JArray)jsonObject["hero_health"]; foreach (JObject data in jsonHeroHealth) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroHealth.Add(ds); } JArray jsonHeroState = (JArray)jsonObject["hero_state"]; foreach (JObject data in jsonHeroState) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroState.Add(ds); } JArray jsonAllianceUnits = (JArray)jsonObject["alliance_units"]; foreach (JObject data in jsonAllianceUnits) { var ds = new DataSlot(null, 0); ds.Load(data); AllianceUnits.Add(ds); } TutorialStepsCount = jsonObject["tutorial_step"].ToObject<uint>(); /*JArray jsonUnlockedAchievements = (JArray)jsonObject["unlocked_achievements"]; foreach (JObject data in jsonUnlockedAchievements) { int globalId = data["global_id"].ToObject<int>(); Achievements.Add(globalId); }*/ JArray jsonAchievementsProgress = (JArray)jsonObject["achievements_progress"]; foreach (JObject data in jsonAchievementsProgress) { var ds = new DataSlot(null, 0); ds.Load(data); Achievements.Add(ds); } JArray jsonNpcStars = (JArray)jsonObject["npc_stars"]; foreach (JObject data in jsonNpcStars) { var ds = new DataSlot(null, 0); ds.Load(data); NpcStars.Add(ds); } JArray jsonNpcLootedGold = (JArray)jsonObject["npc_looted_gold"]; foreach (JObject data in jsonNpcLootedGold) { var ds = new DataSlot(null, 0); ds.Load(data); NpcLootedGold.Add(ds); } JArray jsonNpcLootedElixir = (JArray)jsonObject["npc_looted_elixir"]; foreach (JObject data in jsonNpcLootedElixir) { var ds = new DataSlot(null, 0); ds.Load(data); NpcLootedElixir.Add(ds); } }
public void SetHeroState(HeroData hd, int state) { int index = GetDataIndex(m_vHeroState, hd); if (index == -1) { DataSlot ds = new DataSlot(hd, state); m_vHeroState.Add(ds); } else { m_vHeroState[index].Value = state; } }
public void SetUnitUpgradeLevel(CombatItemData cd, int level) { switch(cd.GetCombatItemType()) { case 2: { int index = GetDataIndex(m_vHeroUpgradeLevel, cd); if (index != -1) m_vHeroUpgradeLevel[index].Value = level; else { DataSlot ds = new DataSlot(cd, level); m_vHeroUpgradeLevel.Add(ds); } break; } case 1: { int index = GetDataIndex(m_vSpellUpgradeLevel, cd); if (index != -1) m_vSpellUpgradeLevel[index].Value = level; else { DataSlot ds = new DataSlot(cd, level); m_vSpellUpgradeLevel.Add(ds); } break; } default: { int index = GetDataIndex(m_vUnitUpgradeLevel, cd); if (index != -1) m_vUnitUpgradeLevel[index].Value = level; else { DataSlot ds = new DataSlot(cd, level); m_vUnitUpgradeLevel.Add(ds); } break; } } }
public void LoadFromJSON(string jsonString) { var jsonObject = JObject.Parse(jsonString); m_vId = jsonObject["avatar_id"].ToObject <long>(); m_vToken = jsonObject["token"].ToObject <string>(); m_vCurrentHomeId = jsonObject["current_home_id"].ToObject <long>(); m_vAllianceId = jsonObject["alliance_id"].ToObject <long>(); SetAllianceCastleLevel(jsonObject["alliance_castle_level"].ToObject <int>()); SetAllianceCastleTotalCapacity(jsonObject["alliance_castle_total_capacity"].ToObject <int>()); SetAllianceCastleUsedCapacity(jsonObject["alliance_castle_used_capacity"].ToObject <int>()); SetTownHallLevel(jsonObject["townhall_level"].ToObject <int>()); m_vAvatarName = jsonObject["avatar_name"].ToObject <string>(); m_vAvatarLevel = jsonObject["avatar_level"].ToObject <int>(); m_vExperience = jsonObject["experience"].ToObject <int>(); m_vCurrentGems = jsonObject["current_gems"].ToObject <int>(); SetScore(jsonObject["score"].ToObject <int>()); m_vNameChangingLeft = jsonObject["nameChangesLeft"].ToObject <byte>(); m_vnameChosenByUser = jsonObject["nameChosenByUser"].ToObject <byte>(); /*JArray jsonMaxResources = (JArray)jsonObject["max_resources"]; * foreach (JObject resource in jsonMaxResources) * { * var ds = new DataSlot(null, 0); * ds.Load(resource); * m_vResourceCaps.Add(ds); * }*/ var jsonResources = (JArray)jsonObject["resources"]; foreach (JObject resource in jsonResources) { var ds = new DataSlot(null, 0); ds.Load(resource); GetResources().Add(ds); } var jsonUnits = (JArray)jsonObject["units"]; foreach (JObject unit in jsonUnits) { var ds = new DataSlot(null, 0); ds.Load(unit); m_vUnitCount.Add(ds); } var jsonSpells = (JArray)jsonObject["spells"]; foreach (JObject spell in jsonSpells) { var ds = new DataSlot(null, 0); ds.Load(spell); m_vSpellCount.Add(ds); } var jsonUnitLevels = (JArray)jsonObject["unit_upgrade_levels"]; foreach (JObject unitLevel in jsonUnitLevels) { var ds = new DataSlot(null, 0); ds.Load(unitLevel); m_vUnitUpgradeLevel.Add(ds); } var jsonSpellLevels = (JArray)jsonObject["spell_upgrade_levels"]; foreach (JObject data in jsonSpellLevels) { var ds = new DataSlot(null, 0); ds.Load(data); m_vSpellUpgradeLevel.Add(ds); } var jsonHeroLevels = (JArray)jsonObject["hero_upgrade_levels"]; foreach (JObject data in jsonHeroLevels) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroUpgradeLevel.Add(ds); } var jsonHeroHealth = (JArray)jsonObject["hero_health"]; foreach (JObject data in jsonHeroHealth) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroHealth.Add(ds); } var jsonHeroState = (JArray)jsonObject["hero_state"]; foreach (JObject data in jsonHeroState) { var ds = new DataSlot(null, 0); ds.Load(data); m_vHeroState.Add(ds); } var jsonAllianceUnits = (JArray)jsonObject["alliance_units"]; foreach (JObject data in jsonAllianceUnits) { var ds = new DataSlot(null, 0); ds.Load(data); AllianceUnits.Add(ds); } TutorialStepsCount = jsonObject["tutorial_step"].ToObject <uint>(); /* * JArray jsonUnlockedAchievements = (JArray)jsonObject["unlocked_achievements"]; * foreach (JObject data in jsonUnlockedAchievements) * { * var ds = new DataSlot(null, 0); * ds.Load(data); * AchievementsUnlocked.Add(ds); * } */ var jsonAchievementsProgress = (JArray)jsonObject["achievements_progress"]; foreach (JObject data in jsonAchievementsProgress) { var ds = new DataSlot(null, 0); ds.Load(data); Achievements.Add(ds); } var jsonNpcStars = (JArray)jsonObject["npc_stars"]; foreach (JObject data in jsonNpcStars) { var ds = new DataSlot(null, 0); ds.Load(data); NpcStars.Add(ds); } var jsonNpcLootedGold = (JArray)jsonObject["npc_looted_gold"]; foreach (JObject data in jsonNpcLootedGold) { var ds = new DataSlot(null, 0); ds.Load(data); NpcLootedGold.Add(ds); } var jsonNpcLootedElixir = (JArray)jsonObject["npc_looted_elixir"]; foreach (JObject data in jsonNpcLootedElixir) { var ds = new DataSlot(null, 0); ds.Load(data); NpcLootedElixir.Add(ds); } }
public void SetHeroHealth(HeroData hd, int health) { int index = GetDataIndex(m_vHeroHealth, hd); if (index == -1) { DataSlot ds = new DataSlot(hd, health); m_vHeroHealth.Add(ds); } else { m_vHeroHealth[index].Value = health; } }
public void SetUnitCount(CombatItemData cd, int count) { switch (cd.GetCombatItemType()) { case 1: { int index = GetDataIndex(m_vSpellCount, cd); if (index != -1) m_vSpellCount[index].Value = count; else { DataSlot ds = new DataSlot(cd, count); m_vSpellCount.Add(ds); } break; } default: { int index = GetDataIndex(m_vUnitCount, cd); if (index != -1) m_vUnitCount[index].Value = count; else { DataSlot ds = new DataSlot(cd, count); m_vUnitCount.Add(ds); } break; } } }
public void SetResourceCap(ResourceData rd, int value) { int index = GetDataIndex(m_vResourceCaps, rd); if(index == -1) { var ds = new DataSlot(rd, value); m_vResourceCaps.Add(ds); } else { m_vResourceCaps[index].Value = value; } }