敵のクラスを作ってみる
次の条件の敵のクラスを作成してみましょう
要件
ステータス情報を取得できるようにします
ステータス情報は、待機中、攻撃中、防御中、死亡とします
それぞれは、列挙型の型を持ちます
今生きているかどうかを調べるIsAliveプロパティを持ちます
サンプルコード
public class Enemy
{
public enum Status
{
Standby,
Attacking,
Defending,
Dead
}
public Status CurrentStatus { get; set; }
public int Health { get; set; }
public int Attack { get; set; }
public int Defense { get; set; }
public bool IsAlive
{
get
{
return Health > 0;
}
}
public Enemy(int health, int attack, int defense)
{
Health = health;
Attack = attack;
Defense = defense;
CurrentStatus = Status.Standby;
}
}
上記のコードは、「Enemy」という名前のクラスを定義しています。
このクラスには、次のメンバー変数が含まれています。
CurrentStatus
:敵の現在の状態を表す列挙型の変数です。「Standby」、「Attacking」、「Defending」、「Dead」から選ぶことができます。Health
:敵の体力を表す整数型変数です。Attack
:敵の攻撃力を表す整数型変数です。Defense
:敵の防御力を表す整数型変数です。
また、このクラスには「IsAlive」という名前のプロパティも含まれています。このプロパティは、敵が生きているかどうかを判定するためのものです。生きている場合は true
、死んでいる場合は false
を返します。
このクラスには、引数に「Health」、「Attack」、「Defense」を取るコンストラクタも定義されています。このコンストラクタは、変数を初期化するために使われます。また、初期状態として「Standby」を設定しています。
使い方のサンプル
基本
コード
Enemy enemy = new Enemy(100, 20, 10);
// 敵の状態を表示
Console.WriteLine(enemy.CurrentStatus);
// 敵の体力を表示
Console.WriteLine(enemy.Health);
// 敵が生きているか判定
if (enemy.IsAlive)
{
Console.WriteLine("Enemy is alive");
}
else
{
Console.WriteLine("Enemy is dead");
}
このサンプルでは、敵を表す「Enemy」クラスのインスタンスを作ります。体力が100、攻撃力が20、防御力が10という設定です。
その後、敵の状態、体力、生存状況を表示することができます。
実行結果
Standby
100
Enemy is alive
状態を変更するサンプル
コード
Enemy enemy = new Enemy(100, 20, 10);
// 敵の状態を表示
Console.WriteLine(enemy.CurrentStatus);
// 敵の状態を変更
enemy.CurrentStatus = Enemy.Status.Attacking;
// 敵の状態を表示
Console.WriteLine(enemy.CurrentStatus);
実行結果
Standby
Attacking
このサンプルでは、まず「Enemy」クラスのインスタンスを作ります。その後、敵の状態を「Standby」から「Attacking」に変更し、変更された状態を表示します。
ディスカッション
コメント一覧
まだ、コメントがありません