【C#】クラスのサンプル(トランプゲームのプレイヤー)
トランプゲームのプレイヤーを考えてみます
色々な属性が思い浮かぶと思いますが、サンプルとして次のコードを見てください
クラス
using System.Collections.Generic;
public class Player
{
public string Name { get; set; }
public List<Card> Hand { get; set; }
public int Chips { get; set; }
public bool IsPlaying { get; set; }
public Player(string name, int chips)
{
Name = name;
Hand = new List<Card>();
Chips = chips;
IsPlaying = true;
}
public void Draw(Deck deck)
{
Hand.Add(deck.Cards[0]);
deck.Cards.RemoveAt(0);
}
public void Discard(List<Card> cards)
{
foreach (var card in cards)
{
Hand.Remove(card);
}
}
public void Bet(int amount)
{
if (amount > Chips)
{
// 賭けるためのチップが足りない
return;
}
Chips -= amount;
}
}
このプレイヤークラスは、プレイヤーの名前、現在持っているカード、残りのチップ、まだプレイしているかどうかなど、プレイヤーの情報を記録するためのプロパティをいくつか持っています。このクラスには、手札を1枚増やすDraw、手札を1枚以上取り除くDiscard、賭けた金額に応じてチップを減らすBetなどのメソッドが用意されており、これらを使って対話することができます。
このクラスは、カードを引くためのDeckクラスを想定しています。また、カードゲームには、check, raise, foldなどのアクションがありますが、このクラスに含めることもできます
ディスカッション
コメント一覧
まだ、コメントがありません