Ruby's Adventrue游戏制作笔记(十六)Unity子弹数量及其UI
前言
本文章是我学习Unity官方项目项目所做笔记,作为学习Unity的游戏笔记,在最后一章会发出源码,如果等不及可以直接看源码,里面也有很多注释相关,话不多说,让Ruby动起来!
游戏引擎:Unity2020.3
一、创建新的UI
拖入Image,调整位置
在此UI下创建新的图片底框
创建Text用来显示数量
二、编辑脚本
更新子弹
给PlayerController中添加子弹的相关信息
攻击时改变子弹数量
在player的start中更新子弹数量
三、创建获得子弹的道具
因为和拾取生命值的道具差不多,所以简单带过
拖入场景中
创建脚本
添加碰撞器
玩家脚本中序列化
脚本
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
// 子弹补给包
public class BulletBag : MonoBehaviour
{
public int bulletCount = 10;// 包里可以增加的子弹数量
public ParticleSystem collectEffect; // 拾取特效
private void OnTriggerEnter2D(Collider2D collision)
{
PlayerController pc = collision.GetComponent<PlayerController>();
if(pc != null)
{
// 如果子弹不满
if(pc.MyCurBulletCount < pc.MyMaxBulletCount)
{
pc.ChangeBulletCount(bulletCount); // 添加玩家子弹数
Instantiate(collectEffect, transform.position, Quaternion.identity);
Destroy(this.gameObject);
}
}
}
}
系列链接
Ruby‘s Adventrue游戏制作笔记(一)Unity创建项目
Ruby‘s Adventrue游戏制作笔记(二)Unity控制ruby移动
Ruby‘s Adventrue游戏制作笔记(三)Unity使用tilemap绘制场景
Ruby‘s Adventrue游戏制作笔记(四)Unity绘制其他元素
Ruby‘s Adventrue游戏制作笔记(五)Unity解决碰撞抖动和旋转问题
Ruby‘s Adventrue游戏制作笔记(六)Unity相机跟随玩家移动
Ruby‘s Adventrue游戏制作笔记(七)Unity采集生命道具
Ruby‘s Adventrue游戏制作笔记(八)Unity伤害陷阱
Ruby‘s Adventrue游戏制作笔记(九)Unity添加敌人
Ruby‘s Adventrue游戏制作笔记(十)Unity添加动画
Ruby‘s Adventrue游戏制作笔记(十一)Unity角色攻击——发射子弹
Ruby‘s Adventrue游戏制作笔记(十二)Unity给角色添加简单的特效
Ruby‘s Adventrue游戏制作笔记(十三)Unity血条UI的显示
Ruby‘s Adventrue游戏制作笔记(十四)Unity播放游戏音效
Ruby‘s Adventrue游戏制作笔记(十五)UnityNPC对话