Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package
- {
- import flash.display.Shape;
- import flash.display.Sprite;
- import flash.events.Event;
- /**
- * ...
- * @author SlashC++Programmer
- */
- public class Main extends Sprite
- {
- private var dx:Number;
- private var dy:Number;
- private static var screenWidth:Number = 800;
- private static var screenHeight:Number = 600;
- public function Main()
- {
- if (stage) init();
- else addEventListener(Event.ADDED_TO_STAGE, init);
- }
- public function init(e:Event = null):void
- {
- removeEventListener(Event.ADDED_TO_STAGE, init);
- // make square
- var square:Shape = new Shape();
- square.graphics.beginFill(0xff0000, 1);
- square.graphics.drawRect(0, 0, 64, 64);
- square.graphics.endFill();
- addChild(square);
- square.x = 40;
- square.y = 40;
- dx = 2;
- dy = 2;
- //timebase values
- var passed:Number = 0;
- var now:Number = 0;
- var accumulator:Number = 0;
- var dt:Number = 1000 / 60;
- var frameRate:Number = 60 / 1000;
- var last:Number = new Date().getTime();
- addEventListener(Event.ENTER_FRAME, GameLoop);
- function GameLoop(e:Event):void
- {
- now = new Date().getTime();
- passed = now - last;
- last = now;
- accumulator += passed;
- while (accumulator >= dt)
- {
- Update(dt);
- accumulator -= dt;
- }
- }
- function Update(deltaTime:Number):void
- {
- square.x += dx * deltaTime * frameRate;
- square.y += dy * deltaTime * frameRate;
- if (square.x <= 0 || square.x >= screenWidth - square.width)
- {
- dx = -dx;
- }
- if (square.y <= 0 || square.y >= screenHeight - square.height)
- {
- dy = -dy;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement