unity中,控制fungus执行对话前,fairygui中的组件透明度为0,判断执行对话后,该组件透明度变为1
时间: 2024-03-03 11:52:56 浏览: 166
调整GUI透明度1
在FairyGUI中控制组件的透明度,可以通过修改组件的alpha属性来实现。在Fungus中执行对话前和对话后,可以通过Fungus中的消息机制来控制FairyGUI中的组件透明度。
下面是一个示例代码,演示如何在Fungus中控制FairyGUI中的组件透明度:
```csharp
using Fungus;
using FairyGUI;
public class Test : MonoBehaviour
{
// 消息接收者
public Flowchart flowchart;
// FairyGUI组件
GComponent ui;
void Start()
{
// 加载UI资源
UIPackage.AddPackage("UI/MyUI");
// 创建UI组件
ui = UIPackage.CreateObject("MyUI", "MyComponent").asCom;
GRoot.inst.AddChild(ui);
// 初始透明度为0
ui.alpha = 0f;
// 注册Fungus消息
flowchart.AddListener("ShowUI", ShowUI);
flowchart.AddListener("HideUI", HideUI);
}
// 显示UI
void ShowUI()
{
// 将透明度设置为1
ui.alpha = 1f;
}
// 隐藏UI
void HideUI()
{
// 将透明度设置为0
ui.alpha = 0f;
}
}
```
在上面的代码中,首先加载了一个UI资源包,并创建了一个名为"MyComponent"的组件。然后在Start方法中,将组件的初始透明度设置为0,并且注册了两个Fungus消息:"ShowUI"和"HideUI"。
当需要显示UI时,可以通过发送"ShowUI"消息来调用ShowUI方法,将组件的透明度设置为1。当需要隐藏UI时,可以通过发送"HideUI"消息来调用HideUI方法,将组件的透明度设置为0。
你可以根据自己的需求修改这段代码,实现不同的透明度控制效果。
阅读全文