static void ShowMoney(PlayerBase player) { System.Console.WriteLine( "{5} has {0} plat, {1} gold, {2} silver, {3} copper ({4} actual).", player.Money.Platinum, player.Money.Gold, player.Money.Silver, player.Money.Copper, player.Money.Value, player.Name ); }
public static void ShowMoney(PlayerBase player) { System.Console.WriteLine( "{4} has {0} plat, {1} gold, {2} silver, {3} copper.", player.Money.Platinum, player.Money.Gold, player.Money.Silver, player.Money.Copper, player.Name ); Console.WriteLine(); Console.ReadLine(); }
public static void CreatePlayer(PlayerBase player) { bool userCreated = false; while (userCreated == false) { Console.Clear(); Console.WriteLine("Enter Name (5 - 15 Characters)"); Console.WriteLine(""); string Name = null; Name = Console.ReadLine(); if (Name.Length >= 5 && Name.Length > 0 && Name.Length <= 15) { bool nameConfirmed = false; while (nameConfirmed == false) { Console.Clear(); Console.WriteLine("Please Confirm! Type: {0} Or press Esc to cancel.", Name); Console.WriteLine(""); ConsoleKeyInfo info = Console.ReadKey(); if (info.Key == ConsoleKey.Escape) { Console.Clear(); break; } var ans = Console.ReadLine(); if (Name == info.Key + ans) { userCreated = true; player.Name = Name; Console.Clear(); break; } Console.Clear(); } } Console.Clear(); } }
static void ShowInventory(PlayerBase player) { foreach (var item in player.Inventory) { System.Console.WriteLine(" * {0} which is worth {1} coppers.", item.Name, item.Value); if (item is PotionBase) { var p = (item as PotionBase); System.Console.WriteLine(" *** This is a potion! {0} value.", p.PotionValue); } if (item is WeaponBase) { var w = (item as WeaponBase); System.Console.WriteLine(" *** This is a weapon! {0} base damage.", w.BaseDamage); } if (item is ArmorBase) { var a = (item as ArmorBase); System.Console.WriteLine(" *** This is armor! Stats: Name: {0}; Armor Value: {1}; Agility: {2}; Intelligence: {3}; Stamina: {4}; Strength: {5}; Wisdom: {6};", a.Name, a.ArmorValue, a.AgilityBoost, a.IntelligenceBoost, a.StaminaBoost, a.StrengthBoost, a.WisdomBoost); } } }
static void Main(string[] args) { bool loopAgain = true; var greaterHealthPotion = new HealthPotionBase("Greater Health Potion", new Money(silver: 20), 0.5, 20); var player = new PlayerBase(name) { CurrentHealth = 10, MaximumHealth = 40, Money = new Money() }; player.Inventory.Add(greaterHealthPotion); while(loopAgain) { System.Console.WriteLine("Enter a command (am/i/m/x): "); var response = System.Console.ReadLine(); switch(response) { case "am": AddMoney(player, 150); break; case "i": ShowInventory(player); break; case "m": ShowMoney(player); break; case "x": default: loopAgain = false; ShowExit(); break; } } }
static void Main(string[] args) { var player = new PlayerBase(null) { CurrentHealth = 10, MaximumHealth = 40, Money = new Money(), Level = 1, CurrentXp = 0, XpNeeded = 100 }; Start.CreatePlayer(player); #region Test Console App var ruleSet = new AbilityScoreRules(); #region Item Creation var greaterHealthPotion = new HealthPotionBase("Greater Health Potion", new Money(silver: 20), 0.5, 20); var lesserHealthPotion = new HealthPotionBase("Lesser Health Potion", new Money(copper: 20), 0.5, 10); //var iornChestplate = new ArmorBase("Iorn Chestplate", new Money(platinum: 1, gold: 1, silver: 50), EquipmentType.Chest, 10, 5, 1, 8, 0, 0, 0, 0); #endregion Item Creation #region Player Creation #region Roll Player Stats // Setup all abilites. Assign base of 10 to each. player.AddAbility(AbilityType.Charisma); player.AddAbility(AbilityType.Constitution); player.AddAbility(AbilityType.Dexterity); player.AddAbility(AbilityType.Intelligence); player.AddAbility(AbilityType.Strength); player.AddAbility(AbilityType.Wisdom); // Modify abilites based on race and class. Assign skills. bool raceSelected = false; while (raceSelected == false) { System.Console.WriteLine("Select your race."); System.Console.WriteLine(""); System.Console.WriteLine("A: Dwarf"); System.Console.WriteLine(""); System.Console.WriteLine("B: Elf"); System.Console.WriteLine(""); System.Console.WriteLine("C: Halfling"); System.Console.WriteLine(""); System.Console.WriteLine("D: Human"); System.Console.WriteLine(""); System.Console.WriteLine("E: Orc"); System.Console.WriteLine(""); ConsoleKeyInfo info = System.Console.ReadKey(); if (info.Key == ConsoleKey.A) { player.AssignRace(RaceType.Dwarf); raceSelected = true; break; } if (info.Key == ConsoleKey.B) { player.AssignRace(RaceType.Elf); raceSelected = true; break; } if (info.Key == ConsoleKey.C) { player.AssignRace(RaceType.Halfling); raceSelected = true; break; } if (info.Key == ConsoleKey.D) { player.AssignRace(RaceType.Human); raceSelected = true; break; } if (info.Key == ConsoleKey.E) { player.AssignRace(RaceType.Orc); raceSelected = true; break; } System.Console.Clear(); }; System.Console.Clear(); bool classChoosen = false; while (classChoosen == false) { System.Console.WriteLine("Choose a Class"); System.Console.WriteLine(" "); System.Console.WriteLine("A: Bard"); System.Console.WriteLine(" "); System.Console.WriteLine("B: Berserker"); System.Console.WriteLine(""); System.Console.WriteLine("C: Crusader"); System.Console.WriteLine(""); System.Console.WriteLine("D: Elementalist"); System.Console.WriteLine(""); System.Console.WriteLine("E: Monk"); System.Console.WriteLine(" "); System.Console.WriteLine("F: Priest"); System.Console.WriteLine(" "); System.Console.WriteLine("G: Ranger"); System.Console.WriteLine(" "); System.Console.WriteLine("H: Rogue"); System.Console.WriteLine(""); ConsoleKeyInfo info = System.Console.ReadKey(); if (info.Key == ConsoleKey.A) { player.AssignClass(ClassType.Bard); classChoosen = true; break; } if (info.Key == ConsoleKey.B) { player.AssignClass(ClassType.Berserker); classChoosen = true; break; } if (info.Key == ConsoleKey.C) { player.AssignClass(ClassType.Crusader); classChoosen = true; break; } if (info.Key == ConsoleKey.D) { player.AssignClass(ClassType.Elementalist); classChoosen = true; break; } if (info.Key == ConsoleKey.E) { player.AssignClass(ClassType.Monk); classChoosen = true; break; } if (info.Key == ConsoleKey.F) { player.AssignClass(ClassType.Priest); classChoosen = true; break; } if (info.Key == ConsoleKey.G) { player.AssignClass(ClassType.Ranger); classChoosen = true; break; } if (info.Key == ConsoleKey.H) { player.AssignClass(ClassType.Rogue); classChoosen = true; break; } System.Console.Clear(); }; System.Console.Clear(); #endregion Roll Player Stats #region Player Starter Cash player.Money.AddMoney(platinum: 2, copper: 15); #endregion Player Starter Cash #endregion Player Creation #region Populate Player Inventory player.Inventory.Add(greaterHealthPotion); player.Inventory.Add(lesserHealthPotion); // player.Inventory.Add(iornChestplate); #endregion Populate Player Inventory #region Display Generated Values #region Show Player Race/Class System.Console.WriteLine("{2} is a {0} {1}.", player.Race.ToString(), player.Class.ToString(), player.Name); #endregion Show Player Race/Class #region Show Player HPs System.Console.WriteLine(" {2}'s HP = {0}/{1}.", player.CurrentHealth, player.MaximumHealth, player.Name); var potion = (HealthPotionBase)player.Inventory.Find(i => i.Name == "Greater Health Potion"); potion.Consume(player); player.Inventory.Remove(potion); System.Console.WriteLine(" {2}'s HP = {0}/{1}.", player.CurrentHealth, player.MaximumHealth, player.Name); #endregion Show Player HPs #region Show Player Stats System.Console.WriteLine(""); System.Console.WriteLine(" {0}'s Abilities are: ", player.Name); foreach (var a in player.Abilities) { var rule = ruleSet.GetRuleByStatValue(a.Value); System.Console.WriteLine(" {0}: {1} which is {2} ({3}).", a.Type.ToString(), a.Value, rule.Name, rule.Modifier); } System.Console.WriteLine(""); System.Console.WriteLine(""); System.Console.WriteLine(" {0}'s Skills are: ", player.Name); foreach (var s in player.Skills) { System.Console.WriteLine(" {0}: {1}.", s.Type.ToString(), player.GetSkillScore(s.Type)); } System.Console.WriteLine(""); #endregion Show Player Stats #region Show Player Cash System.Console.WriteLine("Inventory:"); #endregion Show Player Cash #region Show Player Inventory Entities.Mechanics.Comands.ShowInventory(player); #endregion Show Player Inventory #endregion Display Generated Values System.Console.WriteLine("Press Enter"); System.Console.ReadLine(); #region commands while (true) { System.Console.Clear(); System.Console.WriteLine("Character: {0}", player.Name); System.Console.WriteLine(""); System.Console.WriteLine("-------------Command List--------------"); System.Console.WriteLine(" "); System.Console.WriteLine("(H)eal Me"); System.Console.WriteLine(" "); System.Console.WriteLine("(G)ive Money"); System.Console.WriteLine(" "); System.Console.WriteLine("(Q)uit"); System.Console.WriteLine(" "); ConsoleKeyInfo info = System.Console.ReadKey(); if (info.Key == ConsoleKey.G) { Comands.GiveMoney(player); } if (info.Key == ConsoleKey.H) { Comands.HealMe(player); } if (info.Key == ConsoleKey.Q) { Environment.Exit(0); } }; #endregion #endregion }
public static void GiveMoney(PlayerBase player/**, Money money*/) { /**uint copper = 0; copper += Money.ConvertToCopper(platinum: 15); copper += Money.ConvertToCopper(gold: 20); copper += Money.ConvertToCopper(silver: 5); copper += 34; */ bool doneMoney = false; while (doneMoney == false) { Console.Clear(); Console.WriteLine("A: Plat"); Console.WriteLine(""); Console.WriteLine("B: Gold"); Console.WriteLine(""); Console.WriteLine("C: Silver"); Console.WriteLine(""); Console.WriteLine("D: Copper"); Console.WriteLine(""); ConsoleKeyInfo whichMoneyAdd = Console.ReadKey(); Console.Clear(); if (whichMoneyAdd.Key == ConsoleKey.A) { Console.WriteLine("How much?"); Console.WriteLine(""); int number; bool isNumberGivemoney = Int32.TryParse(Console.ReadLine(), out number); if (isNumberGivemoney == true) { if (number > 0) { uint uNumberMoney = Convert.ToUInt32(number); player.Money.AddMoney(platinum: uNumberMoney); doneMoney = true; } Console.Clear(); } } if (whichMoneyAdd.Key == ConsoleKey.B) { Console.WriteLine("How much?"); Console.WriteLine(""); int number; bool isNumberGivemoney = Int32.TryParse(Console.ReadLine(), out number); if (isNumberGivemoney == true) { if (number > 0) { uint uNumberMoney = Convert.ToUInt32(number); player.Money.AddMoney(gold: uNumberMoney); doneMoney = true; } Console.Clear(); } } if (whichMoneyAdd.Key == ConsoleKey.C) { Console.WriteLine("How much?"); Console.WriteLine(""); int number; bool isNumberGivemoney = Int32.TryParse(Console.ReadLine(), out number); if (isNumberGivemoney == true) { if (number > 0) { uint uNumberMoney = Convert.ToUInt32(number); player.Money.AddMoney(silver: uNumberMoney); doneMoney = true; } Console.Clear(); } } if (whichMoneyAdd.Key == ConsoleKey.D) { Console.WriteLine("How much?"); Console.WriteLine(""); int number; bool isNumberGivemoney = Int32.TryParse(Console.ReadLine(), out number); if (isNumberGivemoney == true) { if (number > 0) { uint uNumberMoney = Convert.ToUInt32(number); player.Money.AddMoney(copper: uNumberMoney); doneMoney = true; } Console.Clear(); } } if (player.Money._copper >= UInt32.MaxValue) { player.Money._copper = uint.MaxValue; } Console.WriteLine(""); Console.WriteLine("You now have {0} Platinum, {1} Gold, {2} Silver and {3} Copper!", player.Money.Platinum, player.Money.Gold, player.Money.Silver, player.Money.Copper); Console.ReadLine(); } //player.Money.AddMoney(copper: copper); }
public static void Buy(PlayerBase player) { }
public static void HealMe(PlayerBase player) { string CurrentHealth = player.CurrentHealth.ToString(); string MaximumHealth = player.MaximumHealth.ToString(); Console.Clear(); Console.WriteLine("{0} has {1} / {2} HP.", player.Name, CurrentHealth, MaximumHealth); Console.WriteLine(""); Console.WriteLine("Heal for?"); Console.WriteLine(""); int healAmount; bool isNumberHeal = Int32.TryParse(Console.ReadLine(), out healAmount); if (isNumberHeal == true) { if (player.CurrentHealth + healAmount == player.MaximumHealth || player.CurrentHealth + healAmount > player.MaximumHealth) { player.CurrentHealth = player.MaximumHealth; } else { player.CurrentHealth = player.CurrentHealth + healAmount; } } Console.WriteLine(""); Console.WriteLine("{0} has {1} / {2} HP.", player.Name, player.CurrentHealth, player.MaximumHealth); Console.ReadLine(); }
static void AddMoney(PlayerBase player, int amount) { player.Money.AddMoney(copper: amount); }