【C#】クラスのサンプル(道具屋)

ゲームで出てくる道具屋のクラスを考えてみましょう

道具屋のサンプル

class Shop
{
    public string Name { get; set; }
    public List<Item> Inventory { get; set; }

    public Shop(string name)
    {
        Name = name;
        Inventory = new List<Item>();
    }

    public void AddItem(Item item)
    {
        Inventory.Add(item);
    }

    public void RemoveItem(Item item)
    {
        Inventory.Remove(item);
    }

    public void PrintInventory()
    {
        Console.WriteLine(Name + "の商品リスト:");

        foreach (var item in Inventory)
        {
            Console.WriteLine($"{item.Name}: {item.Price}円 {item.Number}個");
        }
    }
}

class Item
{
    public string Name { get; set; }
    public double Price { get; set; }
    public int Number { get; set; }

    public Item(string name, double price, int number)
    {
        Name = name;
        Price = price;
        Number = number;
    }
}

この例では、Shopクラスは店の名前と在庫リストを持ちます。AddItem()、RemoveItem()、そしてPrintInventory()メソッドを持ち、それぞれ道具を追加したり削除したり、在庫リストを表示します。Itemクラスは道具の名前と値段を持ちます

使い方

Shop myShop = new Shop("便利な道具や");
myShop.AddItem(new Item("剣", 100, 5));
myShop.AddItem(new Item("盾", 50, 10));
myShop.PrintInventory();

表示結果

便利な道具やの商品リスト:
剣: 100円 5個
盾: 50円 10個

C#

Posted by hidepon