C#打飞机游戏
来源:互联网 发布:ubuntu安装monaco 编辑:程序博客网 时间:2024/06/11 12:30
游戏简介:地面有一个导弹车,可以发射导弹。天空上飞着飞机,导弹打到飞机时,游戏结束。
设计思路:
1,俩个定时器。一个用于飞机的飞行,一个用于导弹发射。
2,一个矩形的判断,若飞机矩形和导弹矩形有重叠就视为发生碰撞,游戏结束。
主要代码:
//飞机飞行
private void timer1_Tick(object sender, EventArgs e)
{
pictureBox1.Location = new Point(x, y);
x = x + 6;
if (x >= int.Parse(this.Size.Width.ToString()))
{
x = 0;
}
//以下语句判断飞机与导弹两个矩形是否交叠
Rectangle pictureBox1ScreenBounds = pictureBox1.Bounds;
Rectangle pictureBox3ScreenBounds = pictureBox3.Bounds;
bool intersected = pictureBox1ScreenBounds.IntersectsWith(pictureBox3ScreenBounds);
if (intersected) //如果打中,飞机为pictureBox1,导弹为pictureBox3
{
//首先停止飞行
timer1.Enabled = false;
timer2.Enabled = false;
pictureBox4.Location = pictureBox3.Location; //复制位置'
//置为游戏结束状态
pictureBox1.Visible = false;
pictureBox3.Visible = false;
pictureBox2.Visible = false;
btnPlay.Enabled = false;
pictureBox4.Visible = true;
}
//导弹发射
//鼠标放在别的位置,导弹车移位
private void pictureBox2_MouseDown(object sender, MouseEventArgs e)
{
mouse_offset = new Point(-e.X, -e.Y);//移动导弹车用的偏移量
pictureBox3.Visible = true; //显示图片
pictureBox3.Location = new Point(pictureBox2.Location.X+pictureBox2.Width-pictureBox3.Width, pictureBox2.Location.Y); ;
DaoDanloc = pictureBox3.Location; //记录位置
timer2.Enabled = true; //开始计时器
}
//捕获导弹车的位置,模拟导弹发射。
private void timer2_Tick(object sender, EventArgs e)
{
Point currentLoc = pictureBox3.Location;
pictureBox3.Location = new Point(pictureBox3.Location.X,pictureBox3.Location.Y-6);
if (pictureBox3.Location.Y<=0) //超出范围
{
pictureBox3.Location =DaoDanloc;
}
}
}
- C#打飞机游戏
- 人工智能--打飞机游戏
- 【Unity3D 游戏】 打飞机(仿微信打飞机) 源码
- 发布一个打飞机游戏
- 摄像头互动游戏-打飞机
- 开源游戏 “打飞机”
- Python开发打飞机游戏
- Pygame开发打飞机游戏
- 打飞机游戏相关策划
- 汇编写的打飞机游戏
- libgdx 打飞机游戏实现教程
- c++游戏设计五:打飞机
- unity打飞机游戏简单制作
- C/C++ 控制台打飞机游戏
- javascript游戏之打飞机、接礼物
- 练习开发unity3d打飞机游戏
- jQuery打飞机游戏代码下载
- [Unity]2D打飞机游戏
- http://bbs.dospy.com/thread-545779-1-1.html
- http://bbs.dospy.com/thread-9113535-1-236-1.html
- 努力学习
- Ford-Fulkerson
- 使用C#写游戏--推箱子
- C#打飞机游戏
- 学习
- WinForm 按钮使用
- 安装FreeBSD,grub2丢失
- 自学号枯燥,学成不容易!
- 一回生二回熟
- 11月9日晚7点在线课堂:Flex 4与服务器端通信方式深度剖析
- T-SQL 基本语句考题
- 给text 添加文本,用AppendText()