Frame 1
function submitScore() {
_level0.swHighScoreObject.player1Score = _root.allControl.score;
trace(_level0.swHighScoreObject.player1Score);
}
function playAgain() {
_root.allControl.startGame();
}
System.security.allowDomain("shockwave.com", "intranet.shockwave.com", "gameblast.shockwave.com", "www.shockwave.com", "dev.shockwave.com", "stage.shockwave.com");
_level0.swHighScoreObject = new Object();
_level0.swHighScoreObject.showTab = "view";
_level0.swHighScoreObject.gameId = "monstertruckcurfew";
_level0.swHighScoreObject.gameTitle = "Monster Truck Curfew";
_level0.swHighScoreObject.screenWidth = 550;
_level0.swHighScoreObject.screenHeight = 400;
_level0.swHighScoreObject.scoreDescriptor = "points";
_level0.swHighScoreObject.numPlayers = 1;
_level0.swHighScoreObject.player1Score = 123456789 /* 0x75BCD15 */;
_level0.swHighScoreObject.player2Score = 0;
_level0.swHighScoreObject.player3Score = 0;
_level0.swHighScoreObject.player4Score = 0;
_level0.HSHubURL = "http://www.shockwave.com/content/highscores/scorez-2002.swf";
stop();
Instance of Symbol 20 MovieClip in Frame 1
onClipEvent (load) {
var nPercentage = 0;
}
onClipEvent (enterFrame) {
if ((_parent.getBytesLoaded() > 1) && (_parent.getBytesTotal() > 1)) {
this.nPercentage = Math.floor((100 * _parent.getBytesLoaded()) / _parent.getBytesTotal());
this.mcStripe._xscale = nPercentage;
this.tP.text = String(nPercentage) + "%";
this.tP2.text = String(nPercentage) + "%";
if (nPercentage >= 100) {
this._parent.gotoAndStop("intro");
}
}
}
Frame 3
stop();
Frame 4
stop();
Instance of Symbol 476 MovieClip "m_rules" in Frame 4
onClipEvent (load) {
this._visible = false;
}
Frame 6
stop();
Instance of Symbol 596 MovieClip in Frame 6
onClipEvent (load) {
this.gotoAndStop(_root.allControl.currentMovie);
}
Frame 7
stop();
Frame 8
stop();
Instance of Symbol 607 MovieClip in Frame 8
onClipEvent (load) {
docount = false;
}
onClipEvent (enterFrame) {
if (docount) {
trycount++;
if ((_level2.getBytesTotal() == -1) && (trycount > 60)) {
docount = false;
trycount = 0;
}
}
}
Frame 9
stop();
Instance of Symbol 136 MovieClip [symEmpty] in Frame 9
onClipEvent (load) {
_root.m_txtSmallCarsCrushed.text = _root.allControl.numCrushedSmall.toString();
_root.m_txtPoliceCarsCrushed.text = _root.allControl.numCrushedPolice.toString();
_root.m_txtGranniesCrushed.text = _root.allControl.numCrushedGranny.toString();
_root.m_txtBlondesCrushed.text = _root.allControl.numCrushedSexy.toString();
}
Instance of Symbol 619 MovieClip in Frame 9
onClipEvent (load) {
this.gotoAndStop(_root.allControl.currentLevel);
}
Symbol 12 MovieClip [symDeerCrossRoad] Frame 1
#initclip 26
Object.registerClass("symDeerCrossRoad", CCrossRoadCreature);
#endinitclip
this.m_prefix = "symDeer";
Symbol 12 MovieClip [symDeerCrossRoad] Frame 30
this._parent.onCarEndsCrossing(this);
Symbol 620 MovieClip [__Packages.CCrossRoadCreature] Frame 0
class CCrossRoadCreature extends MovieClip
{
var _parent, swapDepths, removeMovieClip;
function CCrossRoadCreature () {
super();
m_isOnCrossRoad = _parent._parent._parent instanceof CField;
if (m_isOnCrossRoad) {
_parent._parent._parent.registerCrossRoadCreature(this);
}
}
function get isOnCrossRoad() {
return(m_isOnCrossRoad);
}
function get isCrossingLane() {
return((m_hitArea != null) && (m_hitArea != undefined));
}
function get prefix() {
return(m_prefix);
}
function gotoFront() {
if (m_isOnCrossRoad) {
_parent._parent._parent.addFrontCreatureGraphics(this);
_parent._parent._parent.unregisterCrossRoadCreature(this);
_parent.onCarEndsCrossing(this);
}
}
function removeCreature() {
swapDepths(CAllControl.__get__REMOVE_DEPTH());
removeMovieClip();
}
function process(field) {
if ((m_hitArea != null) && (m_hitArea.hitTest(field.__get__truck().__get__body()))) {
field.onCreatureCrushed(this);
field.startDeathAnimation();
}
}
var m_isOnCrossRoad = true;
var m_hitArea = null;
var m_prefix = "";
}
Symbol 621 MovieClip [__Packages.CField] Frame 0
class CField extends MovieClip
{
var gotoAndStop, createEmptyMovieClip;
function CField () {
super();
m_truck = new CTruck();
m_crossRoads = new Array();
m_crossRoadOuts = new Array();
m_semaphores = new Array();
m_triggers = new Array();
m_cars = new Array();
m_stoppedCars = new Array();
m_crossroadCreatures = new Array();
m_rotatingCars = new Array();
gotoAndStop(_root.allControl.currentLevel);
m_hitLevel._visible = false;
m_hitLevel.gotoAndStop("frmHit");
m_needRestartLevel = true;
m_smallCarCrushSounds = new CMySoundArray();
m_smallCarCrushSounds.pushSoundEx(getNextSoundMovieClip(), "sndCrush1");
m_smallCarCrushSounds.pushSoundEx(getNextSoundMovieClip(), "sndCrush2");
m_smallCarCrushSounds.pushSoundEx(getNextSoundMovieClip(), "sndCrush3");
m_sndGrannyCrush = new CMySound(getNextSoundMovieClip());
m_sndGrannyCrush.attachSound("sndGrannyCrush");
m_sndSexyCrush = new CMySound(getNextSoundMovieClip());
m_sndSexyCrush.attachSound("sndSexyCrush");
}
static function get DEPTH_LEVEL_BODY() {
return(m_DEPTH_LEVEL_BODY);
}
static function get DEPTH_LEVEL_BACKWHEEL() {
return(m_DEPTH_LEVEL_BACKWHEEL);
}
static function get DEPTH_LEVEL_FRONTWHEEL() {
return(m_DEPTH_LEVEL_FRONTWHEEL);
}
static function get TIME_PER_FRAME() {
return(m_TIME_PER_FRAME);
}
function get isTruckAlive() {
return(m_timeToFinish == null);
}
function get truckAll() {
return(m_truckAll);
}
function get level() {
return(m_level);
}
function get hitLevel() {
return(m_hitLevel);
}
function get truck() {
return(m_truck);
}
function get width() {
return(m_level._width);
}
function get height() {
return(m_screenHeight * 2);
}
function get backWheel() {
return(m_backWheel);
}
function get frontWheel() {
return(m_frontWheel);
}
function get crossRoads() {
return(m_crossRoads);
}
function get crossRoadOuts() {
return(m_crossRoadOuts);
}
function get semaphores() {
return(m_semaphores);
}
function get triggers() {
return(m_triggers);
}
function get cars() {
return(m_cars);
}
function get canGenerateCar() {
return((m_cars.length + m_numCarsOnCrossRoads) < _root.allControl.currentLevelCarLimit);
}
static function formatTime(time) {
var _local2 = Math.round(time / 1000);
var _local5 = Math.floor(_local2 / 60);
_local2 = _local2 - (_local5 * 60);
if (time > 0) {
var _local3 = Math.floor(((time / 60) / 60) / 1000);
var _local4 = Math.floor(((time - (((_local3 * 60) * 60) * 1000)) / 60) / 1000);
var _local6 = Math.floor(((time - (((_local3 * 60) * 60) * 1000)) - ((_local4 * 60) * 1000)) / 1000);
var _local7 = ((((12 - _local3) - 1) >= 10) ? (((12 - _local3) - 1).toString()) : ("0" + ((12 - _local3) - 1).toString()));
var _local8 = ((((60 - _local4) - 1) >= 10) ? (((60 - _local4) - 1).toString()) : ("0" + ((60 - _local4) - 1).toString()));
var _local9 = ((((60 - _local6) - 1) >= 10) ? (((60 - _local6) - 1).toString()) : ("0" + ((60 - _local6) - 1).toString()));
return(((((_local7 + ":") + _local8.toString()) + ":") + _local9.toString()) + " PM");
}
time = Math.abs(time);
var _local3 = Math.floor(((time / 60) / 60) / 1000);
var _local4 = Math.floor(((time - (((_local3 * 60) * 60) * 1000)) / 60) / 1000);
var _local6 = Math.floor(((time - (((_local3 * 60) * 60) * 1000)) - ((_local4 * 60) * 1000)) / 1000);
var _local7 = ((_local3 >= 10) ? (_local3.toString()) : ("0" + _local3.toString()));
var _local8 = ((_local4 >= 10) ? (_local4.toString()) : ("0" + _local4.toString()));
var _local9 = ((_local6 >= 10) ? (_local6.toString()) : ("0" + _local6.toString()));
return(((((_local7.toString() + ":") + _local8.toString()) + ":") + _local9.toString()) + " AM");
}
static function parseTime(time) {
var _local2 = Number(time.substr(0, 2));
var _local1 = Number(time.substr(3, 2));
return(((_local2 * 60) * 1000) + (_local1 * 1000));
}
function processDangerousArea() {
var _local4 = 0;
var _local5 = 0;
var _local7 = 0;
var _local6 = 0;
var _local3 = 0;
while (((_local4 < 2) || (_local5 < 2)) && (_local3 < m_crossroadCreatures.length)) {
if ((m_crossroadCreatures[_local3]._x >= m_truck.__get__body()._x) && (m_crossroadCreatures[_local3]._x <= (m_truck.__get__body()._x + m_DANGER_AREA_WIDTH))) {
if (m_crossroadCreatures[_local3].prefix == "symGranny") {
_local4 = 2;
} else if (m_crossroadCreatures[_local3].prefix == "symSexy") {
_local4 = 2;
} else if (m_crossroadCreatures[_local3].prefix == "symDeer") {
_local5 = 2;
}
}
_local3++;
}
_local3 = 0;
while (_local3 < m_crossRoads.length) {
if ((m_crossRoads[_local3]._x >= m_truck.__get__body()._x) && (m_crossRoads[_local3]._x <= (m_truck.__get__body()._x + m_DANGER_AREA_WIDTH))) {
var _local2 = 0;
if (m_crossRoads[_local3].semaphore != null) {
if (m_crossRoads[_local3].semaphore.isWarned && (m_crossRoads[_local3].isBusied)) {
_local2 = 1;
} else if ((!m_crossRoads[_local3].semaphore.isFree) && (m_crossRoads[_local3].isBusied)) {
_local2 = 2;
}
} else if (m_crossRoads[_local3].isCarRotating) {
_local2 = 2;
} else if (m_crossRoads[_local3].isBusied) {
_local2 = 1;
}
if (m_crossRoads[_local3].isCar) {
if (_local7 < _local2) {
_local7 = _local2;
}
} else if (m_crossRoads[_local3].isGranny || (m_crossRoads[_local3].isSexy)) {
if (_local4 < _local2) {
_local4 = _local2;
}
} else if (m_crossRoads[_local3].isDeer) {
if (_local5 < _local2) {
_local5 = _local2;
}
}
}
_local3++;
}
_local3 = 0;
while ((_local6 < 2) && (_local3 < m_cars.length)) {
if ((((m_cars[_local3]._x >= m_truck.__get__body()._x) && (m_cars[_local3]._x <= (m_truck.__get__body()._x + m_DANGER_AREA_WIDTH))) && (m_cars[_local3] instanceof CCarPolice)) && (!m_cars[_local3].crushedAndStopped)) {
_local6 = Math.max(_local6, (m_cars[_local3].isSirenOn ? 2 : 1));
}
_local3++;
}
m_warningControl.m_grannyDanger.gotoAndStop(_local4 + 1);
m_warningControl.m_deerDanger.gotoAndStop(_local5 + 1);
m_warningControl.m_crossroadDanger.gotoAndStop(_local7 + 1);
m_warningControl.m_policeDanger.gotoAndStop(_local6 + 1);
}
function destroyAll() {
}
function createAll() {
m_truck.onDestroy();
m_truckAll._visible = false;
m_truck.createAll(this);
}
function focusCamera() {
var _local2 = new CVector2D(m_truck.__get__frontWheel()._x - m_truck.__get__backWheel()._x, m_truck.__get__frontWheel()._y - m_truck.__get__backWheel()._y);
var _local4 = m_truck.__get__backWheel()._x + (_local2.__get__x() / 2);
var _local3 = m_truck.__get__backWheel()._y + (_local2.__get__y() / 2);
m_level._x = Math.floor((m_screenWidth / 2) - _local4);
if (m_level._x > 0) {
m_level._x = 0;
} else if (m_level._x < (m_screenWidth - width)) {
m_level._x = m_screenWidth - width;
}
m_level._x = Math.round(m_level._x);
m_level._y = Math.floor((m_screenHeight / 2) - _local3);
if (m_level._y > 0) {
m_level._y = 0;
} else if (m_level._y < (m_screenHeight - height)) {
m_level._y = m_screenHeight - height;
}
m_level._y = Math.round(m_level._y);
m_hitLevel._x = m_level._x;
m_hitLevel._y = m_level._y;
}
function processObjectsArray(objectsArray) {
if (objectsArray != m_cars) {
var _local2 = 0;
while (_local2 < objectsArray.length) {
objectsArray[_local2].process(this);
_local2++;
}
} else {
var _local2 = 0;
while (_local2 < objectsArray.length) {
if ((objectsArray[_local2] instanceof CCarBig) || ((objectsArray[_local2]._x >= (m_truck.__get__body()._x - m_WINDOW_AREA_WIDTH)) && (objectsArray[_local2]._x <= (m_truck.__get__body()._x + m_WINDOW_AREA_WIDTH)))) {
objectsArray[_local2].process(this);
}
_local2++;
}
}
}
function onUnload() {
m_truck.onDestroy();
}
function onLoad() {
m_txtFinal._visible = false;
m_fieldControl.m_txtScore.text = _root.allControl.score.toString();
}
function onEnterFrame() {
if (Key.getCode() == 80) {
trace(m_cars.length);
}
if (!m_paused) {
if (m_needRestartLevel) {
m_needRestartLevel = false;
createAll();
}
if (m_timeToFinish == null) {
_root.allControl.currentGameTime = _root.allControl.currentGameTime - m_TIME_PER_FRAME;
m_fieldControl.m_txtTime.text = formatTime(_root.allControl.currentGameTime);
if (m_level.m_finish.hitTest(m_truck.__get__body())) {
m_timeToFinish = m_TIME_TO_LEVEL_FINISH;
m_txtFinal._visible = true;
m_txtFinal.text = _root.allControl.currentLevelText;
}
} else if (((m_timeToFinish = m_timeToFinish - m_TIME_PER_FRAME)) <= 0) {
m_truck.onDestroy();
_root.allControl.onLevelPassed();
}
m_truck.process(this);
if (isTruckAlive) {
focusCamera();
}
processObjectsArray(m_crossRoads);
processObjectsArray(m_crossRoadOuts);
processObjectsArray(m_semaphores);
processObjectsArray(m_triggers);
processObjectsArray(m_cars);
processObjectsArray(m_stoppedCars);
processObjectsArray(m_crossroadCreatures);
processObjectsArray(m_rotatingCars);
processDangerousArea();
if (m_truck.__get__body()._y > (height * 2)) {
restartLevel();
}
}
}
function registerCrossRoad(crossRoad) {
m_crossRoads.push(crossRoad);
}
function registerCrossRoadOut(crossRoadOut) {
m_crossRoadOuts.push(crossRoadOut);
}
function registerSemaphore(semaphore) {
m_semaphores.push(semaphore);
}
function registerTrigger(trigger) {
m_triggers.push(trigger);
}
function registerCar(car, prefix) {
m_cars.push(car);
return(m_hitLevel.attachMovie(prefix + "Mirror", car._name, car.getDepth(), {_x:car._x, _y:car._y}));
}
function registerStoppedCar(car) {
m_stoppedCars.push(car);
}
function registerCrossRoadCreature(creature) {
m_crossroadCreatures.push(creature);
}
function registerRotatingCar(rotatingCar) {
m_rotatingCars.push(rotatingCar);
}
function unregisterCar(car) {
var _local2 = 0;
while (_local2 < m_cars.length) {
if (m_cars[_local2] == car) {
m_cars.splice(_local2, 1);
return(undefined);
}
_local2++;
}
}
function unregisterStoppedCar(car) {
var _local2 = 0;
while (_local2 < m_stoppedCars.length) {
if (m_stoppedCars[_local2] == car) {
m_stoppedCars.splice(_local2, 1);
return(undefined);
}
_local2++;
}
}
function unregisterCarRotating(carRotating) {
var _local2 = 0;
while (_local2 < m_rotatingCars.length) {
if (m_rotatingCars[_local2] == carRotating) {
m_rotatingCars.splice(_local2, 1);
break;
}
_local2++;
}
}
function unregisterCrossRoadCreature(creature) {
var _local2 = 0;
while (_local2 < m_crossroadCreatures.length) {
if (m_crossroadCreatures[_local2] == creature) {
m_crossroadCreatures.splice(_local2, 1);
break;
}
_local2++;
}
}
function addCar(car, prefix) {
if (!canGenerateCar) {
return(null);
}
m_lastCarDepth++;
if (m_lastCarDepth > m_DEPTH_LEVEL_MAX_CAR) {
m_lastCarDepth = m_DEPTH_LEVEL_MIN_CAR;
}
var _local2 = {x:car._x, y:car._y};
car._parent.localToGlobal(_local2);
m_level.globalToLocal(_local2);
return(m_level.attachMovie(prefix, "m_car" + (m_lastCarDepth * 1000), m_lastCarDepth, {_x:_local2.x, _y:_local2.y}));
}
function addFrontCreatureGraphics(creature) {
var _local2 = {x:creature._x, y:creature._y};
creature._parent.localToGlobal(_local2);
m_level.globalToLocal(_local2);
m_lastfrontCreatureDepth++;
if (m_lastfrontCreatureDepth > m_DEPTH_LEVEL_MAX_FRONTCREATURE) {
m_lastfrontCreatureDepth = m_DEPTH_LEVEL_MIN_FRONTCREATURE;
}
var _local4 = m_level.attachMovie(creature.prefix + "CrossRoad", "m_creatureG" + m_lastfrontCreatureDepth.toString(), m_lastfrontCreatureDepth, {_x:_local2.x, _y:_local2.y});
_local4.gotoAndPlay(creature._currentframe);
}
function addTemporaryMirror(mc, symName) {
m_lastTemporaryMirrorDepth++;
if (m_lastTemporaryMirrorDepth > m_DEPTH_LEVEL_MAX_TEMPORARYMIRROR) {
m_lastTemporaryMirrorDepth = m_DEPTH_LEVEL_MIN_TEMPORARYMIRROR;
}
var _local2 = {x:mc._x, y:mc._y};
mc._parent.localToGlobal(_local2);
m_hitLevel.globalToLocal(_local2);
m_hitLevel.attachMovie(symName, "m_temporaryMirror" + m_lastTemporaryMirrorDepth.toString(), m_lastTemporaryMirrorDepth, {_x:_local2.x, _y:_local2.y});
}
function restartLevel() {
m_needRestartLevel = true;
}
function getNextSoundMovieClip() {
return(createEmptyMovieClip("sound" + m_currentSndDepth.toString(), m_currentSndDepth));
}
function updateScore() {
m_fieldControl.m_txtScore.text = _root.allControl.score.toString();
}
function onCreatureCrushed(creature) {
if (creature.__get__prefix() == "symGranny") {
if (!m_sndGrannyCrush.__get__isPlaying()) {
m_sndGrannyCrush.start();
}
_root.allControl.numCrushedGranny++;
} else {
if (!m_sndSexyCrush.__get__isPlaying()) {
m_sndSexyCrush.start();
}
_root.allControl.numCrushedSexy++;
}
}
function onSmallCarCrushed(car) {
if (car instanceof CCarPolice) {
_root.allControl.numCrushedPolice++;
} else {
_root.allControl.numCrushedSmall++;
}
m_smallCarCrushSounds.play();
_root.allControl.score = _root.allControl.score + (CAllControl.__get__SCORE_PER_SMALLCAR() * ((car instanceof CCarPolice) ? 2 : 1));
}
function checkCreaturesIntersection(car) {
var _local2 = 0;
while (_local2 < m_crossroadCreatures.length) {
if ((m_crossroadCreatures[_local2].isOnCrossRoad && (m_crossroadCreatures[_local2].isCrossingLane)) && (car.__get__frontHitArea().hitTest(m_crossroadCreatures[_local2]))) {
return(true);
}
_local2++;
}
return(false);
}
function startDeathAnimation() {
m_truck.startDeathAnimation();
}
function registerCarOnCrossRoad() {
m_numCarsOnCrossRoads++;
}
function unregisterCarOnCrossRoad() {
m_numCarsOnCrossRoads--;
}
static var m_DEPTH_LEVEL_BODY = 10001;
static var m_DEPTH_LEVEL_BACKWHEEL = 10002;
static var m_DEPTH_LEVEL_FRONTWHEEL = 10003;
static var m_DEPTH_LEVEL_MIN_CAR = 1;
static var m_DEPTH_LEVEL_MAX_CAR = 500;
static var m_DEPTH_LEVEL_MIN_TEMPORARYMIRROR = 501;
static var m_DEPTH_LEVEL_MAX_TEMPORARYMIRROR = 600;
static var m_DEPTH_LEVEL_MIN_FRONTCREATURE = 20001;
static var m_DEPTH_LEVEL_MAX_FRONTCREATURE = 20100;
static var m_MINSND_DEPTH = 30000;
static var m_TIME_PER_FRAME = 40;
static var m_TIME_TO_LEVEL_FINISH = 2000;
static var m_DANGER_AREA_WIDTH = 800;
static var m_WINDOW_AREA_WIDTH = 1000;
var m_paused = false;
var m_truckAll = null;
var m_level = null;
var m_hitLevel = null;
var m_truck = null;
var m_background = null;
var m_backWheel = null;
var m_frontWheel = null;
var m_screenWidth = 550;
var m_screenHeight = 400;
var m_lastCarDepth = m_DEPTH_LEVEL_MIN_CAR - 1;
var m_lastTemporaryMirrorDepth = m_DEPTH_LEVEL_MIN_TEMPORARYMIRROR - 1;
var m_lastfrontCreatureDepth = m_DEPTH_LEVEL_MIN_FRONTCREATURE - 1;
var m_crossRoads = null;
var m_crossRoadOuts = null;
var m_semaphores = null;
var m_triggers = null;
var m_cars = null;
var m_stoppedCars = null;
var m_crossroadCreatures = null;
var m_rotatingCars = null;
var m_needRestartLevel = false;
var m_fieldControl = null;
var m_warningControl = null;
var m_timeToFinish = null;
var m_txtFinal = null;
var m_currentSndDepth = m_MINSND_DEPTH;
var m_smallCarCrushSounds = null;
var m_numCarsOnCrossRoads = 0;
var m_sndGrannyCrush = null;
var m_sndSexyCrush = null;
}
Symbol 622 MovieClip [__Packages.IKeyboard] Frame 0
interface IKeyboard
{
}
Symbol 623 MovieClip [__Packages.CTruck] Frame 0
class CTruck implements IKeyboard
{
function CTruck () {
}
function get body() {
return(m_truckBody);
}
function get backWheel() {
return(m_backWheel);
}
function get frontWheel() {
return(m_frontWheel);
}
function get backWheelCrushArea() {
return(m_backWheel.m_crushArea);
}
function get frontWheelCrushArea() {
return(m_frontWheel.m_crushArea);
}
function drawLine(particle1, particle2) {
var _local2 = new Object();
_local2.x = particle1.__get__pos().x;
_local2.y = particle1.__get__pos().y;
_root.m_field.m_level.localToGlobal(_local2);
_root.m_drawing.moveTo(_local2.x, _local2.y);
_local2.x = particle2.__get__pos().x;
_local2.y = particle2.__get__pos().y;
_root.m_field.m_level.localToGlobal(_local2);
_root.m_drawing.lineTo(_local2.x, _local2.y);
}
function drawCarcas() {
_root.m_drawing.clear();
_root.m_drawing.lineStyle(1, 16711680);
drawLine(m_frontWheelParticle, m_backWheelParticle);
drawLine(m_backWheelSpringParticle, m_frontWheelSpringParticle);
drawLine(m_frontWheelSpringParticle, m_backWheelParticle);
drawLine(m_backWheelSpringParticle, m_frontWheelParticle);
drawLine(m_frontWheelSpringParticle, m_frontWheelParticle);
drawLine(m_backWheelSpringParticle, m_backWheelParticle);
}
function placeSuzyHead() {
var _local8 = m_backWheelSpringParticle.__get__pos().__get__x();
var _local11 = m_frontWheelParticle.__get__pos().__get__x();
var _local6 = m_backWheelSpringParticle.__get__pos().__get__y();
var _local10 = m_frontWheelParticle.__get__pos().__get__y();
var _local5 = m_frontWheelSpringParticle.__get__pos().__get__x();
var _local9 = m_frontWheelSpringParticle.__get__pos().__get__y();
var _local13 = m_backWheelParticle.__get__pos().__get__x();
var _local12 = m_backWheelParticle.__get__pos().__get__y();
var _local3 = {a:_local11 - _local8, b:_local10 - _local6, c:(_local8 * (_local10 - _local6)) - (_local6 * (_local11 - _local8))};
var _local2 = {a:_local13 - _local5, b:_local12 - _local9, c:(_local5 * (_local12 - _local9)) - (_local9 * (_local13 - _local5))};
var _local7 = (_local3.a * _local2.b) - (_local2.a * _local3.b);
if (_local7 == 0) {
return(undefined);
}
var _local16 = ((_local3.a * _local2.c) - (_local2.a * _local3.c)) / _local7;
var _local15 = ((_local3.b * _local2.c) - (_local2.b * _local3.c)) / _local7;
var _local4 = {x:_local16, y:_local15};
m_field.__get__level().localToGlobal(_local4);
m_truckBody.globalToLocal(_local4);
m_truckBody.m_head._x = _local4.x;
m_truckBody.m_head._y = _local4.y - 45;
if (Math.abs(m_truckBody.m_head._x - m_initialHeadX) > m_MAX_HEAD_DISTANCE) {
var _local14 = (((m_truckBody.m_head._x - m_initialHeadX) > 0) ? 1 : -1);
m_truckBody.m_head._x = m_initialHeadX + (_local14 * m_MAX_HEAD_DISTANCE);
}
if (Math.abs(m_truckBody.m_head._y - m_initialHeadY) > m_MAX_HEAD_DISTANCE) {
var _local14 = (((m_truckBody.m_head._y - m_initialHeadY) > 0) ? 1 : -1);
m_truckBody.m_head._y = m_initialHeadY + (_local14 * m_MAX_HEAD_DISTANCE);
}
}
function destroyAll() {
delete m_backWheelSpringParticle;
delete m_frontWheelSpringParticle;
delete m_backWheel.particle;
m_backWheel.removeMovieClip();
delete m_frontWheel.particle;
m_frontWheel.removeMovieClip();
m_particleEngine.clear();
delete m_particleEngine;
m_truckBody.removeMovieClip();
}
function calcCarNormal() {
var _local2 = m_frontWheel.particle.__get__pos().minusNew(m_backWheel.particle.__get__pos());
var _local3 = _local2.__get__x();
_local2.__set__x(-_local2.__get__y());
_local2.__set__y(_local3);
_local2.normalize();
return(_local2);
}
function turnLeft() {
var _local4 = 0.9;
var _local5 = 1;
var _local2 = calcCarNormal();
var _local3 = Math.abs(_local2.__get__y()) * _local5;
m_frontWheel.addedAcc.x = m_frontWheel.addedAcc.x - ((_local2.__get__x() * CParticleEngine.__get__GRAVITY()) * _local3);
m_frontWheel.addedAcc.y = m_frontWheel.addedAcc.y - ((_local2.__get__y() * CParticleEngine.__get__GRAVITY()) * _local3);
m_backWheel.addedAcc.x = m_backWheel.addedAcc.x + (((_local2.__get__x() * CParticleEngine.__get__GRAVITY()) * _local3) * _local4);
m_backWheel.addedAcc.y = m_backWheel.addedAcc.y + (((_local2.__get__y() * CParticleEngine.__get__GRAVITY()) * _local3) * _local4);
}
function turnRight() {
var _local4 = 0.9;
var _local5 = 1;
var _local2 = calcCarNormal();
var _local3 = Math.abs(_local2.__get__y()) * _local5;
m_frontWheel.addedAcc.x = m_frontWheel.addedAcc.x + (((_local2.__get__x() * CParticleEngine.__get__GRAVITY()) * _local3) * _local4);
m_frontWheel.addedAcc.y = m_frontWheel.addedAcc.y + (((_local2.__get__y() * CParticleEngine.__get__GRAVITY()) * _local3) * _local4);
m_backWheel.addedAcc.x = m_backWheel.addedAcc.x - ((_local2.__get__x() * CParticleEngine.__get__GRAVITY()) * _local3);
m_backWheel.addedAcc.y = m_backWheel.addedAcc.y - ((_local2.__get__y() * CParticleEngine.__get__GRAVITY()) * _local3);
}
function createAll(field) {
destroyAll();
var _local3 = new Object();
_local3.x = field.__get__truckAll().m_backWheelSpringPoint._x;
_local3.y = field.__get__truckAll().m_backWheelSpringPoint._y;
field.__get__truckAll().localToGlobal(_local3);
field.globalToLocal(_local3);
m_backWheelSpringParticle = new CParticle(_local3.x, _local3.y, m_SPRING_PARTICLE_WEIGHT);
_local3.x = field.__get__truckAll().m_frontWheelSpringPoint._x;
_local3.y = field.__get__truckAll().m_frontWheelSpringPoint._y;
field.__get__truckAll().localToGlobal(_local3);
field.globalToLocal(_local3);
m_frontWheelSpringParticle = new CParticle(_local3.x, _local3.y, m_SPRING_PARTICLE_WEIGHT);
_local3.x = field.__get__truckAll().m_backWheelPoint._x;
_local3.y = field.__get__truckAll().m_backWheelPoint._y;
field.__get__truckAll().localToGlobal(_local3);
field.globalToLocal(_local3);
m_backWheelParticle = new CParticle(_local3.x, _local3.y, m_WHEEL_WEIGHT);
_local3.x = field.__get__truckAll().m_frontWheelPoint._x;
_local3.y = field.__get__truckAll().m_frontWheelPoint._y;
field.__get__truckAll().localToGlobal(_local3);
field.globalToLocal(_local3);
m_frontWheelParticle = new CParticle(_local3.x, _local3.y, m_WHEEL_WEIGHT);
field.__get__level().attachMovie("symTruckBackWheel", "m_backWheel", CField.__get__DEPTH_LEVEL_BACKWHEEL(), {_x:m_backWheelParticle.__get__pos().__get__x(), _y:m_backWheelParticle.__get__pos().__get__y()});
field.__get__level().attachMovie("symTruckFrontWheel", "m_frontWheel", CField.__get__DEPTH_LEVEL_FRONTWHEEL(), {_x:m_frontWheelParticle.__get__pos().__get__x(), _y:m_frontWheelParticle.__get__pos().__get__y()});
m_backWheel = field.__get__level().m_backWheel;
m_frontWheel = field.__get__level().m_frontWheel;
m_particleEngine = new CParticleEngine();
m_particleEngine.__set__hitGround(field.hitLevel);
m_particleEngine.__set__keyboard(this);
m_particleEngine.addParticle(m_backWheelParticle);
m_particleEngine.addParticle(m_frontWheelParticle);
m_particleEngine.addWheel(m_backWheel, m_backWheelParticle, m_MAX_CARACCSPEED);
m_particleEngine.addWheel(m_frontWheel, m_frontWheelParticle, m_MAX_CARACCSPEED);
m_particleEngine.addParticle(m_backWheelSpringParticle);
m_particleEngine.addParticle(m_frontWheelSpringParticle);
m_downSpring = m_particleEngine.addSpringConstraint(m_frontWheelParticle, m_backWheelParticle, m_DOWN_SPRING_PRESSCOEFF, m_DOWN_SPRING_STRETCHCOEFF);
m_upSpring = m_particleEngine.addSpringConstraint(m_backWheelSpringParticle, m_frontWheelSpringParticle, m_UP_SPRING_PRESSCOEFF, m_UP_SPRING_STRETCHCOEFF);
m_ltDiagSpring = m_particleEngine.addSpringConstraint(m_frontWheelParticle, m_backWheelSpringParticle, m_DIAG_SPRING_PRESSCOEFF, m_DIAG_SPRING_STRETCHCOEFF);
m_rtDiagSpring = m_particleEngine.addSpringConstraint(m_backWheelParticle, m_frontWheelSpringParticle, m_DIAG_SPRING_PRESSCOEFF, m_DIAG_SPRING_STRETCHCOEFF);
m_rightSpring = m_particleEngine.addSpringConstraint(m_frontWheelParticle, m_frontWheelSpringParticle, m_VERT_SPRING_PRESSCOEFF, m_VERT_SPRING_STRETCHCOEFF);
m_leftSpring = m_particleEngine.addSpringConstraint(m_backWheelParticle, m_backWheelSpringParticle, m_VERT_SPRING_PRESSCOEFF, m_VERT_SPRING_STRETCHCOEFF);
m_particleEngine.addPenetrationConstraint(m_backWheelParticle, m_backWheelSpringParticle, m_frontWheelSpringParticle);
m_particleEngine.addPenetrationConstraint(m_frontWheelParticle, m_frontWheelSpringParticle, m_backWheelSpringParticle);
m_particleEngine.addPenetrationConstraint(m_backWheelSpringParticle, m_backWheelParticle, m_frontWheelParticle);
m_particleEngine.addPenetrationConstraint(m_frontWheelSpringParticle, m_frontWheelParticle, m_backWheelParticle);
m_rightSpring.__set__heavyParticle(m_frontWheelParticle);
m_leftSpring.__set__heavyParticle(m_backWheelParticle);
m_ltDiagSpring.__set__heavyParticle(m_frontWheelParticle);
m_rtDiagSpring.__set__heavyParticle(m_backWheelParticle);
_local3.x = field.__get__truckAll().m_body._x;
_local3.y = field.__get__truckAll().m_body._y;
field.__get__truckAll().localToGlobal(_local3);
field.globalToLocal(_local3);
m_truckBody = field.__get__level().attachMovie("symTruckBody", "m_body", CField.__get__DEPTH_LEVEL_BODY(), {_x:_local3.x, _y:_local3.y});
m_prevTruckX = m_truckBody._x;
m_engineSounds = new Array();
var _local4 = 0;
while (_local4 < m_ENGINE_BORDERS.length) {
var _local5 = new CMySound(field.getNextSoundMovieClip());
_local5.attachSound("sndEngine" + (_local4 + 1).toString());
m_engineSounds.push(_local5);
_local4++;
}
m_leverSound = new CMySound(field.getNextSoundMovieClip());
m_leverSound.attachSound("sndEngineLever");
m_initialHeadX = m_truckBody.m_head._x;
m_initialHeadY = m_truckBody.m_head._y;
}
function process(field) {
m_field = field;
m_particleEngine.process();
if (isLeftKeyDown()) {
turnLeft();
}
if (isRightKeyDown()) {
turnRight();
}
var _local4 = null;
_local4 = {x:m_truckBody.m_hp1._x, y:m_truckBody.m_hp1._y};
m_truckBody.localToGlobal(_local4);
if (field.__get__hitLevel().hitTest(_local4.x, _local4.y, true)) {
startDeathAnimation();
}
_local4 = {x:m_truckBody.m_hp2._x, y:m_truckBody.m_hp2._y};
m_truckBody.localToGlobal(_local4);
if (field.__get__hitLevel().hitTest(_local4.x, _local4.y, true)) {
startDeathAnimation();
}
_local4 = {x:m_truckBody.m_hp3._x, y:m_truckBody.m_hp3._y};
m_truckBody.localToGlobal(_local4);
if (field.__get__hitLevel().hitTest(_local4.x, _local4.y, true)) {
startDeathAnimation();
}
var _local5 = new CVector2D(m_frontWheel._x - m_backWheel._x, m_frontWheel._y - m_backWheel._y);
var _local9 = new CVector2D(_local5.__get__y(), -_local5.__get__x());
_local9.normalize();
m_truckBody._x = (m_backWheel._x + (_local5.__get__x() / 2)) + (_local9.__get__x() * 35);
m_truckBody._y = (m_backWheel._y + (_local5.__get__y() / 2)) + (_local9.__get__y() * 35);
m_truckBody._rotation = (_local5.__get__angle() * 180) / Math.PI;
var _local7 = {x:m_backWheelParticle.__get__pos().__get__x(), y:m_backWheelParticle.__get__pos().__get__y()};
var _local6 = {x:m_frontWheelParticle.__get__pos().__get__x(), y:m_frontWheelParticle.__get__pos().__get__y()};
field.__get__level().localToGlobal(_local7);
field.__get__level().localToGlobal(_local6);
m_truckBody.globalToLocal(_local7);
m_truckBody.globalToLocal(_local6);
m_truckBody.m_backSpring._rotation = (Math.atan2((_local7.y + 1.2) - m_truckBody.m_backSpring._y, _local7.x - m_truckBody.m_backSpring._x) * 180) / Math.PI;
m_truckBody.m_frontSpring._rotation = (Math.atan2((_local6.y + 1.2) - m_truckBody.m_frontSpring._y, _local6.x - m_truckBody.m_frontSpring._x) * 180) / Math.PI;
var _local3 = Math.abs(m_truckBody._x - m_prevTruckX);
var _local2 = 1;
while (_local2 < m_ENGINE_BORDERS.length) {
if ((_local3 >= m_ENGINE_BORDERS[_local2 - 1]) && (_local3 < m_ENGINE_BORDERS[_local2])) {
if (!m_engineSounds[_local2 - 1].isPlaying) {
m_engineSounds[_local2 - 1].start(0, -1);
}
} else if (m_engineSounds[_local2 - 1].isPlaying) {
m_engineSounds[_local2 - 1].stop();
}
_local2++;
}
m_prevTruckX = m_truckBody._x;
placeSuzyHead();
}
function onDestroy() {
var _local2 = 0;
while (_local2 < m_engineSounds.length) {
m_engineSounds[_local2].stop();
_local2++;
}
m_leverSound.stop();
}
function startDeathAnimation() {
m_truckBody.play();
m_backWheel.play();
m_frontWheel.play();
}
function isAccelerationKeyDown() {
return(m_field.__get__isTruckAlive() && (Key.isDown(38)));
}
function isBrakeKeyDown() {
return(m_field.__get__isTruckAlive() && (Key.isDown(40)));
}
function isLeftKeyDown() {
return(m_field.__get__isTruckAlive() && (Key.isDown(37)));
}
function isRightKeyDown() {
return(m_field.__get__isTruckAlive() && (Key.isDown(39)));
}
static var m_SPRING_PARTICLE_WEIGHT = 3;
static var m_WHEEL_WEIGHT = 3;
static var m_DOWN_SPRING_PRESSCOEFF = 0.7;
static var m_DOWN_SPRING_STRETCHCOEFF = 0.6;
static var m_UP_SPRING_PRESSCOEFF = 1;
static var m_UP_SPRING_STRETCHCOEFF = 1;
static var m_DIAG_SPRING_PRESSCOEFF = 1;
static var m_DIAG_SPRING_STRETCHCOEFF = 0.5;
static var m_VERT_SPRING_PRESSCOEFF = 0.9;
static var m_VERT_SPRING_STRETCHCOEFF = 0.1;
static var m_MAX_CARACCSPEED = 20;
static var m_ENGINE_BORDERS = new Array(0, 10, 20, 30, 40, 50, 1000);
static var m_MAX_HEAD_DISTANCE = 5;
var m_field = null;
var m_particleEngine = null;
var m_backWheelSpringParticle = null;
var m_frontWheelSpringParticle = null;
var m_backWheelParticle = null;
var m_frontWheelParticle = null;
var m_backWheel = null;
var m_frontWheel = null;
var m_leftSpring = null;
var m_rightSpring = null;
var m_upSpring = null;
var m_downSpring = null;
var m_ltDiagSpring = null;
var m_rtDiagSpring = null;
var m_truckBody = null;
var m_engineSounds = null;
var m_leverSound = null;
var m_prevTruckX = 0;
var m_initialHeadX = 0;
var m_initialHeadY = 0;
}
Symbol 624 MovieClip [__Packages.CParticleEngine] Frame 0
class CParticleEngine
{
function CParticleEngine () {
m_particles = new Array();
m_wheels = new Array();
m_constraints = new Array();
}
static function get GRAVITY() {
return(m_GRAVITY);
}
function get keyboard() {
return(m_keyboard);
}
function set keyboard(newVal) {
m_keyboard = newVal;
//return(keyboard);
}
function get hitGround() {
return(m_hitGround);
}
function set hitGround(newVal) {
m_hitGround = newVal;
//return(hitGround);
}
function computeForces() {
var _local3 = m_particles.length;
var _local2 = 0;
while (_local2 < _local3) {
m_particles[_local2].acc.x = 0;
m_particles[_local2].acc.y = m_GRAVITY * m_particles[_local2].mass;
_local2++;
}
}
function clearForces() {
var _local3 = m_wheels.length;
var _local2 = 0;
while (_local2 < _local3) {
m_wheels[_local2].addedAcc.x = (m_wheels[_local2].addedAcc.y = 0);
_local2++;
}
}
function applyAddedAcc() {
var _local3 = m_wheels.length;
var _local2 = 0;
while (_local2 < _local3) {
m_wheels[_local2].applyAddedAcc();
_local2++;
}
}
function verlet() {
var _local2 = 0;
var _local4 = m_wheels.length;
var _local5 = m_particles.length;
var _local3 = 0;
if (m_keyboard != null) {
if (m_keyboard.isAccelerationKeyDown()) {
_local3 = _local3 + m_ACCELERATION_VALUE;
} else if (m_keyboard.isBrakeKeyDown()) {
_local3 = _local3 + m_BRAKE_VALUE;
}
}
_local2 = 0;
while (_local2 < _local5) {
m_particles[_local2].verlet(m_TIME_PER_FRAME, m_DAMP_COEFF);
_local2++;
}
_local2 = 0;
while (_local2 < _local4) {
m_wheels[_local2].process(m_TIME_PER_FRAME, m_wheels[_local2].maxAccSpeed * _local3, m_DAMP_COEFF);
_local2++;
}
}
function checkCollisions() {
var _local3 = m_wheels.length;
var _local2 = 0;
while (_local2 < _local3) {
m_wheels[_local2].checkCollision(m_hitGround);
_local2++;
}
}
function checkConstraints() {
var _local3 = m_constraints.length;
var _local2 = 0;
while (_local2 < _local3) {
m_constraints[_local2].resolve();
_local2++;
}
}
function clearParticles() {
m_particles.length = 0;
}
function clearWheels() {
m_wheels.length = 0;
}
function clearConstraints() {
m_constraints.length = 0;
}
function clear() {
clearParticles();
clearWheels();
clearConstraints();
}
function addParticle(p) {
m_particles.push(p);
return(p);
}
function addWheel(wheel, p, maxAccSpeed) {
wheel.init(p, maxAccSpeed);
m_wheels.push(wheel);
return(wheel);
}
function addSpringConstraint(p1, p2, koeffStiff1, koeffStiff2) {
var _local2 = new CSpringConstraint(p1, p2, koeffStiff1, koeffStiff2);
m_constraints.push(_local2);
return(_local2);
}
function addPenetrationConstraint(movableParticle, lineParticle1, lineParticle2) {
var _local2 = new CPenetrationConstraint(movableParticle, lineParticle1, lineParticle2);
m_constraints.push(_local2);
return(_local2);
}
function process() {
computeForces();
applyAddedAcc();
verlet();
checkConstraints();
checkCollisions();
clearForces();
}
static var m_TIME_PER_FRAME = 0.04;
static var m_GRAVITY = 9.6;
static var m_DAMP_COEFF = 0.995;
static var m_ACCELERATION_VALUE = 0.35;
static var m_BRAKE_VALUE = -0.2;
var m_particles = new Array();
var m_wheels = new Array();
var m_constraints = new Array();
var m_hitGround = null;
var m_keyboard = null;
}
Symbol 625 MovieClip [__Packages.CParticle] Frame 0
class CParticle
{
function CParticle (xPos, yPos, mass) {
m_mass = mass;
m_pos = new CVector2D(xPos, yPos);
m_prevPos = m_pos.duplicate();
m_acc = new CVector2D(0, 0);
}
function get mass() {
return(m_mass);
}
function get pos() {
return(m_pos);
}
function get prevPos() {
return(m_prevPos);
}
function get acc() {
return(m_acc);
}
function set isFrozen(newVal) {
m_isFrozen = newVal;
//return(isFrozen);
}
function get isFrozen() {
return(m_isFrozen);
}
function verlet(dTime, dampCoeff) {
var _local2 = m_pos.duplicate();
m_pos.x = m_pos.x + (((m_pos.__get__x() - m_prevPos.__get__x()) * dampCoeff) + (dTime * m_acc.__get__x()));
m_pos.y = m_pos.y + (((m_pos.__get__y() - m_prevPos.__get__y()) * dampCoeff) + (dTime * m_acc.__get__y()));
_local2.copyTo(m_prevPos);
m_velocityVector = null;
}
function freeze() {
m_isFrozen = true;
}
function defreeze() {
m_isFrozen = false;
}
function getVelocity() {
if (m_velocityVector == null) {
m_velocityVector = new CVector2D(m_pos.__get__x() - m_prevPos.__get__x(), m_pos.__get__y() - m_prevPos.__get__y());
}
return(m_velocityVector.duplicate());
}
var m_mass = 0;
var m_pos = null;
var m_prevPos = null;
var m_acc = null;
var m_isFrozen = false;
var m_velocityVector = null;
}
Symbol 626 MovieClip [__Packages.CVector2D] Frame 0
class CVector2D
{
function CVector2D (vx_, vy_) {
m_vx = vx_;
m_vy = vy_;
}
function destruct() {
}
function get x() {
return(m_vx);
}
function set x(newVal) {
m_vx = newVal;
onNewData();
//return(x);
}
function get y() {
return(m_vy);
}
function set y(newVal) {
m_vy = newVal;
onNewData();
//return(y);
}
function get vx() {
return(m_vx);
}
function set vx(newVal) {
m_vx = newVal;
onNewData();
//return(vx);
}
function get vy() {
return(m_vy);
}
function set vy(newVal) {
m_vy = newVal;
onNewData();
//return(vy);
}
function get x0() {
return(m_x0);
}
function set x0(newVal) {
m_x0 = newVal;
onNewData();
//return(x0);
}
function get y0() {
return(m_y0);
}
function set y0(newVal) {
m_y0 = newVal;
onNewData();
//return(y0);
}
function get dx() {
return(((m_dx != null) ? (m_dx) : ((m_dx = m_vx / length))));
}
function get dy() {
return(((m_dy != null) ? (m_dy) : ((m_dy = m_vy / length))));
}
function get x1() {
return(((m_x1 != null) ? (m_x1) : ((m_x1 = m_x0 + m_vx))));
}
function get y1() {
return(((m_y1 != null) ? (m_y1) : ((m_y1 = m_y0 + m_vy))));
}
function get length() {
return(((m_length != null) ? (m_length) : ((m_length = Math.sqrt((m_vx * m_vx) + (m_vy * m_vy))))));
}
function get angle() {
return(((m_angle != null) ? (m_angle) : ((m_angle = Math.atan2(m_vy, m_vx)))));
}
function get lnormal() {
return(m_lnormal.duplicate());
}
function get rnormal() {
return(m_rnormal.duplicate());
}
function onNewData() {
m_x1 = null;
m_y1 = null;
m_length = null;
m_angle = null;
m_lnormal = null;
m_rnormal = null;
}
function duplicateNew(new_vx, new_vy) {
return(duplicate().reinit(new_vx, new_vy));
}
function reinit(vx_, vy_) {
vx = (vx_);
vy = (vy_);
return(this);
}
function duplicate() {
var _local2 = new CVector2D(vx, vy);
_local2.__set__x0(x0);
_local2.__set__y0(y0);
return(_local2);
}
function copyTo(v) {
v.__set__vx(vx);
v.__set__vy(vy);
return(v);
}
function adD(v) {
vx = vx + v.vx;
vy = vy + v.vy;
return(this);
}
function addNew(v) {
return(duplicateNew(vx + v.__get__vx(), vy + v.__get__vy()));
}
function subtract(v) {
vx = vx - v.vx;
vy = vy - v.vy;
return(this);
}
function subtractNew(v) {
return(duplicateNew(vx - v.__get__vx(), vy - v.__get__vy()));
}
function scalar(v) {
return((vx * v.__get__vx()) + (vy * v.__get__vy()));
}
function normalize() {
var _local2 = length;
vx = vx / _local2;
vy = vy / _local2;
return(this);
}
function normalizeNew() {
var _local2 = length;
return(duplicateNew(vx / _local2, vy / _local2));
}
function multiply(num) {
vx = vx * num;
vy = vy * num;
return(this);
}
function multiplyNew(num) {
return(duplicateNew(vx * num, vy * num));
}
function reverse() {
vx = (-vx);
vy = (-vy);
return(this);
}
function reverseNew() {
return(duplicateNew(-vx, -vy));
}
function rotateRad(angle_) {
var _local4 = vx;
var _local3 = vy;
var _local5 = Math.sin(angle_);
var _local2 = Math.cos(angle_);
vx = ((_local4 * _local2) - (_local3 * _local5));
vy = ((_local4 * _local5) + (_local3 * _local2));
return(this);
}
function rotateRadNew(angle_) {
var _local3 = Math.sin(angle_);
var _local2 = Math.cos(angle_);
return(duplicateNew((vx * _local2) - (vy * _local3), (vx * _local3) + (vy * _local2)));
}
function rotateGrad(angle_) {
return(rotateRad((Math.PI/180) * angle_));
}
function rotateGradNew(angle_) {
return(rotateRadNew((Math.PI/180) * angle_));
}
function getDistanceToLine(p0, p1) {
var _local4 = p0.__get__vy() - p1.__get__vy();
var _local3 = p1.__get__vx() - p0.__get__vx();
var _local7 = (p0.__get__vx() * (p1.__get__vy() - p0.__get__vy())) - (p0.__get__vy() * (p1.__get__vx() - p0.__get__vx()));
var _local5 = Math.sqrt((_local4 * _local4) + (_local3 * _local3));
return((((_local4 / _local5) * vx) + ((_local3 / _local5) * vy)) + (_local7 / _local5));
}
function projectVector(unitVector) {
var _local2 = scalar(unitVector);
return(duplicateNew(_local2 * unitVector.__get__dx(), _local2 * unitVector.__get__dy()));
}
function getClosestPoint(point) {
var _local2 = null;
var _local4 = new CVector2D(point.__get__x1() - x0, point.__get__y1() - y0);
if (((_local4.__get__vx() * dx) + (_local4.__get__vy() * dy)) < 0) {
_local2 = _local4;
} else {
var _local5 = new CVector2D(point.__get__x1() - x1, point.__get__y1() - y1);
if (((_local5.__get__vx() * dx) + (_local5.__get__vy() * dy)) > 0) {
_local2 = _local5;
} else {
_local2 = _local4.projectVector(lnormal.normalize());
}
}
_local2.__set__x0(point.__get__x1() - _local2.__get__vx());
_local2.__set__y0(point.__get__y1() - _local2.__get__vy());
return(_local2);
}
function toString() {
var _local2 = ((("{ " + vx) + ", ") + vy) + " }";
if ((x0 != 0) || (y0 != 0)) {
_local2 = _local2 + (((((((((": [" + x0) + "; ") + y0) + "] -> ") + "[") + x1) + "; ") + y1) + "]");
}
return(_local2);
}
function getUgol() {
return(angle);
}
function plus(v) {
return(adD(v));
}
function plusNew(v) {
return(addNew(v));
}
function minusNew(v) {
return(subtractNew(v));
}
function multNew(n) {
return(multiplyNew(n));
}
function rotate(angle_) {
return(rotateRad(angle_));
}
function rotateNew(angle_) {
return(rotateRadNew(angle_));
}
function getDistanceTo(p0, p1) {
return(getDistanceToLine(p0, p1));
}
var m_vx = 0;
var m_vy = 0;
var m_x0 = 0;
var m_y0 = 0;
var m_dx = null;
var m_dy = null;
var m_x1 = null;
var m_y1 = null;
var m_length = null;
var m_angle = null;
var m_lnormal = null;
var m_rnormal = null;
}
Symbol 627 MovieClip [__Packages.CWheel] Frame 0
class CWheel extends MovieClip
{
var smallHitPointArray, rad, hitPointArray, normalArray, m_clipPointArray, attachMovie, particle, _width, maxAccSpeed, speed, accSpeed, rot, addedAcc, intersectionFlag, lastIntersPoint, lastN, hitArray, intersArray, lastYSpeed, mc_rim, _x, _y, localToGlobal;
function CWheel () {
super();
}
function fillHitPoints() {
var _local2;
var _local3 = (Math.PI*2) / smallHitCount;
smallHitPointArray = new Array(smallHitCount);
_local2 = 0;
while (_local2 < smallHitCount) {
smallHitPointArray[_local2] = new CVector2D(Math.sin(_local3 * _local2) * rad, (-Math.cos(_local3 * _local2)) * rad);
_local2++;
}
_local3 = (Math.PI*2) / hitCount;
hitPointArray = new Array(hitCount);
normalArray = new Array(hitCount);
m_clipPointArray = new Array(hitCount);
_local2 = 0;
while (_local2 < hitCount) {
hitPointArray[_local2] = new CVector2D(Math.sin(_local3 * _local2) * rad, (-Math.cos(_local3 * _local2)) * rad);
m_clipPointArray[_local2] = attachMovie("symEmpty", "m_point" + _local2.toString(), _local2 + 1000, {_x:hitPointArray[_local2].x, _y:hitPointArray[_local2].y});
normalArray[_local2] = hitPointArray[_local2].multiplyNew(-1);
normalArray[_local2].normalize();
_local2++;
}
}
function init(particle_, maxAccSpeed_) {
particle = particle_;
rad = (_width / 2) - 5;
maxAccSpeed = maxAccSpeed_ * 4;
speed = 0;
accSpeed = 0;
rot = new CVector2D(1, 0);
addedAcc = new CVector2D(0, 0);
intersectionFlag = false;
lastIntersPoint = new CVector2D(0, 0);
lastN = new CVector2D(0, 0);
fillHitPoints();
hitArray = new Array(hitCount);
intersArray = new Array();
lastYSpeed = 0;
}
function process(dTime, acc, koeffDamp) {
accSpeed = Math.max(-maxAccSpeed, Math.min(maxAccSpeed, accSpeed + (acc * dTime)));
speed = Math.max((-maxSpeed) * dTime, Math.min((speed * koeffDamp) + accSpeed, maxSpeed * dTime));
rot.rotateRad(speed / rad);
mc_rim._rotation = (Math.atan2(rot.__get__y(), rot.__get__x()) * 180) / Math.PI;
lastYSpeed = particle.__get__pos().__get__y() - particle.__get__prevPos().__get__y();
}
function checkCollision(hit_mc, isCollidedWithSpring) {
var _local2;
var _local8;
var _local9 = {x:0, y:0};
var _local13 = false;
var _local5;
var _local7;
var _local15;
var _local16 = new CVector2D(particle.__get__prevPos().__get__x(), particle.__get__prevPos().__get__y());
var _local4 = new CVector2D(0, 0);
var _local14;
var _local3 = new CVector2D(0, 0);
_x = particle.__get__pos().x;
_y = particle.__get__pos().y;
_local14 = 0;
_local2 = 0;
while (_local2 < hitCount) {
_local9.x = hitPointArray[_local2].x;
_local9.y = hitPointArray[_local2].y;
localToGlobal(_local9);
if ((hitArray[_local2] = hit_mc.hitTest(_local9.x, _local9.y, true))) {
_local13 = true;
_local5 = _local2;
_local14++;
}
_local2++;
}
if (_local14 == hitCount) {
particle.__get__pos().__set__x(particle.__get__prevPos().__get__x() + ((particle.__get__pos().__get__x() - particle.__get__prevPos().__get__x()) * 0.3));
particle.__get__pos().__set__y(particle.__get__prevPos().__get__y() + ((particle.__get__pos().__get__y() - particle.__get__prevPos().__get__y()) * 0.3));
_x = particle.__get__pos().x;
_y = particle.__get__pos().y;
return(undefined);
}
_local2 = 0;
if (_local13) {
while (true) {
_local2++;
if (_local2 == hitCount) {
_local2 = 0;
}
if (!hitArray[_local2]) {
_local5 = -1;
_local8 = 0;
while (_local8 < hitCount) {
_local2++;
if (_local2 == hitCount) {
_local2 = 0;
}
if (_local5 == -1) {
if (hitArray[_local2]) {
_local5 = _local2;
_local4.adD(normalArray[_local2]);
normalArray[_local2].copyTo(_local3);
}
} else if (!hitArray[_local2]) {
_local7 = _local2 - 1;
if (_local7 < 0) {
_local7 = hitCount - 1;
}
intersArray.push({k1:_local5, k2:_local7, n:new CVector2D(_local3.__get__x(), _local3.__get__y())});
_local5 = -1;
} else {
_local4.adD(normalArray[_local2]);
_local3.adD(normalArray[_local2]);
}
_local8++;
}
break;
}
}
var _local6 = new CVector2D(0, 0);
if (intersArray.length > 0) {
_local4.normalize();
if (intersectionFlag) {
_local4.x = _local4.x + lastN.x;
_local4.y = _local4.y + lastN.y;
_local4.x = _local4.x / 2;
_local4.y = _local4.y / 2;
}
var _local10;
var _local11;
_local15 = intersArray.length;
_local2 = 0;
while (_local2 < _local15) {
_local10 = intersArray.pop();
_local5 = _local10.k1;
_local7 = _local10.k2;
_local10.n.copyTo(_local3);
particle.__get__pos().subtractNew(particle.__get__prevPos()).copyTo(_local6);
if (_local4.scalar(_local6) < 0) {
_local11 = Math.atan2(_local4.__get__y(), _local4.__get__x());
_local6.rotateRad(-_local11);
_local6.__set__x((-_local6.__get__x()) * koeffSpring);
_local6.rotateRad(_local11);
pushOut(_local5, _local7, _local3, hit_mc);
particle.__get__prevPos().__set__x(particle.__get__pos().__get__x() - _local6.__get__x());
particle.__get__prevPos().__set__y(particle.__get__pos().__get__y() - _local6.__get__y());
} else {
pushOut(_local5, _local7, _local3, hit_mc);
}
_local2++;
}
validateRotation(_local4, _local16);
intersectionFlag = true;
particle.__get__pos().copyTo(lastIntersPoint);
_local4.copyTo(lastN);
}
} else if (intersectionFlag) {
validateRotation(lastN, _local16);
intersectionFlag = false;
}
_x = particle.__get__pos().x;
_y = particle.__get__pos().y;
}
function pushOut(k1, k2, n, hit_mc) {
n.normalize();
if (k1 != k2) {
var _local7 = new CVector2D(0, 0).getDistanceToLine(hitPointArray[k1], hitPointArray[k2]);
_local7 = rad - Math.abs(_local7);
particle.__get__pos().adD(n.multiplyNew(_local7));
particle.__get__prevPos().adD(n.multiplyNew(_local7));
} else {
var _local6 = n.multiplyNew(-rad);
var _local3 = new Object();
var _local5 = 0;
var _local4 = 0.03;
while (true) {
_local3.x = _local6.x;
_local3.y = _local6.y;
localToGlobal(_local3);
if (hit_mc.hitTest(_local3.x, _local3.y, true)) {
_local5++;
_x = (particle.__get__pos().x = particle.__get__pos().x + (n.__get__x() * _local4));
_y = (particle.__get__pos().y = particle.__get__pos().y + (n.__get__y() * _local4));
} else {
_local5--;
particle.__get__pos().x = particle.__get__pos().x - (n.__get__x() * _local4);
particle.__get__pos().y = particle.__get__pos().y - (n.__get__y() * _local4);
particle.__get__prevPos().adD(n.multiplyNew(_local4 * _local5));
break;
}
}
}
}
function validateRotation(n, oldPos) {
if ((!intersectionFlag) && (Math.abs(accSpeed) > 0.01)) {
if (Math.abs(accSpeed) < ((maxAccSpeed * 0.02) / 2)) {
accSpeed = 0;
} else if (accSpeed > 0) {
accSpeed = maxAccSpeed * 0.02;
} else {
accSpeed = (-maxAccSpeed) * 0.02;
}
}
var _local3 = new CVector2D(-n.__get__y(), n.__get__x());
var _local6 = particle.__get__pos().subtractNew(oldPos);
var _local5 = Math.atan2(_local3.__get__y(), _local3.__get__x());
var _local2 = _local6.rotateRadNew(-_local5);
speed = _local2.__get__x() + accSpeed;
_local2.__set__y(0);
_local2.rotateRad(_local5);
var _local4 = 1 - koeffSlip;
particle.__get__pos().__set__x((particle.__get__pos().__get__x() + ((_local3.__get__x() * accSpeed) * _local4)) - ((1 - koeffFriction) * _local2.__get__x()));
particle.__get__pos().__set__y((particle.__get__pos().__get__y() + ((_local3.__get__y() * accSpeed) * _local4)) - ((1 - koeffFriction) * _local2.__get__y()));
accSpeed = accSpeed * koeffSlip;
}
function applyAddedAcc() {
particle.__get__acc().x = particle.__get__acc().x + (addedAcc.__get__x() * particle.__get__mass());
particle.__get__acc().y = particle.__get__acc().y + (addedAcc.__get__y() * particle.__get__mass());
}
var maxSpeed = 180;
var koeffSpring = 0.03;
var koeffSlip = 0.15;
var koeffFriction = 0.97;
var hitCount = 16;
var smallHitCount = 0;
}
Symbol 628 MovieClip [__Packages.CSpringConstraint] Frame 0
class CSpringConstraint
{
function CSpringConstraint (particle1, particle2, coeffStiffPress, coeffStiffStretch) {
var _local3 = particle2.__get__pos().__get__x() - particle1.__get__pos().__get__x();
var _local2 = particle2.__get__pos().__get__y() - particle1.__get__pos().__get__y();
m_particle1 = particle1;
m_particle2 = particle2;
m_coeffStiffPress = coeffStiffPress;
m_coeffStiffStretch = coeffStiffStretch;
m_length = Math.sqrt((_local3 * _local3) + (_local2 * _local2));
}
function set heavyParticle(newVal) {
m_heavyParticle = newVal;
//return(heavyParticle);
}
function get heavyParticle() {
return(m_heavyParticle);
}
function resolve() {
var _local2 = new CVector2D(m_particle1.__get__pos().__get__x() - m_particle2.__get__pos().__get__x(), m_particle1.__get__pos().__get__y() - m_particle2.__get__pos().__get__y());
var _local4 = (_local2.__get__length() - m_length) / _local2.__get__length();
var _local5 = ((_local4 > 0) ? (m_coeffStiffStretch) : (m_coeffStiffPress));
var _local3 = (_local4 * _local5) / (m_particle2.__get__mass() + m_particle2.__get__mass());
if (m_heavyParticle == null) {
m_particle1.__get__pos().x = m_particle1.__get__pos().x - ((_local2.__get__x() * m_particle1.__get__mass()) * _local3);
m_particle1.__get__pos().y = m_particle1.__get__pos().y - ((_local2.__get__y() * m_particle1.__get__mass()) * _local3);
m_particle2.__get__pos().x = m_particle2.__get__pos().x + ((_local2.__get__x() * m_particle2.__get__mass()) * _local3);
m_particle2.__get__pos().y = m_particle2.__get__pos().y + ((_local2.__get__y() * m_particle2.__get__mass()) * _local3);
} else {
_local3 = _local4 * _local5;
if (m_heavyParticle == m_particle1) {
m_particle1.__get__pos().x = m_particle1.__get__pos().x - ((_local2.__get__x() * _local3) * 0);
m_particle1.__get__pos().y = m_particle1.__get__pos().y - ((_local2.__get__y() * _local3) * 0);
m_particle2.__get__pos().x = m_particle2.__get__pos().x + ((_local2.__get__x() * _local3) * 1);
m_particle2.__get__pos().y = m_particle2.__get__pos().y + ((_local2.__get__y() * _local3) * 1);
} else {
m_particle1.__get__pos().x = m_particle1.__get__pos().x + ((_local2.__get__x() * _local3) * 1);
m_particle1.__get__pos().y = m_particle1.__get__pos().y + ((_local2.__get__y() * _local3) * 1);
m_particle2.__get__pos().x = m_particle2.__get__pos().x + ((_local2.__get__x() * _local3) * 0);
m_particle2.__get__pos().y = m_particle2.__get__pos().y + ((_local2.__get__y() * _local3) * 0);
}
}
}
var m_length = 0;
var m_particle1 = null;
var m_particle2 = null;
var m_coeffStiffPress = 0;
var m_coeffStiffStretch = 0;
var m_heavyParticle = null;
}
Symbol 629 MovieClip [__Packages.CPenetrationConstraint] Frame 0
class CPenetrationConstraint
{
function CPenetrationConstraint (movableParticle, lineParticle1, lineParticle2) {
m_movableParticle = movableParticle;
m_lineParticle1 = lineParticle1;
m_lineParticle2 = lineParticle2;
m_sign = ((m_movableParticle.__get__pos().getDistanceToLine(m_lineParticle1.__get__pos(), m_lineParticle2.__get__pos()) < 0) ? -1 : 1);
}
function resolve() {
var _local3 = m_movableParticle.__get__pos().getDistanceToLine(m_lineParticle1.__get__pos(), m_lineParticle2.__get__pos());
if ((m_sign * _local3) <= 2) {
var _local2 = m_lineParticle2.__get__pos().duplicate();
_local2.subtract(m_lineParticle1.__get__pos());
_local2.normalize();
_local2.rotateRad((Math.PI/2) * m_sign);
_local2.multiply(Math.abs(_local3 + 1));
m_lineParticle1.__get__pos().subtract(_local2);
}
}
var m_sign = 0;
var m_movableParticle = null;
var m_lineParticle1 = null;
var m_lineParticle2 = null;
}
Symbol 630 MovieClip [__Packages.CMySound] Frame 0
class CMySound extends Sound
{
function CMySound (mc) {
super(mc);
}
function get isPlaying() {
return(m_isPlaying);
}
function onSoundComplete() {
m_isPlaying = false;
}
function attachSound(idName) {
m_myName = idName;
super.attachSound(idName);
}
function start(secondOffset, loops) {
if (_root.allControl.soundOff) {
return(undefined);
}
m_isPlaying = true;
if (loops < 0) {
loops = 64000;
}
super.start(secondOffset, loops);
}
function stop(idName) {
m_isPlaying = false;
super.stop(m_myName);
}
var userData = null;
var m_myName = "";
var m_isPlaying = false;
}
Symbol 631 MovieClip [__Packages.CMySoundArray] Frame 0
class CMySoundArray
{
function CMySoundArray () {
m_sndArray = new Array();
}
function get isPlaying() {
var _local2 = 0;
while (_local2 < m_sndArray.length) {
if (m_sndArray[_local2].isPlaying) {
return(true);
}
_local2++;
}
return(false);
}
function pushSound(snd) {
m_sndArray.push(snd);
}
function pushSoundEx(mc, sndName) {
var _local2 = new CMySound(mc);
_local2.attachSound(sndName);
pushSound(_local2);
}
function play() {
m_sndArray[Math.floor(Math.random() * m_sndArray.length)].start();
}
function stop() {
var _local2 = 0;
while (_local2 < m_sndArray.length) {
m_sndArray[_local2].stop();
_local2++;
}
}
var m_sndArray = null;
}
Symbol 632 MovieClip [__Packages.CCar] Frame 0
class CCar extends MovieClip
{
var _x, swapDepths, removeMovieClip;
function CCar () {
super();
}
function get prefix() {
return(m_prefix);
}
function set prefix(newVal) {
m_prefix = newVal;
//return(prefix);
}
function get isOutRotating() {
return(m_isOutRotating);
}
function get frontHitArea() {
return(m_frontHitArea);
}
function get mirror() {
return(m_mirror);
}
function getCurrentLevelMaxCarSpeed() {
return(_root.allControl.currentLevelMaxCarSpeed);
}
function process(field) {
if ((--m_framesToSpeedChange) > 0) {
m_isAccelerating = Math.random() > 0.5;
}
if (m_isAccelerating) {
m_speed = Math.min(getCurrentLevelMaxCarSpeed(), m_speed * m_ACCELERATION);
} else {
m_speed = Math.max(m_MINIMUM_SPEED, m_speed * m_BRAKING);
}
m_field = field;
m_mirror._x = (_x = _x + m_speed);
if (field.checkCreaturesIntersection(this)) {
m_mirror._x = (_x = _x - m_speed);
}
}
function startOutRotation() {
removeCar();
}
function removeCar() {
m_field.unregisterCar(this);
m_mirror.swapDepths(CAllControl.__get__REMOVE_DEPTH());
m_mirror.removeMovieClip();
swapDepths(CAllControl.__get__REMOVE_DEPTH());
removeMovieClip();
}
static var m_DEFAULT_SPEED = 3;
static var m_MINIMUM_SPEED = 1;
static var m_MIN_FRAMES_TO_SPEED_CHANGE = 50;
static var m_ACCELERATION = 1.01;
static var m_BRAKING = 0.99;
var m_prefix = "";
var m_mirror = null;
var m_isSqueezed = false;
var m_speed = m_DEFAULT_SPEED;
var m_isOutRotating = false;
var m_field = null;
var m_isAccelerating = false;
var m_framesToSpeedChange = m_MIN_FRAMES_TO_SPEED_CHANGE;
var m_frontHitArea = null;
}
Symbol 633 MovieClip [__Packages.CAllControl] Frame 0
class CAllControl extends MovieClip
{
function CAllControl () {
super();
m_sndMenuBackground = new CMySound(this);
m_sndMenuBackground.attachSound("sndMenuBackground");
m_sndMenuBackground.start(0, -1);
}
static function get SCORE_PER_SMALLCAR() {
return(m_SCORE_PER_SMALLCAR);
}
static function get SCORE_PER_SECOND() {
return(m_SCORE_PER_SECOND);
}
static function get REMOVE_DEPTH() {
return(m_REMOVE_DEPTH);
}
function get currentLevel() {
return(m_level);
}
function get currentLevelTime() {
return(m_LEVEL_TIME[m_level - 1]);
}
function get currentLevelText() {
return(m_LEVEL_TEXTS[m_level - 1]);
}
function get currentLevelCarLimit() {
return(m_CAR_LIMITS[m_level - 1]);
}
function get currentLevelMaxCarSpeed() {
return(m_LELVEL_MAXCARSPEEDS[m_level - 1]);
}
function get currentMovie() {
if (m_gameState == m_GAME_STATE_INTRO) {
return("frmIntro");
}
if (m_gameState == m_GAME_STATE_GAMECOMPLETED) {
return("frmGameCompleted");
}
if (m_gameState == m_GAME_STATE_GAMEFAILED) {
return("frmGameFailed");
}
}
function set score(newVal) {
m_score = newVal;
_root.m_field.updateScore();
//return(score);
}
function get score() {
return(m_score);
}
function set levelTimeLeft(newVal) {
m_levelTimeLeft = newVal;
//return(levelTimeLeft);
}
function get levelTimeLeft() {
return(m_levelTimeLeft);
}
function set currentGameTime(newVal) {
m_currentGameTime = newVal;
//return(currentGameTime);
}
function get currentGameTime() {
return(m_currentGameTime);
}
function get numCrushedSmall() {
return(m_numCrushedSmall);
}
function get numCrushedPolice() {
return(m_numCrushedPolice);
}
function get numCrushedGranny() {
return(m_numCrushedGranny);
}
function get numCrushedSexy() {
return(m_numCrushedSexy);
}
function set numCrushedSmall(newVal) {
m_numCrushedSmall = newVal;
//return(numCrushedSmall);
}
function set numCrushedPolice(newVal) {
m_numCrushedPolice = newVal;
//return(numCrushedPolice);
}
function set numCrushedGranny(newVal) {
m_numCrushedGranny = newVal;
//return(numCrushedGranny);
}
function set numCrushedSexy(newVal) {
m_numCrushedSexy = newVal;
//return(numCrushedSexy);
}
function get soundOff() {
return(m_soundOff);
}
function set soundOff(newVal) {
var _local3 = new Sound();
m_soundOff = newVal;
if (m_soundOff) {
_local3.setVolume(0);
_root.m_sndIndicator.gotoAndStop("frmOff");
} else {
_local3.setVolume(100);
_root.m_sndIndicator.gotoAndStop("frmOn");
}
//return(soundOff);
}
function showMenu() {
if (!m_sndMenuBackground.__get__isPlaying()) {
m_sndMenuBackground.start(0, -1);
}
m_gameState = m_GAME_STATE_MENU;
_root.gotoAndStop("frmMenu");
}
function startGame() {
if (m_sndMenuBackground.__get__isPlaying()) {
m_sndMenuBackground.stop();
}
m_score = 0;
m_level = 1;
m_level = 1;
m_currentGameTime = m_GAME_TIME;
m_gameState = m_GAME_STATE_INTRO;
_root.gotoAndStop("frmMovie");
}
function nextLevel() {
m_level++;
if (m_level > m_LEVEL_NUM) {
if (!m_sndMenuBackground.__get__isPlaying()) {
m_sndMenuBackground.start(0, -1);
}
if (m_currentGameTime > 0) {
m_gameState = m_GAME_STATE_GAMECOMPLETED;
} else {
m_gameState = m_GAME_STATE_GAMEFAILED;
}
_root.gotoAndStop("frmMovie");
return(undefined);
}
if (m_sndMenuBackground.__get__isPlaying()) {
m_sndMenuBackground.stop();
}
m_gameState = m_GAME_STATE_GAME;
_root.gotoAndStop("frmGame");
m_numCrushedSmall = 0;
m_numCrushedPolice = 0;
m_numCrushedGranny = 0;
m_numCrushedSexy = 0;
}
function onMovieFinished() {
if (m_gameState == m_GAME_STATE_INTRO) {
if (m_sndMenuBackground.__get__isPlaying()) {
m_sndMenuBackground.stop();
}
m_gameState = m_GAME_STATE_GAME;
_root.gotoAndStop("frmGame");
} else {
showMenu();
}
}
function onLevelFailed() {
if (!m_sndMenuBackground.__get__isPlaying()) {
m_sndMenuBackground.start(0, -1);
}
m_gameState = m_GAME_STATE_FAILED;
_root.gotoAndStop("frmLevelFailed");
}
function onLevelPassed() {
if (!m_sndMenuBackground.__get__isPlaying()) {
m_sndMenuBackground.start(0, -1);
}
m_gameState = m_GAME_STATE_LEVELPASSED;
_root.gotoAndStop("frmLevelPassed");
}
function tryAgain() {
if (m_sndMenuBackground.__get__isPlaying()) {
m_sndMenuBackground.stop();
}
m_gameState = m_GAME_STATE_GAME;
_root.gotoAndStop("frmGame");
}
static var m_GAME_STATE_MENU = 0;
static var m_GAME_STATE_INTRO = 1;
static var m_GAME_STATE_GAME = 2;
static var m_GAME_STATE_FAILED = 3;
static var m_GAME_STATE_LEVELPASSED = 4;
static var m_GAME_STATE_GAMECOMPLETED = 5;
static var m_GAME_STATE_GAMEFAILED = 6;
static var m_LEVEL_NUM = 7;
static var m_LEVEL_TIME = new Array(60000, 60000, 60000, 60000, 60000, 60000, 60000, 60000);
static var m_LEVEL_TEXTS = new Array("You've approached the main road.", "Gas tank is full.", "Oops...Road repair.", "", "", "", "", "");
static var m_LELVEL_MAXCARSPEEDS = new Array(5, 8, 12, 15, 20, 25, 27, 30);
static var m_CAR_LIMITS = new Array(10, 15, 30, 30, 40, 50, 60, 70, 80);
static var m_REMOVE_DEPTH = 32700;
static var m_SCORE_PER_SMALLCAR = 100;
static var m_SCORE_PER_SECOND = 10;
static var m_GAME_TIME = 600000;
var m_level = 0;
var m_gameState = m_GAME_STATE_MENU;
var m_score = 0;
var m_levelTimeLeft = 0;
var m_currentGameTime = 0;
var m_numCrushedSmall = 0;
var m_numCrushedPolice = 0;
var m_numCrushedGranny = 0;
var m_numCrushedSexy = 0;
var m_soundOff = false;
var m_sndMenuBackground = null;
}
Symbol 634 MovieClip [__Packages.CCarSmall] Frame 0
class CCarSmall extends CCar
{
var m_mirror, _parent, m_prefix, gotoAndStop, _currentframe, m_field;
function CCarSmall () {
super();
m_mirror = _parent._parent.registerCar(this, (m_prefix = "symCarSmall"));
}
function get crushedAndStopped() {
return(m_state >= m_STATE_CRUSHING_STOP);
}
function onCrushed() {
var _local2 = m_state >= m_STATE_CRUSHING_STOP;
if (m_state < m_STATE_CRUSHING_FINAL) {
m_state++;
gotoAndStop(_currentframe + 1);
m_mirror.gotoAndStop(m_mirror._currentframe + 1);
_parent._parent.onSmallCarCrushed(this);
}
if (m_state >= m_STATE_CRUSHING_STOP) {
if (!_local2) {
m_field.unregisterCar(this);
m_field.registerStoppedCar(this);
}
_local2 = true;
}
if (m_state >= m_STATE_CRUSHING_FINAL) {
if (!_local2) {
m_field.unregisterCar(this);
} else {
m_field.unregisterStoppedCar(this);
}
}
}
function process(field) {
if (m_state < m_STATE_CRUSHING_STOP) {
super.process(field);
}
if (((field.__get__truck().__get__backWheel().particle.getVelocity().__get__y() > m_CRUSH_SPEED) && (m_crushArea.hitTest(field.__get__truck().__get__backWheelCrushArea()))) || ((field.__get__truck().__get__frontWheel().particle.getVelocity().__get__y() > m_CRUSH_SPEED) && (m_crushArea.hitTest(field.__get__truck().__get__frontWheelCrushArea())))) {
onCrushed();
}
}
static var m_CRUSH_SPEED = 6;
static var m_STATE_NORMAL = 1;
static var m_STATE_CRUSHING1 = 2;
static var m_STATE_CRUSHING2 = 3;
static var m_STATE_CRUSHING3 = 4;
static var m_STATE_CRUSHING_STOP = m_STATE_CRUSHING2;
static var m_STATE_CRUSHING_FINAL = m_STATE_CRUSHING3;
var m_state = m_STATE_NORMAL;
var m_crushArea = null;
}
Symbol 635 MovieClip [__Packages.CCarPolice] Frame 0
class CCarPolice extends CCarSmall
{
var m_mirror, _parent, m_prefix, m_state;
function CCarPolice () {
super();
m_mirror = _parent._parent.registerCar(this, (m_prefix = "symCarPolice"));
m_crushSound = new CMySound(_parent._parent.getNextSoundMovieClip());
m_crushSound.attachSound("sndPoliceCrush");
}
function get isSirenOn() {
return(m_sirenOn);
}
function onCrushed() {
if (m_sirenOn) {
m_crushSound.start();
_parent._parent.startDeathAnimation();
}
super.onCrushed();
}
function toggleSiren() {
m_sirenOn = !m_sirenOn;
m_framesToSirenToggle = Math.floor(m_MIN_FRAMES_BETWEEN_SIREN_TOGGLE * (1 + Math.random()));
m_siren.play();
}
function process(field) {
super.process(field);
if (m_state < CCarSmall.m_STATE_CRUSHING_STOP) {
if ((--m_framesToSirenToggle) <= 0) {
toggleSiren();
}
} else if (m_sirenOn) {
toggleSiren();
}
}
static var m_MIN_FRAMES_BETWEEN_SIREN_TOGGLE = 100;
var m_siren = null;
var m_sirenOn = false;
var m_framesToSirenToggle = m_MIN_FRAMES_BETWEEN_SIREN_TOGGLE;
var m_crushSound = null;
}
Symbol 636 MovieClip [__Packages.CCarBig] Frame 0
class CCarBig extends CCar
{
var m_mirror, _parent, m_prefix;
function CCarBig () {
super();
}
function onEnterFrame() {
if (!m_registered) {
m_mirror = _parent._parent.registerCar(this, m_prefix);
m_registered = true;
}
super.onEnterFrame();
}
function getCurrentLevelMaxCarSpeed() {
return(4);
}
function onOutOfTonnel() {
_parent.onCarEndsRotating(this);
}
var m_registered = false;
}
Symbol 637 MovieClip [__Packages.CCrossRoad] Frame 0
class CCrossRoad extends MovieClip
{
var _parent, __get__level, attachMovie;
function CCrossRoad () {
super();
m_parameters = m_PARAMETERS[0];
_parent._parent.registerCrossRoad(this);
}
function set level(newVal) {
m_level = newVal;
m_parameters = m_PARAMETERS[Math.min(newVal, m_PARAMETERS.length - 1)];
//return(__get__level());
}
function get semaphore() {
return(m_semaphore);
}
function set semaphore(newVal) {
m_semaphore = newVal;
//return(semaphore);
}
function get isBusied() {
return(m_car != null);
}
function get isCar() {
return(m_carPrefix.substr(0, 6) == "symCar");
}
function get isGranny() {
return(m_carPrefix == "symGranny");
}
function get isSexy() {
return(m_carPrefix == "symSexy");
}
function get isDeer() {
return(m_carPrefix == "symDeer");
}
function get isCarRotating() {
return(m_carState == m_CAR_STATE_ROTATING);
}
function notCarCrossRoad() {
return(m_level == 2);
}
function onLoad() {
}
function generateCarPrefix() {
if (Math.random() < m_parameters.probability.small) {
return(((Math.random() < 0.5) ? (m_CAR_TYPES[0]) : (m_CAR_TYPES[6])));
}
if (Math.random() < m_parameters.probability.big) {
return(((Math.random() < 0.5) ? (m_CAR_TYPES[1]) : (m_CAR_TYPES[5])));
}
if (Math.random() < m_parameters.probability.police) {
return(m_CAR_TYPES[2]);
}
if (Math.random() < m_parameters.probability.deer) {
return(m_CAR_TYPES[3]);
}
if (Math.random() < m_parameters.probability.granny) {
return(m_CAR_TYPES[4]);
}
return(m_CAR_TYPES[7]);
}
function generateCar() {
m_carPrefix = generateCarPrefix();
m_framesSinceLastCar = 0;
m_carState = m_CAR_STATE_CLOSINGTOROAD;
attachMovie(m_carPrefix + "CrossRoad", "m_car", m_CAR_DEPTH);
}
function onCarStartWaitingForFreeRoad(car) {
m_carState = m_CAR_STATE_WAITFORFREEROAD;
}
function onCarStartWaitingForRealFreeRoad(car) {
m_carState = m_CAR_STATE_WAITFORREALFREEROAD;
}
function onCarEndsRotating(car) {
_parent._parent.addCar(car.m_car, m_carPrefix);
m_carState = m_CAR_STATE_NONE;
car.removeMovieClip();
}
function onCarEndsCrossing(car) {
m_carState = m_CAR_STATE_NONE;
car.removeMovieClip();
}
function process(field) {
m_field = field;
if (m_unregisterCarOnCrossRoad && ((m_car == null) || (m_car == undefined))) {
m_field.unregisterCarOnCrossRoad();
m_unregisterCarOnCrossRoad = false;
}
if (m_carState == m_CAR_STATE_NONE) {
if (m_field.__get__canGenerateCar() && ((++m_framesSinceLastCar) > m_parameters.min_frames_between_cars)) {
if ((Math.random() < m_parameters.car_probability) && (notCarCrossRoad() || (m_field.__get__canGenerateCar()))) {
if ((m_car != null) && (m_car != undefined)) {
m_unregisterCarOnCrossRoad = true;
m_field.registerCarOnCrossRoad();
}
generateCar();
m_framesSinceLastCar = 0;
}
}
} else if (((m_carState == m_CAR_STATE_WAITFORFREEROAD) || (m_carState == m_CAR_STATE_WAITFORREALFREEROAD)) && (m_semaphore != null)) {
if (!m_semaphore.__get__isFree()) {
m_car.gotoAndPlay("frmRotating");
m_carState = m_CAR_STATE_ROTATING;
}
} else if ((m_carState == m_CAR_STATE_WAITFORFREEROAD) || (m_carState == m_CAR_STATE_WAITFORREALFREEROAD)) {
var _local4 = true;
if (m_hitArea.hitTest(field.__get__truck().__get__body())) {
_local4 = false;
}
if (_local4 && (m_carState == m_CAR_STATE_WAITFORREALFREEROAD)) {
var _local2 = 0;
while (_local2 < field.__get__cars().length) {
if (m_hitArea.hitTest(field.__get__cars()[_local2])) {
_local4 = false;
break;
}
_local2++;
}
}
if (_local4) {
m_car.gotoAndPlay("frmRotating");
m_carState = m_CAR_STATE_ROTATING;
}
}
}
static var m_CAR_DEPTH = 1;
static var m_CAR_STATE_NONE = 0;
static var m_CAR_STATE_CLOSINGTOROAD = 1;
static var m_CAR_STATE_WAITFORFREEROAD = 2;
static var m_CAR_STATE_WAITFORREALFREEROAD = 3;
static var m_CAR_STATE_ROTATING = 4;
static var m_CAR_TYPES = new Array("symCarSmall", "symCarBig", "symCarPolice", "symDeer", "symGranny", "symCarBig1", "symCarSmall1", "symSexy");
static var m_PARAMETERS = new Array({car_probability:0.1, min_frames_between_cars:100, probability:{small:1}}, {car_probability:0.1, min_frames_between_cars:200, probability:{small:1}}, {car_probability:0.1, min_frames_between_cars:200, probability:{granny:0.5, sexy:1}}, {car_probability:0.1, min_frames_between_cars:5000, probability:{big:1}}, {car_probability:0.1, min_frames_between_cars:200, probability:{small:0.8, police:1}}, {car_probability:0.1, min_frames_between_cars:400, probability:{small:0.8, police:1}}, {car_probability:0.1, min_frames_between_cars:200, probability:{small:0.7, police:1}}, {car_probability:0.1, min_frames_between_cars:150, probability:{deer:0.5, puddle:1}}, {car_probability:0.5, min_frames_between_cars:80, probability:{police:0.2, small:1}});
var m_hitArea = null;
var m_car = null;
var m_carPrefix = "";
var m_carState = m_CAR_STATE_NONE;
var m_parameters = null;
var m_framesSinceLastCar = 0;
var m_semaphore = null;
var m_field = null;
var m_unregisterCarOnCrossRoad = false;
var m_level = 0;
}
Symbol 638 MovieClip [__Packages.CSemaphore] Frame 0
class CSemaphore extends MovieClip
{
var _parent, __get__level, gotoAndStop;
function CSemaphore () {
super();
_parent._parent.registerSemaphore(this);
}
function set level(newVal) {
m_parameters = m_PARAMETERS[Math.min(newVal, m_PARAMETERS.length - 1)];
m_framesToToggle = Math.floor(m_parameters.frames_between_toggle * Math.random());
//return(__get__level());
}
function get isWarned() {
return(m_framesToToggle < m_FRAMES_TO_TOGGLE_WARNING);
}
function get isFree() {
return(m_isFree);
}
function process(field) {
if ((--m_framesToToggle) <= 0) {
m_isFree = !m_isFree;
gotoAndStop((m_isFree ? "frmGreen" : "frmRed"));
m_framesToToggle = m_parameters.frames_between_toggle;
} else if (m_framesToToggle < m_FRAMES_TO_TOGGLE_WARNING) {
gotoAndStop("frmYellow");
}
}
static var m_PARAMETERS = new Array({frames_between_toggle:200});
static var m_FRAMES_TO_TOGGLE_WARNING = 40;
var m_parameters = null;
var m_isFree = true;
var m_framesToToggle = 0;
}
Symbol 639 MovieClip [__Packages.CCrossRoadOut] Frame 0
class CCrossRoadOut extends MovieClip
{
var _parent;
function CCrossRoadOut () {
super();
_parent._parent.registerCrossRoadOut(this);
}
function process(field) {
var _local2 = 0;
while (_local2 < field.__get__cars().length) {
if ((!field.__get__cars()[_local2].isOutRotating) && (m_hitArea.hitTest(field.__get__cars()[_local2]))) {
field.__get__cars()[_local2].startOutRotation();
}
_local2++;
}
}
var m_hitArea = null;
}
Symbol 640 MovieClip [__Packages.CTrigger] Frame 0
class CTrigger extends MovieClip
{
var _parent, hitTest;
function CTrigger () {
super();
_parent._parent.registerTrigger(this);
}
function process(field) {
if (!m_activated) {
if (hitTest(field.__get__truck().__get__body())) {
m_activated = true;
m_function.call(this, field);
}
}
}
var m_activated = false;
var m_function = null;
}
Symbol 641 MovieClip [__Packages.CCarRotating] Frame 0
class CCarRotating extends MovieClip
{
var _parent, _visible, hitTest, gotoAndPlay;
function CCarRotating () {
super();
if (_parent._parent instanceof CField) {
_parent._parent.registerRotatingCar(this);
} else if (_parent._parent._parent._parent instanceof CField) {
_parent._parent._parent._parent.registerRotatingCar(this);
}
}
function onUnload() {
if (_parent._parent instanceof CField) {
_parent._parent.unregisterCarRotating(this);
} else if (_parent instanceof CCar) {
_parent._parent._parent.unregisterCarRotating(this);
}
}
function onRotationFinished() {
if (_parent._parent._parent instanceof CField) {
_parent._parent._parent.unregisterCarRotating(this);
} else if (_parent._parent._parent._parent instanceof CField) {
_parent._parent._parent._parent.unregisterCarRotating(this);
}
if (_parent._parent instanceof CField) {
_parent._parent.unregisterCarRotating(this);
_parent._parent.addCar(m_car, m_prefix);
_visible = false;
} else if (_parent instanceof CCar) {
_parent.removeCar();
}
}
function process(field) {
if (m_activized) {
if (hitTest(field.__get__truck().__get__body())) {
field.startDeathAnimation();
}
}
}
function activize() {
m_activized = true;
gotoAndPlay("frmRotating");
}
var m_car = null;
var m_prefix = "";
var m_activized = false;
}
Symbol 642 MovieClip [__Packages.CCarSmall1] Frame 0
class CCarSmall1 extends CCarSmall
{
var m_mirror, _parent, m_prefix;
function CCarSmall1 () {
super();
m_mirror = _parent._parent.registerCar(this, (m_prefix = "symCarSmall1"));
}
}
Symbol 643 MovieClip [__Packages.CTonnel] Frame 0
class CTonnel extends CCrossRoad
{
var _parent, m_carPrefix, m_carState, m_car, attachMovie, m_field;
function CTonnel () {
super();
}
function onCarEndsRotating(car) {
var _local2 = _parent._parent.addCar(car, m_carPrefix);
_local2.gotoAndStop(car._currentframe);
m_carState = CCrossRoad.m_CAR_STATE_NONE;
car.removeMovieClip();
}
function generateCar() {
if (Math.random() < 0.5) {
m_carPrefix = "symCarBig";
} else {
m_carPrefix = "symCarBig1";
}
m_carState = CCrossRoad.m_CAR_STATE_CLOSINGTOROAD;
m_car = attachMovie(m_carPrefix, "m_car", CCrossRoad.m_CAR_DEPTH);
m_field.addTemporaryMirror(m_car, ((m_carPrefix == "symCarBig") ? "symCarBigMovingMirror" : "symCarBig1MovingMirror"));
}
var m_carContainer = null;
}
Symbol 644 MovieClip [__Packages.CCarGenerator] Frame 0
class CCarGenerator extends CCrossRoad
{
var m_carPrefix, generateCarPrefix, _x, m_field, m_framesSinceLastCar, m_carState;
function CCarGenerator () {
super();
}
function generateCar() {
m_carPrefix = generateCarPrefix();
var _local3 = ((m_carPrefix.substr(0, 9) == "symCarBig") ? 1500 : 800);
if ((m_field.__get__truck().__get__body()._x < (_x - _local3)) || (m_field.__get__truck().__get__body()._x > (_x + _local3))) {
m_framesSinceLastCar = 0;
m_carState = CCrossRoad.m_CAR_STATE_NONE;
var _local2 = m_field.addCar(this, m_carPrefix);
if (m_carPrefix.substr(0, 9) == "symCarBig") {
_local2.gotoAndStop(_local2._totalframes);
_local2.mirror.gotoAndStop(_local2.mirror._totalframes);
}
}
}
}
Symbol 26 MovieClip [symCarBigMovingMirror] Frame 90
this.removeMovieClip();
Symbol 27 MovieClip [symCarBig] Frame 1
#initclip 47
Object.registerClass("symCarBig", CCarBig);
#endinitclip
this.m_prefix = "symCarBig";
Symbol 27 MovieClip [symCarBig] Frame 90
this.onOutOfTonnel();
stop();
Symbol 40 MovieClip Frame 90
this.removeMovieClip();
Symbol 41 MovieClip [symCarBig1] Frame 1
#initclip 27
Object.registerClass("symCarBig1", CCarBig);
#endinitclip
this.m_prefix = "symCarBig1";
Symbol 41 MovieClip [symCarBig1] Frame 90
this.onOutOfTonnel();
stop();
Symbol 44 MovieClip [symCarBig1MovingMirror] Frame 90
this.removeMovieClip();
Symbol 53 MovieClip Frame 1
stop();
Symbol 53 MovieClip Frame 2
stop();
Symbol 76 MovieClip [symCarPoliceMirror] Frame 1
stop();
Symbol 76 MovieClip [symCarPoliceMirror] Frame 2
stop();
Symbol 76 MovieClip [symCarPoliceMirror] Frame 3
stop();
Symbol 76 MovieClip [symCarPoliceMirror] Frame 4
stop();
Symbol 77 MovieClip [symCarPoliceRotating] Frame 1
#initclip 28
Object.registerClass("symCarPoliceRotating", CCarRotating);
#endinitclip
this.m_prefix = "symCarPolice";
stop();
Symbol 77 MovieClip [symCarPoliceRotating] Frame 10
this.onRotationFinished();
Symbol 78 MovieClip [symCarPolice] Frame 1
#initclip 29
Object.registerClass("symCarPolice", CCarPolice);
#endinitclip
stop();
Symbol 78 MovieClip [symCarPolice] Frame 2
stop();
Symbol 78 MovieClip [symCarPolice] Frame 3
stop();
Symbol 78 MovieClip [symCarPolice] Frame 4
stop();
Symbol 78 MovieClip [symCarPolice] Frame 5
stop();
Symbol 80 MovieClip [symCarPoliceCrossRoad] Frame 51
this._parent.onCarStartWaitingForFreeRoad();
stop();
Instance of Symbol 77 MovieClip [symCarPoliceRotating] in Symbol 80 MovieClip [symCarPoliceCrossRoad] Frame 52
onClipEvent (load) {
this.onEnterFrame = function () {
this.activize();
delete this.onEnterFrame;
};
}
Symbol 80 MovieClip [symCarPoliceCrossRoad] Frame 62
this._parent.onCarEndsRotating(this);
Symbol 102 MovieClip [symCarSmallMirror] Frame 1
stop();
Symbol 102 MovieClip [symCarSmallMirror] Frame 2
stop();
Symbol 102 MovieClip [symCarSmallMirror] Frame 3
stop();
Symbol 102 MovieClip [symCarSmallMirror] Frame 4
stop();
Symbol 103 MovieClip [symCarSmallRotating] Frame 1
#initclip 30
Object.registerClass("symCarSmallRotating", CCarRotating);
#endinitclip
this.m_prefix = "symCarSmall";
stop();
Symbol 103 MovieClip [symCarSmallRotating] Frame 10
this.onRotationFinished();
Symbol 104 MovieClip [symCarSmall] Frame 1
#initclip 31
Object.registerClass("symCarSmall", CCarSmall);
#endinitclip
stop();
Symbol 104 MovieClip [symCarSmall] Frame 2
stop();
Symbol 104 MovieClip [symCarSmall] Frame 3
stop();
Symbol 104 MovieClip [symCarSmall] Frame 4
stop();
Symbol 104 MovieClip [symCarSmall] Frame 5
stop();
Symbol 105 MovieClip [symCarSmallCrossRoad] Frame 70
this._parent.onCarStartWaitingForFreeRoad();
stop();
Instance of Symbol 103 MovieClip [symCarSmallRotating] in Symbol 105 MovieClip [symCarSmallCrossRoad] Frame 71
onClipEvent (load) {
this.onEnterFrame = function () {
this.activize();
delete this.onEnterFrame;
};
}
Symbol 105 MovieClip [symCarSmallCrossRoad] Frame 81
this._parent.onCarEndsRotating(this);
Instance of Symbol 104 MovieClip [symCarSmall] "m_car" in Symbol 105 MovieClip [symCarSmallCrossRoad] Frame 81
onClipEvent (load) {
this.onEnterFrame = function () {
this.activize();
delete this.onEnterFrame;
};
}
Symbol 130 MovieClip [symCarSmall1Mirror] Frame 1
stop();
Symbol 130 MovieClip [symCarSmall1Mirror] Frame 2
stop();
Symbol 130 MovieClip [symCarSmall1Mirror] Frame 3
stop();
Symbol 130 MovieClip [symCarSmall1Mirror] Frame 4
stop();
Symbol 131 MovieClip [symCarSmall1Rotating] Frame 1
#initclip 32
Object.registerClass("symCarSmall1Rotating", CCarRotating);
#endinitclip
this.m_prefix = "symCarSmall1";
stop();
Symbol 131 MovieClip [symCarSmall1Rotating] Frame 10
this.onRotationFinished();
Symbol 132 MovieClip [symCarSmall1] Frame 1
#initclip 33
Object.registerClass("symCarSmall1", CCarSmall1);
#endinitclip
stop();
Symbol 132 MovieClip [symCarSmall1] Frame 2
stop();
Symbol 132 MovieClip [symCarSmall1] Frame 3
stop();
Symbol 132 MovieClip [symCarSmall1] Frame 4
stop();
Symbol 132 MovieClip [symCarSmall1] Frame 5
stop();
Symbol 133 MovieClip [symCarSmall1CrossRoad] Frame 70
this._parent.onCarStartWaitingForFreeRoad();
stop();
Instance of Symbol 131 MovieClip [symCarSmall1Rotating] in Symbol 133 MovieClip [symCarSmall1CrossRoad] Frame 71
onClipEvent (load) {
this.onEnterFrame = function () {
this.activize();
delete this.onEnterFrame;
};
}
Symbol 133 MovieClip [symCarSmall1CrossRoad] Frame 82
this._parent.onCarEndsRotating(this);
Symbol 135 MovieClip [symAllControl] Frame 1
#initclip 34
Object.registerClass("symAllControl", CAllControl);
#endinitclip
Symbol 158 MovieClip [symCrossRoad] Frame 1
#initclip 35
Object.registerClass("symCrossRoad", CCrossRoad);
#endinitclip
Symbol 159 MovieClip [symCrossRoadOut] Frame 1
#initclip 36
Object.registerClass("symCrossRoadOut", CCrossRoadOut);
#endinitclip
Symbol 163 MovieClip [symSemaphore] Frame 1
#initclip 37
Object.registerClass("symSemaphore", CSemaphore);
#endinitclip
stop();
Symbol 163 MovieClip [symSemaphore] Frame 2
stop();
Symbol 163 MovieClip [symSemaphore] Frame 3
stop();
Symbol 168 MovieClip [symTrigger] Frame 1
#initclip 38
Object.registerClass("symTrigger", CTrigger);
#endinitclip
Symbol 170 MovieClip Frame 1
stop();
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad1" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore1;
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad2" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.level = 1;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad3" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad4" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore2;
this.level = 1;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad5" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad6" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore1" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore2" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 168 MovieClip [symTrigger] in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.m_function = function (field) {
var _local1 = 1;
while (field.__get__level()["m_car" + _local1.toString()] != undefined) {
field.__get__level()["m_car" + _local1.toString()].activize();
_local1++;
}
};
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car1" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car2" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car3" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car4" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car5" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car6" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car7" in Symbol 170 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Symbol 170 MovieClip Frame 2
stop();
Symbol 177 Button
on (press) {
getURL ("http://www.addictinggames.com", "_blank");
}
Symbol 193 MovieClip Frame 1
stop();
Symbol 194 MovieClip Frame 1
stop();
Symbol 194 MovieClip Frame 2
stop();
Symbol 194 MovieClip Frame 3
stop();
Symbol 203 MovieClip Frame 1
stop();
Symbol 204 MovieClip Frame 1
stop();
Symbol 204 MovieClip Frame 2
stop();
Symbol 204 MovieClip Frame 3
stop();
Symbol 206 MovieClip Frame 1
stop();
Symbol 206 MovieClip Frame 2
stop();
Symbol 206 MovieClip Frame 3
stop();
Symbol 210 MovieClip Frame 1
stop();
Symbol 210 MovieClip Frame 2
stop();
Symbol 210 MovieClip Frame 3
stop();
Symbol 218 MovieClip [symTruckBackWheel] Frame 1
#initclip 39
Object.registerClass("symTruckBackWheel", CWheel);
#endinitclip
stop();
Symbol 220 MovieClip [symTruckFrontWheel] Frame 1
#initclip 40
Object.registerClass("symTruckFrontWheel", CWheel);
#endinitclip
stop();
Symbol 228 MovieClip [symTruckBody] Frame 1
stop();
Symbol 228 MovieClip [symTruckBody] Frame 36
this._parent._parent.restartLevel();
Symbol 251 MovieClip [symCretureCrossRoad] Frame 1
#initclip 41
Object.registerClass("symCretureCrossRoad", CCrossRoad);
#endinitclip
Symbol 253 MovieClip Frame 1
stop();
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad1" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad4" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad2" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore1;
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad3" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 251 MovieClip [symCretureCrossRoad] in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 2;
}
Instance of Symbol 251 MovieClip [symCretureCrossRoad] in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 2;
}
Instance of Symbol 251 MovieClip [symCretureCrossRoad] in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 2;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore1" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 168 MovieClip [symTrigger] in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_function = function (field) {
var _local1 = 1;
while (field.__get__level()["m_car" + _local1.toString()] != undefined) {
field.__get__level()["m_car" + _local1.toString()].activize();
_local1++;
}
};
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car1" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car2" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car3" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car4" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car5" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car6" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car7" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car8" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car9" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car10" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car11" in Symbol 253 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Symbol 253 MovieClip Frame 2
stop();
Symbol 262 MovieClip Frame 1
stop();
Instance of Symbol 168 MovieClip [symTrigger] in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_function = function (field) {
var _local1 = 1;
while (field.__get__level()["m_car" + _local1.toString()] != undefined) {
field.__get__level()["m_car" + _local1.toString()].activize();
_local1++;
}
};
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car1" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car2" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car3" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car4" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car5" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car6" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car7" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car8" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car9" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car10" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car11" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car12" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car13" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car14" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car15" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car16" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car17" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car18" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad2" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore1;
this.level = 4;
}
Instance of Symbol 158 MovieClip [symCrossRoad] in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 4;
}
Instance of Symbol 158 MovieClip [symCrossRoad] in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 4;
}
Instance of Symbol 158 MovieClip [symCrossRoad] in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 1;
}
Instance of Symbol 158 MovieClip [symCrossRoad] in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 5;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad1" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 4;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad3" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 4;
}
Instance of Symbol 251 MovieClip [symCretureCrossRoad] in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 2;
}
Instance of Symbol 251 MovieClip [symCretureCrossRoad] in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 2;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore1" in Symbol 262 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Symbol 262 MovieClip Frame 2
stop();
Symbol 311 MovieClip Frame 1
stop();
Symbol 311 MovieClip Frame 2
stop();
Symbol 318 MovieClip Frame 1
stop();
Instance of Symbol 168 MovieClip [symTrigger] in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_function = function (field) {
var _local1 = 1;
while (field.__get__level()["m_car" + _local1.toString()] != undefined) {
field.__get__level()["m_car" + _local1.toString()].activize();
_local1++;
}
};
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car1" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car2" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car3" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car4" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car5" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car6" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car7" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car8" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car9" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car10" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car11" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car12" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car13" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car14" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car15" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car16" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car17" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car18" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad1" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore1;
this.level = 4;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad2" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore2;
this.level = 4;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad3" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore3;
this.level = 4;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad4" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore4;
this.level = 4;
}
Instance of Symbol 158 MovieClip [symCrossRoad] in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.level = 5;
}
Instance of Symbol 158 MovieClip [symCrossRoad] in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.level = 5;
}
Instance of Symbol 251 MovieClip [symCretureCrossRoad] in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.level = 2;
}
Instance of Symbol 251 MovieClip [symCretureCrossRoad] in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.level = 2;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore1" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore2" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore3" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore4" in Symbol 318 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Symbol 318 MovieClip Frame 2
stop();
Symbol 326 MovieClip [symTonnel] Frame 1
#initclip 42
Object.registerClass("symTonnel", CTonnel);
#endinitclip
Symbol 327 MovieClip [symCarGenerator] Frame 1
#initclip 43
Object.registerClass("symCarGenerator", CCarGenerator);
#endinitclip
Symbol 330 MovieClip Frame 1
stop();
Instance of Symbol 168 MovieClip [symTrigger] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_function = function (field) {
var _local1 = 1;
while (field.__get__level()["m_car" + _local1.toString()] != undefined) {
field.__get__level()["m_car" + _local1.toString()].activize();
_local1++;
}
};
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car1" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car2" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car3" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car4" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 77 MovieClip [symCarPoliceRotating] "m_car5" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car6" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car7" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car8" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 77 MovieClip [symCarPoliceRotating] "m_car9" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car10" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car11" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 77 MovieClip [symCarPoliceRotating] "m_car12" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car13" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car14" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car15" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car16" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 77 MovieClip [symCarPoliceRotating] "m_car17" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car18" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car19" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car20" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car21" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 327 MovieClip [symCarGenerator] in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 6;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore1" in Symbol 330 MovieClip Frame 1
onClipEvent (load) {
this.level = 0;
}
Symbol 330 MovieClip Frame 2
stop();
Symbol 352 MovieClip Frame 1
stop();
Symbol 352 MovieClip Frame 2
stop();
Symbol 353 MovieClip [symField] Frame 1
#initclip 44
Object.registerClass("symField", CField);
#endinitclip
stop();
Symbol 353 MovieClip [symField] Frame 2
stop();
Symbol 353 MovieClip [symField] Frame 3
stop();
Symbol 353 MovieClip [symField] Frame 4
stop();
Symbol 353 MovieClip [symField] Frame 5
stop();
Symbol 353 MovieClip [symField] Frame 6
stop();
Symbol 353 MovieClip [symField] Frame 7
stop();
Symbol 368 MovieClip Frame 1
_parent.stop();
Symbol 368 MovieClip Frame 13
_parent.play();
Symbol 372 MovieClip [symGrannyCrossRoad] Frame 1
#initclip 45
Object.registerClass("symGrannyCrossRoad", CCrossRoadCreature);
#endinitclip
this.m_prefix = "symGranny";
Symbol 372 MovieClip [symGrannyCrossRoad] Frame 22
this._parent.onCarStartWaitingForRealFreeRoad();
this.m_stepping.stop();
stop();
Symbol 372 MovieClip [symGrannyCrossRoad] Frame 23
this.m_stepping.play();
Symbol 372 MovieClip [symGrannyCrossRoad] Frame 85
this.gotoFront();
Symbol 372 MovieClip [symGrannyCrossRoad] Frame 201
this.removeCreature();
Symbol 403 MovieClip Frame 40
gotoAndPlay ("frmStand");
Symbol 403 MovieClip Frame 73
gotoAndPlay ("frmWalk");
Symbol 414 MovieClip Frame 15
gotoAndPlay ("frmStand");
Symbol 414 MovieClip Frame 28
gotoAndPlay ("frmWalk");
Symbol 415 MovieClip [symSexyCrossRoad] Frame 1
#initclip 46
Object.registerClass("symSexyCrossRoad", CCrossRoadCreature);
#endinitclip
this.m_prefix = "symSexy";
this.Dog.gotoAndPlay("frmWalk");
this.Girl.gotoAndPlay("frmWalk");
Symbol 415 MovieClip [symSexyCrossRoad] Frame 30
this._parent.onCarStartWaitingForRealFreeRoad();
this.Dog.gotoAndPlay("frmStand");
this.Girl.gotoAndPlay("frmStand");
stop();
Symbol 415 MovieClip [symSexyCrossRoad] Frame 31
this.Dog.gotoAndPlay("frmWalk");
this.Girl.gotoAndPlay("frmWalk");
Symbol 415 MovieClip [symSexyCrossRoad] Frame 75
this.gotoFront();
Symbol 415 MovieClip [symSexyCrossRoad] Frame 76
this.Dog.gotoAndPlay("frmWalk");
this.Girl.gotoAndPlay("frmWalk");
Symbol 415 MovieClip [symSexyCrossRoad] Frame 217
this.removeCreature();
Symbol 437 MovieClip Frame 1
stop();
Symbol 447 Button
on (release) {
_parent.gotoAndStop("frmMenu");
}
Symbol 462 Button
on (release) {
getURL ("http://www.addictinggames.com", _blank);
}
Symbol 463 MovieClip Frame 49
_parent.gotoAndStop("frmMenu");
Symbol 469 Button
on (press) {
_root.allControl.startGame();
}
Symbol 473 Button
on (press) {
_root.m_rules._visible = true;
}
Instance of Symbol 8 MovieClip in Symbol 476 MovieClip Frame 1
on (press) {
this._parent._visible = false;
}
Symbol 482 Button
on (press) {
_root.allControl.soundOff = !_root.allControl.soundOff;
}
Symbol 484 Button
on (press) {
_root.allControl.soundOff = !_root.allControl.soundOff;
}
Symbol 485 MovieClip Frame 1
stop();
Symbol 485 MovieClip Frame 2
stop();
Symbol 498 MovieClip Frame 1
stop();
Instance of Symbol 496 MovieClip in Symbol 498 MovieClip Frame 1
onClipEvent (load) {
this._visible = false;
}
onClipEvent (enterFrame) {
if (!this._visible) {
if (Math.random() < 0.05) {
this._visible = true;
this.framestohide = 10 + Math.floor(5 - (Math.random() * 10));
}
} else if ((--this.framestohide) < 0) {
this._visible = false;
}
}
Symbol 498 MovieClip Frame 4
stop();
Instance of Symbol 503 MovieClip in Symbol 504 MovieClip Frame 1
onClipEvent (load) {
this._visible = false;
}
onClipEvent (enterFrame) {
if (!this._visible) {
if (Math.random() < 0.05) {
this._visible = true;
this.framestohide = 10 + Math.floor(5 - (Math.random() * 10));
}
} else if ((--this.framestohide) < 0) {
this._visible = false;
}
}
Instance of Symbol 503 MovieClip in Symbol 508 MovieClip Frame 1
onClipEvent (load) {
this._visible = false;
}
onClipEvent (enterFrame) {
if (!this._visible) {
if (Math.random() < 0.05) {
this._visible = true;
this.framestohide = 10 + Math.floor(5 - (Math.random() * 10));
}
} else if ((--this.framestohide) < 0) {
this._visible = false;
}
}
Instance of Symbol 498 MovieClip "m_boyfriendHead" in Symbol 539 MovieClip Frame 222
onClipEvent (enterFrame) {
this.play();
}
Instance of Symbol 498 MovieClip "m_boyfriendHead" in Symbol 539 MovieClip Frame 271
onClipEvent (enterFrame) {
this.stop();
}
Instance of Symbol 498 MovieClip "m_boyfriendHead" in Symbol 539 MovieClip Frame 371
onClipEvent (enterFrame) {
this.play();
}
Instance of Symbol 498 MovieClip "m_boyfriendHead1" in Symbol 539 MovieClip Frame 422
onClipEvent (enterFrame) {
this.stop();
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad1" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore1;
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad2" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.level = 1;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad3" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad4" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.semaphore = this._parent.m_semaphore2;
this.level = 1;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad5" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 158 MovieClip [symCrossRoad] "m_crossroad6" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore1" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 163 MovieClip [symSemaphore] "m_semaphore2" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.level = 0;
}
Instance of Symbol 168 MovieClip [symTrigger] in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.m_function = function (field) {
var _local1 = 1;
while (field.__get__level()["m_car" + _local1.toString()] != undefined) {
field.__get__level()["m_car" + _local1.toString()].activize();
_local1++;
}
};
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car1" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car2" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car3" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car4" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car5" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car6" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Instance of Symbol 103 MovieClip [symCarSmallRotating] "m_car7" in Symbol 539 MovieClip Frame 475
onClipEvent (load) {
this.m_prefix = "symCarSmall";
}
Symbol 540 MovieClip Frame 595
_root.allControl.onMovieFinished();
Symbol 543 Button
on (press) {
_root.allControl.onMovieFinished();
}
Symbol 581 MovieClip Frame 616
_root.allControl.onMovieFinished();
Symbol 595 MovieClip Frame 565
_root.allControl.onMovieFinished();
Symbol 596 MovieClip Frame 1
stop();
Symbol 596 MovieClip Frame 2
stop();
Symbol 596 MovieClip Frame 3
stop();
Symbol 599 Button
on (press) {
_root.allControl.tryAgain();
}
Symbol 602 Button
on (press) {
_root.allControl.showMenu();
}
Symbol 606 Button
on (release) {
_root.submitScore();
_root.swHighScoreObject.showTab = "submit";
docount = true;
loadMovieNum (_root.HSHubURL, 2);
}
Symbol 618 Button
on (press) {
_root.allControl.nextLevel();
}
Symbol 619 MovieClip Frame 1
stop();