C# Winform飞机大战小游戏源码

打印 上一主题 下一主题

主题 909|帖子 909|积分 2727




  
   作者:xcLeigh
文章地址:https://blog.csdn.net/weixin_43151418/article/details/144193015
  
  C# Winform飞机大战小游戏源码,飞机大战小游戏源码,窗体应用程序飞机大战小游戏源码,界面风格干净整齐,内容条理清楚,通过W-A-S-D控制飞机,K键发射子弹,被敌机子弹击中则镌汰1分并镌汰1点生命值,若我方子弹击中敌机则增加1分。碰撞检测:当玩家子弹击中敌机后,敌机爆炸,并播放爆炸音效。界面上有两个矩形条,分别表示生命值和得分;当生命值或得分减到0,游戏结束。这个源码让你快速搭建自己的应用程序,解释完备,代码规范,各种风格都有,代码上手简朴,代码独立,可以直接用程序打开,运行使用。也可直接点击EXE运行程序。
  一、设计来源

本文章是分类专栏下的【C#实战案例
】里面的一篇,专栏里面包括网站,窗体应用程序的源码,技能点解析等案列源码,让你更加掌握C#。持续更新中,欢迎大家关注,一起学习交换。
✂ 点击快速进入专栏
飞机大战小游戏解说

游戏规则:
        通过W-A-S-D控制飞机,K键发射子弹,被敌机子弹击中则镌汰1分并镌汰1点生命值,若我方子弹击中敌机则增加1分。碰撞检测:当玩家子弹击中敌机后,敌机爆炸,并播放爆炸音效。界面上有两个矩形条,分别表示生命值和得分;当生命值或得分减到0,游戏结束。
1.1 主界面

        飞机大战小游戏主界面,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),点击开始游戏图标进入游戏界面。

1.2 游戏运行界面

        飞机大战游戏运行界面,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),点击开始游戏图标进入游戏界面,通过W-A-S-D控制飞机,K键发射子弹,被敌机子弹击中则镌汰1分并镌汰1点生命值,若我方子弹击中敌机则增加1分。碰撞检测:当玩家子弹击中敌机后,敌机爆炸,并播放爆炸音效。界面上有两个矩形条,分别表示生命值和得分;当生命值或得分减到0,游戏结束。

1.3 游戏结束界面

        飞机大战游戏结束界面,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),点击开始游戏图标进入游戏界面,通过W-A-S-D控制飞机,K键发射子弹,被敌机子弹击中则镌汰1分并镌汰1点生命值,若我方子弹击中敌机则增加1分。碰撞检测:当玩家子弹击中敌机后,敌机爆炸,并播放爆炸音效。界面上有两个矩形条,分别表示生命值和得分;当生命值或得分减到0,游戏结束。

二、效果和源码

2.1 动态效果

    这里是完备的效果演示,可在此代码底子上更加完善功能,支持扩展自己的风格,可以删减内容,打造属于自己的飞机大战小游戏。

     C# Winform飞机大战小游戏源码
  
2.2 源代码

        这里是部分技能点的代码演示,更多代码,资源文件,见下面的 源码下载 ,里面有所有代码资源和相干说明。或者直接在这里 下载源码,如有其他技能题目,请私信博主,博主看到后第一时间复兴。


  • 显示我的飞机
  1. public static void MyPlaneShow(Graphics g)
  2. {
  3.     if (health > 0)
  4.     {
  5.         g.DrawImage(myPlaneImg, x, y);
  6.     }
  7.     else if (health <= 0 || score <= 0)
  8.     {
  9.         isGameOver = true;
  10.         g.DrawImage(myPlaneImg, 0, -300);
  11.         g.DrawImage(gameOver, 10, 260);
  12.     }
  13.     else if (isGetBlood && health <= 90)
  14.     {
  15.         health += 10;
  16.     }
  17. }
复制代码


  • 用键盘控制我方飞机移动
  1. //wasd控制移动方向
  2. public static void MyPlaneMove()
  3. {
  4.     if(isGameOver)
  5.     {
  6.         return;
  7.     }
  8.     if (IsKeyDown(Keys.A))
  9.     {
  10.         myPlaneImg = Resource.planeLeft;
  11.         if (x < 5)
  12.             x = 5;
  13.         x -= PLANE_OFFSET;
  14.     }
  15.     if (IsKeyDown(Keys.D))
  16.     {
  17.         myPlaneImg = Resource.planeRight;
  18.         if (x > 370)
  19.             x = 370;
  20.         x += PLANE_OFFSET;
  21.     }
  22.     if (IsKeyDown(Keys.W))
  23.     {
  24.         if (y < 5)
  25.             y = 5;
  26.         y -= PLANE_OFFSET;
  27.     }
  28.     if (IsKeyDown(Keys.S))
  29.     {
  30.         if (y > 530)
  31.             y = 530;
  32.         y += PLANE_OFFSET;
  33.     }
  34. }
复制代码


  • K键发出子弹
  1. public static void ProduceMybul()
  2. {
  3.     if (!MyPlane.isGameOver && MyPlane.IsKeyDown(Keys.K))
  4.     {
  5.         mybulList.Add(new MyBullet(MyPlane.x + 13, MyPlane.y - 10, 0));
  6.         if (MyPlane.isGetGun)
  7.         {
  8.             mybulList.Add(new MyBullet(MyPlane.x + 13, MyPlane.y - 8, 60));
  9.             mybulList.Add(new MyBullet(MyPlane.x + 7, MyPlane.y - 8, 30));
  10.             mybulList.Add(new MyBullet(MyPlane.x + 30, MyPlane.y - 12, 120));
  11.             mybulList.Add(new MyBullet(MyPlane.x, MyPlane.y - 7, 150));
  12.         }
  13.     }
  14. }
复制代码

源码下载

注:源码下载在文章头部也可以点击下载,跟这里的是一样的
C# Winform飞机大战小游戏源码(源码) 点击下载

更多优质源码分享



  • 【百篇源码模板】html5各行各业官网模板源码下载
  • 【模板源码】html实现酷炫美观的可视化大屏(十种风格示例,附源码)

  • 【VUE系列】VUE3实现个人网站模板源码
  • 【HTML源码】HTML5小游戏源码

  • 【C#实战案例】C# Winform贪吃蛇小游戏源码


   --------------- 业精于勤,荒于嬉 ---------------         

   --------------- 行成于思,毁于随 ---------------  
    

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

去皮卡多

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表