Unity 发射子弹+弹药减少计数功能
2017-05-03 14:18
288 查看
创建一个胶囊体(Capsule)改名为Player 作为主角创建一个文件夹命名Prefabs再创建一个Sphere作为子弹,添加上Bullet.cs脚本后拉到Prefabs文件夹内作为预制体1. 新建Fire.cs 类 加载到Player 上using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class Fire : MonoBehaviour{
[Header("把子弹预制体拉到这")] public GameObject _bullet; //子弹预制体 void Update () { if (UIController.Instance.Count > 0) { if (Input.GetMouseButtonDown(0)) { Instantiate(_bullet); UIController.Instance.AutoAdd(); } } } }2. 建Bullet.cs脚本,加载到子弹预制体using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;
//子弹必须先添加Rigidbody组件public class Bullet : MonoBehaviour{private float speed = 100.0f;//子弹速度void Awake(){GetComponent<Rigidbody>().velocity = Vector3.forward * speed;//添加刚体,向前(Z轴)运动}void Update (){Destroy(this.gameObject,1.0f);//1秒后子弹销毁}}3. 添加计数功能 新建一个Canvas ,创建子节点Panel 再创建子节点text 节点Panel是为了使计数的方块可以适应屏幕,我们选中Panel点击Inspector里面的方块 4.。新建UIController.cs脚本sing System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class UIController : MonoBehaviour{private static UIController _instance;public static UIController Instance{get{if (_instance != null){return _instance;}else{return null;}}}[Header("把Canvas/Panel/Text预制体拉到这")] public Text CountText; [Header("子弹总数")] public int Count;void Awake(){_instance = this;Count = 30;}public void AutoAdd(){CountText.text = "弹药:" + --Count;}}别忘了把UIController绑定到Canves上就行
相关文章推荐
- Unity 像子弹一样的方块+计数功能
- Unity之一天一个技术点(十七)---射击游戏发射子弹
- unity学习之子弹发射
- unity之子弹发射
- 我的Unity(7)一点一滴 从相机向砖墙发射子弹
- Unity发射子弹
- Unity2D - 5. 向鼠标点击处发射子弹
- unity菜鸟之发射子弹打墙
- 【Unity】关于发射子弹、导弹追踪的逻辑(笔记)
- Unity实现Angry Bird弹弓发射功能
- AbstractReferenceCountedByteBuf仅仅实现了引用计数的功能
- JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)
- win7系统如何减少右键功能项
- 你所不知道的Unity功能和背后的原理(一)
- Unity中关于作用力方式ForceMode的功能注解
- 深入理解unity5.6版本ui布局功能
- jQuery实现简易的输入框字数计数功能示例
- 【unity】【设计模式】【游戏设计】从公会火堆功能讲简单的功能划分
- Unity 5.0 中酷炫的新动画功能详解