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] 像群星罗列,像棋子分布。
形容数量多而广
群圉牧监,星罗棋布。
--明· 陈琏《皆山轩赋》
近日华纳云发布了最新的618返场优惠活动,主要针对旗下的免备案香港云服务器、香港独立服务器、香港高防御服务器等产品,月付6折优惠起,高防御服务器可提供20G DDOS防御,采用E5处理器V4CPU性能,10Mbps独享CN2 GIA高速优质带宽,有需要免备案香港服务器、香港云服务器、香港独立服务器、香港高防御服务器、香港物理服务器的朋友可以尝试一下。华纳云好不好?华纳云怎么样?华纳云服务器怎么样?...
我们先普及一下常识吧,每年9月的第一个星期一是美国劳工节。于是,有一些服务商会基于这些节日推出吸引用户的促销活动,比如RackNerd有推出四款洛杉矶和犹他州独立服务器,1G带宽、5个独立IP地址,可以配置Windows和Linux系统,如果有需要独立服务器的可以看看。第一、劳工节促销套餐这里有提供2个套餐。两个方案是选择犹他州的,有2个方案是可以选择洛杉矶机房的。CPU内存SSD硬盘配置流量价格...
云基yunbase怎么样?云基成立于2020年,目前主要提供高防海内外独立服务器,欢迎各类追求稳定和高防优质线路的用户。业务可选:洛杉矶CN2-GIA+高防(默认500G高防)、洛杉矶CN2-GIA(默认带50Gbps防御)、香港CN2-GIA高防(双向CN2GIA专线,突发带宽支持,15G-20G DDoS防御,无视CC)。目前,美国洛杉矶CN2-GIA高防独立服务器,8核16G,最高500G ...
chessboard为你推荐
ipad怎么分屏ipad怎样分屏操作系统bloomfilter如何用Java写一个爬虫策略组组策略完全使用方法representspublic class是什么意思webcrack我用WebCrack4 在破解路由器密码的时候为什么在破解密码的中途自动关闭掉李昊天铠甲勇士刑天中人物资料jql建筑设计图纸上JQL 梁,是不是地下正负零基础梁?急急!spawning急救!编好C++程序后(确认无误),再编译时总出现error spawning 是什么意思?是不是系统出了问题色库赤峰中色库博红烨锌业有限公司就是冶炼厂在 赤峰的 什么地方,一 人知道吗???faq是什么意思在国际贸易中“FAQ”代表的是什么意思
域名注册godaddy 老域名全部失效请记好新域名 wordpress主机 suspended 标准机柜尺寸 建站代码 panel1 申请个人网站 怎么测试下载速度 phpmyadmin配置 hdd 如何注册阿里云邮箱 web服务器搭建 空间租赁 江苏双线 杭州电信 美国代理服务器 百度新闻源申请 侦探online studentmain 更多