unity3d ngui-TweenRotation-TweenPosition-TweenScale
using UnityEngine;
using System.Collections; public class TweenFlipCARDS : MonoBehaviour
{
private float mfTime = 1.0f;
public GameObject positive;//牌正面
public GameObject reverse;//牌背面
private TweenRotation mPositiveTween;
private TweenRotation mReverseTween;
/// <summary> 半圈时间 </summary>
public float duration = 1; void Start()
{
mPositiveTween = positive.GetComponent<TweenRotation>();
if (mPositiveTween == null) mPositiveTween = positive.AddComponent<TweenRotation>(); mReverseTween = reverse.GetComponent<TweenRotation>();
if (mReverseTween == null) mReverseTween = reverse.AddComponent<TweenRotation>();
mPositiveTween.enabled = false;
mReverseTween.enabled = false;
reverse.gameObject.transform.localEulerAngles = new Vector3(0, 90, 0); //mPositiveTween.onFinished.Add(new EventDelegate(PositiveEventDelegate));
//mReverseTween.onFinished.Add(new EventDelegate(ReverseEventDelegate));
//mPositiveTween.callWhenFinished = "PositiveEventDelegate";
//mReverseTween.callWhenFinished = "ReverseEventDelegate";
// a是正面。b是反面。 分为4个时间段 1. a 从0转到90 。b精巧。2.a精巧。b 从90-0. 3.a精巧,b0-90. 4.a从90-0,b精巧。
StartCoroutine(waitShowReverseTime(mfTime));//显示一定的时间后再翻牌 }
IEnumerator waitShowReverseTime(float time)
{
yield return new WaitForSeconds(time);
mPositiveTween.from = Vector3.zero;
mPositiveTween.to = new Vector3(0, 90, 0);
mPositiveTween.duration = duration; mReverseTween.from = new Vector3(0, 90, 0);
mReverseTween.to = Vector3.zero;
mReverseTween.duration = duration; UIEventListener listener = UIEventListener.Get(positive.gameObject);
listener.onClick = ClickUIButton;
listener = UIEventListener.Get(reverse.gameObject);
listener.onClick = ClickUIButton; mPositiveTween.onFinished = PositiveEventDelegate;
mReverseTween.onFinished = ReverseEventDelegate; ClickUIButton(positive); }
GameObject mNowDown;
void ClickUIButton(GameObject click)
{
mNowDown = click;
if (click == positive)
{
PlayPositive(); }
else if (click == reverse)
{
PlayReverse();
}
}
/// <summary>
/// 翻牌
/// </summary>
public void PlayPositive()
{
mPositiveTween.Play(true);
}
/// <summary>
/// 复位
/// </summary>
public void PlayReverse()
{
mReverseTween.Play(false);
}
/// <summary>
/// 翻牌回调
/// </summary>
public void PositiveEventDelegate(UITweener tween)
{
if (mNowDown == mPositiveTween.gameObject) mReverseTween.Play(true);
}
/// <summary>
/// 复位回调
/// </summary>
public void ReverseEventDelegate(UITweener tween)
{
if (mNowDown == mReverseTween.gameObject) mPositiveTween.Play(false);
}
}上述代码均来自http://www.xiaobao1993.com/486.html
TweenScale同理,是控制其大小的,可用事实上现闪烁冒泡提示效果,如信息的提示;TweenPosition可实现方向指引效果,如新手引导箭头指引新手引导:为新手引导新建立一个UI窗体。里面包括一个半透明蒙版UISprite(全屏,用来挡住全部的UI)。箭头UISprite(加上述的TweePosition控制其上下或者左右指引,箭头位置可动态调整),而后再动态复制Clone一份要引导的UI在此窗体下并改变其Z层级显示在最上面,这样就实现了一个要引导的UI的突出效果
unity3d ngui-TweenRotation-TweenPosition-TweenScale的更多相关文章
- Unity3D NGUI自适应屏幕分辨率(2014/4/17更新)
原地址:http://blog.csdn.net/asd237241291/article/details/8126619 原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 本文链接地址: ...
- Unity3D NGUI学习(一)血条
这次来讲讲Unity3D NGUI这个插件的学习,这个插件是收费的,不过去网上可以下载得很多可用版本.用来做用户的交互UI,学习起来比较简单 第一步,导入NGUI包 http://pan.baidu. ...
- 【转】Unity3D NGUI事件 UIEvents
原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 QQ群:[119706192] 本文链接地址: Unity3D NGUI事件 UIEvents UIEvents-事件系统void OnH ...
- Unity3d ngui基础教程
Unity3d ngui基础教程 NGUI教程:步骤1-Scene 1.创建一个新的场景(New Scene).2.选择并删除场景里的MainCamera.3.在NGUI菜单下选择Create a N ...
- Unity3D NGUI 给button按钮添加单间事件
Unity3D中, NGUI 给button按钮添加单间事件的方法很多,在这里只给推荐一种比较常用的方法. 推荐方法:使用UIListener. 1.给button组价添加上UIListener.选择 ...
- Unity3D NGUI UIPlayTween控件(一)动态打开关闭窗口
利用NGUI自带的脚本控件实现按钮点击窗口滑动出现与隐藏. 创建界面 首先建立如下图的三个BUtton与三个Panel 绑定脚本 然后在每个Button上添加UIPlayTween脚本,在Intera ...
- unity3d NGUI入门(描述和使用插件参数)
我用NGUI它是3.5.4,Unity3d版本号是4.3.4f需要 NGUI3.5.4 下载NGUI,这是破解版的,用于学习.假设是商用.请支持正版 插件的导入 1.NGUI的导入,双击NGUI Ne ...
- Unity3D NGUI UIPlayTween(原UIButtonTween)动画事件详解
http://blog.csdn.net/asd237241291/article/details/8507817 原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 Unity3D引擎技术 ...
- [Unity3D]NGUI用Sprite动画和屏幕自适应做游戏开始场景
我们在玩任何一款手游产品时,都是先上来个logo界面,游戏欢迎界面等,这就意味着我们要做一款游戏需要多个场景,场景之间来回切换实现游戏逻辑,unity也不例外,所以从本篇开始将会介绍如何搭建多个场景, ...
- 【转】Unity3d + NGUI 的多分辨率适配
原文地址:http://www.cnblogs.com/cqgreen/p/3348154.html 一.当下移动设备的主流分辨率(数据来自“腾讯分析移动设备屏幕分辨率分析报告”) 1.1 iOS ...
随机推荐
- Core dotnet 命令大全
Core dotnet 命令大全 dotnet 命令大全,让你理解dotnet 命令. 本文将以一个实例串起 dotnet 所有命令,让你玩转dotnet 命令. 本篇文章编写环境为windows 1 ...
- Codeforces Round #312 (Div. 2)
好吧,再一次被水题虐了. A. Lala Land and Apple Trees 敲码小技巧:故意添加两个苹果树(-1000000000, 0)和(1000000000, 0)(前者是位置,后者是价 ...
- Hiddenfield控件
本文转自:http://www.cnblogs.com/weicleer/archive/2012/11/26/2788722.html ASP.NET2.0 HiddenField控件(1)2007 ...
- 最新Cocos2d-x3.2开发环境搭建(windows环境下)
原文地址:http://cache.baiducontent.com/c?m=9d78d513d9921cfe05ac837f7d16c067690297634d9dc7150ed58449e3735 ...
- PL/SQL连64位Oracle11g R2 win7 64旗舰环境
说明:使用的软件版本是PL/SQL Developer 7.0.1,Oracle服务器端安装在Windows7旗舰版上. 以下是我的步骤 1,先到Oracle网站下载客户端:http://www.or ...
- Python 第六篇(中):面向对象编程中级篇
面向对象编程中级篇: 编程思想概述: 面向过程:根据业务逻辑从上到下写垒代码 #最low,淘汰 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 #混口饭吃 def add(ho ...
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
ActivityGroup简介 1.ActivityGroup的核心就是继承了该类,能够通过getLocalActivityManager()得到一个LocalActivityManager 如,Lo ...
- WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理[中篇]
原文:WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理[中篇] 在[上篇]中,我们分别站在消息交换和编程的角度介绍了SOAP Fault和FaultException异常.在服务执行过 ...
- C++界面库
刚开始用C++做界面的时候,根本不知道怎么用简陋的MFC控件做出比较美观的界面,后来就开始逐渐接触到BCG Xtreme ToolkitPro v15.0.1,Skin++,等界面库,以及一些网友自 ...
- zookeeer 集群和伪集群模式
环境变量设置: # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # U ...