コード例 #1
0
ファイル: Fighter.cs プロジェクト: TastyGrue/little-village
        /// <summary>
        /// Expend the mana cost for the move, and applies user effects
        /// </summary>
        protected bool PerformMove(Move m)
        {
            if (m.AdditionalUserEffects.Count != 0)
            {
                foreach (PassiveEffect e in m.AdditionalUserEffects)
                {
                    if (e.InitialCalculationBoolean)
                    {
                        if (e.IOType == PassiveEffect.ModType.Move)
                        {
                            SelfMoveModifiers.Add(e);
                        }
                    }
                }
            }

            Mana  -= m.FlatManaCost;
            Speed -= m.FlatSpeedCost;

            double chance = 1;

            chance = SelfMoveModifiers.Calculate(chance);

            if (FighterRNG.NextDouble() > chance)
            {
                return(false);
            }

            return(true);
        }