Esempio n. 1
0
 public static Fighter CharCreator()
 {
     Console.WriteLine("***Welcome to the world of Gladius***");
     Console.WriteLine();
     Console.WriteLine("Insert beginning story here, how did character get here?");
     Console.WriteLine();
     Console.WriteLine("***Roll your character stats until satisfied, Gladiator***");
     Console.WriteLine();
     Console.WriteLine("Can you fight, or are you just another morsel for the Emperor's lions?");
     Console.WriteLine();
     Fighter fighter = new Fighter(Roller.RollCharStats());
     Console.Write("Tell me your name, prisoner. ");
     fighter.Name = Console.ReadLine();
     MainMenu mm = new MainMenu(fighter);
     return fighter;
 }
Esempio n. 2
0
 public static Fighter CharCreator()
 {
     Console.WriteLine("***Welcome to the world of Gladius***");
     Console.WriteLine();
     //TO-DO write story
     Console.WriteLine("Insert beginning story here, how did character get here?  I think I want to be oppressed by the Caesar, ");
     Console.WriteLine("Maybe have an intimate family relationship with him, and fight him in the end. Yes, just like the movie.");
     Console.WriteLine();
     Console.WriteLine("***Roll your character stats until satisfied, Gladiator***");
     Console.WriteLine();
     Console.WriteLine("Can you fight, or are you just another morsel for Caesar's lions?");
     Console.WriteLine();
     //creates new fighter and invokes roll character stats method as a parameter.  
     Fighter fighter = new Fighter(Roller.RollCharStats());
     //gets character name and assigns to Name prop
     Console.Write("Tell me your name, prisoner. ");
     fighter.Name = Console.ReadLine();
     int enemyPick = 1;
     //creates new MainMenu and passes fighter as a parameter to the method (same instance throughout program is the goal)
     MainMenu mm = new MainMenu(ref fighter, enemyPick);
     return fighter;
 }
Esempio n. 3
0
        public CombatMenu(Fighter f, EnemyGladiator e, int enemyPick)
        {
            while (CombatActive)
            {
                int f20Roll = Roller.rollXSidedDice(20, 1, 1);
                int e20Roll = Roller.rollXSidedDice(20, 1, 1);

                if (salve == 0 && turn == 0)
                {
                    Console.WriteLine("As you walk through the narrow pathway to the arena,\n" +
                                      "a fair maiden hands you a satchel.  She says, \"Good luck, warrior. Take this\n" +
                                      "magic salve to heal your wounds during your fight.\"\n");
                    Console.WriteLine("Your coach, Leonardo tells you a little something about your opponent that you might not have known: ");
                    Console.WriteLine("{0}\n", e.description);

                    salve += 1;
                }
                else
                {
                    Console.WriteLine("{0} is {1} passus away ('passus' is Roman for paces)", e.Name, range);
                    Console.WriteLine("The enemy has {0} hit points left", e.CurrentHitPoints);
                    Console.WriteLine("You have {0} hit points left", f.CurrentHitPoints);
                    Console.WriteLine("You have fought {0} round(s)", turn - 1);
                    Console.WriteLine();
                    //Display Menu - perform menu actions
                    Console.WriteLine("1) Melee Attack");
                    Console.WriteLine("2) Ranged Attack");
                    Console.WriteLine("3) Close with Enemy");
                    Console.WriteLine("4) Use salve");
                    Console.WriteLine("5) Yield");
                    //conduct special attack if fury or spirit is at appropriate level
                    if (f.Fury > 3 || f.Spirit > 3)
                    {
                        Console.WriteLine("6) Special Attack");
                    }

                    int yourMove = Convert.ToInt32(Console.ReadLine());
                    //start switch
                    switch (yourMove)
                    {
                    //attempt to attack enemy if close enough
                    case 1:
                        if (range < 2)
                        {
                            Console.WriteLine("You swing your sword at the enemy, thoroughly expecting to lop his ugly head off.");
                            Console.WriteLine();
                            Console.WriteLine("\nYou catch him on his heels and swing for the fences.", f.Name);
                            if (f.AttackEnemy() > e.Avoid())
                            {
                                int damage1 = f.CalculateDamage();
                                e.ReceiveDamage(damage1);
                                Console.WriteLine("\nyou hit {0} for {1} damage", e.Name, damage1);
                                f.Spirit++;
                                e.Fury++;

                                if (e.CurrentHitPoints <= 0)
                                {
                                    e.Die(f, e, enemyPick);
                                    break;
                                }
                            }
                            else
                            {
                                Console.WriteLine("\nYou miss");
                                f.Spirit--;
                            }

                            #region Obsolete counter-attack code

                            /*{
                             *  Console.WriteLine("\n Your attack whiffs, {0} attacks you, instead!", e.Name);
                             *  if (e.AttackEnemy() > f.Avoid())
                             *  {
                             *      int damage2 = e.CalculateDamage();
                             *      f.ReceiveDamage(damage2);
                             *      Console.WriteLine("he hit you for {0} damage", damage2);
                             *      f.Fury++;
                             *      e.Spirit++;
                             *
                             *      if (f.CurrentHitPoints <= 0)
                             *      {
                             *          CombatActive = false;
                             *          break;
                             *      }
                             *  }
                             *  else
                             *  {
                             *      Console.WriteLine("The enemy misses");
                             *      e.Spirit--;
                             *
                             *  }
                             *
                             *
                             *
                             * }//end if*/
                            #endregion
                        }    //end range if
                        else
                        {
                            Console.WriteLine("You're not close enough to perform that action.");
                        }
                        break;

                    //ranged attack if range > 1

                    case 2:
                        if (range > 1)
                        {
                            Console.WriteLine("You don't have a ranged weapon yet!");
                            break;
                        }
                        else
                        {
                            Console.WriteLine("You cannot hit with ranged weapons in your current proximity to the enemy.\n" +
                                              "You shoot your imaginary arrow and it does nothing.  Your opponent laughs.");
                            break;
                        }

                    //close range to enemy
                    case 3:
                        if (range > 1)
                        {
                            Console.WriteLine("You sprint towards the enemy and make the craziest, most bloodthirsty face you can muster\n");
                            range--;
                            break;
                        }
                        else
                        {
                            Console.WriteLine("You ram into the enemy by running full speed into him, say, \"mi Scusi\", and... ");
                            break;
                        }

                    //apply salve to heal
                    case 4:
                        if (salve > 0)
                        {
                            Console.WriteLine("\nYou use the magic salve on your wounds, and feel better immediately");
                            f.CurrentHitPoints += (f.MaxHitPoints - f.CurrentHitPoints);
                            salve--;
                            break;
                        }
                        else
                        {
                            Console.WriteLine("\nYou don't have any magic salve left.");
                            break;
                        }

                    //case 5:

                    //

                    case 6:
                        Console.WriteLine("You focus all of your energy into a mighty finishing blow that staggers the enemy.");
                        e.ReceiveDamage(35);
                        if (e.CurrentHitPoints <= 0)
                        {
                            e.Die(f, e, enemyPick);
                            break;
                        }
                        break;
                    }//end switch

                    //enemyTurn
                    int enemyTurn = Roller.rollXSidedDice(6, 1, 1);

                    if (range == 1 && e.Fury >= 6 || e.Spirit >= 6)
                    {
                        Console.WriteLine(e.specialMove);
                        f.ReceiveDamage(30);
                        if (f.CurrentHitPoints <= 0)
                        {
                            f.Die();
                            CombatActive = false;
                            break;
                        }
                    }

                    if (range > 1 && e.CurrentHitPoints > 15)
                    {
                        Console.WriteLine("\n{0} moves closer to you.", e.Name);
                        Console.WriteLine("{0}", e.tagLineTough);
                        range--;
                    }

                    else if (e.CurrentHitPoints <= 15 && eSalve > 0)
                    {
                        Console.WriteLine("{0}", e.tagLineSoft);
                        Console.WriteLine("\n{0}, injured and wobbly, applies the magic salve", e.Name);
                        eSalve--;
                        e.CurrentHitPoints += 25;
                    }

                    else if (e.CurrentHitPoints <= 15 && eSalve == 0)
                    {
                        Console.WriteLine("\n{0} winds up and swings his sword with all of his remaining strength.", e.Name);
                        Console.WriteLine("{0}", e.tagLineSoft);
                        if (e.AttackEnemy() > f.Avoid())
                        {
                            int damage2 = e.CalculateDamage();
                            f.ReceiveDamage(damage2);
                            Console.WriteLine("he hit you for {0} damage\n", damage2);
                            f.Fury++;
                            e.Spirit++;

                            if (f.CurrentHitPoints <= 0)
                            {
                                f.Die();
                                CombatActive = false;
                                break;
                            }
                        }
                        else
                        {
                            Console.WriteLine("\nThe enemy misses");
                            e.Spirit--;
                            f.Spirit++;
                        }
                    }
                    else
                    {
                        Console.WriteLine("\n{0} winds up and swings his sword with all of his might!", e.Name);
                        Console.WriteLine("{0}", e.tagLineTough);
                        if (e.AttackEnemy() > f.Avoid())
                        {
                            int damage2 = e.CalculateDamage();
                            f.ReceiveDamage(damage2);
                            Console.WriteLine("he hit you for {0} damage\n", damage2);
                            f.Fury++;
                            e.Spirit++;

                            if (f.CurrentHitPoints <= 0)
                            {
                                f.Die();
                                CombatActive = false;
                                break;
                            }
                        }
                        else
                        {
                            Console.WriteLine("\nThe enemy misses");
                            e.Spirit--;
                            f.Spirit++;
                        }
                    } //end enemyTurn
                }     //end if
                turn++;
            }    //end while
        } //end method
Esempio n. 4
0
        public int CalculateDamage()
        {
            int inflict = ((Strength / 3) + (Roller.rollXSidedDice(12, 1, 1)));

            return(inflict);
        }
Esempio n. 5
0
        public int Avoid()
        {
            int avoid = Roller.rollXSidedDice(20, 1, 1) + (Agility + (Constitution / 2) + (Intelligence / 2) + (Luck / 2));

            return(avoid);
        }
Esempio n. 6
0
        //Fighter methods
        #region Fighter Methods
        public int AttackEnemy()
        {
            int toHit = Roller.rollXSidedDice(20, 1, 1) + (Agility + (Strength / 2) + (Intelligence / 2) + (Luck / 2));

            return(toHit);
        }
Esempio n. 7
0
        public CombatMenu(Fighter f, EnemyGladiator e, int enemyPick)
        {
            //Boolean check in while loop keeps character in combat when actively fighting
            while (CombatActive)
            {
                int f20Roll = Roller.rollXSidedDice(20, 1, 1);
                int e20Roll = Roller.rollXSidedDice(20, 1, 1);
                //conditional that prevents getting a new magic salve every round
                if (salve == 0 && turn == 0)
                {//get magic salve for healing during combat
                    Console.WriteLine("As you walk through the narrow pathway to the arena,\n" +
                                      "a fair maiden hands you a satchel.  She says, \"Good luck, warrior. Take this\n" +
                                      "magic salve to heal your wounds during your fight.\"\n");
                    //adds a little bit of flavor, humor, and character development
                    Console.WriteLine("Your coach, Leonardo Turtle, tells you a little something about your opponent that you may not have known: ");
                    //TO-DO: add randomizer for different "fun facts" with the description
                    Console.WriteLine("{0}\n", e.description);

                    salve += 1;
                }
                else
                {//displays character status during combat
                    Console.WriteLine("{0} is {1} passus away ('passus' is Roman for paces)", e.Name, range);
                    Console.WriteLine("You have {0} arrows left", arrows);
                    if (salve == 1)
                    {
                        Console.WriteLine("You have a salve handy");
                    }
                    else
                    {
                        Console.WriteLine("You are out of salve");
                    }
                    Console.WriteLine("The enemy has {0} hit points left", e.CurrentHitPoints);
                    Console.WriteLine("You have {0} hit points left", f.CurrentHitPoints);
                    Console.WriteLine("You have fought {0} round(s)", turn - 1);
                    Console.WriteLine();

                    //Display Menu - perform menu actions
                    Console.WriteLine("1) Melee Attack");
                    if (arrows > 0)
                    {
                        Console.WriteLine("2) Ranged Attack");
                    }
                    Console.WriteLine("3) Close with Enemy");
                    Console.WriteLine("4) Use salve");
                    Console.WriteLine("5) Yield");

                    //conduct special attack if fighter's Fury or Spirit level is at 5 or greater
                    if (f.Fury > 4 || f.Spirit > 4)
                    {
                        Console.WriteLine("6) Special Attack");
                    }
                    Console.WriteLine();

                    //alerts user as to why the special attack is available.
                    if (f.Fury > 4)
                    {
                        Console.WriteLine("Your fury is past the boiling point and {0} cringes from the look on your face", e.Name);
                    }
                    else if (f.Spirit > 4)
                    {
                        Console.WriteLine("You're in the zone, gladiator. The crowd marvels at your majestic skill.");
                    }

                    //takes menu input
                    int yourMove = Convert.ToInt32(Console.ReadLine());

                    //start switch statement that corresponds to menu items
                    switch (yourMove)
                    {
                    //attempt to attack enemy if close enough
                    case 1:
                        if (range < 2)
                        {
                            Console.WriteLine("You swing your sword at the enemy, thoroughly expecting to lop his ugly head off.");
                            Console.WriteLine();
                            Console.WriteLine("\nYou catch him on his heels and swing for the fences.", f.Name);
                            if (f.AttackEnemy() > e.Avoid())
                            {
                                int damage1 = f.CalculateDamage();
                                e.ReceiveDamage(damage1);
                                Console.WriteLine("\nyou hit {0} for {1} damage", e.Name, damage1);
                                f.Spirit++;
                                e.Fury++;

                                if (e.CurrentHitPoints <= 0)
                                {
                                    //ends combat when enemy dies from regular attack
                                    CombatActive = false;
                                    e.WinFight(ref f, e, enemyPick);
                                    continue;
                                }
                            }
                            else
                            {
                                Console.WriteLine("\nYou miss");
                                f.Spirit--;
                            }

                            #region Obsolete counter-attack code

                            /*{
                             *  Console.WriteLine("\n Your attack whiffs, {0} attacks you, instead!", e.Name);
                             *  if (e.AttackEnemy() > f.Avoid())
                             *  {
                             *      int damage2 = e.CalculateDamage();
                             *      f.ReceiveDamage(damage2);
                             *      Console.WriteLine("he hit you for {0} damage", damage2);
                             *      f.Fury++;
                             *      e.Spirit++;
                             *
                             *      if (f.CurrentHitPoints <= 0)
                             *      {
                             *          CombatActive = false;
                             *          break;
                             *      }
                             *  }
                             *  else
                             *  {
                             *      Console.WriteLine("The enemy misses");
                             *      e.Spirit--;
                             *
                             *  }
                             *
                             *
                             *
                             * }//end if*/
                            #endregion
                        }    //end range if
                        else
                        {
                            Console.WriteLine("You're not close enough to perform that action.");
                        }
                        break;

                    //ranged attack if range > 1

                    case 2:
                        //if range > 1 and selected the fighter shoots an arrow at the enemy
                        if (range > 1)
                        {
                            Console.WriteLine("You loose one of your {0} arrows towards the enemy", arrows);
                            //if the fighter has an arrow, rolls and calculations are made to see if you hit
                            //it takes a perfect roll of 20 to hit at default range unless super skilled(1 in 20 shot)

                            if (arrows > 0)
                            {
                                if (f.RangedAttack(range) > range)
                                {
                                    Console.WriteLine("Bullseye! {0} grunts, clearly pissed off, and sprints at you angrily", e.Name);
                                    range--;
                                    e.CurrentHitPoints -= f.CalculateRanged();
                                    arrows--;
                                    if (e.CurrentHitPoints <= 0)
                                    {
                                        //ends combat when enemy dies from ranged attack
                                        CombatActive = false;
                                        e.WinFight(ref f, e, enemyPick);
                                        continue;
                                    }
                                }
                                else
                                {
                                    Console.WriteLine("You miss the enemy.");
                                    arrows--;
                                }
                            }
                            else
                            {
                                Console.WriteLine("You have no arrows");
                            }
                            break;
                        }
                        else
                        {
                            Console.WriteLine("You are too close to hit with your bow. Duh.");
                            arrows--;
                            break;
                        }

                    //close range to enemy
                    case 3:
                        if (range > 1)
                        {
                            Console.WriteLine("You sprint towards the enemy and make the craziest, most bloodthirsty face you can muster\n");
                            range--;
                            break;
                        }
                        else
                        {
                            Console.WriteLine("You ram into the enemy by running full speed into him, say, \"mi Scusi\", and... ");
                            break;
                        }

                    //apply salve to heal
                    case 4:
                        if (salve > 0)
                        {
                            Console.WriteLine("\nYou use the magic salve on your wounds, and feel better immediately");
                            f.CurrentHitPoints += (f.MaxHitPoints - f.CurrentHitPoints);
                            salve--;
                            break;
                        }
                        else
                        {
                            Console.WriteLine("\nYou don't have any magic salve left.");
                            break;
                        }

                    //case 5: yield (exit combat without dying; will have penalties)


                    //special attack; resets Fury and Spirit levels to zero
                    case 6:
                        Console.WriteLine("You focus all of your energy into a mighty finishing blow that staggers the enemy.");
                        e.ReceiveDamage(Roller.rollXSidedDice(12, 5, 3) * 2);    //30 - 72 hit points of damage dealt on Special Attack
                        //
                        f.Fury   = 0;
                        f.Spirit = 0;

                        if (e.CurrentHitPoints <= 0)
                        {
                            //ends fight when enemy dies from special attack
                            CombatActive = false;
                            e.WinFight(ref f, e, enemyPick);
                            continue;
                        }
                        break;
                    }//end switch

                    //enemyTurn conditionals - logic that governs enemy behavior in combat

                    if (range > 1 && range < 8 && eArrows > 0)
                    {
                        Console.WriteLine("{0} looses an arrow in your general direction...", e.Name);
                        if (e.RangedAttack(range) > range)
                        {
                            Console.WriteLine("Bullseye! You grunt, pissed off, and sprint at the enemy angrily", e.Name);
                            range--;
                            f.CurrentHitPoints -= e.CalculateRanged();
                            eArrows--;
                            if (f.CurrentHitPoints <= 0)
                            {
                                //ends combat when you die from ranged attack
                                CombatActive = false;
                                f.Die();
                                continue;
                            }
                        }
                        else
                        {
                            Console.WriteLine("He misses you.");
                            eArrows--;
                        }
                    }


                    //if he is furious or uber-motivated, WATCH OUT!
                    else if (range == 1 && e.Fury >= 5 || e.Spirit >= 5)
                    {
                        Console.WriteLine(e.specialMove);
                        e.Fury   = 0;
                        e.Spirit = 0;
                        f.ReceiveDamage(Roller.rollXSidedDice(12, 5, 3) * 2);//30 - 72 hit points of damage dealt on Special Attack;

                        //conditional that checks if you have been killed by this special attack
                        if (f.CurrentHitPoints <= 0)
                        {
                            f.Die();
                            CombatActive = false;
                            break;
                        }
                    }//end special attack if

                    else if (range > 1 && e.CurrentHitPoints > 15)
                    {//moves to opponent to attempt an attack, if healthy.  THIS LOGIC WILL CHANGE WITH IMPLEMENTATION OF RANGED WEAPONS
                        Console.WriteLine("\n{0} moves closer to you.", e.Name);
                        Console.WriteLine("{0}", e.tagLineTough);
                        range--;
                    }
                    //if enemy is hurt, he will use his lone magic salve to heal up
                    else if (e.CurrentHitPoints <= 15 && eSalve > 0)
                    {
                        Console.WriteLine("{0}", e.tagLineSoft);
                        Console.WriteLine("\n{0}, injured and wobbly, applies the magic salve", e.Name);
                        eSalve--;
                        //this magic salve works great! but it will only give you your maximum HP and no more
                        e.CurrentHitPoints += (e.MaxHitPoints - e.CurrentHitPoints);
                    }
                    //if he's close and has no salve left, he will attempt to hack you into little pieces
                    else if (e.CurrentHitPoints <= 15 && eSalve == 0)
                    {
                        Console.WriteLine("\n{0} winds up and swings his sword with all of his remaining strength.", e.Name);
                        Console.WriteLine("{0}", e.tagLineSoft);
                        //checks enemy attack roll vs. fighters avoid roll and determines a miss or hit according to formulas in Fighter class
                        if (e.AttackEnemy() > f.Avoid())
                        {
                            int damage2 = e.CalculateDamage();
                            f.ReceiveDamage(damage2);
                            Console.WriteLine("he hit you for {0} damage\n", damage2);
                            //if enemy hits successfully, fighter gets angry, enemy gets motivated
                            f.Fury++;
                            e.Spirit++;

                            //if fighter's hp goes below zero, it's Valhalla-time!
                            if (f.CurrentHitPoints <= 0)
                            {
                                f.Die();
                                CombatActive = false;
                                break;
                            }
                        }
                        else
                        {
                            Console.WriteLine("\nThe enemy misses");
                            //when the enemy whiffs, his motivation suffers and the fighter's motivation increases
                            e.Spirit--;
                            f.Spirit++;
                        }
                    }
                    else
                    {//this code will run if the range is 1 and the enemy is healthy; just basic melee attack
                        Console.WriteLine("\n{0} winds up and swings his sword with all of his might!", e.Name);
                        Console.WriteLine("{0}", e.tagLineTough);
                        if (e.AttackEnemy() > f.Avoid())
                        {
                            int damage2 = e.CalculateDamage();
                            f.ReceiveDamage(damage2);
                            Console.WriteLine("he hit you for {0} damage\n", damage2);
                            f.Fury++;
                            e.Spirit++;

                            if (f.CurrentHitPoints <= 0)
                            {
                                f.Die();
                                CombatActive = false;
                                break;
                            }
                        }
                        else
                        {
                            Console.WriteLine("\nThe enemy misses");
                            e.Spirit--;
                            f.Spirit++;
                        }
                    } //end enemyTurn
                }     //end if

                //increments turn counter
                turn++;
            }    //end while
        }//end method
Esempio n. 8
0
        }//end method rollXSIdedDice

        public static Dictionary <string, int> RollCharStats()
        {
            int strengthRaw, agilityRaw, intelligenceRaw, luckRaw, charismaRaw,
                constitutionRaw, maxHitPointsRaw, currentHitPointsRaw, maxRaw;

            Dictionary <string, int> charStats = new Dictionary <string, int>();
            // just keeps the while loop going
            bool rolling = true;

            while (rolling)
            {
                //roll stats for Fighter
                #region actual rolls for character core stats
                strengthRaw         = Roller.rollXSidedDice(6, 2, 3);
                agilityRaw          = Roller.rollXSidedDice(6, 2, 3);
                intelligenceRaw     = Roller.rollXSidedDice(6, 2, 3);
                luckRaw             = Roller.rollXSidedDice(6, 2, 3);
                charismaRaw         = Roller.rollXSidedDice(6, 2, 3);
                constitutionRaw     = Roller.rollXSidedDice(6, 2, 3);
                maxHitPointsRaw     = (constitutionRaw * 4);
                maxRaw              = maxHitPointsRaw;
                currentHitPointsRaw = maxRaw;
                #endregion

                #region displaying stats to the user and prompting to continue or roll again
                Console.WriteLine("***Your Character Rolls***\n");
                Console.WriteLine("Your strength is:   \t\t {0}  \n", strengthRaw);
                Console.WriteLine("Your agility is:\t\t  {0} \n", agilityRaw);
                Console.WriteLine("Your intelligence is:\t\t  {0} \n", intelligenceRaw);
                Console.WriteLine("Your luck is:\t\t\t  {0} \n", luckRaw);
                Console.WriteLine("Your charisma is:\t\t  {0} \n", charismaRaw);
                Console.WriteLine("Your constitution is:\t\t  {0} \n", constitutionRaw);
                Console.WriteLine("Your max hit points are:\t  {0} \n", maxHitPointsRaw);
                Console.WriteLine("Your current hit points are:\t  {0} \n", currentHitPointsRaw);

                Console.Write("Are you satisfied with your stats and ready to proceed? (Y/N)\n ");
                string input = Console.ReadLine();
                #endregion


                // if statement that checks if the user wishes to continue or re-roll
                // and adds stats rolled in last region to the Dictionary returned in
                // this method
                #region if statement

                if (input == "Y" || input == "y")
                {// adding rolled attributes to dictionary
                    charStats.Add("Strength", strengthRaw);
                    charStats.Add("Agility", agilityRaw);
                    charStats.Add("Intelligence", intelligenceRaw);
                    charStats.Add("Luck", luckRaw);
                    charStats.Add("Charisma", charismaRaw);
                    charStats.Add("Constitution", constitutionRaw);
                    charStats.Add("MaxHitPoints", maxHitPointsRaw);
                    charStats.Add("CurrentHitPoints", currentHitPointsRaw);
                    rolling = false;
                    break;
                }
                else if (input == "N" || input == "n")
                {// continue loop
                    rolling = true;
                    Console.Clear();
                }
                else
                {// try again if fat-finger
                    Console.WriteLine("Please enter a valid input");
                    #endregion
                } // end if
            }     // end while


            return(charStats);
        }//end RollCharStats method
Esempio n. 9
0
        public int CalculateRanged()
        {
            int thwump = ((Agility / 4) + (Intelligence / 4) + (Roller.rollXSidedDice(6, 1, 1)));

            return(thwump);
        }
Esempio n. 10
0
        public int CalculateDamage()
        {
            int inflict = (Roller.rollXSidedDice(12, 1, 1) + CalculateStrengthBonus(Strength));

            return(inflict);
        }
Esempio n. 11
0
        public int RangedAttack(int range)
        {
            int looseArrow = Roller.rollXSidedDice(8, 1, 1) + (CalculateAgilityBonus(Agility));

            return(looseArrow);
        }