C#坦克大战代码(电脑版本跟手机版本)

4星(超过85%的资源)
所需积分/C币:9 2011-03-03 15:32:54 73KB APPLICATION/X-RAR
21
收藏 收藏
举报

http://blog.csdn.net/xiaoxiao108/archive/2010/12/18/6084473.aspx 记得在大学学java时,同学在下载了很多java的视频,看到里面有些是介绍简单游戏开发的,马士兵老师讲的,挺感兴趣的。一起看了看视频写了写程序。现在毕业了,因为工作中用的是C#,最近很想拿C#把以前写的坦克大战重写下,来熟悉熟悉C#的基本语法。 程序很简单,跟java代码相比没有多大改动 开发环境 vs2008 实现方法如下 1.在form中添加一个panel,在panel的 Paint方法中得到Graphics对象 2.通过Graphics对象再panel画出坦克,子弹等相关内容 3.添加timer控件 来控制panel的重画 实现坦克,子弹的运动 4.根据电脑按下的方向键,确定出坦克的方向,panel重画时根据坦克的方向修改坦克的X,Y轴坐标,来实现坦克的移动 5.通过Rectangle的IntersectsWith函数来进行碰撞检测,实现子弹打击坦克 具体实现代码 1.在项目里面添加枚举类型 /// /// 表示方向的的枚举类型 /// public enum Direction { L, U, D, R, STOP } 2.添加子弹类的相关常量,属性 /// /// 子弹X轴的速度,单位PX /// public static int XSPEED = 10; /// /// 子弹Y轴的速度,单位PX /// public static int YSPEED = 10; /// /// 子弹的宽度 /// public static int WIDTH = 10; /// /// 子弹的高度 /// public static int HEIGHT = 10; /// /// 子弹的坐标 /// int x, y; /// /// 子弹的方向 /// Direction dir; /// /// 子弹的存活状态 /// private bool live = true; /// /// TankClient窗体实例 /// private TankClient tankClient; /// /// 敌我双方的标记 /// private bool good; 3.添加draw方法来画出子弹 public void Draw(Graphics g) { if (!live) { tankClient.missiles.Remove(this); return; } //通过画椭圆函数在界面上显示子弹 g.FillEllipse(Brushes.Black, x, y, Missile.WIDTH, Missile.HEIGHT); Move(); } 4.添加子弹打击坦克的方法 public bool HitTank(Tank t) { //用IntersectsWith来检测两个矩形相碰撞 if (GetRectangle().IntersectsWith((t.GetRectangle())) && t.Live && t

...展开详情
立即下载
限时抽奖 低至0.43元/次
身份认证后 购VIP低至7折
一个资源只可评论一次,评论内容不能少于5个字
Davy 感谢分享,谢谢
2018-10-17
回复
wuxibm 代码比较详尽,可以运行
2015-06-02
回复
chenjly 对于面向对象编程的初学者来说,已经非常有参考价值了!
2015-04-17
回复
u010439694 可以运行,很有参考意义,谢谢分享
2014-12-25
回复
beiwangfengcheng 可以运行,很有参考意义,谢谢分享
2014-10-15
回复
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
  • 分享宗师

关注 私信
上传资源赚钱or赚积分
最新推荐
C#坦克大战代码(电脑版本跟手机版本) 9积分/C币 立即下载
1/0