Exemplo n.º 1
0
        public int Randomize()
        {
            bool ret;

            ret = PermuteItems(upgrades, Location.RandomizeType.Upgrade);
            if (!ret)
            {
                return(-1);
            }

            ret = PermuteItems(areas, Location.RandomizeType.Area);
            if (!ret)
            {
                return(-2);
            }

            ret = CheckValid();
            if (!ret)
            {
                return(0);
            }

            /* Write into the game */
            foreach (var location in locations)
            {
                if (location.Type == Location.RandomizeType.Upgrade)
                {
                    mem.RandomizeUpgrade(location.Name, location.Grant);
                }
                if (location.Type == Location.RandomizeType.Area)
                {
                    mem.RandomizeArea(location.Name, location.Grant);
                }
            }
            return(1);
        }