Section 1
//MainTimeline (both_0_fla.MainTimeline)
package both_0_fla {
import flash.events.*;
import flash.display.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.geom.*;
import flash.media.*;
import flash.net.*;
import flash.printing.*;
import flash.system.*;
import flash.text.*;
import flash.ui.*;
import flash.utils.*;
import flash.xml.*;
public dynamic class MainTimeline extends MovieClip {
public var game:Object;
public function MainTimeline(){
addFrameScript(0, frame1);
}
function frame1(){
game = new Object();
game.people = 50;
createPeople();
}
public function createPeople(){
var _local1:uint;
_local1 = 1;
while (_local1 <= game.people) {
this[("p" + _local1)] = new Person();
this[("p" + _local1)].setStageDims(stage.stageWidth, stage.stageHeight);
stage.addChild(this[("p" + _local1)]);
this[("p" + _local1)].init();
_local1++;
};
}
}
}//package both_0_fla
Section 2
//Car (Car)
package {
import flash.events.*;
import flash.display.*;
import flash.ui.*;
public class Car extends MovieClip {
private var carDirection:Number;// = 1
private var left:Boolean;// = false
private var lenkReibung:Number;// = 0.06
private var right:Boolean;// = false
public var pVR:MovieClip;
public var pVL:MovieClip;
public var au:MovieClip;
public var maxSpeed:Number;// = 20
private var speed:Number;// = 0
public var pHL:MovieClip;
public var brems:Number;// = 0.9
public var pHR:MovieClip;
private var down:Boolean;// = false
public var mp:MovieClip;
private var lenkfaktor:Number;// = 0
private var isActive:Boolean;// = false
private var up:Boolean;// = false
public var gas:Number;// = 0.3
private var reibung:Number;// = 0.09
private static var piOver180:Number = 0.0174532925199433;
public function Car(){
maxSpeed = 20;
gas = 0.3;
brems = 0.9;
reibung = 0.09;
lenkReibung = 0.06;
speed = 0;
lenkfaktor = 0;
carDirection = 1;
up = false;
down = false;
left = false;
right = false;
isActive = false;
super();
}
public function init(){
this.isActive = true;
this.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDown);
this.stage.addEventListener(KeyboardEvent.KEY_UP, keyUp);
}
public function uninit(){
this.isActive = false;
this.stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDown);
this.stage.removeEventListener(KeyboardEvent.KEY_UP, keyUp);
}
private function keyUp(_arg1:KeyboardEvent):void{
switch (_arg1.keyCode){
case Keyboard.UP:
this.up = false;
break;
case Keyboard.DOWN:
this.down = false;
break;
case Keyboard.LEFT:
this.left = false;
break;
case Keyboard.RIGHT:
this.right = false;
break;
};
stage.addEventListener(Event.ENTER_FRAME, render);
}
private function keyDown(_arg1:KeyboardEvent):void{
switch (_arg1.keyCode){
case Keyboard.UP:
this.up = true;
break;
case Keyboard.DOWN:
this.down = true;
break;
case Keyboard.LEFT:
this.left = true;
break;
case Keyboard.RIGHT:
this.right = true;
break;
};
stage.addEventListener(Event.ENTER_FRAME, render);
}
public function getProperties(){
trace(this.lenkfaktor);
trace(this.maxSpeed);
trace(this.lenkReibung);
trace(this.gas);
trace(this.brems);
}
function render(_arg1:Event):void{
if (up){
if (carDirection == -1){
speed = (speed - brems);
};
if (speed <= 0){
carDirection = 1;
speed = (speed + gas);
} else {
speed = (speed + gas);
};
} else {
if (down){
if (carDirection == 1){
speed = (speed - brems);
};
if (speed <= 0){
carDirection = -1;
speed = (speed + gas);
} else {
speed = (speed + gas);
};
};
};
speed = (speed - reibung);
if (speed <= 0){
speed = 0;
};
if (speed > maxSpeed){
speed = maxSpeed;
};
if (speed < 6){
lenkfaktor = (speed / 1.5);
} else {
lenkfaktor = ((1 - (speed / maxSpeed)) + 4);
};
if (left){
this.rotation = (this.rotation - (lenkfaktor * carDirection));
} else {
if (right){
this.rotation = (this.rotation + (lenkfaktor * carDirection));
};
};
if (((((left) || (right))) && ((speed > 0)))){
speed = (speed - ((1 - (speed / maxSpeed)) * lenkReibung));
};
this.x = (this.x + ((Math.sin((this.rotation * piOver180)) * speed) * carDirection));
this.y = (this.y - ((Math.cos((this.rotation * piOver180)) * speed) * carDirection));
}
public function deleteMe(){
this.parent.removeChild(this);
}
public function getState(){
return (this.isActive);
}
}
}//package
Section 3
//Mini (Mini)
package {
public dynamic class Mini extends Car {
}
}//package
Section 4
//Person (Person)
package {
import flash.events.*;
import flash.display.*;
public class Person extends MovieClip {
private var timeIntervall:Number;
private var rotationBetrag:Number;
private var stageX:Number;// = 500
private var stageY:Number;// = 500
private var sprung:Number;
private var maxSpeed:Number;// = 5
private var rotDir:Number;// = 1
private var speed:Number;
private var piOver180;// = 0.0174532925199433
private var minY:Number;
private var maxY:Number;
private var timeCounter:Number;// = 0
private var minX:Number;
private var maxX:Number;
private var randabstand:Number;// = 9
private var inited:Boolean;// = false
private var maxTimeIntervall:Number;// = 60
public function Person(){
maxSpeed = 5;
piOver180 = (Math.PI / 180);
rotationBetrag = speed;
sprung = speed;
stageX = 500;
stageY = 500;
rotDir = 1;
maxTimeIntervall = 60;
timeCounter = 0;
inited = false;
randabstand = 9;
super();
}
public function init(){
maxDims();
removeEventListener(Event.ENTER_FRAME, enterFrame);
if (!inited){
zufallizeStartPos();
};
inited = true;
zufallizeMe();
addEventListener(Event.ENTER_FRAME, enterFrame);
}
private function zufallizeStartPos(){
x = (Math.random() * stageX);
y = (Math.random() * stageY);
}
public function SollIchAbpralln(){
if ((((((((x >= maxX)) || ((x <= minX)))) || ((y >= maxY)))) || ((y <= minY)))){
if (rotation <= 0){
rotation = (rotation + 180);
} else {
rotation = (rotation - 180);
};
if (x >= maxX){
x = (maxX - 1);
} else {
if (x <= minX){
x = (minX + 1);
};
};
if (y >= maxY){
y = (maxY - 1);
} else {
if (y <= minY){
y = minY;
};
};
x = (x + (Math.sin((rotation * piOver180)) * 5));
y = (y - (Math.cos((rotation * piOver180)) * 5));
};
}
private function enterFrame(_arg1:Event){
timeCounter++;
rotation = (rotation + (rotationBetrag * rotDir));
x = (x + (Math.sin((rotation * piOver180)) * speed));
y = (y - (Math.cos((rotation * piOver180)) * speed));
SollIchAbpralln();
if (currentFrame >= (totalFrames - sprung)){
gotoAndPlay(1);
} else {
gotoAndPlay((currentFrame + sprung));
};
if (timeCounter >= timeIntervall){
timeCounter = 0;
init();
};
}
private function maxDims(){
minX = randabstand;
maxX = (stageX - randabstand);
minY = randabstand;
maxY = (stageY - randabstand);
}
public function deleteMe(){
}
private function zufallizeMe(){
timeIntervall = Math.round((Math.random() * maxTimeIntervall));
if (Math.random() < 0.5){
rotDir = 1;
} else {
rotDir = -1;
};
speed = ((Math.random() * maxSpeed) + 1);
sprung = (Math.round(speed) + 1);
rotationBetrag = speed;
rotation = (Math.random() * 360);
}
public function setStageDims(_arg1:Number, _arg2:Number){
stageX = _arg1;
stageY = _arg2;
}
}
}//package
Section 5
//Spacer (Spacer)
package {
public dynamic class Spacer extends Car {
}
}//package