码迷,mamicode.com
首页 > 其他好文 > 详细

twfont

时间:2018-07-26 18:24:52      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:计数器   pre   get   null   reg   script   interval   instance   option   

module game {
        /** 
        *Created by 渔歌烟火 on 2018/3/28.
        * 字体缓动动画
        */
    export class LabelEffect {
        private static _instance:LabelEffect;
        public static get instance():LabelEffect
        {
            if( null == LabelEffect._instance )
            {
                LabelEffect._instance = new LabelEffect();
            }
            return LabelEffect._instance;
        }
        /**
         * @param target 显示对象
         * @param options 例如{ time: 1500,initNum:100,num: 88888, regulator: 50 }
         */
        public playEffect(target:any,options:any){
            options = options || {}; 
            if(options.initNum==options.num)return;        
            var time = options.time,//总时间--毫秒为单位 
                finalNum = options.num, //要显示的真实数值
                regulator = options.regulator || 100, //调速器,改变regulator的数值可以调节数字改变的速度          
                step = (finalNum-options.initNum) / (time / regulator),/*每30ms增加的数值--*/       
                count =  options.initNum, //计数器       
                initial = options.initNum;
            var timer = setInterval(()=> {          
            count = count + step;          
            if(count >= finalNum&&options.initNum<finalNum) {        
                    clearInterval(timer);        
                    count = finalNum;       
                    }

            if(count <= finalNum&&options.initNum>finalNum) {        
                clearInterval(timer);        
                count = finalNum;       
                } 
                //t未发生改变的话就直接返回         
                var t = Math.floor(count);       
                if(t == initial) return;          
                initial = t;          
                target.text = initial+"";
            }, 30);     
        }
    }
}

  调用:LabelEffect.instance.playEffect(target, { time: 1500, initNum: num, num: score, regulator: 50 })

twfont

标签:计数器   pre   get   null   reg   script   interval   instance   option   

原文地址:https://www.cnblogs.com/dujunfeng/p/9372867.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!