MiniRPG/Main.cs

43 lines
1.7 KiB
C#

using System;
using System.Linq;
using System.Collections.Generic;
using Microsoft.VisualBasic;
class Program
{
static void Main()
{
List<Item> allItems = ItemLoader.LoadAllItems("data/items.json");
Player user = new("Tanner", [], 100, 90, 20, 20);
Console.WriteLine($"{user.Name} has {user.CurrentHealth}/{user.MaxHealth} Hit Points.\n");
Console.WriteLine($"{user.Name} has {user.CurrentMPoints}/{user.MaxMPoints} Mana Points.\n");
user.Inventory.Add(allItems.FirstOrDefault(m => m.Name == "Potion"));
user.Inventory.Add(allItems.FirstOrDefault(m => m.Name == "Super Potion"));
user.Inventory.Add(allItems.FirstOrDefault(m => m.Name == "Hyper Potion"));
user.Inventory.Add(allItems.FirstOrDefault(m => m.Name == "Elixir"));
Console.WriteLine($"{user.Name}'s current inventory:");
foreach (var inv in user.RetrieveInventory())
{
Console.WriteLine($"{inv.Key}: {inv.Value}");
}
Console.WriteLine("Do you want to use your Potion? (Y/N)");
string input = Console.ReadLine().ToUpper();
if (input == "Y")
{
user.UseHealingItem((HealingItem)user.Inventory.FirstOrDefault(m => m.Name == "Potion"));
user.Inventory.Remove(user.Inventory.FirstOrDefault(m => m.Name == "Potion"));
}
Console.WriteLine($"{user.Name} has {user.CurrentHealth}/{user.MaxHealth} Hit Points.\n");
Console.WriteLine($"\n{user.Name}'s current inventory:");
foreach (var inv in user.RetrieveInventory())
{
Console.WriteLine($"{inv.Key}: {inv.Value}");
}
}
}