Esempio n. 1
0
        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;
            }
            }
        }
Esempio n. 2
0
        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");
        }
Esempio n. 3
0
        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());
            }
        }
Esempio n. 4
0
        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());
                        }
                    }
                }
            }
        }
Esempio n. 5
0
        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;
            }
            }
        }
Esempio n. 6
0
        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;
            }
        }
Esempio n. 7
0
        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;
            }
        }
Esempio n. 8
0
        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;
            }
        }
Esempio n. 9
0
        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;
            }
        }
Esempio n. 10
0
        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);
            }
        }
Esempio n. 11
0
        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);
            }
        }
Esempio n. 12
0
        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;
            }
        }
Esempio n. 13
0
        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;
            }
        }
Esempio n. 14
0
        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)
        }
Esempio n. 15
0
        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());
         }
     }
 }
Esempio n. 18
0
 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());
         }
     }
 }
Esempio n. 19
0
        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>();
        }
Esempio n. 20
0
        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>();
        }
Esempio n. 21
0
 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)
 }
Esempio n. 22
0
 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);
     }
 }
Esempio n. 23
0
        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);
            }
        }
Esempio n. 24
0
 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;
     }
 }
Esempio n. 25
0
 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;
             }
     }
 }
Esempio n. 26
0
        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);
            }
        }
Esempio n. 27
0
 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;
     }
 }
Esempio n. 28
0
 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;
             }
     }
 }
Esempio n. 29
0
 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;
     }
 }