关于unity3d的血量减少和增加的数字显示制作

2015年03月17日 09:53 0 点赞 0 评论 更新于 2025-11-21 17:24

前言

在开始讲解具体内容之前,先说明一下为什么要在 NGUI 里介绍这部分内容。因为接下来要用到一个插件 HUD Text,而该插件必须在已经安装了 NGUI 的前提下才能安装并使用。

安装 HUD Text 插件

首先,安装 HUD Text 插件。在这个插件中,最重要的是 HUD Text 脚本,如下图红色线标记的地方(此处需补充对应图片)。

创建空物体并添加脚本

在 UI 的相机下面创建一个空物体,将其命名为 hud,然后为该物体添加 HUDText 脚本。其属性设置如下(此处需补充对应图片): 在这些属性里,需要为 hudtext 指定字体,这个字体将用于显示血量数字。黄色标记的地方是这些数字的动画设定,可以根据具体需求进行调整。

编写测试脚本

为了进行示例演示,添加一个名为 test hud 的脚本(此处需补充对应图片)。以下是该脚本的源代码:

using UnityEngine;
using System.Collections;

public class testHUd : MonoBehaviour {
public HUDText text;

void Start () {
this.text = transform.GetComponent<HUDText>();
}

// Update is called once per frame
void Update () {
if (Input.GetMouseButtonDown(0)) {
text.Add(-10, Color.red, 0.01f); // 点击鼠标左键目标减 10 点血量
}

if (Input.GetKeyDown(KeyCode.A)) { // 按键盘 A 目标增加 10 点血量
text.Add(10, Color.green, 0.1f);
}
}
}

代码解释

  • using UnityEngine;using System.Collections;:引入必要的命名空间。
  • public HUDText text;:声明一个公共的 HUDText 类型的变量 text,用于引用 HUDText 组件。
  • Start() 方法:在脚本启动时,通过 transform.GetComponent<HUDText>() 获取当前物体上的 HUDText 组件,并赋值给 text 变量。
  • Update() 方法:每帧都会调用该方法。
  • if (Input.GetMouseButtonDown(0)):检测鼠标左键是否被按下,如果按下则调用 text.Add(-10, Color.red, 0.01f) 方法,使目标减少 10 点血量,数字显示为红色,动画持续时间为 0.01 秒。
  • if (Input.GetKeyDown(KeyCode.A)):检测键盘上的 A 键是否被按下,如果按下则调用 text.Add(10, Color.green, 0.1f) 方法,使目标增加 10 点血量,数字显示为绿色,动画持续时间为 0.1 秒。

完成血量数字显示动画及跟随设置

至此,血量的数字显示动画就完成了。然后按照上一讲的方式,为 hud 这个物体添加 Follow Target 脚本(此处需补充对应图片),这样 hud 就会跟随 cube 了。

运用结果

以下是该功能的运用结果展示(此处需补充对应图片或相关描述)。

通过以上步骤,我们就实现了在 Unity3D 中制作血量减少和增加的数字显示功能。

作者信息

boke

boke

共发布了 3994 篇文章