Unity3D实现飞机大战游戏(2)

本文为大家分享了Unity3D飞机大战游戏第一部分的实现代码,供大家参考,具体内容如下

让飞机可以发射子弹

准备工作:

1、将子弹设置成预制体
2、在飞机下新建一个子物体Gun

3、调整好位置以后,将子弹设置成预制体

//发射子弹的速率
public float rate = 0.2f;
public GameObject bullet;//子弹的类型
//发射子弹的方法
public void fire()
 {
  //初始化一个子弹预制体
  GameObject.Instantiate(bullet, transform.position, Quaternion.identity);
 }

 public void openFire(){
  //每隔多长时间使用发射子弹的方法
  InvokeRepeating("fire", 0, rate);
 }
 //ctrl+shift+m添加生命周期函数
 private void Start()
 {
  openFire();
 }

敌机的制作与运动

1.将敌机放入到游戏场景当中,给敌机添加脚本
2.敌机应当拥有自己的血量和速度,且向下移动
3.当敌机在游戏界面外后,销毁敌机

//默认血量
public int hp = 1;
//默认速度
public float speed = 2;
 // Update is called once per frame
 void Update()
 {
  //飞机向下移动
  this.transform.Translate(Vector3.down*speed*Time.deltaTime);
  if (this.transform.position.y <= -5.6f)
  {
   Destroy(this.gameObject);
  }
 }

奖励物品

public int type;//表示子弹的类型
public float speed = 1.5f;//奖励物品下落速度
// Update is called once per frame
void Update()
 {//让其进行下降
  this.transform.Translate(Vector3.down * speed * Time.deltaTime);
  //如果出了游戏边界区域以后销毁
  if (this.transform.position.y <= -4.5f)
  {
   Destroy(this.gameObject);
  }
 }

随机生成子弹和敌机

1.在游戏场景上方新建一个空物体,让其位置处生成敌机和奖励物品,将其移到屏幕外
2.将敌机和奖励物品设置为预制体Prefabs

//第0号敌机
public GameObject enemy0Prefab;
//第1号敌机
public GameObject enemy1Prefab;
//第二号敌机
public GameObject enemy2Prefab;
//奖励物品的预制体
public GameObject award0Prefab;
public GameObject award1Prefab;
//敌机生成的速率
public float enemy0Rate=0.5f;
public float enemy1Rate = 5f;
public float enemy2Rate = 8f;
//奖励物品生成的速率
public float award0Rate = 7f;
public float award1Rate = 10f;
 // Start is called before the first frame update
 void Start()
 {
  InvokeRepeating("creatEnemy0", 1, enemy0Rate);
  InvokeRepeating("creatEnemy1", 5, enemy1Rate);
  InvokeRepeating("creatEnemy2", 8, enemy2Rate);
  InvokeRepeating("creatAward0", 15, award0Rate);
  InvokeRepeating("creatAward1", 18, award1Rate);
 }
 //生成第0号敌机
 //位置信息的x信息应当要随机生成
 public void creatEnemy0()
 {
  float x = Random.Range(-2.15f, 2.15f);
  Instantiate(enemy0Prefab, new Vector3(x,transform.position.y,0), Quaternion.identity);
 }

 public void creatEnemy1()
 {
  float x = Random.Range(-2f, 2f);
  Instantiate(enemy1Prefab, new Vector3(x, transform.position.y, 0), Quaternion.identity);
 }
 public void creatEnemy2()
 {
  float x = Random.Range(-1.5f, 1.5f);
  Instantiate(enemy2Prefab, new Vector3(x, transform.position.y, 0), Quaternion.identity);
 }
 public void creatAward0()
 {
  float x = Random.Range(-2f, 2f);
  Instantiate(award0Prefab, new Vector3(x, transform.position.y, 0), Quaternion.identity);
 }
 public void creatAward1()
 {
  float x = Random.Range(-2f, 2f);
  Instantiate(award1Prefab, new Vector3(x, transform.position.y, 0), Quaternion.identity);
 }

更多有趣的经典小游戏实现专题,分享给大家:

C++经典小游戏汇总

python经典小游戏汇总

python俄罗斯方块游戏集合

JavaScript经典游戏 玩不停

javascript经典小游戏汇总

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Unity3D实现飞机大战游戏(1)

    本文为大家分享了Unity3D飞机大战游戏第一部分的实现代码,供大家参考,具体内容如下 实现背景轮播 1.首先找两个背景图片,让两张图片竖直摆放且没有间隔 2.两个图片的下降的播放速度应当同步 public float moveSpeed = 3f;//指的是在unity里的移动速度 // Update is called once per frame void Update() { this.transform.Translate(Vector3.down * moveSpeed *Time.

  • Unity3D实现飞机大战游戏(2)

    本文为大家分享了Unity3D飞机大战游戏第一部分的实现代码,供大家参考,具体内容如下 让飞机可以发射子弹 准备工作: 1.将子弹设置成预制体 2.在飞机下新建一个子物体Gun 3.调整好位置以后,将子弹设置成预制体 //发射子弹的速率 public float rate = 0.2f; public GameObject bullet;//子弹的类型 //发射子弹的方法 public void fire() { //初始化一个子弹预制体 GameObject.Instantiate(bulle

  • python实现飞机大战游戏

    飞机大战(Python)代码分为两个python文件,工具类和主类,需要安装pygame模块,能完美运行(网上好多不完整的,调试得心累.实现出来,成就感还是满满的),如图所示: 完整代码如下: 1.工具类plane_sprites.py import random import pygame # 屏幕大小的常量 SCREEN_RECT = pygame.Rect(0, 0, 480, 700) # 刷新的帧率 FRAME_PER_SEC = 60 # 创建敌机的定时器常量 CREATE_ENEM

  • 500行代码使用python写个微信小游戏飞机大战游戏

    这几天在重温微信小游戏的飞机大战,玩着玩着就在思考人生了,这飞机大战怎么就可以做的那么好,操作简单,简单上手. 帮助蹲厕族.YP族.饭圈女孩在无聊之余可以有一样东西让他们振作起来!让他们的左手 / 右手有节奏有韵律的朝着同一个方向来回移动起来! 这是史诗级的发明,是浓墨重彩的一笔,是-- 在一阵抽搐后,我结束了游戏,瞬时觉得一切都索然无味,正在我进入贤者模式时,突然想到,如果我可以让更多人已不同的方式体会到这种美轮美奂的感觉岂不美哉? 所以我打开电脑,创建了一个 plan_game.py-- 先

  • python实现飞机大战游戏(pygame版)

    简介 使用python实现pygame版的飞机大战游戏: 环境:Windows系统+python3.8.0 游戏规则: 1.点击"PLAY"或者按键"P"开始游戏: 2.敌机根据设置频率从顶部随机位置生成,生成后向下移动: 3.飞船在底部中间生成,玩家使用上下左右键控制飞船移动,敲击空格键发射子弹: 4.子弹打到敌机,该敌机产生爆炸效果并累计分数到右上角: 5.消灭10只飞机后,等级升高,敌机生成频率变快,下落速度也变快: 6.当三条命都消失了,游戏结束. 游戏运行

  • Python3实现飞机大战游戏

    本文实例为大家分享了Python3实现飞机大战游戏的具体代码,供大家参考,具体内容如下 1.主程序:plane_main.py import pygame from plane_sprites import * class PlaneGame(object): #飞机大战主游戏类 def __init__(self): print("游戏初始化") #1.创建游戏的窗口 self.screen = pygame.display.set_mode(SCREEN_RECT.size) #2

  • js实现飞机大战游戏

    本文实例为大家分享了js实现飞机大战游戏的具体代码,供大家参考,具体内容如下 CSS部分的代码: <style> * { margin: 0px; padding: 0px; } canvas{ border: 1px solid #000; display: block; margin: auto; } </style> JavaScript代码: <!-- 先创建一个画布 --> <canvas id="canvas" width=&quo

  • C语言之飞机大战游戏

    本文实例为大家分享了C语言之飞机大战游戏的具体代码,供大家参考,具体内容如下 技术原型 1.void gotoxy(int x, int y) 函数,该函数可以使光标去到(x,y)的位置进行打印: 2.链表,用于存储状态: 3.windows.h中有非阻塞输入,_kbhit(): 4.随机生成数: 5.视觉暂留: 6.碰撞检测: 7.清屏函数: 8.设置边界: 技术路线 1.设置一个边界: 2.维护一个子弹的列表: 3.维护一个敌机的列表: 4.初始化飞机的位置: 5.每隔一秒钟生成一架敌机,生

  • python飞机大战游戏实例讲解

    记得刚学python那会,作过一个飞机大战小项目,这个项目非常经典,可以帮助初学者提高动手能力,今天把它分享出来. 一.项目介绍 先放几张图片 二.项目实现 1.首先安装库 pip install pygame 2.主要python代码 import pygame from pygame.locals import * import random #https://blog.csdn.net/qq_36079986/article/details/110395731 class HeroPlan

  • java实现飞机大战游戏

    java实现飞机大战 用Java写个飞机大战游戏练习一下,实现可播放游戏背景音乐和游戏的基本功能 设计 1.准备好相应的图片和背景音乐(.wav文件): 2.直接看源码: 3.还有部分功能未实现. 源码 package forGame 加载游戏图片类 package forGame; import javax.imageio.ImageIO; import javax.swing.*; import java.awt.image.BufferedImage; import java.io.Fil

随机推荐