Advertisement
Guest User

Untitled

a guest
Mar 9th, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package myUtils
  2. {
  3.         import net.flashpunk.*;
  4.        
  5.         public class cameraShake extends Entity
  6.         {
  7.                 public static var cameraJitterCounter:int = 0;
  8.                 private static var saveCameraX:Number;
  9.                 private static var saveCameraY:Number;
  10.                
  11.                 public function cameraShake()
  12.                 {
  13.                        
  14.                 }
  15.                
  16.                
  17.                
  18.                 public static function activateCameraJitter(jitterCount:int):void
  19.                 {
  20.                         if (cameraJitterCounter == 0) {  // if already shaking do nothing
  21.                                 cameraJitterCounter = jitterCount;
  22.                                 saveCameraX = FP.camera.x;  // save camera coords
  23.                                 saveCameraY = FP.camera.y;
  24.                         }
  25.                 }
  26.                
  27.                 override public function update():void
  28.                 {
  29.                         if (cameraJitterCounter > 0)
  30.                         {
  31.                                 cameraJitterCounter--;
  32.                                 if (cameraJitterCounter == 0)
  33.                                 {
  34.                                         FP.camera.x = saveCameraX;
  35.                                         FP.camera.y = saveCameraY;  
  36.                                 }
  37.                                 else
  38.                                 {
  39.                                         var cameraXOffset:Number = Math.random() * 5;  
  40.                                         if (Math.random() < 0.5)
  41.                                         {
  42.                                                 cameraXOffset = -cameraXOffset;
  43.                                         }
  44.                                         var cameraYOffset:Number = Math.random() * 5;
  45.                                         if (Math.random() < 0.5)
  46.                                         {
  47.                                                 cameraYOffset = -cameraYOffset;
  48.                                         }                                      
  49.                                         FP.camera.x = saveCameraX + cameraXOffset;
  50.                                         FP.camera.y = saveCameraY + cameraYOffset;
  51.                                 }
  52.                         }
  53.                 }
  54.         }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement