Beispiel #1
0
        private static void CmdHearts(int amount = int.MaxValue, string levelSet = null)
        {
            patch_SaveData saveData = SaveData.Instance as patch_SaveData;

            if (saveData == null)
            {
                return;
            }

            amount = Calc.Clamp(amount, 0, saveData.LevelSetStats.MaxHeartGems);

            if (string.IsNullOrEmpty(levelSet))
            {
                levelSet = saveData.GetLevelSet();
            }

            int num = 0;

            foreach (patch_AreaStats areaStats in saveData.Areas_Safe.Cast <patch_AreaStats>().Where(stats => stats.LevelSet == levelSet))
            {
                foreach (AreaModeStats areaModeStats in areaStats.Modes)
                {
                    if (num < amount)
                    {
                        areaModeStats.HeartGem = true;
                        num++;
                    }
                    else
                    {
                        areaModeStats.HeartGem = false;
                    }
                }
            }
        }
Beispiel #2
0
        private static void CmdHearts(int amount = int.MaxValue, string levelSet = null)
        {
            patch_SaveData saveData = SaveData.Instance as patch_SaveData;

            if (saveData == null)
            {
                return;
            }

            if (string.IsNullOrEmpty(levelSet))
            {
                levelSet = saveData.GetLevelSet();
            }

            int num = 0;

            foreach (patch_AreaStats areaStats in saveData.Areas_Safe.Cast <patch_AreaStats>().Where(stats => stats.LevelSet == levelSet))
            {
                for (int i = 0; i < areaStats.Modes.Length; i++)
                {
                    if (AreaData.Get(areaStats.ID).Mode is not {
                    } mode || mode.Length <= i || mode[i]?.MapData == null)
                    {
                        continue;
                    }

                    AreaModeStats areaModeStats = areaStats.Modes[i];
                    if (num < amount)
                    {
                        areaModeStats.HeartGem = true;
                        num++;
                    }
                    else
                    {
                        areaModeStats.HeartGem = false;
                    }
                }
            }
        }