package
{
import flash.display.Graphics;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
/**
* 带有缓动动画的按钮
* @author Jave.Lin
*/
public class EaseSprite extends Sprite
{
private var _easing:Number=0.3;
protected var _bigScaleX:Number=1.5;
protected var _bigScaleY:Number=1.5;
private var _isMouseOver:Boolean=false;
public function EaseSprite()
{
if(stage)
{
addToStage();
}
else this.addEventListener(Event.ADDED_TO_STAGE,addToStage);
}
private function addToStage(e:Event = null):void
{
buttonMode=true;
addEventListener(MouseEvent.MOUSE_OVER,mouseOver);
addEventListener(MouseEvent.MOUSE_OUT,mouseOut);
}
private function onEnterFrameHandler(e:Event):void
{
var tx:Number;
var targetScale:Number;
if(_isMouseOver)
{
targetScale=_bigScaleX;
}else
{
targetScale=1;
}
tx=targetScale-scaleX;
scaleX+=tx*_easing;
scaleY+=tx*_easing;
if(Math.abs(tx)
关注
打赏
热门博文
- 3D Assets (Textures & Model & Animations) & Game Design Ideas & DCC Tutorials & TA
- LearnGL - 学习笔记目录
- Unity - Timeline 知识汇总
- Unity Graphics - 知识点目录 - 停止翻译,因为发现官方有中文文档了
- Graphic资料
- Unity Lightmap&LightProbe局部动态加载(亲测2020以及以上版本官方修复了)
- Unity - 踩坑日志 - 低版本线性颜色空间渲染异常的 “BUG”
- Unity Shader - PBR 渲染 SP 导出的素材
- 什么是 3A 游戏?
- Photosohp - 实现 2D MetaBall、MetaFont