FGUI动画类的一些方法的使用

UIPackage.AddPackage("UI/Extension"); 加载Resources下的文件

GComponent _mainView; 为当前的组件

GGroup _btnGroup; 在fgui上建好的一个组,里面是多种按钮文件之类的

Stage.inst.onKeyDown.Add(OnKeyDown); 在图集上添加一个响应事件

_mainView = this.GetComponent<UIPanel>().ui; 用这种方式获得该panel中的UI界面

_btnGroup = _mainView.GetChild("g0").asGroup; 在UI界面上加一个组合的组件

_g1 = UIPackage.CreateObject("Transition", "BOSS").asCom; 创建一个组件,这里是一个动画组件,根据他的包名还有在FGUI上的组件名,因为create出来的是object类型的,所以需要装换为组件类型,这里FGUI提供了简单的.asCom

_g5.GetTransition("t0").SetHook("play_num_now", __playNum); 开始_g5上的t0动画,play_num_now是添加的一个标签,根据这个标签访问到那个帧,并使用__playNum函数去修改他们的值或者数据之类的,主要用于装备分数的增加等

_mainView.GetChild("btn0").onClick.Add(() => { __play(_g1); }); 为当前的"btn0"按键添加一个事件,这里用的是拉姆达表达式,一般都会用拉姆达表达式。

也可以直接这样: _mainView.GetChild("btn3").onClick.Add(__play4);

 

void __play(GComponent target)

{

_btnGroup.visible = false; //可见变为false

GRoot.inst.AddChild(target); //给组件列表加子组件

Transition t = target.GetTransition("t0");

//play(int times,int delay,PlayCompleteCallback onComplete) times,为该动画的播放次数,delay,循环多少次,complete为方法后的响应

t.Play(() =>

{

_btnGroup.visible = true;

GRoot.inst.RemoveChild(target);//将子组件从组建列表中移除

});

}

使用dotween来对动画中的数据进行修改。

GTween.To(_startValue, _endValue, 0.3f).SetEase(EaseType.Linear)

.OnUpdate((GTweener tweener) => { _g5.GetChild("value").text = "" + Mathf.Floor(tweener.value.x); });

SetEase(EaseType.Linear)为将数据能实现一个一个的加的过度效果。

 

进行界面的加载

IEnumerator DoLoad(string sceneName)

{

GRoot.inst.AddChild(_cutSceneView);

GProgressBar pb = _cutSceneView.GetChild("pb").asProgress;

pb.value = 0;

#if UNITY_5_3_OR_NEWER

AsyncOperation op = SceneManager.LoadSceneAsync(sceneName);

#else

AsyncOperation op = Application.LoadLevelAsync(sceneName);

#endif

float startTime = Time.time;

while (!op.isDone || pb.value != 100)

{

int value = (int)((Time.time - startTime) * 100f / 3f);

if (value > 100)

value = 100;

pb.value = value;

yield return null;

}

 

GRoot.inst.RemoveChild(_cutSceneView);

GRoot.inst.AddChild(_mainView);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值