Пример #1
0
    public int GetStatLevel(StatNames id)
    {
        switch (id)
        {
        case StatNames.HP:
            return(hp);

            break;

        case StatNames.SPD:
            return(speed);

            break;

        case StatNames.PASSIVE:
            return(passiveSkill);

            break;

        case StatNames.SKILL:
            return(skill);

            break;

        default:
            break;
        }

        return(1);
    }
Пример #2
0
    public void displayStatRequirement(Transform parentPanel, StatNames type, int amount)
    {
        GameObject resInstance = Instantiate(requirementPrefab, parentPanel.transform.position, parentPanel.transform.rotation, parentPanel);

        resInstance.transform.GetChild(0).GetComponent <Text>().text    = amount.ToString();
        resInstance.transform.GetChild(1).GetComponent <Image>().sprite = getStatIcon(type);
        resInstance.GetComponent <RequirementDataHolder>().reqAmount    = amount;
        resInstance.GetComponent <RequirementDataHolder>().reqName      = type.ToString();
    }
Пример #3
0
 private static float CalcMulti(StatNames calcStat, StatNames positiveStat, StatNames negativeStat)
 {
     if (calcStat == positiveStat)
     {
         return(1.1f);
     }
     else if (calcStat == negativeStat)
     {
         return(0.9f);
     }
     else
     {
         return(1);
     }
 }
Пример #4
0
        public static int CalcCurrentModifier(StatNames stat, int statValue, IEnumerable <CreateItem> items)
        {
            // Based on the equipted items and given an initial stat value,
            // returns the effective stat modifier.
            int effectiveStatValue = statValue;

            if (items != null)
            {
                effectiveStatValue += items
                                      .Where((x) => x.Modifier != null && x.Modifier.AffectedValue == stat)
                                      .Select((x) => x.Modifier.Value)
                                      .Sum();
            }
            int mod = CalcModifier(effectiveStatValue);

            return(mod);
            // A future refactor might involve tracking the effective stat values
            // as items are equipted and un-equipted.
        }
Пример #5
0
    private Sprite getStatIcon(StatNames type)
    {
        switch (type)
        {
        case StatNames.Health:
            return(healthIcon);

            break;

        case StatNames.Strength:
            return(strIcon);

            break;

        default:
            return(strIcon);

            break;
        }
    }
Пример #6
0
    public void IncrementLevelToStat(StatNames id)
    {
        switch (id)
        {
        case StatNames.HP:
            hp++;
            break;

        case StatNames.SPD:
            speed++;
            break;

        case StatNames.PASSIVE:
            passiveSkill++;
            break;

        case StatNames.SKILL:
            skill++;
            break;
        }
    }
Пример #7
0
        private void ProcessCommand(StatNames currentStat, string command)
        {
            switch (currentStat)
            {
            case StatNames.Warrior:
                this.ProcessWarrior(command);
                break;

            case StatNames.Rogue:
                this.ProcessRogue(command);
                break;

            case StatNames.Mage:
                this.ProcessMage(command);
                break;

            default:
                break;
            }

            this.RefreshScreen();
        }
Пример #8
0
        private void ProcessCommand(StatNames currentStat, string command)
        {
            switch (currentStat)
            {
                case StatNames.Warrior:
                    this.ProcessWarrior(command);
                    break;
                case StatNames.Rogue:
                    this.ProcessRogue(command);
                    break;
                case StatNames.Mage:
                    this.ProcessMage(command);
                    break;
                default:
                    break;
            }

            this.RefreshScreen();
        }
Пример #9
0
 public static string StatName(StatNames sn, bool abbreviation = false, Dictionary <string, string> customStatNames = null)
 {
     return(StatName((int)sn, abbreviation, customStatNames));
 }
Пример #10
0
        public float MultAffinity; // used with taming effectiveness

        public CreatureStat(StatNames s)
        {
            Stat = s;
        }
Пример #11
0
 public static string StatName(StatNames sn, bool abbreviation = false, bool glowSpecies = false)
 {
     return(StatName((int)sn, abbreviation, glowSpecies));
 }
Пример #12
0
        public static float GetMultiplier(BasePokemon.Natures nature, string statName)
        {
            StatNames stat = StatNames.Attack;

            switch (statName.ToLower())
            {
            case "attack":
            case "atk":
                stat = StatNames.Attack;
                break;

            case "defense":
            case "def":
                stat = StatNames.Defense;
                break;

            case "spattack":
            case "spatk":
            case "specialattack":
                stat = StatNames.SpAttack;
                break;

            case "spdefense":
            case "spdef":
            case "specialdefense":
                stat = StatNames.SpDefense;
                break;

            case "speed":
                stat = StatNames.Speed;
                break;
            }

            switch (nature)
            {
            case BasePokemon.Natures.Hardy:
                return(1);

            case BasePokemon.Natures.Lonely:
                return(CalcMulti(stat, StatNames.Attack, StatNames.Defense));

            case BasePokemon.Natures.Brave:
                return(CalcMulti(stat, StatNames.Attack, StatNames.Speed));

            case BasePokemon.Natures.Adamant:
                return(CalcMulti(stat, StatNames.Attack, StatNames.SpAttack));

            case BasePokemon.Natures.Naughty:
                return(CalcMulti(stat, StatNames.Attack, StatNames.SpDefense));

            case BasePokemon.Natures.Bold:
                return(CalcMulti(stat, StatNames.Defense, StatNames.Attack));

            case BasePokemon.Natures.Docile:
                return(1);

            case BasePokemon.Natures.Relaxed:
                return(CalcMulti(stat, StatNames.Defense, StatNames.Speed));

            case BasePokemon.Natures.Impish:
                return(CalcMulti(stat, StatNames.Defense, StatNames.SpAttack));

            case BasePokemon.Natures.Lax:
                return(CalcMulti(stat, StatNames.Defense, StatNames.SpDefense));

            case BasePokemon.Natures.Timid:
                return(CalcMulti(stat, StatNames.Speed, StatNames.Attack));

            case BasePokemon.Natures.Hasty:
                return(CalcMulti(stat, StatNames.Speed, StatNames.Defense));

            case BasePokemon.Natures.Jolly:
                return(CalcMulti(stat, StatNames.Speed, StatNames.SpAttack));

            case BasePokemon.Natures.Naive:
                return(CalcMulti(stat, StatNames.Speed, StatNames.SpDefense));

            case BasePokemon.Natures.Modest:
                return(CalcMulti(stat, StatNames.SpAttack, StatNames.Attack));

            case BasePokemon.Natures.Mild:
                return(CalcMulti(stat, StatNames.SpAttack, StatNames.Defense));

            case BasePokemon.Natures.Quiet:
                return(CalcMulti(stat, StatNames.SpAttack, StatNames.Speed));

            case BasePokemon.Natures.Bashful:
                return(1);

            case BasePokemon.Natures.Rash:
                return(CalcMulti(stat, StatNames.SpAttack, StatNames.SpDefense));

            case BasePokemon.Natures.Calm:
                return(CalcMulti(stat, StatNames.SpDefense, StatNames.Attack));

            case BasePokemon.Natures.Gentle:
                return(CalcMulti(stat, StatNames.SpDefense, StatNames.Defense));

            case BasePokemon.Natures.Sassy:
                return(CalcMulti(stat, StatNames.SpDefense, StatNames.Speed));

            case BasePokemon.Natures.Careful:
                return(CalcMulti(stat, StatNames.SpDefense, StatNames.SpAttack));

            case BasePokemon.Natures.Quirky:
                return(1);

            case BasePokemon.Natures.Serious:
                return(1);

            default:
                return(1);
            }
        }