Example #1
0
    /// <summary>
    /// Don't use this method. Use the other overload with multi-species input.
    /// </summary>
    /// <param name="_">Unnecessary, just needed for extension method usage.</param>
    /// <param name="currentSpecies">The current species</param>
    /// <param name="currentForm">The current form of the species</param>
    /// <returns>True if the species can toggle Gigantamax potential</returns>
    public static bool CanToggleGigantamax(this IGigantamax _, int currentSpecies, int currentForm)
    {
        if (currentSpecies is (int)Species.Meowth or(int) Species.Pikachu)
        {
            return(currentForm == 0);
        }
        var soup = CanEatMaxSoup;

        return(soup.Contains(currentSpecies));
    }
Example #2
0
        /// <summary>
        /// Checks if either of the input Species can consume the Gigantamax soup, toggling the <see cref="IGigantamax.CanGigantamax"/> flag.
        /// </summary>
        /// <param name="_">Unnecessary, just needed for extension method usage.</param>
        /// <param name="currentSpecies">The current species</param>
        /// <param name="currentForm">The current form of the species</param>
        /// <param name="originSpecies">The original species (what species it was encountered as)</param>
        /// <param name="originForm">The original form of the original species</param>
        /// <returns>True if either species can toggle Gigantamax potential</returns>
        public static bool CanToggleGigantamax(this IGigantamax _, int currentSpecies, int currentForm, int originSpecies, int originForm)
        {
            if (currentSpecies == (int)Species.Meowth)
            {
                return(currentForm == 0);
            }

            var soup = CanEatMaxSoup;

            return(soup.Contains(currentSpecies) || (currentSpecies != originSpecies && soup.Contains(originSpecies)));
        }
Example #3
0
        /// <summary>
        /// Don't use this method. Use the other overload with multi-species input.
        /// </summary>
        /// <param name="_">Unnecessary, just needed for extension method usage.</param>
        /// <param name="currentSpecies">The current species</param>
        /// <returns>True if the species can toggle Gigantamax potential</returns>
        public static bool CanToggleGigantamax(this IGigantamax _, int currentSpecies)
        {
            var soup = CanEatMaxSoup;

            return(soup.Contains(currentSpecies));
        }
Example #4
0
        public static bool CanToggleGigantamax(this IGigantamax _, int currentSpecies, int originSpecies)
        {
            var soup = Legal.CanEatMaxSoup;

            return(soup.Contains(currentSpecies) || soup.Contains(originSpecies));
        }