Guest User

Untitled

a guest
Jul 19th, 2014
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.94 KB | None | 0 0
  1. public abstract class ManagedScreen implements Screen {
  2.     private Game game;
  3.  
  4.     private boolean slowMotion;
  5.     private float slowMotionFactor;
  6.  
  7.     public ManagedScreen(Game game) {
  8.         this.game = game;
  9.         slowMotion = false;
  10.         slowMotionFactor = 1;
  11.     }
  12.  
  13.     @Override
  14.     public final void render(float secElapsed) {
  15.         updateSlowMotionFactor(secElapsed);
  16.         secElapsed *= slowMotionFactor;
  17.  
  18.         managedRender(secElapsed);
  19.     }
  20.  
  21.     private void updateSlowMotionFactor(float secElapsed) {
  22.         if (slowMotion) {
  23.             slowMotionFactor = Math.max(game.getGameConf().getSlowMotionFactor(), slowMotionFactor-(secElapsed/game.getGameConf().getSlowMotionFadeInTime()));
  24.         }
  25.         else {
  26.             slowMotionFactor = Math.min(1, slowMotionFactor+(secElapsed/game.getGameConf().getSlowMotionFadeOutTime()));
  27.         }
  28.     }
  29.  
  30.     public abstract void managedRender(float secElapsed);
  31. }
Advertisement
Add Comment
Please, Sign In to add comment