基于silverlight 1.0的中国象棋游戏
这些天一直在学习silverlight1.0。
了解了基本的silverlight1.0基本开发环境和配置。感觉还是挺有意思的。
在看了4天的SDK文档后,决定自己来做一个中国象棋游戏,于是有了下面一系列的开发流程图。
第一天的效果图:勉强适应了blend,这个工具还是很好用的。大家看我设计的棋子图案,是不是很有立体感,呵呵。这不是用的别人的图片,而是用XMAL描述出来的。
这是第二天的效果图。所有的棋子都摆上了棋盘,这些棋子并不在原始XMAL文件中,而是启动这个程序以后,用js代码动态地添加上去的。这样原始的XMAL文件能简单小巧很多。更重要的是省事多了:)
第三天的效果图,花了2天的时间来设计UI还是很值得的,至少我觉得比较漂亮。第三天我用js代码开始写程序的逻辑。大家看到的这个效果图,绿色的点指示“炮”可以走的格子。
第一次写js代码,非常不习惯,特别是按照c#的思想设计出来的规则判断流程用js来实现挺别扭的。到现在也没有明白如何用多态来动态绑定代码的行为,最后拿很憋足的代码实现的。
以下是v0.1版本的截图:
程序比较简单,就是玩家2个人轮流下棋。移动棋子需要点击鼠标以后拖拽到你希望的位置再放开鼠标即可。
在这段开发过程中,学到了许多的东西,让我感受最深的在于程序界面的设计和程序逻辑js代码的书写。
有兴趣的朋友可以下载程序,然后安装silverlight2.0 runtime(beta版本也可)再点击Default.html即可(在要IE中运行)。
最后还有2个疑问:
- silverlight1.0程序(基于js)发布以后基本等于开源,有没有办法保护呢?
- silverlight1.0程序似乎不支持中文的显示,但是安装2.0的runtime就好了。这是1.0的bug吗?
希望能得到各位看客的解答。谢谢