Advertisement
Guest User

Untitled

a guest
Dec 21st, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Haxe 1.47 KB | None | 0 0
  1. package armory.trait.internal;
  2.  
  3. import iron.Trait;
  4. import iron.system.Input;
  5. import iron.object.Transform;
  6. import iron.object.CameraObject;
  7. import armory.trait.physics.RigidBody;
  8.  
  9. class CameraController extends Trait {
  10.  
  11. #if (!arm_physics)
  12.     public function new() { super(); }
  13. #else
  14.  
  15.     var transform:Transform;
  16.     var body:RigidBody;
  17.     var camera:CameraObject;
  18.  
  19.     var moveForward = false;
  20.     var moveBackward = false;
  21.     var moveLeft = false;
  22.     var moveRight = false;
  23.     var jump = false;
  24.  
  25.     public function new() {
  26.         super();
  27.  
  28.         iron.Scene.active.notifyOnInit(function() {
  29.             transform = object.transform;
  30.             body = object.getTrait(RigidBody);
  31.             camera = cast(object.getChildOfType(CameraObject), CameraObject);
  32.         });
  33.  
  34.         notifyOnUpdate(function() {
  35.             var keyboard = Input.getKeyboard();
  36.             moveForward = keyboard.down(keyUp);
  37.             moveRight = keyboard.down(keyRight);
  38.             moveBackward = keyboard.down(keyDown);
  39.             moveLeft = keyboard.down(keyLeft);
  40.             jump = keyboard.started("space");
  41.         });
  42.     }
  43.  
  44.     #if arm_azerty
  45.     static inline var keyUp = 'z';
  46.     static inline var keyDown = 's';
  47.     static inline var keyLeft = 'q';
  48.     static inline var keyRight = 'd';
  49.     static inline var keyStrafeUp = 'e';
  50.     static inline var keyStrafeDown = 'a';
  51.     #else
  52.     static inline var keyUp = 'w';
  53.     static inline var keyDown = 's';
  54.     static inline var keyLeft = 'a';
  55.     static inline var keyRight = 'd';
  56.     static inline var keyStrafeUp = 'e';
  57.     static inline var keyStrafeDown = 'q';
  58.     #end
  59. #end
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement