摘要: dragon.zip: x01.Game.Dragon 的相关资源文件。x01.Weiqi: 实现了提子算法,保存棋谱,网络对弈和人机大战的部分位置寻找。CombineFile: 文本文件合并。Cryptography: 加密 UTF8 文件。阅读全文
posted @ 2010-12-05 09:26 x01 阅读(109) 评论(0) 编辑
摘要: 1.游戏编程,需要一个地图编辑器。站在前人肩上,自己写一个,倒也不难。其效果图如下: 只需从左下的 Tiles 面板中选择一个 Tile,在右边的面板中绘制即可。保存为同名的两个文件 file.bmp, file.xml。打开时选择 file.xml 文件。2.界面设计不详述,可在效果图上点击右键,将其另存为桌面上作为参照。其完整代码如下:MainForm public partial class MainForm : Form, IMessageFilter { int paletteColumes = 5, paletteSelectedIndex = 0; ...阅读全文
posted @ 2012-05-14 13:48 x01 阅读(859) 评论(0) 编辑
摘要: 只要想射中,就能射中,所以叫箭术表演。1.给 Sprite 类添加一属性:public boolAlive { get; set; } 因为要射中恐龙,所以还需一碰撞检测函数 HasCollision(),代码如下:HasCollision() public bool HasCollision(ref Sprite other) { return Bound.IntersectsWith(other.Bound); }2.现在要修改 MainForm 类了。主要是添加了 arrow,archer 字段。变化的地方,即注释的地方。完整...阅读全文
posted @ 2012-05-10 10:11 x01 阅读(243) 评论(0) 编辑
摘要: 与其白手起家,不如学习高手。恐龙飞行是个不错的入门例子,实现如下。1.运行 VS2010,新建 WinForm 项目 x01.Game.Dragon,将 Form1.cs 改名为 MainForm.cs,在 MainForm 类中,添加字段 bool isOver = false; 添加引擎函数 Run(),代码如下:Run()void Run(){ while (!isOver) { Application.DoEvents(); } Application.Exit();} 添加 override 函数 OnKeyDown(),代码如下:OnKey...阅读全文
posted @ 2012-05-09 21:03 x01 阅读(954) 评论(2) 编辑
摘要: Linus 的争论 Linus 和 Tanenbaum 关于宏内核,微内核曾有小小争论。其实,linux 为了实用,采用更有效率的宏内核;minix 为了教学,采用更优雅的微内核,都是恰当之举,实无争论的必要! 有位捐献者对 Linus 使用纯 C 和大量的宏感到不理解:为什么不使用 C++ 和函数呢?于是,争论 再次发生!其实,这是系统开发和应用开发的差别。据说,开发 unix 的一个家伙宣称:C 函数的调用很 cheap,于是大家写了大量的小函数。但后来发现,函数调用的开销高达 50%。为什么会如此呢? 除了多余的 push,pop 外,还要进行昂贵的两次转移:call,ret。 明...阅读全文
posted @ 2012-02-08 22:04 x01 阅读(142) 评论(0) 编辑
摘要: 随心而动,改变世界!在此,沉痛悼念 乔布斯!多核时代,并行时代!而函数式编程的不变性,具有很大的优势。F# 更能轻松集成 C# 的大部分功能,很有学习的必要。学习的方法,与其空谈理论,不如来个实际的例子更带劲。刚学了个画饼图,推荐给大家。运行 VS2010 SP1,新建项目选择 F#应用程序 ,在 program.fs 中输入以下代码,按 F5 即可。勿忘添加相关引用!View Code 1 open System 2 open System.IO 3 open System.Drawing 4 open System.Windows.Forms 5 6 let main = ...阅读全文
posted @ 2011-10-10 14:41 x01 阅读(483) 评论(0) 编辑
