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] 像群星罗列,像棋子分布。
形容数量多而广
群圉牧监,星罗棋布。
--明· 陈琏《皆山轩赋》
如今我们很多朋友做网站都比较多的采用站群模式,但是用站群模式我们很多人都知道要拆分到不同IP段。比如我们会选择不同的服务商,不同的机房,至少和我们每个服务器的IP地址差异化。于是,我们很多朋友会选择美国多IP站群VPS商家的产品。美国站群VPS主机商和我们普通的云服务器、VPS还是有区别的,比如站群服务器的IP分布情况,配置技术难度,以及我们成本是比普通的高,商家选择要靠谱的。我们在选择美国多IP...
inlicloud怎么样?inlicloud(引力主机)主要产品为国内NAT系列VPS,目前主要有:上海联通NAT(200Mbps带宽)、宿州联通NAT(200Mbps带宽)、广州移动NAT(200Mbps带宽)。根据官方的说法国内的NAT系列VPS不要求备案、不要求实名、对中转要求也不严格,但是,禁止任何形式的回国!安徽nat/上海联通/广州移动/江门移动nat云主机,2核1G/200Mbps仅...
ReliableSite怎么样?ReliableSite好不好。ReliableSite是一家成立于2006年的老牌美国商家,主要经营美国独立服务器租赁,数据中心位于:洛杉矶、迈阿密、纽约,带宽1Gbps起步,花19美元/月即可升级到10Gbps带宽,月流量150T足够各种业务场景使用,且免费提供20Gbps DDoS防护。当前商家有几款大硬盘美国独服,地点位于美国洛杉矶或纽约机房,机器配置很具有...
chessboard为你推荐
g2gB2E和G2E分别是什么意思md5值文件名后缀为MD5是什么文件。李昊天铠甲勇士2刑天的李昊天秘密是什么拓扑关系什么是矢量数据、栅格数据、拓扑关系?flowplayer如何编译flowplayer源码spawning急救!编好C++程序后(确认无误),再编译时总出现error spawning 是什么意思?是不是系统出了问题php论坛怎样快速在个人电脑上建立一个自己的PHP论坛服务器?什么是句柄按键精灵的句柄是什么?12306注册12306网站账户注册基础设施即服务基础设施行业的定义是什么?具体包含哪些行业?
美国虚拟主机购买 windows虚机 过期域名查询 国外vps主机 如何查询域名备案号 国外免费域名网站 独享100m 5折 justhost 特价空间 panel1 dd444 申请个人网站 hostker hinet 如何用qq邮箱发邮件 卡巴斯基免费试用 香港新世界中心 爱奇艺会员免费试用 网购分享 更多