资源简介
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
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 55767 2011-03-01 18:00 WindowsFormsApplication1.rar
文件 45562 2011-03-01 18:04 SmartDeviceProject1.rar
----------- --------- ---------- ----- ----
101329 2
----------- --------- ---------- ----- ----
文件 55767 2011-03-01 18:00 WindowsFormsApplication1.rar
文件 45562 2011-03-01 18:04 SmartDeviceProject1.rar
----------- --------- ---------- ----- ----
101329 2
相关资源
- C#下基于POP3和SMTP协议的邮件收发归档
- java版本坦克大战源代码
- 坦克大战Java+实训报告
- 国密算法SM3_SM4.zip
- 一个简易版坦克大战 供java初学者学
- java坦克大战源码已加入声音图片
- java版坦克大战eclipse
- Java to C# Converter 破解版
- java多线程实现坦克大战游戏带声音图
- java实现坦克大战联机
- C#实现Java语言MD5withRSA/SHA256withRSA/SHA
- C#、C++、HTML5、JAVA、Python、数据结构与
- C# 制作的C/S Oracle 小型图书管理系统
- C#调用Java接口演示
- C#和java 之间基于Socket的通信
- java与C#的PBE加密
- C#调用JavaWebService(客户端)
- 局域网坦克大战源码Java版
- JAVA坦克大战游戏开发毕业论文
- Java to C# Converter V2.9 破解版
- C# to Java 代码转换工具(已破解)
- 坦克大战Java源码适合新手
- java调用C#封装的dll(jnacom)
- java调用C#封装的dll方法
- C++、VB、DELPHI、JAVA、C#调用DLL
- c#调用次世代AntiVC.dll 完整 复杂验证码
- JAVA坦克大战+源代码适合初学者
- C#调用java做成的webservice
- JAVA调用C#的DLL文件
- Java调用C#DLL
评论
共有 条评论