Unity飞机大战(1) 玩家飞机移动控制和子弹发射+生成陨石和敌机

Unity制作飞机大战第一步

1.把资源包导入Unity并搭建好场景
2.并把做好的预制体 拖入一个新的文件夹
如下图:
在这里插入图片描述

飞机控制脚本,此脚本挂在玩家飞机上

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerShipCtr : MonoBehaviour
{
   

    public float MoveSpeed;
    public float FireTime;
    public GameObject PlayerBullet;
   

    //私有变量同意使用_下划线
    private Rigidbody _rig;
    private AudioManagerCtr _audioManager;
    private float _timer;   // 计时器
    private GameObject _obj;
    private CreateGameManagerCtr _createGameManagerCtr;


    
    void Start()
    {
   
        
        _obj = transform.Find("Protect").gameObject;
        FireTime = 0.25f;
        _rig = GetComponent<Rigidbody>();
        if (null == _rig)
        {
   
            _rig = gameObject.AddComponent<Rigidbody>();
        }
        _rig.useGravity = false;
        if (MoveSpeed == 0)
        {
   
            MoveSpeed = 5;
        }
        //找到标签的对象 并得到其组件
        _audioManager = GameObject.FindWithTag("AudioManager").GetComponent<AudioManagerCtr>();
        _createGameManagerCtr = GameObject.FindWithTag("CreateGameManager").GetComponent<CreateGameManagerCtr>();
        _timer = 0;

    }

    //逻辑
    void Update()
    {
   
       if(_createGameManagerCtr.PlayerIsProtected)
        {
   
            _obj.SetActive(true);
        }else
        {
   
            _obj.SetActive(false);
        }
        _timer += Time.deltaTime;
        if (Input.GetMouseButton(0) && _timer >= FireTime)  //用于判断发射的时间间隔
        {
   
            //实例化子弹
            _timer = 0;
      GameObject obj =      Instantiate(PlayerBullet);
            obj.transform.position = gameObject.transform.
  • 3
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值