using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace 猜拳Game
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//玩家出剪刀
private void btnjiandao_Click(object sender, EventArgs e)
{
//获取当前按钮的文本内容
string strJiandao = btnjiandao.Text;
//将按钮上的文本赋给label框lblplayer
lblplayer.Text = strJiandao;
// 调用下面 将文本转换成响应整型的办法 将文本框的内容 剪刀转换成对应的整数并赋给 vPlayer
int vPlayer = changtoValue(strJiandao);
// MessageBox.Show(v.ToString());
//运行PC的办法 电脑随机出拳
PC();
//将电脑label框 lblPC的内容赋给字符串strPC
string strPC = lblPC.Text;
//调用转成字符串为整数的办法 将响应的电脑出拳转成整数
int vPC = changtoValue(strPC);
//MessageBox.Show("策画机出了值为:"+ vPC.ToString());
//调用裁判的办法 传入2个整数值 玩家 和电脑的数据 进行对比
Judge(vPlayer, vPC);
}
private void btnshitou_Click(object sender, EventArgs e)
{
string strShitou = btnshitou.Text;
lblplayer.Text = strShitou ;
int vPlayer = changtoValue(strShitou);
// MessageBox.Show(v.ToString());
PC();
string strPC = lblPC.Text;
int vPC = changtoValue(strPC);
//MessageBox.Show("策画机出了值为:" + vPC.ToString));
Judge(vPlayer, vPC);
}
private void btnbu_Click(object sender, EventArgs e)
{
string strBu = btnbu.Text;
lblplayer.Text = strBu;
int vPlayer = changtoValue(strBu);
//MessageBox.Show(v.ToString());
PC();
string strPC = lblPC.Text;
int vPC = changtoValue(strPC);
//MessageBox.Show("策画机出了值为:" + vPC.ToString));
Judge(vPlayer, vPC);
}
public int changtoValue(string str)
{
int n=0;
//对传入的字符串进行断定
//若是 为剪刀 则给n 付与值1
if(str=="剪刀")
{
n=1;
}
else if(str=="石头")
{
n=2;
}
else if(str=="布")
{
n=3;
}
else
{
throw new Exception("未知错误");
}
return n;
}
// 剪刀1 石头2 布3
//写一个电脑随机出拳的办法
public string PC()
{
//用一个随机函数 电脑获取的数为1-3
Random ran = new Random();
//random.Next办法 取最小值,但不取最大值, 所以在1-3内随机取值
int n = ran.Next(1, 4);
//new 一个空字符串 strPC
string strPC = "";
//进行简单剖断 获取的随机值 同时转换成响应的字符串
//若是随机值取到1
if (n == 1)
{
//则赋给空字符串一个 "剪刀"
strPC = "剪刀";
}
else if (n == 2)
{
strPC = "石头";
}
else if (n == 3)
{
strPC = "布";
}
else
{
throw new Exception("未知错误");
}
//将获取的字符串 赋给label框 lblPC
lblPC.Text = strPC;
//并返回一个字符串 strPC
return strPC;
}
//斗劲玩家和电脑的值
public void Judge(int Player,int PC)
{
// 剪刀1 石头2 布3
//赢的景象有2种 1种是 玩家比电脑值大1 一种是小2
if (Player - PC == 1||Player - PC==-2)
{
lblResult.Text = "你赢了";
}
else if(Player - PC == 0)
{
lblResult.Text = "平局";
}
//除此之外 只有输的景象了
else
{
lblResult.Text = "你输了";
}
}
}
}