Guest User

Untitled

a guest
Jun 19th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. stage.addEventListener(Event.ENTER_FRAME, updateStage);
  2. stage.addEventListener(KeyboardEvent.KEY_UP, KeyUp);
  3. stage.addEventListener(KeyboardEvent.KEY_DOWN, KeyDown);
  4.  
  5. var keys:Array = [];
  6.  
  7. var maxSpeed:Number = 5;
  8. var exampleSpeed:Number = 0.25;
  9. var exampleVX:Number = 0;
  10. var exampleVY:Number = 0;
  11. var rotateSpeed:Number = 5; //#################################
  12. var exampleFriction:Number = 0.96
  13.  
  14.  
  15. // CHECK FOR KEY INPUTS AND RELEASES
  16. function KeyDown(e:KeyboardEvent):void
  17. {
  18.     keys[e.keyCode] = true;
  19. }
  20. function KeyUp(e:KeyboardEvent):void
  21. {
  22.     keys[e.keyCode] = false;
  23. }
  24. // CHECK FOR KEY INPUTS AND RELEASES
  25.  
  26.  
  27. //movement of the main object (in this case a square)
  28. function movement(){
  29.     if (keys[Keyboard.RIGHT]){
  30.         Example.rotation += rotateSpeed; //#################################
  31.     }
  32.     else if(keys[Keyboard.LEFT]){
  33.         Example.rotation -= rotateSpeed; //#################################
  34.     }
  35.     else {
  36.         exampleVX *= exampleFriction; //slowdown on button release
  37.     }
  38.     if(keys[Keyboard.UP]){
  39.         exampleVY += Math.sin(degreesToRadians(rotation)) * exampleSpeed; //#################################
  40.         exampleVX += Math.cos(degreesToRadians(rotation)) * exampleSpeed; //#################################
  41.     }
  42.        
  43.     Example.x += exampleVX;
  44.     Example.y += exampleVY;
  45.    
  46.     //speedcap
  47.     if (exampleVX > maxSpeed){
  48.         exampleVX = maxSpeed;
  49.     }
  50.     else if (exampleVX < -maxSpeed){
  51.         exampleVX = -maxSpeed;
  52.     }
  53.     if (exampleVY > maxSpeed){
  54.         exampleVY = maxSpeed;}
  55.     else if (exampleVY < -maxSpeed){
  56.         exampleVY = -maxSpeed;
  57.     }
  58.     //speedcap
  59. }
  60. //movement of the main object (in this case a square)
  61.  
  62. //Setting the degrees of the object
  63. function degreesToRadians(degrees:Number):Number{ //#################################
  64.     return degrees * Math.PI / 180; //#################################
  65. }                                    //#################################
  66. //setting the degrees of the object
  67.  
  68. //implementation of boundaries
  69. function stageBoundaries(object:MovieClip){
  70.     var objectHalfHeight:uint = object.height / 2;
  71.     var objectHalfWidth:uint = object.width / 2;
  72.    
  73.     if (object.x + objectHalfWidth > stage.stageWidth+objectHalfWidth){
  74.         object.x = 0;
  75.     }
  76.     if (object.x - objectHalfWidth < 0-objectHalfWidth){
  77.         object.x = stage.stageWidth;
  78.     }
  79.     if (object.y + objectHalfHeight > stage.stageHeight+objectHalfHeight){
  80.         object.y = 0;
  81.     }
  82.     if (object.y - objectHalfHeight < 0-objectHalfHeight){
  83.         object.y = stage.stageHeight;
  84.     }
  85. }
  86. //implementation of boundaries
  87.  
  88. //update most things
  89. function updateStage(e:Event):void{
  90.     movement();
  91.     stageBoundaries(Example);
  92.  
  93. }
  94. //update most things
Add Comment
Please, Sign In to add comment