当前位置:网站首页>FairyGUI增益BUFF數值改變的顯示
FairyGUI增益BUFF數值改變的顯示
2022-07-06 12:42:00 【SQ劉】
FairyGUI增益BUFF數值改變的顯示
一、FGUI中的操作
1、導入資源

2、新建兩個比特圖字體和一個動畫
(1)addValue比特圖字體



(2)attackValue比特圖字體



(3)Fire動畫



3、新建一個字體和背景

緊接著可以在右邊添加一個序列幀動畫,當戰鬥力增加的時候,讓火焰閃現。如下圖所示:
4、添加動效
(1)添加動效之前,先添加組,這樣對後續的一些處理會比較方便。
全選,按住Ctrl+G,打組,並選擇高級組

(2)添加動效


還可添加一些小細節,就是火焰也需要添加特效。我們希望當玩家的數值改變的時候,也就是戰鬥力增大的時候,讓火焰顯現出來,錶示變强了。
(1)首先對火焰的軸心重新設置一下,再將它的不透明度改為0
(2)再次進入動效編輯,自己隨便嘗試做一些特效,無具體要求
(3)做一些小小的改動
5、制作按鈕
通過點擊按鈕來增加數值的值。
(1)導入素材

(2)新建組件,用來控制按鈕顯示,也就是主場景(主面板)

(3)新建按鈕

(4)將按鈕拖入到Component1組件中
6、打包發布



二、Unity中的操作
1、顯示按鈕


2、編寫脚本

注意:需要引入DOTween.dll庫,首先需要在Unity的資源商店裏搜索“dotween”,進行下載後導入,方可在C#脚本中引入using DG.Tweening;的命名空間。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using FairyGUI;
using DG.Tweening;
public class ZengYiBUFF : MonoBehaviour
{
private GComponent mainUI; //主UI
private GComponent addValueCom; //增加值的組件
private float startValue; //結束值
private float endValue; //開始值
void Start()
{
mainUI = GetComponent<UIPanel>().ui; //獲取主UI
addValueCom = UIPackage.CreateObject("Package1", "AddValue").asCom;
//.asCom把它轉成GComponent類型
addValueCom.GetTransition("t0").SetHook("AddValue", AddAttackValue); //設置FGUI中所添加標簽對應關鍵幀的事件
mainUI.GetChild("n0").onClick.Add(() => {
PlayUI(addValueCom); }); //給按鈕注册一下監聽事件
//設置一下它的標簽狀態
}
// Update is called once per frame
void Update()
{
}
private void PlayUI(GComponent targetCom)
{
mainUI.GetChild("n0").visible = false;
GRoot.inst.AddChild(targetCom);
Transition t = targetCom.GetTransition("t0");//設置動效關聯
startValue = 10000;
int add = Random.Range(1000, 3000);
endValue = startValue + add;
addValueCom.GetChild("n2").text = startValue.ToString();
addValueCom.GetChild("n4").text = add.ToString();
t.Play(() =>
{
mainUI.GetChild("n0").visible = true;
GRoot.inst.RemoveChild(targetCom);
}
);
}
/// <summary>
///該方法是將當前戰鬥力從10000增加到12000,
///需要引入using DG.Tweening命名空間(Unity資源商店中下載)
/// </summary>
private void AddAttackValue()
{
DOTween.To(() => startValue, x => {
addValueCom.GetChild("n2").text = Mathf.Floor(x).ToString(); }, endValue, 0.3f).SetEase(Ease.Linear).SetUpdate(true);
}
}
3、運行效果

边栏推荐
- Database course design: college educational administration management system (including code)
- FairyGUI摇杆
- Esp8266 connects to bafayun (TCP maker cloud) through Arduino IED
- Page performance optimization of video scene
- Pytorch: tensor operation (I) contiguous
- Problèmes avec MySQL time, fuseau horaire, remplissage automatique 0
- MySQL takes up too much memory solution
- idea中好用的快捷键
- Unity3d, Alibaba cloud server, platform configuration
- Esp8266 connects to onenet cloud platform (mqtt) through Arduino IDE
猜你喜欢

ORA-02030: can only select from fixed tables/views

JS regular expression basic knowledge learning

Unity3D,阿里云服务器,平台配置

(五)R语言入门生物信息学——ORF和序列分析

Gravure sans fil Bluetooth sur micro - ordinateur à puce unique

Vscode basic configuration

MySQL时间、时区、自动填充0的问题
![[Nodejs] 20. Koa2 onion ring model ----- code demonstration](/img/a8/a4390238685903b63bb036206f8dcb.jpg)
[Nodejs] 20. Koa2 onion ring model ----- code demonstration

idea问题记录

FairyGUI人物状态弹窗
随机推荐
MySQL time, time zone, auto fill 0
JUC forkjoin and completable future
Common DOS commands
MySQL performance tuning - dirty page refresh
单片机蓝牙无线烧录
(the first set of course design) sub task 1-5 317 (100 points) (dijkstra: heavy edge self loop)
Vulnhub target: hacknos_ PLAYER V1.1
程序设计大作业:教务管理系统(C语言)
CUDA C programming authoritative guide Grossman Chapter 4 global memory
(5) Introduction to R language bioinformatics -- ORF and sequence analysis
Particle system for introduction to unity3d Foundation (attribute introduction + case production of flame particle system)
Working principle of genius telephone watch Z3
What is the maximum length of MySQL varchar field
Solution to the problem of automatic login in Yanshan University Campus Network
Unity3D摄像机,键盘控制前后左右上下移动,鼠标控制旋转、放缩
Basic operations of databases and tables ----- view data tables
Get the position of the nth occurrence of the string
Intermediate use tutorial of postman [environment variables, test scripts, assertions, interface documents, etc.]
基于Redis的分布式锁 以及 超详细的改进思路
Compilation principle: preprocessing of source program and design and implementation of lexical analysis program (including code)