zoukankan      html  css  js  c++  java
  • Laya 屏幕抖动

    Laya 屏幕抖动

    @author ixenos 2020-05-13 12:07:37

     1 package
     2 {
     3 
     4     import laya.maths.Rectangle;
     5     import laya.ui.Box;
     6 
     7     public class ShakeCamera
     8     {
     9         private static var _ins:ShakeCamera;
    10         
    11         private var _camera:Box;
    12 
    13         private var _shakeTime:Number = 0;
    14         private var _extent:Number = 0;//幅度
    15         
    16         private var _enableShake:Boolean = true;
    17         
    18         public function ShakeCamera()
    19         {
    20         }
    21 
    22         public static function get ins():ShakeCamera
    23         {
    24             if(!_ins){
    25                 _ins = new ShakeCamera();
    26             }
    27             return _ins;
    28         }
    29         
    30         public function init(cam:Box,shakeTime:Number=200,extent:Number=10):void{
    31             _camera = cam;
    32             
    33             _shakeTime = shakeTime;
    34             _extent = extent;
    35             
    36             enableShake = false;
    37         }
    38 
    39         public function update():void{
    40             if(enableShake && _camera){
    41                 if(_shakeTime > 0){
    42                     _shakeTime -= Laya.timer.delta;
    43                     if(_shakeTime <= 0){
    44                         _camera.pos(0,0);
    45                         enableShake = false;
    46                     }else{
    47 //                        _camera.pos(-_extent*0.5+_extent*Math.random(),0);
    48                         var posY:int = Math.floor(-_extent*0.5+_extent*Math.random());
    49                         _camera.pos(0,posY);
    50                     }
    51                 }
    52             }
    53         }
    54 
    55         public function get enableShake():Boolean
    56         {
    57             return _enableShake;
    58         }
    59 
    60         public function set enableShake(value:Boolean):void
    61         {
    62             _enableShake = value;
    63         
    64             if(_enableShake){
    65                 Laya.timer.clear(this,update);
    66                 Laya.timer.frameLoop(1,this,update);
    67             }else{
    68                 Laya.timer.clear(this,update);
    69             }
    70         }
    71 
    72         
    73     }
    74 }
     
  • 相关阅读:
    Matrix-tree 定理的一些整理
    多项式
    多项式
    vijos 1641 Vs Snowy
    noip 提高组 2010
    军训有感
    我的将军啊
    洛谷 P3302 [SDOI2013]森林
    关于线段树
    关于KMP
  • 原文地址:https://www.cnblogs.com/ixenos/p/12881590.html
Copyright © 2011-2022 走看看