一個小小的賽馬文字圖片游戲 很多不足點 比如只知道第一名 不知道后三名 不過基本思想有了


using System;

namespace lesson09_work
{

class Horse
{
public string name {
get;
set;
}

public Horse (string name)
{
this.name = name;
}

public void run (string name, ref int site, int speed)
{
Console.WriteLine ("我是{0},感覺身體被掏空,誰讓我是馬,跑吧!", name);
site += speed;
if (site > 92) {
site = 92;
}

}

public bool isAtTheEnd (string name, int site)
{
if (site < 92) {
return true;
}
Console.WriteLine ("我是{0},我的媽媽啊 贏了 跑斷我的馬腿了", name);
return false;
}
}

class MongolianHorse:Horse
{
public MongolianHorse (string name) : base (name)
{
}

public void mongolianHorseSkill (ref int x)
{
Console.WriteLine ("觸發技能:蒙古馬就是越跑越帶勁:基礎速度+1!!!");
x += 1;
}
}

class WhiteHorse:Horse
{
public WhiteHorse (string name) : base (name)
{
}

public void whiteHorseSkill (ref int x, ref int y, ref int z, ref int i)
{
Console.WriteLine ("觸發技能:小白龍在此,誰在我前邊誰滾蛋:亢龍有悔");
if (x > y) {
x = y - 1;
}
if (z > y) {
z = y - 1;
}
if (i > y) {
i = y - 1;
}
}
}

class RedHorse:Horse
{
public RedHorse (string name) : base (name)
{
}

public void redHorseSkill (ref int x, ref int y, ref int z, ref int i)
{
Console.WriteLine ("觸發技能:人中呂布馬中赤兔 ,全部給我回起點去:乾坤大挪移");
x = 2;
y = 2;
i = 2;
}
}

class DiluHorse:Horse
{
public DiluHorse (string name) : base (name)
{
}

public void diluHorseSkill (ref int x, ref int y, ref int z, ref int i)
{
Console.WriteLine ("觸發技能:大家不要你爭我搶,一起跑還能聊天:以德服人");
x = i;
y = i;
z = i;

}
}

class Bet
{
public string bet (out double money)
{
money = 0;
int num;
double bet;
Flag:
try {

Console.WriteLine ("輸入你認為勝利的小馬(輸入超過4的默認是蒙古馬");
Console.WriteLine ("1:蒙古馬 倍率2 ");
Console.WriteLine ("2:白龍馬 倍率1.5 ");
Console.WriteLine ("3:赤兔 倍率1.8 ");
Console.WriteLine ("4:的盧 倍率1.6");
num = int.Parse (Console.ReadLine ());
Console.WriteLine ("輸入投注資金");
bet = int.Parse (Console.ReadLine ());
} catch {
Console.WriteLine ("輸入有誤");
goto Flag;
}
double mul;
string horse;
switch (num) {
case 1:
{
horse = "蒙古馬";
mul = 2;
break;}
case 2:
{
horse = "白龍馬";
mul = 1.5;
break;}
case 3:
{
horse = "赤兔";
mul = 1.8;
break;}
case 4:
{
horse = "的盧";
mul = 1.6;
break;}
default:
{
horse = "蒙古馬";
mul = 2;
break;}
}
Console.WriteLine ("你選擇的是{0},如果勝利您將得到{1}", horse, mul * bet);
money = mul * bet;
return horse;
}

 

}

class Map
{
public void map (int x, int y, int z, int i)
{
Console.Clear ();
string a = "1 ";
string b = "2 ";
string c = "3 ";
string d = "4 ";


Console.WriteLine ("***************************************************************************************************");
Console.WriteLine ("* 歡迎來到Q神賽馬 *");
Console.WriteLine ("* 歡迎來到Q神賽馬 *");
Console.WriteLine ("***************************************************************************************************");
Console.WriteLine ("1:蒙古馬 2:白龍馬 3:赤兔 4:的盧");
Console.WriteLine ("");
Console.WriteLine ("起點 終點");
Console.WriteLine (a.Replace (' ', '_').Remove (x));
Console.WriteLine (b.Replace (' ', '_').Remove (y));
Console.WriteLine (c.Replace (' ', '_').Remove (z));
Console.WriteLine (d.Replace (' ', '_').Remove (i));

}

}

class MainClass
{
public static void Main (string[] args)
{

MongolianHorse xHorse = new MongolianHorse ("蒙古馬");
WhiteHorse yHorse = new WhiteHorse ("小白龍");
RedHorse zHorse = new RedHorse ("赤兔");
DiluHorse iHorse = new DiluHorse ("的盧");
Map map = new Map ();
Bet bet = new Bet ();
Random ran = new Random ();
double money = 0;
string name = bet.bet (out money);
Console.ReadKey ();
int a = ran.Next (2, 5);
int b = ran.Next (3, 5);
int c = ran.Next (1, 5);
int d = ran.Next (1, 3);
int asite = 1, bsite = 1, csite = 1, dsite = 1;
map.map (asite, bsite, csite, dsite);
Console.WriteLine ("游戲開始");
Console.ReadKey ();
while ((xHorse.isAtTheEnd (xHorse.name, asite) && yHorse.isAtTheEnd (yHorse.name, bsite)) && (zHorse.isAtTheEnd (zHorse.name, csite) && iHorse.isAtTheEnd (iHorse.name, dsite))) {
map.map (asite, bsite, csite, dsite);
xHorse.run (xHorse.name, ref asite, a);
if (ran.Next (1, 101) > 90) {
xHorse.mongolianHorseSkill (ref a);
}
Console.WriteLine ("按任意鍵查看賽馬情況");
Console.ReadKey ();
map.map (asite, bsite, csite, dsite);
Console.ReadKey ();
yHorse.run (yHorse.name, ref bsite, b);
if (ran.Next (1, 101) > 90) {
yHorse.whiteHorseSkill (ref asite, ref bsite, ref csite, ref dsite);
}
Console.WriteLine ("按任意鍵查看賽馬情況");
Console.ReadKey ();
map.map (asite, bsite, csite, dsite);
zHorse.run (zHorse.name, ref csite, c);
if (ran.Next (1, 101) > 99) {
zHorse.redHorseSkill (ref asite, ref bsite, ref csite, ref dsite);
}
Console.WriteLine ("按任意鍵查看賽馬情況");
Console.ReadKey ();
map.map (asite, bsite, csite, dsite);
Console.ReadKey ();
iHorse.run (iHorse.name, ref dsite, d);
if (ran.Next (1, 101) > 90) {
iHorse.diluHorseSkill (ref asite, ref bsite, ref csite, ref dsite);
}
Console.WriteLine ("按任意鍵查看賽馬情況");
Console.ReadKey ();
map.map (asite, bsite, csite, dsite);
Console.ReadKey ();
}
string winner = "";
if (asite == 92) {
winner = xHorse.name;
} else if (bsite == 92) {
winner = yHorse.name;
} else if (csite == 92) {
winner = zHorse.name;
} else if (dsite == 92) {
winner = iHorse.name;
}
if (winner == name) {
Console.WriteLine ("您壓得{0}獲得勝利,您贏取{1}金錢", name, money);
} else {
Console.WriteLine ("您壓得驢子沒有獲勝 拜拜");
}
Console.ReadKey ();


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM