实例介绍
【实例简介】扫雷仙剑版,如下图
【实例截图】

【核心代码】
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}//------------------------------------------------------------------------
private void Form1_Load(object sender, EventArgs e)
{
btn = new Button[48] { button1, button2, button3, button4, button5, button6, button7, button8, button9, button10, button11, button12, button13, button14, button15, button16, button17, button18, button19, button20, button21, button22, button23, button24, button25, button26, button27, button28, button29, button30, button31, button32, button33, button34, button35, button36, button37, button38, button39, button40, button41, button42, button43, button44, button45, button46, button47, button48 };//存储按钮
foreach (Button i in btn)
i.Text = "";
for (int i = 0; i < bt1.Length; i )
// bt1[i] = Math.Abs(rand.Next()) % 2;
bt1[i] = num[rand.Next(10)];
foreach (int i in bt1)
if (i == 1)
count1 ;
}//--------------------------------------------------------------------- ----------
int[] num = new int[10] { 0, 0, 1, 1, 1, 1, 1, 1, 1, 1 };
int[] num1 = new int[20] { 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,1 };
Random rand = new Random();
Button[] btn;
string[] bt2 = new string[48];//存储周边信息,初始化为空
int[] bt1 = new int[48];//存储随机数
int count1 = 0,count2=0;
int flag = 1;//用于标记当前等级
//==================================================================================================================
void restart(Button []b)//重新开始
{
foreach (Button i in b)
{
i.BackColor = Color.Silver;
i.Visible = true;
}
foreach (Button j in btn)
j.Text = "";
count2 = 0;
}
void showAll(int [] bt1,Button [] btn)//显示所有
{
for (int i = 0; i < 48; i )
{
if (bt1[i] == 0)
btn[i].Visible = false;
}
}
string showInf(int []a,string []b,int i)//显示提示信息
{
int num=0;
if (a[i] == 1)
{
if (i - 1 >= 0 && a[i - 1] == 0 && i % 8 != 0)
num ;
if (i - 7 >= 0 && a[i - 7] == 0 && i % 8 != 7)
num ;
if (i - 8 >= 0 && a[i - 8] == 0)
num ;
if (i - 9 >= 0 && a[i - 9] == 0 && i % 8 != 0)
num ;
if (i 1 <= 47 && a[i 1] == 0 && i % 8 != 7)
num ;
if (i 7 <= 47 && a[i 7] == 0 && i % 8 != 0)
num ;
if (i 8 <= 47 && a[i 8] == 0)
num ;
if (i 9 <= 47 && a[i 9] == 0 && i % 8 != 7)
num ;
}
b[i] = num.ToString();
return b[i];
}
void fif(int a, Button btn, Button[] bt)
{
if (a == 0)
{
MessageBox.Show("胜败乃兵家常事,大侠请重新来过!", "战斗失败", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
btn.Visible = false;
showAll(bt1, bt);
}
else
{
btn.BackColor = Color.Green;
count2 ;
}
}
void checkWin()//检测是否已赢
{
if (count1 == count2)
{
MessageBox.Show("\t战斗胜利!\t", "战斗胜利");
showAll(bt1, btn);
}
}
private void splitContainer2_Panel1_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(@"http://www.softstar.net.cn/Products/Pal5/");
}
//===================================================================================================================
private void button49_Click(object sender, EventArgs e)//再来按钮
{
restart(btn);
switch (flag)
{
case 1: for (int i = 0; i < bt1.Length; i )
bt1[i] = num[rand.Next(10)];
break;
case 2: for (int i = 0; i < bt1.Length; i )
bt1[i] = num1[rand.Next(20)];
break;
case 3: for (int i = 0; i < bt1.Length; i )
bt1[i] = Math.Abs(rand.Next()) % 2;
break;
}
count1 = 0;
foreach (int i in bt1)
if (i == 1)
count1 ;
}
private void button50_Click(object sender, EventArgs e)//退出按钮
{
Application.Exit();
}
private void button51_Click(object sender, EventArgs e)//重玩按钮
{
restart(btn);
}
//---------------------------------------------------------------------------------------
private void button1_Click(object sender, EventArgs e)
{
fif(bt1[0], button1,btn);
btn[0].Text= showInf(bt1, bt2, 0);
checkWin();
}
private void button2_Click(object sender, EventArgs e)
{
fif(bt1[1], button2, btn);
btn[1].Text = showInf(bt1, bt2, 1);
checkWin();
}
private void button3_Click(object sender, EventArgs e)
{
fif(bt1[2], button3,btn);
btn[2].Text = showInf(bt1, bt2, 2);
checkWin();
}
private void button4_Click(object sender, EventArgs e)
{
fif(bt1[3], button4,btn);
btn[3].Text = showInf(bt1, bt2, 3);
checkWin();
}
private void button5_Click(object sender, EventArgs e)
{
fif(bt1[4], button5,btn);
btn[4].Text = showInf(bt1, bt2, 4);
checkWin();
}
private void button6_Click(object sender, EventArgs e)
{
fif(bt1[5], button6,btn);
btn[5].Text = showInf(bt1, bt2, 5);
checkWin();
}
private void button7_Click(object sender, EventArgs e)
{
fif(bt1[6], button7,btn);
btn[6].Text = showInf(bt1, bt2, 6);
checkWin();
}
private void button8_Click(object sender, EventArgs e)
{
fif(bt1[7], button8,btn);
btn[7].Text = showInf(bt1, bt2, 7);
checkWin();
}
private void button9_Click(object sender, EventArgs e)
{
fif(bt1[8], button9,btn);
btn[8].Text = showInf(bt1, bt2, 8);
checkWin();
}
private void button10_Click(object sender, EventArgs e)
{
fif(bt1[9], button10,btn);
btn[9].Text = showInf(bt1, bt2, 9);
checkWin();
}
private void button11_Click(object sender, EventArgs e)
{
fif(bt1[10], button11,btn);
btn[10].Text = showInf(bt1, bt2, 10);
checkWin();
}
private void button12_Click(object sender, EventArgs e)
{
fif(bt1[11], button12,btn);
btn[11].Text = showInf(bt1, bt2, 11);
checkWin();
}
private void button13_Click(object sender, EventArgs e)
{
fif(bt1[12], button13,btn);
btn[12].Text = showInf(bt1, bt2, 12);
checkWin();
}
private void button14_Click(object sender, EventArgs e)
{
fif(bt1[13], button14,btn);
btn[13].Text = showInf(bt1, bt2, 13);
checkWin();
}
private void button15_Click(object sender, EventArgs e)
{
fif(bt1[14], button15,btn);
btn[14].Text = showInf(bt1, bt2, 14);
checkWin();
}
private void button16_Click(object sender, EventArgs e)
{
fif(bt1[15], button16,btn);
btn[15].Text = showInf(bt1, bt2, 15);
checkWin();
}
private void button17_Click(object sender, EventArgs e)
{
fif(bt1[16], button17,btn);
btn[16].Text = showInf(bt1, bt2, 16);
checkWin();
}
private void button18_Click(object sender, EventArgs e)
{
fif(bt1[17], button18,btn);
btn[17].Text = showInf(bt1, bt2, 17);
checkWin();
}
private void button19_Click(object sender, EventArgs e)
{
fif(bt1[18], button19,btn);
btn[18].Text = showInf(bt1, bt2, 18);
checkWin();
}
private void button20_Click(object sender, EventArgs e)
{
fif(bt1[19], button20,btn);
btn[19].Text = showInf(bt1, bt2, 19);
checkWin();
}
private void button21_Click(object sender, EventArgs e)
{
fif(bt1[20], button21,btn);
btn[20].Text = showInf(bt1, bt2, 20);
checkWin();
}
private void button22_Click(object sender, EventArgs e)
{
fif(bt1[21], button22,btn);
btn[21].Text = showInf(bt1, bt2, 21);
checkWin();
}
private void button23_Click(object sender, EventArgs e)
{
fif(bt1[22], button23,btn);
btn[22].Text = showInf(bt1, bt2, 22);
checkWin();
}
private void button24_Click(object sender, EventArgs e)
{
fif(bt1[23], button24,btn);
btn[23].Text = showInf(bt1, bt2, 23);
checkWin();
}
private void button25_Click(object sender, EventArgs e)
{
fif(bt1[24], button25,btn);
btn[24].Text = showInf(bt1, bt2, 24);
checkWin();
}
private void button26_Click(object sender, EventArgs e)
{
fif(bt1[25], button26,btn);
btn[25].Text = showInf(bt1, bt2, 25);
checkWin();
}
private void button27_Click(object sender, EventArgs e)
{
fif(bt1[26], button27,btn);
btn[26].Text = showInf(bt1, bt2, 26);
checkWin();
}
private void button28_Click(object sender, EventArgs e)
{
fif(bt1[27], button28,btn);
btn[27].Text = showInf(bt1, bt2, 27);
checkWin();
}
private void button29_Click(object sender, EventArgs e)
{
fif(bt1[28], button29,btn);
btn[28].Text = showInf(bt1, bt2, 28);
checkWin();
}
private void button30_Click(object sender, EventArgs e)
{
fif(bt1[29], button30,btn);
btn[29].Text = showInf(bt1, bt2, 29);
checkWin();
}
private void button31_Click(object sender, EventArgs e)
{
fif(bt1[30], button31,btn);
btn[30].Text = showInf(bt1, bt2, 30);
checkWin();
}
private void button32_Click(object sender, EventArgs e)
{
fif(bt1[31], button32,btn);
btn[31].Text = showInf(bt1, bt2, 31);
checkWin();
}
private void button33_Click(object sender, EventArgs e)
{
fif(bt1[32], button33, btn);
btn[32].Text = showInf(bt1, bt2, 32);
checkWin();
}
private void button34_Click(object sender, EventArgs e)
{
fif(bt1[33], button34,btn);
btn[33].Text = showInf(bt1, bt2, 33);
checkWin();
}
private void button35_Click(object sender, EventArgs e)
{
fif(bt1[34], button35,btn);
btn[34].Text = showInf(bt1, bt2, 34);
checkWin();
}
private void button36_Click(object sender, EventArgs e)
{
fif(bt1[35], button36,btn);
btn[35].Text = showInf(bt1, bt2, 35);
checkWin();
}
private void button37_Click(object sender, EventArgs e)
{
fif(bt1[36], button37,btn);
btn[36].Text = showInf(bt1, bt2, 36);
checkWin();
}
private void button38_Click(object sender, EventArgs e)
{
fif(bt1[37], button38,btn);
btn[37].Text = showInf(bt1, bt2, 37);
checkWin();
}
private void button39_Click(object sender, EventArgs e)
{
fif(bt1[38], button39,btn);
btn[38].Text = showInf(bt1, bt2, 38);
checkWin();
}
private void button40_Click(object sender, EventArgs e)
{
fif(bt1[39], button40,btn);
btn[39].Text = showInf(bt1, bt2, 39);
checkWin();
}
private void button41_Click(object sender, EventArgs e)
{
fif(bt1[40], button41,btn);
btn[40].Text = showInf(bt1, bt2, 40);
checkWin();
}
private void button42_Click(object sender, EventArgs e)
{
fif(bt1[41], button42,btn);
btn[41].Text = showInf(bt1, bt2, 41);
checkWin();
}
private void button43_Click(object sender, EventArgs e)
{
fif(bt1[42], button43,btn);
btn[42].Text = showInf(bt1, bt2, 42);
checkWin();
}
private void button44_Click(object sender, EventArgs e)
{
fif(bt1[43], button44,btn);
btn[43].Text = showInf(bt1, bt2, 43);
checkWin();
}
private void button45_Click(object sender, EventArgs e)
{
fif(bt1[44], button45,btn);
btn[44].Text = showInf(bt1, bt2, 44);
checkWin();
}
private void button46_Click(object sender, EventArgs e)
{
fif(bt1[45], button46,btn);
btn[45].Text = showInf(bt1, bt2, 45);
checkWin();
}
private void button47_Click(object sender, EventArgs e)
{
fif(bt1[46], button47,btn);
btn[46].Text = showInf(bt1, bt2, 46);
checkWin();
}
private void button48_Click(object sender, EventArgs e)
{
fif(bt1[47], button48,btn);
btn[47].Text = showInf(bt1, bt2, 47);
checkWin();
}
//==========================================================================================================================
private void 联系作者ToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(@"http://user.qzone.qq.com/1209179402/infocenter");
}
private void 帮助ToolStripMenuItem1_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(@"帮助.txt");
}
private void 关于ToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(@"关于.txt");
}
private void 新游戏ToolStripMenuItem_Click(object sender, EventArgs e)
{
restart(btn);
switch (flag)
{
case 1: for (int i = 0; i < bt1.Length; i )
bt1[i] = num[rand.Next(10)];
break;
case 2: for (int i = 0; i < bt1.Length; i )
bt1[i] = num1[rand.Next(20)];
break;
case 3: for (int i = 0; i < bt1.Length; i )
bt1[i] = Math.Abs(rand.Next()) % 2;
break;
}
count1 = 0;
foreach (int i in bt1)
if (i == 1)
count1 ;
}
private void 重玩本局ToolStripMenuItem_Click(object sender, EventArgs e)
{
restart(btn);
}
private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void 初级ToolStripMenuItem_Click(object sender, EventArgs e)
{
flag = 1;
restart(btn);
for (int i = 0; i < bt1.Length; i )
bt1[i] = num[rand.Next(10)];
count1 = 0;
foreach (int i in bt1)
if (i == 1)
count1 ;
}
private void 中级ToolStripMenuItem_Click(object sender, EventArgs e)
{
flag = 2;
restart(btn);
for (int i = 0; i < bt1.Length; i )
bt1[i] = num1[rand.Next(20)];
count1 = 0;
foreach (int i in bt1)
if (i == 1)
count1 ;
}
private void 高级ToolStripMenuItem_Click(object sender, EventArgs e)
{
flag = 3;
restart(btn);
for (int i = 0; i < bt1.Length; i )
bt1[i] = Math.Abs(rand.Next()) % 2;
count1 = 0;
foreach (int i in bt1)
if (i == 1)
count1 ;
}
}
标签: 游戏
相关软件
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明


网友评论
我要评论