Exemplo n.º 1
0
        /// <summary>
        /// Return the Override for the HitStatus
        /// </summary>
        /// <param name="myEnum"></param>
        /// <returns></returns>
        public virtual HitStatusEnum BattleSettingsOverrideHitStatusEnum(HitStatusEnum myEnum)
        {
            switch (myEnum)
            {
            case HitStatusEnum.Hit:
                EngineSettings.BattleMessagesModel.AttackStatus = " somehow Hit ";
                return(HitStatusEnum.Hit);

            case HitStatusEnum.CriticalHit:
                EngineSettings.BattleMessagesModel.AttackStatus = " somehow Critical Hit ";
                return(HitStatusEnum.CriticalHit);

            case HitStatusEnum.Miss:
                EngineSettings.BattleMessagesModel.AttackStatus = " somehow Missed ";
                return(HitStatusEnum.Miss);

            case HitStatusEnum.CriticalMiss:
                EngineSettings.BattleMessagesModel.AttackStatus = " somehow Critical Missed ";
                return(HitStatusEnum.CriticalMiss);

            case HitStatusEnum.Unknown:
            case HitStatusEnum.Default:
            default:
                // Return what it was
                return(EngineSettings.BattleMessagesModel.HitStatus);
            }
        }
        /// <summary>
        /// Display a String for the Enums
        /// </summary>
        /// <param name="value"></param>
        /// <returns></returns>
        public static string ToMessage(this HitStatusEnum value)
        {
            // Default String
            var Message = "Unknown";

            switch (value)
            {
            case HitStatusEnum.Hit:
                Message = " hits ";
                break;

            case HitStatusEnum.CriticalHit:
                Message = " hits really hard ";
                break;

            case HitStatusEnum.Miss:
                Message = " misses ";
                break;

            case HitStatusEnum.CriticalMiss:
                Message = " misses really badly";
                break;

            case HitStatusEnum.Unknown:
            default:
                break;
            }

            return(Message);
        }
        public void ClearMessages()
        {
            PlayerType             = CreatureEnum.Unknown;
            HitStatus              = HitStatusEnum.Unknown;
            AttackerName           = string.Empty;
            TargetName             = string.Empty;
            AttackStatus           = string.Empty;
            TurnMessage            = string.Empty;
            TurnMessageSpecial     = string.Empty;
            ExperienceEarned       = string.Empty;
            LevelUpMessage         = string.Empty;
            BadCriticalMissMessage = string.Empty;

            DamageAmount  = 0;
            CurrentHealth = 0;
        }
Exemplo n.º 4
0
        // Uses helper engine to roll for hit success
        public HitStatusEnum RollToHitTarget(int AttackScore, int DefenseScore)
        {
            var d20 = HelperEngine.RollDice(1, 20);

            // Turn On UnitTestingSetRoll
            if (GameGlobals.ForceRollsToNotRandom)
            {
                // Don't let it be 0, if it was not initialized...
                if (GameGlobals.ForceToHitValue < 1)
                {
                    GameGlobals.ForceToHitValue = 1;
                }

                d20 = GameGlobals.ForceToHitValue;
            }

            if (d20 == 1)
            {
                // Force Miss
                HitStatus = HitStatusEnum.CriticalMiss;
                return(HitStatus);
            }

            if (d20 == 20)
            {
                // Force Hit
                HitStatus = HitStatusEnum.CriticalHit;
                return(HitStatus);
            }

            var ToHitScore = d20 + AttackScore;

            if (ToHitScore < DefenseScore)
            {
                AttackStatus = " misses ";
                // Miss
                HitStatus    = HitStatusEnum.Miss;
                DamageAmount = 0;
            }
            else
            {
                // Hit
                HitStatus = HitStatusEnum.Hit;
            }

            return(HitStatus);
        }
Exemplo n.º 5
0
        public bool ClearMessages()
        {
            PlayerType         = PlayerTypeEnum.Unknown;
            HitStatus          = HitStatusEnum.Unknown;
            AttackerName       = string.Empty;
            TargetName         = string.Empty;
            AttackStatus       = string.Empty;
            TurnMessage        = string.Empty;
            TurnMessageSpecial = string.Empty;
            ExperienceEarned   = string.Empty;
            LevelUpMessage     = string.Empty;

            DamageAmount  = 0;
            CurrentHealth = 0;

            return(true);
        }
Exemplo n.º 6
0
 /// <summary>
 /// Return the Override for the HitStatus
 /// </summary>
 public override HitStatusEnum BattleSettingsOverrideHitStatusEnum(HitStatusEnum myEnum)
 {
     return(base.BattleSettingsOverrideHitStatusEnum(myEnum));
 }
Exemplo n.º 7
0
        // Returns string of the hitstatus.
        public string GetMessage(HitStatusEnum hitStatus)
        {
            var myReturn = MessageList.Where(a => a.HitStatus == hitStatus).FirstOrDefault().Message;

            return(myReturn);
        }
Exemplo n.º 8
0
        /// <summary>
        /// Return the Override for the HitStatus
        /// </summary>
        public override HitStatusEnum BattleSettingsOverrideHitStatusEnum(HitStatusEnum myEnum)
        {
            // Based on the Hit Status, establish a message

            return(base.BattleSettingsOverrideHitStatusEnum(myEnum));
        }
Exemplo n.º 9
0
        public HitStatusEnum RollToHitTarget(int AttackScore, int DefenseScore)
        {
            HitStatus = HitStatusEnum.Unknown;

            return(HitStatus);
        }
Exemplo n.º 10
0
        // Roll for attack.
        public HitStatusEnum RollToHitTarget(int AttackScore, int DefenseScore)
        {
            var d20 = HelperEngine.RollDice(1, 20);

            // Turn On UnitTestingSetRoll
            if (GameGlobals.ForceRollsToNotRandom)
            {
                // Don't let it be 0, if it was not initialized...
                if (GameGlobals.ForceToHitValue < 1)
                {
                    GameGlobals.ForceToHitValue = 1;
                }

                d20 = GameGlobals.ForceToHitValue;
            }

            if (GameGlobals.ForcingHitValue == true)
            {
                d20 = GameGlobals.ForcedHitValue;
            }

            Debug.WriteLine("Roll: " + d20);

            if (d20 == 1)
            {
                //Critical Miss, if enabled
                if (GameGlobals.EnableCriticalMissProblems)
                {
                    HitStatus = HitStatusEnum.CriticalMiss;
                }

                else
                {
                    HitStatus = HitStatusEnum.Miss;
                }

                BattleMessages.HitStatus = HitStatus;
                return(HitStatus);
            }

            if (d20 == 20)
            {
                // Force Hit
                HitStatus = HitStatusEnum.CriticalHit;
                BattleMessages.HitStatus = HitStatus;
                return(HitStatus);
            }

            var ToHitScore = d20 + AttackScore;

            if (ToHitScore < DefenseScore)
            {
                AttackStatus = " misses ";
                BattleMessages.AttackStatus = AttackStatus;
                // Miss
                HitStatus = HitStatusEnum.Miss;
                BattleMessages.HitStatus    = HitStatus;
                DamageAmount                = 0;
                BattleMessages.DamageAmount = DamageAmount;
            }
            else
            {
                // Hit
                HitStatus = HitStatusEnum.Hit;
                BattleMessages.HitStatus = HitStatus;
            }

            return(HitStatus);
        }
Exemplo n.º 11
0
        /// <summary>
        /// Return the Override for the HitStatus
        /// </summary>
        public override HitStatusEnum BattleSettingsOverrideHitStatusEnum(HitStatusEnum myEnum)
        {
            // Based on the Hit Status, establish a message

            throw new System.NotImplementedException();
        }