chessboard星棋布地怎么理解,什么意思?
chessboard 时间:2021-07-14 阅读:(
)
关于一个五子棋的界面
要用一个棋盘类来实现,代码如下:
public class Chessboard
{
//arrchessboard为棋盘情况数组,arrchessboard[i,j]=2表示此处无子,arrchessboard[i,j]=0表示此处为黑子,arrchessboard[i,j]=1表示此处为白子
private int[,] arrchessboard = new int [15,15];
//绘制的对象
private Graphics mg;
//棋子对象
private Stone stone;
//电脑对象
private puter;
//判断当前棋子是黑(true)是白(false)
private bool stoneflag = true;
//判断先手玩家(是电脑(true)还是人(false),先手下黑棋)
private bool mplayfirstflag = false;
//历史记录堆栈
private Stack mStarckHistory = new Stack();
/// <summary>
/// 历史记录属性
/// </summary>
public Stack StarckHistory
{
get
{
return mStarckHistory;
}
}
/// <summary>
/// 构造函数
/// </summary>
/// <param name="g">绘制的对象</param>
public Chessboard(Graphics g)
{
mg = g;
Initialization();
}
/// <summary>
/// 画棋盘
/// </summary>
public void Draw()
{
//读取棋盘图像
//从资源中获取
System.Reflection.Assembly thisExe;
thisExe = System.Reflection.Assembly.GetExecutingAssembly();
System.IO.Stream file = thisExe.GetManifestResourceStream("FiveStones.chessboard.gif");
Image imgChessboard = System.Drawing.Image.FromStream(file); //棋盘图片 大小600*600像素
file.Close();
//从文件获取
//Image imgChessboard = System.Drawing.Image.FromFile("chessboard.gif"); //棋盘图片 大小600*600像素
mg.DrawImage(imgChessboard,0,0,imgChessboard.Width,imgChessboard.Height);
//绘制棋子
for (int i=0;i<15;i++)
{
for(int j=0;j<15;j++)
{
if (arrchessboard[i,j] == 0)
{
stone.DrawStone(i,j,true);
}
if (arrchessboard[i,j] == 1)
{
stone.DrawStone(i,j,false);
}
}
}
}
/// <summary>
/// 下棋
/// </summary>
/// <param name="m"></param>
/// <param name="n"></param>
private void DownStone(int m,int n)
{
stone.DrawStone(m,n,stoneflag);
//记录情况
if (stoneflag)
{
arrchessboard[m,n] = 0;
}
else
{
arrchessboard[m,n] = 1;
}
//记录历史记录
if (stoneflag)
{
mStarckHistory.Push("黑:"+m.ToString()+","+n.ToString());
}
else
{
mStarckHistory.Push("白:"+m.ToString()+","+n.ToString());
}
//判断结果
if (Rule.Result(m,n,arrchessboard) < 6)
{
switch(Rule.Result(m,n,arrchessboard))
{
case 1:
MessageBox.Show("黑棋双三禁手失败!");
break;
case 2:
MessageBox.Show("黑棋双四禁手失败!");
break;
case 3:
MessageBox.Show("黑棋长连禁手失败!");
break;
case 4:
if (stoneflag)
{
MessageBox.Show("黑棋胜利!");
}
else
{
MessageBox.Show("白棋胜利!");
}
break;
case 5:
MessageBox.Show("平局!");
break;
}
//重新开始!
Start();
return;
}
else
{
//交换当前棋子颜色
stoneflag = !stoneflag;
}
//测试
//MessageBox.Show(Rule.Result(m,n,arrchessboard).ToString());
}
/// <summary>
/// 人下棋
/// </summary>
/// <param name="x"></param>
/// <param name="y"></param>
public void PersonDownStone(int x,int y)
{
if (x < 600 && y < 600)
{
//取下棋点
int m = (int)Math.Floor(x/40.0);
int n = (int)Math.Floor(y/40.0);
if (!Rule.IsExist(m,n,arrchessboard))
{
DownStone(m,n);
ComputerDownStone();
}
}
}
/// <summary>
/// 电脑下棋
/// </summary>
private void ComputerDownStone()
{
int m,n,count=0;
do
{
puter.Down(arrchessboard);
m =puter.X;
n =puter.Y;
count++;
if (count > 100)
{
MessageBox.Show("异常!");
Start();
return;
}
}
while(Rule.IsExist(m,n,arrchessboard));
DownStone(m,n);
}
/// <summary>
/// 开始(是电脑(true)还是人(false))
/// </summary>
/// <param name="playfirstflag">判断先手玩家(是电脑(true)还是人(false),先手下黑棋)</param>
public void Start(bool playfirstflag)
{
mplayfirstflag = playfirstflag;
Start();
}
/// <summary>
/// 开始
/// </summary>
private void Start()
{
Initialization();
//构造电脑对象
puter = new Computer(mplayfirstflag);
//画棋盘
Draw();
if (mplayfirstflag)
{
ComputerDownStone();
}
}
/// <summary>
/// 初始化
/// </summary>
private void Initialization()
{
//置当前要走的棋为黑棋(黑棋先走)
stoneflag = true;
//把棋盘所有位置置为空(未下子)
for(int i=0;i<15;i++)
{
for(int j=0;j<15;j++)
{
arrchessboard[i,j] = 2;
}
}
//清空历史记录堆栈
mStarckHistory.Clear();
//构造棋子对象
stone = new Stone(mg);
}
}《约客》的翻译!!急!
黄梅时节家家雨,
青草池塘处处蛙。
有约不来过夜半,
闲敲棋子落灯花。
在一个烟雨迷蒙的夜晚,乡村池塘中传来阵阵蛙鸣。
直到半夜诗人也没有等来他约请的朋友,只好一个人伴着昏黄的油灯,无聊地敲着棋子,棋子震落了灯花。
vans型号怎么看?
Vans最为经典的鞋款莫过于Old Skool 和 Sk8-Hi,如今走到大街上随处可见两者的身影,而其中最多的依然还是黑白配色的经典鞋款。
Vans Old Skool 经典黑白配色在国内售价495人民币,国外售价60美元,而它正是 “经典即黑白” 这句话的出处,鞋身由前后黑色麂皮,以及侧面帆布构成,通过白色的车线勾勒出鞋型的大致轮廓,鞋带、Sidestripe 以及大底包边全都纯白。
如此色彩使得其几乎成为百搭的鞋款,无论是怎样的造型,几乎都能穿着一双Old Skool呈现出最完美的街头型格,因而也成为当今潮人鞋柜中必备之选。
其细节上依然完美,譬如Sidestripe侧边条纹就用到皮革质地,内里猪皮材质的使用能够让鞋款穿着更为舒适,大底包边的水线点缀以黑色,遥相呼应鞋身。
扩展资料:
著名运动休闲品牌VANS, 成立于1966年,美国加利福尼亚州安纳海姆市。
制造CASUAL FOOTWEAR而入手下手的,其品牌下生产的款式深受美国、日本、香港等地时尚年轻人的喜爱。
第一双 VANS鞋的鞋底由钻石纹组成,此后Paul 为VANS鞋的鞋底加上直线纹,令鞋底更贴地,防止滑倒,主要使用保守的软化制造方式(硫化鞋底)使鞋子具有坚硬的组织。
Vans是极限运动和年轻文化的领军品对于Vans来说,极限运动=滑板,冲浪,滑雪,尾波滑水,小轮车,越野摩托车;年轻文化=极限运动,艺术,音乐,街头文化。
参考资料来源:百度百科-VANS星棋布地怎么理解,什么意思?
布:
分布
◎ 星罗棋布 xīngluó-qíbù
[spread all over the place be dotted like stars in the sky and scattered like the pieces on a chessboard] 像群星罗列,像棋子分布。
形容数量多而广
群圉牧监,星罗棋布。
--明· 陈琏《皆山轩赋》
易探云服务器怎么过户/转让?易探云支持云服务器PUSH功能,该功能可将云服务器过户给指定用户。可带价PUSH,收到PUSH请求的用户在接收云服务器的同时,系统会扣除接收方的款项,同时扣除相关手续费,然后将款项打到发送方的账户下。易探云“PUSH服务器”的这一功能,可以让用户将闲置云服务器转让给更多需要购买的用户!易探云服务器怎么过户/PUSH?1.PUSH双方必须为认证用户:2.买家未接收前,卖家...
vpsdime上了新产品系列-Windows VPS,配置依旧很高但是价格依旧是走低端线路。或许vpsdime的母公司Nodisto IT想把核心产品集中到vpsdime上吧,当然这只是站长个人的猜测,毕竟winity.io也是专业卖Windows vps的,而且也是他们自己的品牌。vpsdime是一家新上来不久的奇葩VPS提供商,实际是和backupspy以及crowncloud等都是同一家公司...
野草云服务器怎么样?野草云是一家成立了9年的国人主机商家,隶属于香港 LucidaCloud Limited (HongKong Registration No. 2736053 / 香港網上查冊中心)。目前,野草云主要销售香港、美国的VPS、虚拟主机及独立服务器等产品,本站也给大家分享过多次他家的优惠了,目前商家开启了优惠活动,香港/美国洛杉矶CN2+BGP云服务器,1核1G仅38元/月起!点击...
chessboard为你推荐
ipad怎么分屏ipad分屏怎么用,ipad分屏使用方法showwindowShowWindow和EnableWindow区别网关和路由器的区别网关和路由器的区别和联系在webcrackwebcrack4.0电子日历我想做个项目 如何在电子日历中进行时间的选择tvosairpods什么意思 airpods连接方式是怎样的editplus破解版DBTools Manager Professional 破解版在哪里可以下载?网页微信客户端什么叫微信网页版?和电脑版是一回事吗?有b吗有什么好看的b级片民生电商陆金所、民生电商哪个更适合投资?
美国vps主机 万网域名空间 最新代理服务器地址 krypt 香港服务器99idc windows主机 isatap 个人空间申请 骨干网络 国外免费全能空间 秒杀预告 柚子舍官网 域名评估 可外链相册 免费美国空间 metalink 免费网页申请 中国电信测速器 网购分享 我的世界服务器ip 更多