随笔分类 - .NET 系列 / 网络对战象棋系列
Silverlight+WCF 新手实例 象棋 WCF通讯跨域(十五)
摘要:这节我们把WCF独立一个服务出来,不寄放在Web应用程序中。我们再开一个项目来讲解,上节名称叫Hellow,这节名称起World:文件—》新建->项目-》Silverlight应用程序-》起名叫:World确定后还是:World和World.web应用程序,两个项目我们对着解决方案右键,添加新建项目:建立WCF 服务应用程序->输入名称为:WorldService:接着我们...
阅读全文
Silverlight+WCF 新手实例 象棋 WCF通讯基础(十四)
摘要:从此节开始,我们要开始WCF通讯了。本游戏的只是基于WCF最基础的应用,没有WCF深奥的知识,相关的深奥知识请关注专业的WCF系列文章。我们先来实现一个Silverlight里调用Hellow的尝试:我们新建一个新的Silverlight应用程序:文件->新建->项目->Silverlight应用程序->Hellow建立后就一个Hellow应用程序和一个Helow.web的...
阅读全文
Silverlight+WCF 新手实例 象棋 游戏房间列表(十三)
摘要:热到飚血了。。。上次创建了一房间了,现在要创建多个房间了。我们像添加一个Chess类来创建很多棋子一样,现在创建一个Game类来创建很多房间:Code文件夹右键,添加新建项->类->Game.cs,同样的,名称空间去掉[.Code][代码]先上一个房间列表的属性:[代码]接下来就是一个创建房间的方法了: Code highlighting produced by Actipro Cod...
阅读全文
Silverlight+WCF 新手实例 象棋 游戏房间(十二)
摘要:加快手步,写多一篇,这节来创建游戏房间:先上一张以前的房间图:构成啊,就是上面文字,下面三个矩形框:昨天调整了一下样式,看下新的房间图:哪个好看点这个很难说的清了,不过新的图应用了新的brush画刷填充,当然了,你也可以用图片填充,后面可以教你怎么用图片,当然了,为了好看,用图片也不为过的,去QQ游戏大厅截两张小图就搞定了,不过这步就留给大伙自己去截了。现在开始代码了:我们要创建游戏房间类了,不过...
阅读全文
Silverlight+WCF 新手实例 象棋 登陆与转向(十一)
摘要:好了,从这节起,我们可能要暂时远离我们的象棋库了,因为我们要开始进入一些周边的事情了。像登陆啊,登陆后创建房间大厅啊,进入后除了象棋还有用户列表,聊天窗口等等,中间少不了WCF通讯。好了,开始登陆小节,先上一张小图:看,多简洁,一个ID一个昵称一个登陆就完了。虽然简洁,可是也会有很多想法的。不过想法待会再说,新建页面先:对着Silverlight应用程序右键-》添加新建项-》Silverlight...
阅读全文
Silverlight+WCF 新手实例 象棋 棋子移动-规则[附加上半盘限制](十)
摘要:上上一节,我们对棋子的下半盘棋子做了所有的规则限制,因为我们下棋的总是用下半盘的棋子来下,总没人用上半盘棋来下那么高境界的吧。不过这节简单追加点代码,让那些企图高境界的人士可以临时性的自己和自己下。好了,要为上半盘棋子也做限制,所以我们要知道棋子是归属于上半盘还是下半盘的,这里,我们为棋子类Chessman增加一个属性,IsUp,是否上半盘棋,反之就下半盘了。初始为该属性赋值也相当的简单: Cod...
阅读全文
Silverlight+WCF 新手实例 象棋 介绍II(九)
摘要:继上次介绍发图以来,除了一边写文章介绍以外,还进一步不断的完善,并增加了新的功能,现在进一步上图,对目前情况的进展做一下简单介绍:一:登陆界面,没变:二:进入后是房间大厅,没变:进房间来一张后期总体图:从这张总体图上可以看出,新增加了下面的内容:1。按钮事件”求和、认输、返回大厅、退出系统“2。棋谱及棋谱回放,能过该回放能定义棋子自动回放,并可定义棋子每步的间隔时间。3。在...
阅读全文
Silverlight+WCF 新手实例 象棋 棋子移动-规则[将、马、士、相、炮](八)
摘要:这节来完成剩下五个种子的规则。先来将吧将:只能走一步,而且只能在九宫内行走看代码,还是和兵的一个样。[代码]下面限制九宫内判断:[代码]完了,将的验证太简单了,句合起来就是:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--caseChessType.J...
阅读全文
Silverlight+WCF 新手实例 象棋 棋子移动-规则[兵、车](七)
摘要:上两节实现了棋子的两种走法,吃子和没移动到线交叉点。不过我们都是没有规则的走,这节为棋子的走法增加规则,棋的规则我就不多说了,基本要找个不会下象棋的很难,就是找到的估计也不会看这文章。当我们移动棋子的时候,总是要判断一下移动是不是合规则的,合规则的才让下,不合规则的就不能下了,什么马象田马日车炮跑,将军卫士陷九宫,[本人涅造句子]之类的。好了,原始冲动,新建棋子规则类,也是本棋子裤的最后一个类了:...
阅读全文
Silverlight+WCF 新手实例 象棋 棋子移动-线交叉点(六)
摘要:上一节,我们给棋子赋于了鼠标点击事件,并通过故事板Storyboard 来移动棋子,同时实现了吃棋子。现在我们在实现鼠标在棋盘上点击,然后棋子就移动到那去。好了,鼠标在棋盘上点击,这里要为点击的棋盘,其实就是最外面那个Panel容器啦,还是加上一个MouseLeftButtonDown事件。我们回到Chess类,因为这里是第一手Canvas传进来的地方,我们在Chess的构造函数里,为Panel添...
阅读全文
Silverlight+WCF 新手实例 象棋 棋子移动-吃子(五)
摘要:上一节,我们的棋子就是一个Canvas,里面add进了一个Ellipse圆圈和TextBlock字想想我们是怎么下棋的,要先选中棋子吧,选中后,随便找个地方点,棋就会自动移过去。所以,这里就产生了两件事,一是选中,二是移动。要选中,其实就是选中棋子,选中棋子就是选中Canvas了。于是,我们为Canvas增加一个鼠标点击事件。让我们回到棋子类Chessman的Draw方法里,为chessman添加...
阅读全文
Silverlight+WCF 新手实例 象棋 棋子定位与象棋类(四)
摘要:上节创建显示了一颗棋子,由于没有margin属性,所以只能靠边站。现在,我们创建一个象棋类,让它包括棋盘和棋子,同时附加几个常用函数。还是对着Silverlight类库项目右键添加类:Chess.cs[代码]既然要包括象棋当然是要包括棋盘和棋子了,于是我们为之加两个属性,棋子有很多颗,所以用List列表。Code highlighting produced by Actipro CodeHighl...
阅读全文
Silverlight+WCF 新手实例 象棋 棋子(三)
摘要:棋盘上有棋子,棋子应该还有一些属性,按原始冲动新建一个棋子类。上google翻译下棋子E文叫什么,查到了叫Chessman,于是对着项目右键添加一个Chessman.cs[代码] ///http://cyq1162.cnblogs.com////</summary>publicclassChessman{}乱七八糟:想了想,要画棋子还是找图片好,图片也不是不好找,网上一搜还是有的,只是...
阅读全文
Silverlight+WCF 新手实例 象棋 棋盘(二)
摘要:1.先新建一个和棋子相关的类库打开VS2010后->新建->项目->Silverlight类库,名称就定为"ChessLib"新建一个类名为Board.cs,棋盘类棋盘类 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--usingSy...
阅读全文
Silverlight+WCF 新手实例 象棋 介绍(一)
摘要:先发一下目前实例情况的截图:1.登陆界面:2.进入房间大厅三种颜色,红色为红色玩家,黑色为黑色玩家,蓝色为主旁观者。点击就进去。3.点击红色进入主界面目前缺少系统消息文字输出,棋谱信息,棋谱回放,聊天窗口。及后期加入单机对战。4.另一浏览器窗口黑色玩家登陆。5.黑色玩家进入游戏大厅此时红色进入的位置已变成蓝色,点击的后会提示该位置已有玩家。6.黑色玩点黑色块进去7。此时红色家收到提示,并可以开始游...
阅读全文
Silverlight 鼠标与键盘事件注意点
摘要:鼠标点: 在Silverlight的控件里,你从鼠标里敲,总是能敲出很多的事件来,可是有一些事件是无效的。 比如:拖出一个圆圈Ellipse元素,它只有固定的只个事件: Loaded, MouseEnter, MouseLeave, MouseLeftButtonDown, MouseLeftButtonUp, MouseMove 但我尝试通过MouseLeftButtonDown, Mous...
阅读全文
sliverlight--无法启动调试。
摘要:安装完VS2010新建了一个Silverlight看一下,默认是Silverlight 3 版本在博客园里看了一篇文章,进入应用页面后,按提示下载Silverlight 4版本并安装。重新回到开发环境,按F5运行,出现以下错误:未安装 Silverlight Developer 运行时。请安装一个匹配版本。经过搜寻,有两种方法:1。不调试,直接运行的烂方法:对着SilverlightApplica...
阅读全文