(JeanShaw)利用iTween制作NGUI界面动画

下载iTween后主要用到其中的两个脚本,iTween和iTweenPath脚本,其他的资源建议删除

对于角色的移动和视角的效果

//物体从屏幕外移动到起始点//
	public static void PlayerMoveAndScaleAnim(GameObject go, float changeTime, iTween.EaseType moveType, 
		GameObject callBackObj = null, string methodName = "", bool isPlayScale = true, float y = -2000, float z = -2000){
		Vector3 startPos = go.transform.position;
		go.transform.localPosition = new Vector3(startPos.x, startPos.y, z);
		//播放由大到小的效果//
		if(isPlayScale){
			Vector3 startScale = go.transform.localScale;
			go.transform.localScale = new Vector3(50, 50, 1);
			iTween.ScaleTo(go,iTween.Hash("scale",startScale,"time",changeTime, "easetype",moveType));
		}
		//移动//
		if(callBackObj != null){
			
			iTween.MoveTo(go,iTween.Hash("position",startPos,"time",changeTime, "oncomplete", methodName, 
				"oncompletetarget", callBackObj, "easetype",iTween.EaseType.linear));
		}
		else {
			iTween.MoveTo(go,iTween.Hash("position",startPos,"time",changeTime,"easetype",iTween.EaseType.linear));
		}
	}

对于角色的移动函数

public static void PlayMoveToAnim(GameObject go, Vector3 desPos, float time, GameObject callBackObj, string callBackMethod, float delayTime = 0.0f, UnityEngine.Object callBackParam = null){
		if(callBackParam != null){
			iTween.MoveTo(go,iTween.Hash("position",desPos,"time",time, "oncomplete", callBackMethod, 
				"oncompletetarget", callBackObj, "oncompleteparams", callBackParam, "delay", delayTime, "easetype", iTween.EaseType.linear));
		}
		else {
			iTween.MoveTo(go,iTween.Hash("position",desPos,"time",time, "oncomplete", callBackMethod, 
				"oncompletetarget", callBackObj , "delay", delayTime, "easetype", iTween.EaseType.linear));
		}
	}

 关于NGUI的淡入淡出的操作方法

/**封装淡入淡出方法--**/
	public static void PlayTweenAlpha(GameObject go, float alphaFrom, float alphaTo, EventDelegate.Callback method, float time){
		TweenAlpha tween = go.GetComponent<TweenAlpha>();
		tween.from = alphaFrom;
		tween.to = alphaTo;
        Debug.LogError("PlayTweenAlpha for " + go.name);

        TweenAlpha.Begin<TweenAlpha>(go, time);
        if (tween.onFinished != null)
        {
            Debug.LogError("add onFinished callback " + method.ToString());
            EventDelegate.Add(tween.onFinished, method);
        }
    }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瓜皮肖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值