Forked from: butr0s's Star Field diff:12 forked from: Star Field Just a star field! masarakki forked:0favorite:1lines:46license : All rights reserved modified : 2009-04-14 18:49:41 Embed Tweet // forked from butr0s's Star Field // Just a star field! package { import flash.display.Sprite; [SWF(width="465", height="465", backgroundColor="0x000000", frameRate="30")] public class StarField extends Sprite { public function StarField():void { main = this; initialize(); } } } import flash.display.*; //import flash.geom.*; import flash.events.Event; var SCREEN_WIDTH:int = 465, SCREEN_HEIGHT:int = 465; var main:Sprite, g:Graphics; //var stars:Vector.<Star> = new Vector.<Star>; var stars:Array = new Array(1000); function initialize():void { g = main.graphics; main.addEventListener(Event.ENTER_FRAME, update); for(var i:int = 0; i < 500; i++) stars[i] = new Star(); } function update(e:Event):void { g.clear(); for each(var s:Star in stars) s.update(); } class Star extends Sprite { public var position:Object = new Object(); public var velocity:Object = new Object(); public function Star():void { position.x = Math.random() * SCREEN_WIDTH; position.y = Math.random() * SCREEN_HEIGHT; position.z = Math.random() * 8; velocity.z = 1;//Math.random() * 100; velocity.x = position.z * -1/4; // 5 being an arbitrary "speed up" number velocity.y = velocity.z = 0; } public function update():void { //position.incrementBy(velocity); move(); position.x += velocity.x; position.y += velocity.y; position.z += 1; if(position.x < 0) {position.x = SCREEN_WIDTH;position.z = 0;} g.lineStyle(position.z, 0xffcc00, 0.8); g.moveTo(position.x, position.y); g.lineTo(position.x + 1, position.y); } public function move():void{ velocity.x = position.z * -1/ 4; } } Code Fullscreen Preview Fullscreen hacker_0td3q.. Object clear graphics addEventListener lineTo moveTo lineStyle Array Event.ENTER_FRAME Math.random Event Sprite int