C#:類與物件_創建玩家類,實作欄位,方法,參考和簡單游戲邏輯
//創建CF當中的玩家類Player,該類含有欄位:名字,性別, 血量,武器,
//武器背包當中匕首,步槍,機槍,狙擊槍, 玩家類具有以下方法:
//(1)自我介紹Introduce方法
//(2)換武器裝備
//(3)受到攻擊掉血,當血量小于等于0的時候玩家死亡
//(4)攻擊其他玩家的方法
在寫玩家屬性欄位時,利用了列舉來方便性別和武器這種多種類別屬性的封裝,
玩家類
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test
{
class CFPlayer
{
private string NameID;
public float Hp=100;
public SexEnum Sex;
public WeaponEnum Weapon;
public bool IsDie;
public enum SexEnum
{
male,
female,
}
public enum WeaponEnum:int
{
BiShou,
BuQiang,
JiQiang,
JuJiQiang,
}
public void SetName(string name)
{
NameID = name;
}
public void Introduce()
{
Console.WriteLine("玩家屬性串列: ");
Console.WriteLine("名字:" + NameID);
Console.WriteLine("性別:" + Sex);
Console.WriteLine("武器:" + Weapon);
Console.WriteLine("血量:" + Hp);
Console.WriteLine("是否死亡:" + IsDie);
Console.WriteLine("//——————————————//");
//Console.Read();
}
public void WeaponChange(int weapon)
{
Console.WriteLine("{0}切換武器為{1}", NameID,(WeaponEnum)weapon);
Console.WriteLine("//——————————————//");
Weapon = (WeaponEnum)weapon;
}
public void BeAttack(string attacker)
{
Console.WriteLine("{0}受到{1}攻擊" ,NameID,attacker);
Console.WriteLine("//——————————————//");
if (Hp > 0)
{
Hp -= 100;
IsDie = (Hp <= 0);
}
}
public void AttackOthers(CFPlayer others)
{
Console.WriteLine("{0}攻擊{1}",NameID,others.NameID);
Console.WriteLine("//——————————————//");
others.BeAttack(NameID);
}
}
}
main函式
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test
{ //創建CF當中的玩家類Player,該類含有欄位:名字,性別, 血量,武器,
//武器背包當中匕首,步槍,機槍,狙擊槍, 玩家類具有以下方法:
//(1)自我介紹Introduce方法
//(2)換武器裝備
//(3)受到攻擊掉血,當血量小于等于0的時候玩家死亡
//(4)攻擊其他玩家的方法
class Program
{
static void Main(string[] args)
{
CFPlayer player001 = new CFPlayer();
CFPlayer player002 = new CFPlayer();
player001.SetName("玩家1號");
player002.SetName("玩家2號");
player001.Sex = CFPlayer.SexEnum.female;
player002.Sex = CFPlayer.SexEnum.male;
player001.Weapon = CFPlayer.WeaponEnum.BiShou;
player002.Weapon = CFPlayer.WeaponEnum.BuQiang;
player001.Introduce();
player002.Introduce();
player001.WeaponChange(3);
player001.AttackOthers(player002);
player001.Introduce();
player002.Introduce();
}
}
}
運行結果

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/44632.html
標籤:其他
上一篇:[ZJOI2007]矩陣游戲
下一篇:【題解】洛谷P4310 絕世好題
