STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
228097
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2561 · P5121

swfchan turned sixteen years old yesterday! (5may2024)

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/25376278?noj=FRM25376278-6DC" width="1" height="1"></div>

2458.swf

This is the info page for
Flash #108036

(Click the ID number above for more basic data on this flash file.)


Text
asdf
adfasdf

HERE IS THE TITLE

GO BACK

Start Competition

View High Scores

Send to a Friend

About CLK Black Series

3

2

1

go

X

=

00000000

0000000

00000000

GAME OVER

DISTANCE

DRIFT BONUS

YOUR SCORE:

PLAY AGAIN

Enter Name Here

SUBMIT

CONGRATULATIONS!

You've made the top 10. Enter your name and select your country.

Distance :                   meters

Drift Bonus :                 sec

60:00

0

0

START DRIFTING

INSTRUCTIONS

SCORING

DISTANCE

PERFECT DRIFT TIME

FINAL SCORE

X

=

STEERING & BRAKE

SPEED

CONTROLS

SPACE

+

=

THE PERFECT DRIFT

DRIFT TIP
Try to stay in the 'green' sector while drifting.
Staying within the ‘green’ sector is considered the
'perfect drift.'

You have 60 seconds to race around the ice track. In order to gain
maximum speed, stay within the 'perfect drift' angle. Your score will be
based on the distance traveled and the ‘perfect drift’ time (Final Score =
Distance Traveled x ‘Perfect Drift’ Time). Keep in mind that the deep snow
off the track will slow you down and reduce your ‘perfect drift’ time. The
top 10 scores will qualify for the High Score List!

HIGH SCORES

1

2

3

4

5

6

7

8

9

10

ZXcZXC

zxcvzxcvzxcv

zdvzxv

zxcvzxcv

zxcvzxcv

zxcvzxcv

zxcvzxcv

zxcv

zxcv

zxcv

ZXcZXCZ

zxcvzxcvxzcv

zxcv

xcv

zxcvzxcv

cv

xcv

zxcv

xcv

xcv

ZXCZXC

zxcvzxcvzxcv

zxcv

zxcv

xcv

xcv

zxcv

xcv

xcv

xcv

Visit Mercedes-AMG

Play Again

SEND TO A FRIEND

Your Friend's Name:

Your Friend's Email Address:

Your Name:

Your Email Address:

Your Message:


SEND

CLK BLACK SERIES

CLK 63 AMG BLACK SERIES
Designed for the Racetrack,
Ready for the Roadway
Elegant design betrays the strength of the new
CLK 63 AMG Black Series- the latest in our
exclusive Black Series of high performance
concept cars. With a design leveraging that of
the official Safety Car of Formula 1 racing, the
CLK 63 AMG Black Series is powerful enough to
establish top performance around top tracks in
the world, but legal for the streets – with the
ability to complete the most important journey:
from the track into your garage.
AMG WINTER SPORTING
Arjeplog, Sweden.
100 km from the Arctic Circle.  This is the
location of AMG Winter Sporting driver training.
At this event, you develop and refine your
ability in driving on ice and snow.  At no other
location will you train your personal limits in
wintry conditions as intensively and safely.  All
in high performance AMG Vehicles.

View AMG Driving Events Brochure (2 MB) >

ActionScript [AS3]

Section 1
//alert_modal_window_mc_4 (AMG07_en_fla.alert_modal_window_mc_4) package AMG07_en_fla { import flash.display.*; public dynamic class alert_modal_window_mc_4 extends MovieClip { public var close_btn:MovieClip; public var description_mc:MovieClip; public var bg_mc:MovieClip; public var title_mc:MovieClip; } }//package AMG07_en_fla
Section 2
//AMGlogo_25 (AMG07_en_fla.AMGlogo_25) package AMG07_en_fla { import flash.display.*; public dynamic class AMGlogo_25 extends MovieClip { public function AMGlogo_25(){ addFrameScript(99, frame100); } function frame100(){ stop(); } } }//package AMG07_en_fla
Section 3
//angle_mc_76 (AMG07_en_fla.angle_mc_76) package AMG07_en_fla { import flash.display.*; public dynamic class angle_mc_76 extends MovieClip { public var car_mc:MovieClip; } }//package AMG07_en_fla
Section 4
//arrow_base_fade_69 (AMG07_en_fla.arrow_base_fade_69) package AMG07_en_fla { import flash.display.*; public dynamic class arrow_base_fade_69 extends MovieClip { public function arrow_base_fade_69(){ addFrameScript(6, frame7); } function frame7(){ stop(); } } }//package AMG07_en_fla
Section 5
//background_mc_32 (AMG07_en_fla.background_mc_32) package AMG07_en_fla { import flash.display.*; public dynamic class background_mc_32 extends MovieClip { public var clouds_mc:MovieClip; public var mountains_mc:MovieClip; } }//package AMG07_en_fla
Section 6
//black_copyanim_143 (AMG07_en_fla.black_copyanim_143) package AMG07_en_fla { import flash.events.*; import flash.display.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.filters.*; import flash.xml.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.system.*; import flash.ui.*; public dynamic class black_copyanim_143 extends MovieClip { public var btn_learn_more:MovieClip; public var btn_visit_amg:MovieClip; public function black_copyanim_143(){ addFrameScript(37, frame38); } public function navToLearnMore(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.mercedes-amg.com/drift/AMG_DrivingAcademy_en.pdf")); } function frame38(){ btn_learn_more.addEventListener(MouseEvent.CLICK, navToLearnMore); btn_learn_more.addEventListener(MouseEvent.ROLL_OVER, btnRollover); btn_learn_more.addEventListener(MouseEvent.ROLL_OUT, btnRollout); btn_visit_amg.addEventListener(MouseEvent.CLICK, navToWebsite); btn_visit_amg.addEventListener(MouseEvent.ROLL_OVER, btnRollover); btn_visit_amg.addEventListener(MouseEvent.ROLL_OUT, btnRollout); btn_learn_more.buttonMode = (btn_visit_amg.buttonMode = true); this.stop(); } public function btnRollover(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("_rollover"); } public function btnRollout(_arg1:MouseEvent):void{ _arg1.target.gotoAndStop(1); } public function navToWebsite(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.mercedes-amg.com/CLK_Black_Series")); } } }//package AMG07_en_fla
Section 7
//black_series_MC_139 (AMG07_en_fla.black_series_MC_139) package AMG07_en_fla { import com.mercedesamg.gs.*; import flash.display.*; public dynamic class black_series_MC_139 extends MovieClip { public var about_image_mc:MovieClip; public function black_series_MC_139(){ addFrameScript(0, frame1, 19, frame20); } function frame1(){ TweenFilterLite.from(about_image_mc, 2, {type:"Color", colorize:3407871, amount:0.4, brightness:5, saturation:5, delay:0, onComplete:onFinishFrameTween}); TweenFilterLite.from(about_image_mc, 2, {type:"blur", blurX:20, blurY:20, delay:0, overwrite:false}); this.stop(); } function frame20(){ this.stop(); } public function onFinishFrameTween():void{ gotoAndPlay(2); } } }//package AMG07_en_fla
Section 8
//BlackSeries_intro_141 (AMG07_en_fla.BlackSeries_intro_141) package AMG07_en_fla { import flash.display.*; public dynamic class BlackSeries_intro_141 extends MovieClip { public function BlackSeries_intro_141(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package AMG07_en_fla
Section 9
//bottomlinksmask_15 (AMG07_en_fla.bottomlinksmask_15) package AMG07_en_fla { import flash.display.*; public dynamic class bottomlinksmask_15 extends MovieClip { public function bottomlinksmask_15(){ addFrameScript(99, frame100); } function frame100(){ stop(); } } }//package AMG07_en_fla
Section 10
//btn_about_23 (AMG07_en_fla.btn_about_23) package AMG07_en_fla { import flash.display.*; public dynamic class btn_about_23 extends MovieClip { public function btn_about_23(){ addFrameScript(0, frame1, 14, frame15, 24, frame25); } function frame15(){ this.stop(); } function frame1(){ this.stop(); } function frame25(){ this.stop(); } } }//package AMG07_en_fla
Section 11
//btn_learn_more_144 (AMG07_en_fla.btn_learn_more_144) package AMG07_en_fla { import flash.display.*; public dynamic class btn_learn_more_144 extends MovieClip { public function btn_learn_more_144(){ addFrameScript(0, frame1, 11, frame12); } function frame12(){ this.stop(); } function frame1(){ this.stop(); } } }//package AMG07_en_fla
Section 12
//btn_send_to_friend_21 (AMG07_en_fla.btn_send_to_friend_21) package AMG07_en_fla { import flash.display.*; public dynamic class btn_send_to_friend_21 extends MovieClip { public function btn_send_to_friend_21(){ addFrameScript(0, frame1, 14, frame15, 24, frame25); } function frame15(){ this.stop(); } function frame1(){ this.stop(); } function frame25(){ this.stop(); } } }//package AMG07_en_fla
Section 13
//btn_start_comp_16 (AMG07_en_fla.btn_start_comp_16) package AMG07_en_fla { import flash.display.*; public dynamic class btn_start_comp_16 extends MovieClip { public function btn_start_comp_16(){ addFrameScript(0, frame1, 14, frame15, 24, frame25); } function frame15(){ this.stop(); } function frame1(){ this.stop(); } function frame25(){ this.stop(); } } }//package AMG07_en_fla
Section 14
//btn_view_scores_19 (AMG07_en_fla.btn_view_scores_19) package AMG07_en_fla { import flash.display.*; public dynamic class btn_view_scores_19 extends MovieClip { public function btn_view_scores_19(){ addFrameScript(0, frame1, 14, frame15, 24, frame25); } function frame15(){ this.stop(); } function frame1(){ this.stop(); } function frame25(){ this.stop(); } } }//package AMG07_en_fla
Section 15
//btn_visit_amg_123 (AMG07_en_fla.btn_visit_amg_123) package AMG07_en_fla { import flash.display.*; public dynamic class btn_visit_amg_123 extends MovieClip { public function btn_visit_amg_123(){ addFrameScript(0, frame1, 11, frame12); } function frame12(){ this.stop(); } function frame1(){ this.stop(); } } }//package AMG07_en_fla
Section 16
//car_view_mc_36 (AMG07_en_fla.car_view_mc_36) package AMG07_en_fla { import flash.display.*; public dynamic class car_view_mc_36 extends MovieClip { public function car_view_mc_36(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package AMG07_en_fla
Section 17
//close_btn_8 (AMG07_en_fla.close_btn_8) package AMG07_en_fla { import flash.display.*; public dynamic class close_btn_8 extends MovieClip { public function close_btn_8(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package AMG07_en_fla
Section 18
//Countdown_49 (AMG07_en_fla.Countdown_49) package AMG07_en_fla { import flash.events.*; import flash.display.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.filters.*; import flash.xml.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.system.*; import flash.ui.*; public dynamic class Countdown_49 extends MovieClip { public function Countdown_49(){ addFrameScript(102, frame103); } function frame103(){ this.master.play(); this.stop(); } } }//package AMG07_en_fla
Section 19
//countdownanim_46 (AMG07_en_fla.countdownanim_46) package AMG07_en_fla { import flash.events.*; import flash.display.*; import com.mercedesamg.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.filters.*; import flash.xml.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.system.*; import flash.ui.*; public dynamic class countdownanim_46 extends MovieClip { public var countdown_mc:MovieClip; public function countdownanim_46(){ addFrameScript(0, frame1, 21, frame22, 24, frame25, 31, frame32); } function frame22(){ this.stop(); countdown_mc.master = this; } function frame25(){ DriftRevolution.getInstance().startGame(); } function frame1(){ this.stop(); } function frame32(){ this.stop(); } } }//package AMG07_en_fla
Section 20
//description_mc_6 (AMG07_en_fla.description_mc_6) package AMG07_en_fla { import flash.display.*; import flash.text.*; public dynamic class description_mc_6 extends MovieClip { public var description_txt:TextField; } }//package AMG07_en_fla
Section 21
//driftbutton_88 (AMG07_en_fla.driftbutton_88) package AMG07_en_fla { import flash.display.*; public dynamic class driftbutton_88 extends MovieClip { public var drift_btn:SimpleButton; public function driftbutton_88(){ addFrameScript(16, frame17); } function frame17(){ stop(); } } }//package AMG07_en_fla
Section 22
//enterName_66 (AMG07_en_fla.enterName_66) package AMG07_en_fla { import flash.display.*; import flash.text.*; public dynamic class enterName_66 extends MovieClip { public var name_txt:TextField; } }//package AMG07_en_fla
Section 23
//game_MC_29 (AMG07_en_fla.game_MC_29) package AMG07_en_fla { import flash.display.*; import flash.text.*; public dynamic class game_MC_29 extends MovieClip { public var car_view_mc:MovieClip; public var steering_wheel_mc:MovieClip; public var drift_particles_front_mc:MovieClip; public var track_mc:MovieClip; public var speedo_mc:MovieClip; public var distance_txt:TextField; public var rear_snow_mc:MovieClip; public var bonus_txt:TextField; public var background_mc:MovieClip; public var countdown_mc:MovieClip; public var minimap_mc:MovieClip; public var drift_particles_back_mc:MovieClip; public var angle_mc:MovieClip; public var status_icons_mc:MovieClip; public var gameover_mc:MovieClip; public var submit_score_mc:MovieClip; public var game_clock_txt:TextField; public function game_MC_29(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package AMG07_en_fla
Section 24
//gameover_54 (AMG07_en_fla.gameover_54) package AMG07_en_fla { import flash.events.*; import flash.display.*; import com.mercedesamg.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.filters.*; import flash.xml.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.system.*; import flash.ui.*; public dynamic class gameover_54 extends MovieClip { public var scoring_fields_mc:MovieClip; public var play_again_btn:MovieClip; public function gameover_54(){ addFrameScript(0, frame1, 98, frame99); } function frame1(){ this.stop(); } public function btnRollover(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("_rollover"); } function frame99(){ play_again_btn.addEventListener(MouseEvent.CLICK, playAgain); play_again_btn.addEventListener(MouseEvent.ROLL_OVER, btnRollover); play_again_btn.addEventListener(MouseEvent.ROLL_OUT, btnRollout); play_again_btn.buttonMode = true; this.stop(); } public function btnRollout(_arg1:MouseEvent):void{ _arg1.target.gotoAndStop("_null"); } public function playAgain(_arg1:MouseEvent):void{ DriftRevolution.getInstance().onPlayAgainClicked(); } } }//package AMG07_en_fla
Section 25
//gameovercopyanim_60 (AMG07_en_fla.gameovercopyanim_60) package AMG07_en_fla { import flash.display.*; public dynamic class gameovercopyanim_60 extends MovieClip { public function gameovercopyanim_60(){ addFrameScript(27, frame28); } function frame28(){ stop(); } } }//package AMG07_en_fla
Section 26
//highscore_intro_118 (AMG07_en_fla.highscore_intro_118) package AMG07_en_fla { import flash.events.*; import flash.display.*; import com.mercedesamg.utils.*; import com.mercedesamg.serverComm.*; import com.mercedesamg.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.filters.*; import flash.xml.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.system.*; import flash.ui.*; public dynamic class highscore_intro_118 extends MovieClip { public var score1:TextField; public var name0:TextField; public var name1:TextField; public var name3:TextField; public var name4:TextField; public var name6:TextField; public var name8:TextField; public var name2:TextField; public var score5:TextField; public var name5:TextField; public var hs:HighScores; public var name7:TextField; public var score6:TextField; public var name9:TextField; public var alertTimer:Timer; public var country1:TextField; public var country3:TextField; public var country5:TextField; public var country2:TextField; public var country0:TextField; public var country9:TextField; public var country4:TextField; public var country7:TextField; public var country8:TextField; public var country6:TextField; public var score0:TextField; public var score2:TextField; public var score3:TextField; public var score7:TextField; public var score8:TextField; public var score4:TextField; public var score9:TextField; public function highscore_intro_118(){ addFrameScript(41, frame42); } public function scoresReceived(_arg1:Event):void{ renderScores(); alertTimer.start(); } public function renderScores():void{ var _local1:Array; var _local2:uint; _local1 = HighScores.getInstance().getHighScores(); _local2 = 0; while (_local2 < 10) { this[("name" + _local2)].text = _local1[_local2].racename; this[("country" + _local2)].text = _local1[_local2].country; this[("score" + _local2)].text = _local1[_local2].score; _local2++; }; if (HighScores.getInstance().scoreSubmitted){ HighScores.getInstance().scoreSubmitted = false; } else { HighScores.getInstance().removeEventListener(HighScores.HIGH_SCORES_RECEIVED, scoresReceived); }; } public function hideLoadingScreen(_arg1:TimerEvent):void{ AlertModalWindow.getInstance().hideMessage(); alertTimer.removeEventListener(TimerEvent.TIMER, hideLoadingScreen); DriftRevolution.getInstance().unlockNavigation(); } public function wipeoutScores():void{ var _local1:uint; _local1 = 0; while (_local1 < 10) { this[("name" + _local1)].text = "..."; this[("country" + _local1)].text = "..."; this[("score" + _local1)].text = "..."; _local1++; }; } function frame42(){ this.stop(); wipeoutScores(); alertTimer = new Timer(1000, 1); alertTimer.addEventListener(TimerEvent.TIMER, hideLoadingScreen); hs = HighScores.getInstance(); DriftRevolution.getInstance().lockNavigation(); hs.addEventListener(HighScores.HIGH_SCORES_RECEIVED, scoresReceived); AlertModalWindow.getInstance().showMessage("Loading High Scores", "Please wait one moment while we load the most recent scores.", false); hs.loadHighScores(); } } }//package AMG07_en_fla
Section 27
//highscorebox_65 (AMG07_en_fla.highscorebox_65) package AMG07_en_fla { import flash.events.*; import flash.display.*; import com.mercedesamg.utils.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.filters.*; import flash.xml.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.system.*; import flash.ui.*; public dynamic class highscorebox_65 extends MovieClip { public var scrollDirection:Boolean; public var cTimer:Timer; public var countries:Array; public var name_mc:MovieClip; public var highscore_btn:MovieClip; public var currentCountry:uint; public var country_mc:MovieClip; public function highscorebox_65(){ addFrameScript(0, frame1, 26, frame27, 51, frame52); } public function arrowDownOut(_arg1:MouseEvent):void{ country_mc.arrow_down.gotoAndStop("_null"); } public function arrowUpOut(_arg1:MouseEvent):void{ country_mc.arrow_up.gotoAndStop("_null"); } public function btnRollOver(_arg1:MouseEvent):void{ highscore_btn.gotoAndPlay("_rollover"); } public function scrollCountries(_arg1:TimerEvent):void{ if (!scrollDirection){ currentCountry = Math.max(0, (currentCountry - 1)); country_mc.country_txt.text = countries[currentCountry].name; } else { currentCountry = Math.min(countries.length, (currentCountry + 1)); country_mc.country_txt.text = countries[currentCountry].name; }; } public function arrowUpClick(_arg1:MouseEvent):void{ currentCountry = Math.max(0, (currentCountry - 1)); country_mc.country_txt.text = countries[currentCountry].name; scrollDirection = false; cTimer.start(); } public function arrowUpOver(_arg1:MouseEvent):void{ country_mc.arrow_up.gotoAndPlay("_rollover"); } function frame27(){ this.stop(); countries = MiscDataProviders.getCountriesList(); currentCountry = 0; country_mc.country_txt.text = countries[currentCountry].name; scrollDirection = false; cTimer = new Timer(100); cTimer.addEventListener(TimerEvent.TIMER, scrollCountries); highscore_btn.addEventListener(MouseEvent.ROLL_OVER, btnRollOver); highscore_btn.addEventListener(MouseEvent.ROLL_OUT, btnRollOut); highscore_btn.buttonMode = true; country_mc.arrow_up.addEventListener(MouseEvent.ROLL_OVER, arrowUpOver); country_mc.arrow_up.addEventListener(MouseEvent.ROLL_OUT, arrowUpOut); country_mc.arrow_up.addEventListener(MouseEvent.MOUSE_DOWN, arrowUpClick); country_mc.arrow_up.addEventListener(MouseEvent.MOUSE_UP, cancelCountryScrolling); country_mc.arrow_down.addEventListener(MouseEvent.ROLL_OVER, arrowDownOver); country_mc.arrow_down.addEventListener(MouseEvent.ROLL_OUT, arrowDownOut); country_mc.arrow_down.addEventListener(MouseEvent.MOUSE_DOWN, arrowDownClick); country_mc.arrow_down.addEventListener(MouseEvent.MOUSE_UP, cancelCountryScrolling); } function frame1(){ this.stop(); } public function btnRollOut(_arg1:MouseEvent):void{ highscore_btn.gotoAndStop("_null"); } public function cancelCountryScrolling(_arg1:MouseEvent):void{ cTimer.stop(); } public function arrowDownOver(_arg1:MouseEvent):void{ country_mc.arrow_down.gotoAndPlay("_rollover"); } function frame52(){ } public function arrowDownClick(_arg1:MouseEvent):void{ currentCountry = Math.min(countries.length, (currentCountry + 1)); country_mc.country_txt.text = countries[currentCountry].name; scrollDirection = true; cTimer.start(); } } }//package AMG07_en_fla
Section 28
//highscoreboxes_93 (AMG07_en_fla.highscoreboxes_93) package AMG07_en_fla { import flash.display.*; public dynamic class highscoreboxes_93 extends MovieClip { public function highscoreboxes_93(){ addFrameScript(21, frame22); } function frame22(){ stop(); } } }//package AMG07_en_fla
Section 29
//highscoresheadline_119 (AMG07_en_fla.highscoresheadline_119) package AMG07_en_fla { import flash.display.*; public dynamic class highscoresheadline_119 extends MovieClip { public function highscoresheadline_119(){ addFrameScript(41, frame42); } function frame42(){ stop(); } } }//package AMG07_en_fla
Section 30
//home_page_MC_82 (AMG07_en_fla.home_page_MC_82) package AMG07_en_fla { import flash.display.*; public dynamic class home_page_MC_82 extends MovieClip { public var logo_mc:MovieClip; public function home_page_MC_82(){ addFrameScript(9, frame10); } function frame10(){ stop(); } } }//package AMG07_en_fla
Section 31
//homepageimage_83 (AMG07_en_fla.homepageimage_83) package AMG07_en_fla { import flash.display.*; public dynamic class homepageimage_83 extends MovieClip { public var logo_mc:MovieClip; } }//package AMG07_en_fla
Section 32
//instr_copy_115 (AMG07_en_fla.instr_copy_115) package AMG07_en_fla { import flash.display.*; public dynamic class instr_copy_115 extends MovieClip { public function instr_copy_115(){ addFrameScript(14, frame15); } function frame15(){ stop(); } } }//package AMG07_en_fla
Section 33
//instructiondivboxes_116 (AMG07_en_fla.instructiondivboxes_116) package AMG07_en_fla { import flash.display.*; public dynamic class instructiondivboxes_116 extends MovieClip { public function instructiondivboxes_116(){ addFrameScript(21, frame22); } function frame22(){ stop(); } } }//package AMG07_en_fla
Section 34
//Instructions_intro_92 (AMG07_en_fla.Instructions_intro_92) package AMG07_en_fla { import flash.display.*; public dynamic class Instructions_intro_92 extends MovieClip { public function Instructions_intro_92(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package AMG07_en_fla
Section 35
//instructions_MC_91 (AMG07_en_fla.instructions_MC_91) package AMG07_en_fla { import flash.events.*; import flash.display.*; import com.mercedesamg.*; public dynamic class instructions_MC_91 extends MovieClip { public var start_drift_btn:MovieClip; public function instructions_MC_91(){ addFrameScript(39, frame40); } public function doIt(_arg1:MouseEvent):void{ DriftRevolution.getInstance().onStartGameClicked(); } function frame40(){ stop(); this.start_drift_btn.addEventListener(MouseEvent.CLICK, doIt); } } }//package AMG07_en_fla
Section 36
//logoanim_84 (AMG07_en_fla.logoanim_84) package AMG07_en_fla { import flash.events.*; import flash.display.*; import com.mercedesamg.*; public dynamic class logoanim_84 extends MovieClip { public var start_drift_btn:MovieClip; public function logoanim_84(){ addFrameScript(0, frame1, 82, frame83); } public function doIt(_arg1:MouseEvent):void{ DriftRevolution.getInstance().onStartDriftingClicked(); } function frame1(){ stop(); } function frame83(){ stop(); this.start_drift_btn.addEventListener(MouseEvent.CLICK, doIt); } } }//package AMG07_en_fla
Section 37
//MainTimeline (AMG07_en_fla.MainTimeline) package AMG07_en_fla { import com.mercedesamg.gs.*; import flash.events.*; import flash.display.*; import com.mercedesamg.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.filters.*; import flash.xml.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.system.*; import flash.ui.*; public dynamic class MainTimeline extends MovieClip { public var gradient_bg_mc:MovieClip; public var game_mc:MovieClip; public var high_scores_mc:MovieClip; public var black_series_mc:MovieClip; public var alert_modal_window_mc:MovieClip; public var send_to_friend_mc:MovieClip; public var instructions_mc:MovieClip; public var navbuttons_mc:MovieClip; public var frame_mc:MovieClip; public var home_mc:MovieClip; public function MainTimeline(){ addFrameScript(2, frame3, 3, frame4, 4, frame5); } public function onFinishTween(_arg1:Number, _arg2:MovieClip):void{ home_mc.logo_mc.gotoAndPlay(2); navbuttons_mc.gotoAndPlay(2); trace(((("The tween has finished! argument1_num = " + _arg1) + ", and argument2_mc = ") + _arg2)); } function frame3(){ game_mc.visible = false; } function frame4(){ DriftRevolution.getInstance().init(this); TweenFilterLite.from(frame_mc, 1, {type:"Color", colorize:3407871, amount:0.4, brightness:5, saturation:5, delay:0, onComplete:onFinishFrameTween, onCompleteParams:[5, frame_mc]}); TweenFilterLite.from(frame_mc, 1, {type:"blur", blurX:50, blurY:50, delay:0, overwrite:false}); this.stop(); } function frame5(){ TweenFilterLite.from(home_mc, 2, {type:"Color", colorize:3407871, amount:0.4, brightness:5, saturation:5, delay:0, onComplete:onFinishTween, onCompleteParams:[5, home_mc]}); TweenFilterLite.from(home_mc, 2, {type:"blur", blurX:20, blurY:20, delay:0, overwrite:false}); this.stop(); } public function onFinishFrameTween(_arg1:Number, _arg2:MovieClip):void{ gotoAndStop(5); } } }//package AMG07_en_fla
Section 38
//minimap_mc_43 (AMG07_en_fla.minimap_mc_43) package AMG07_en_fla { import flash.display.*; public dynamic class minimap_mc_43 extends MovieClip { public var car_pos_mc:MovieClip; public var track_map_mc:MovieClip; } }//package AMG07_en_fla
Section 39
//navbuttonsanim_14 (AMG07_en_fla.navbuttonsanim_14) package AMG07_en_fla { import flash.display.*; public dynamic class navbuttonsanim_14 extends MovieClip { public var friend_btn:MovieClip; public var scores_btn:MovieClip; public var about_btn:MovieClip; public var start_btn:MovieClip; public function navbuttonsanim_14(){ addFrameScript(0, frame1, 4, frame5); } function frame1(){ stop(); } function frame5(){ stop(); } } }//package AMG07_en_fla
Section 40
//over_btn_base_90 (AMG07_en_fla.over_btn_base_90) package AMG07_en_fla { import flash.display.*; public dynamic class over_btn_base_90 extends MovieClip { public function over_btn_base_90(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package AMG07_en_fla
Section 41
//playagainbluebtnanim_64 (AMG07_en_fla.playagainbluebtnanim_64) package AMG07_en_fla { import flash.display.*; public dynamic class playagainbluebtnanim_64 extends MovieClip { public function playagainbluebtnanim_64(){ addFrameScript(16, frame17, 27, frame28); } function frame17(){ this.stop(); } function frame28(){ this.stop(); } } }//package AMG07_en_fla
Section 42
//playagainbtn_126 (AMG07_en_fla.playagainbtn_126) package AMG07_en_fla { import flash.display.*; public dynamic class playagainbtn_126 extends MovieClip { public function playagainbtn_126(){ addFrameScript(0, frame1, 14, frame15); } function frame15(){ this.stop(); } function frame1(){ this.stop(); } } }//package AMG07_en_fla
Section 43
//scoring_fields_mc_57 (AMG07_en_fla.scoring_fields_mc_57) package AMG07_en_fla { import flash.display.*; import flash.text.*; public dynamic class scoring_fields_mc_57 extends MovieClip { public var total_txt:TextField; public var distance_txt:TextField; public var bonus_txt:TextField; } }//package AMG07_en_fla
Section 44
//select_box_arrow_68 (AMG07_en_fla.select_box_arrow_68) package AMG07_en_fla { import flash.display.*; public dynamic class select_box_arrow_68 extends MovieClip { public function select_box_arrow_68(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package AMG07_en_fla
Section 45
//selectCountry_67 (AMG07_en_fla.selectCountry_67) package AMG07_en_fla { import flash.display.*; import flash.text.*; public dynamic class selectCountry_67 extends MovieClip { public var arrow_down:MovieClip; public var country_txt:TextField; public var arrow_up:MovieClip; } }//package AMG07_en_fla
Section 46
//send_to_friend_MC_129 (AMG07_en_fla.send_to_friend_MC_129) package AMG07_en_fla { import flash.events.*; import flash.display.*; import com.mercedesamg.serverComm.*; import flash.text.*; public dynamic class send_to_friend_MC_129 extends MovieClip { public var send_btn:MovieClip; public var textName:TextField; public var textEmail:TextField; public var textBody:TextField; public var taf:SendToFriend; public var status_txt:TextField; public var textEmail2:TextField; public var textName2:TextField; public function send_to_friend_MC_129(){ addFrameScript(50, frame51); } public function btnOver(_arg1:MouseEvent):void{ send_btn.gotoAndPlay("_rollover"); } public function submitIt(_arg1:MouseEvent):void{ taf.onSubmit(this.textBody.text, this.textName.text, this.textEmail.text, this.textName2.text, this.textEmail2.text); send_btn.gotoAndStop("_null"); } public function clearFields(_arg1:Event):void{ textBody.text = ""; textName2.text = ""; textEmail2.text = ""; } public function btnOut(_arg1:MouseEvent):void{ send_btn.gotoAndStop("_null"); } function frame51(){ this.stop(); taf = SendToFriend.getInstance(); taf.addEventListener(SendToFriend.TAF_SUBMITTED, clearFields); send_btn.addEventListener(MouseEvent.CLICK, submitIt); send_btn.addEventListener(MouseEvent.ROLL_OVER, btnOver); send_btn.addEventListener(MouseEvent.ROLL_OUT, btnOut); send_btn.buttonMode = true; } } }//package AMG07_en_fla
Section 47
//send2friendboxdividermid_136 (AMG07_en_fla.send2friendboxdividermid_136) package AMG07_en_fla { import flash.display.*; public dynamic class send2friendboxdividermid_136 extends MovieClip { public function send2friendboxdividermid_136(){ addFrameScript(21, frame22); } function frame22(){ stop(); } } }//package AMG07_en_fla
Section 48
//send2friendboxdividershort_135 (AMG07_en_fla.send2friendboxdividershort_135) package AMG07_en_fla { import flash.display.*; public dynamic class send2friendboxdividershort_135 extends MovieClip { public function send2friendboxdividershort_135(){ addFrameScript(21, frame22); } function frame22(){ stop(); } } }//package AMG07_en_fla
Section 49
//sendbutton_138 (AMG07_en_fla.sendbutton_138) package AMG07_en_fla { import flash.display.*; public dynamic class sendbutton_138 extends MovieClip { public function sendbutton_138(){ addFrameScript(16, frame17, 26, frame27); } function frame17(){ this.stop(); } function frame27(){ this.stop(); } } }//package AMG07_en_fla
Section 50
//sendcopymask_137 (AMG07_en_fla.sendcopymask_137) package AMG07_en_fla { import flash.display.*; public dynamic class sendcopymask_137 extends MovieClip { public function sendcopymask_137(){ addFrameScript(29, frame30); } function frame30(){ stop(); } } }//package AMG07_en_fla
Section 51
//sendformmask_130 (AMG07_en_fla.sendformmask_130) package AMG07_en_fla { import flash.display.*; public dynamic class sendformmask_130 extends MovieClip { public function sendformmask_130(){ addFrameScript(30, frame31); } function frame31(){ stop(); } } }//package AMG07_en_fla
Section 52
//SendtoFriend_intro_133 (AMG07_en_fla.SendtoFriend_intro_133) package AMG07_en_fla { import flash.display.*; public dynamic class SendtoFriend_intro_133 extends MovieClip { public function SendtoFriend_intro_133(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package AMG07_en_fla
Section 53
//snowrearanim_38 (AMG07_en_fla.snowrearanim_38) package AMG07_en_fla { import flash.display.*; public dynamic class snowrearanim_38 extends MovieClip { public function snowrearanim_38(){ addFrameScript(19, frame20); } function frame20(){ this.gotoAndPlay("loop"); } } }//package AMG07_en_fla
Section 54
//speedometer_mc2_73 (AMG07_en_fla.speedometer_mc2_73) package AMG07_en_fla { import flash.display.*; public dynamic class speedometer_mc2_73 extends MovieClip { public var needle_mc:MovieClip; } }//package AMG07_en_fla
Section 55
//status_icons_mc_40 (AMG07_en_fla.status_icons_mc_40) package AMG07_en_fla { import flash.display.*; public dynamic class status_icons_mc_40 extends MovieClip { public function status_icons_mc_40(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package AMG07_en_fla
Section 56
//submitbluebtnanim_70 (AMG07_en_fla.submitbluebtnanim_70) package AMG07_en_fla { import flash.display.*; public dynamic class submitbluebtnanim_70 extends MovieClip { public function submitbluebtnanim_70(){ addFrameScript(16, frame17, 29, frame30); } function frame17(){ this.stop(); } function frame30(){ this.stop(); } } }//package AMG07_en_fla
Section 57
//title_mc_7 (AMG07_en_fla.title_mc_7) package AMG07_en_fla { import flash.display.*; import flash.text.*; public dynamic class title_mc_7 extends MovieClip { public var title_txt:TextField; } }//package AMG07_en_fla
Section 58
//txt_PlayAgain_glow_128 (AMG07_en_fla.txt_PlayAgain_glow_128) package AMG07_en_fla { import flash.display.*; public dynamic class txt_PlayAgain_glow_128 extends MovieClip { public function txt_PlayAgain_glow_128(){ addFrameScript(7, frame8); } function frame8(){ stop(); } } }//package AMG07_en_fla
Section 59
//visitAMGbuttons_122 (AMG07_en_fla.visitAMGbuttons_122) package AMG07_en_fla { import flash.events.*; import flash.display.*; import com.mercedesamg.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.net.*; import flash.filters.*; import flash.xml.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.system.*; import flash.ui.*; public dynamic class visitAMGbuttons_122 extends MovieClip { public var btn_play_again:MovieClip; public var btn_visit_amg:MovieClip; public function visitAMGbuttons_122(){ addFrameScript(12, frame13); } function frame13(){ btn_play_again.addEventListener(MouseEvent.CLICK, playAgain); btn_play_again.addEventListener(MouseEvent.ROLL_OVER, btnRollover); btn_play_again.addEventListener(MouseEvent.ROLL_OUT, btnRollout); btn_visit_amg.addEventListener(MouseEvent.CLICK, navToWebsite); btn_visit_amg.addEventListener(MouseEvent.ROLL_OVER, btnRollover); btn_visit_amg.addEventListener(MouseEvent.ROLL_OUT, btnRollout); btn_play_again.buttonMode = (btn_visit_amg.buttonMode = true); this.stop(); } public function btnRollover(_arg1:MouseEvent):void{ _arg1.target.gotoAndPlay("_rollover"); } public function btnRollout(_arg1:MouseEvent):void{ _arg1.target.gotoAndStop(1); } public function playAgain(_arg1:MouseEvent):void{ DriftRevolution.getInstance().onStartDriftingClicked(); } public function navToWebsite(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.mercedes-amg.com")); } } }//package AMG07_en_fla
Section 60
//TweenFilterLite (com.mercedesamg.gs.TweenFilterLite) package com.mercedesamg.gs { import flash.display.*; import flash.utils.*; import flash.filters.*; public class TweenFilterLite extends TweenLite { private var _mc:DisplayObject; private var _clrsa:Array; private var _fType; private var _clrMtxTw:TweenLite; public var _matrix:Array; private var _f:Object; private var _endMatrix:Array; public static var version:Number = 5.3; private static var _idMatrix:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; public static var killTweensOf:Function = TweenLite.killTweensOf; public static var delayedCall:Function = TweenLite.delayedCall; private static var _lumB:Number = 0.072169; private static var _lumG:Number = 0.71516; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; private static var _lumR:Number = 0.212671; public function TweenFilterLite(_arg1:DisplayObject, _arg2:Number, _arg3:Object){ super(_arg1, _arg2, _arg3); if (_arg1 == null){ return; }; _mc = _arg1; _clrsa = []; if (this.vars.runBackwards == true){ initTweenVals(); }; if ((((TweenLite.version < 5.3)) || (isNaN(TweenLite.version)))){ trace("ERROR! Please update your TweenLite class. TweenFilterLite requires a more recent version. Download updates at http://www.TweenLite.com."); }; } private function setFilter(_arg1:Class, _arg2:Array, _arg3:Object):void{ var _local4:Array; var _local5:int; var _local6:Number; var _local7:String; var _local8:Object; var _local9:Object; var _local10:Object; _fType = _arg1; _local4 = _mc.filters; _local5 = 0; while (_local5 < _local4.length) { if ((_local4[_local5] is _arg1)){ _f = _local4[_local5]; break; }; _local5++; }; if (_f == null){ _local4.push(_arg3); _mc.filters = _local4; _f = _arg3; }; _local5 = 0; while (_local5 < _arg2.length) { _local7 = _arg2[_local5]; if (this.tweens[_local7] != undefined){ _local8 = this.tweens[_local7]; delete this.tweens[_local7]; } else { if (this.extraTweens[_local7] != undefined){ _local8 = this.extraTweens[_local7]; } else { _local8 = null; }; }; if (_local8 != null){ if ((((((((((((((_local7 == "brightness")) || ((_local7 == "colorize")))) || ((_local7 == "amount")))) || ((_local7 == "saturation")))) || ((_local7 == "contrast")))) || ((_local7 == "hue")))) || ((_local7 == "threshold")))){ } else { if ((((((_local7 == "color")) || ((_local7 == "highlightColor")))) || ((_local7 == "shadowColor")))){ _local9 = HEXtoRGB(_f[_local7]); _local10 = HEXtoRGB(this.vars[_local7]); _clrsa.push({p:_local7, e:this.vars.ease, sr:_local9.rb, cr:(_local10.rb - _local9.rb), sg:_local9.gb, cg:(_local10.gb - _local9.gb), sb:_local9.bb, cb:(_local10.bb - _local9.bb)}); } else { if ((((((((_local7 == "quality")) || ((_local7 == "inner")))) || ((_local7 == "knockout")))) || ((_local7 == "hideObject")))){ _f[_local7] = this.vars[_local7]; } else { if (typeof(this.vars[_local7]) == "number"){ _local6 = (this.vars[_local7] - _f[_local7]); } else { _local6 = Number(this.vars[_local7]); }; this.tweens[_local7] = {o:_f, p:_local7, s:_f[_local7], c:_local6, e:this.vars.ease}; }; }; }; }; _local5++; }; } override public function render(_arg1:int):void{ var _local2:Number; var _local3:Object; var _local4:String; var _local5:int; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Array; _local2 = ((_arg1 - this.startTime) / 1000); if (_local2 > this.duration){ _local2 = this.duration; }; if (_mc.parent != null){ for (_local4 in this.tweens) { _local3 = this.tweens[_local4]; _local3.o[_local4] = _local3.e(_local2, _local3.s, _local3.c, this.duration); }; _local5 = 0; while (_local5 < _clrsa.length) { _local3 = _clrsa[_local5]; _local6 = _local3.e(_local2, _local3.sr, _local3.cr, this.duration); _local7 = _local3.e(_local2, _local3.sg, _local3.cg, this.duration); _local8 = _local3.e(_local2, _local3.sb, _local3.cb, this.duration); _f[_local3.p] = (((_local6 << 16) | (_local7 << 8)) | _local8); _local5++; }; if (_endMatrix != null){ _f.matrix = _matrix; }; _local9 = ((_mc.filters.slice()) || ([])); _local5 = (_local9.length - 1); while (_local5 > -1) { if ((_local9[_local5] is _fType)){ _local9[_local5] = _f; break; }; _local5--; }; _mc.filters = _local9; if (this.onUpdate != null){ this.onUpdate.apply(null, this.onUpdateParams); }; }; if (_local2 == this.duration){ if ((((((typeof(this.vars.autoAlpha) == "number")) && ((this.target.alpha == 0)))) && (!((this.target.parent == null))))){ this.target.visible = false; }; if (this.onComplete != null){ this.onComplete.apply(null, this.onCompleteParams); }; removeTween(this); }; } public function HEXtoRGB(_arg1:Number):Object{ return ({rb:(_arg1 >> 16), gb:((_arg1 >> 8) & 0xFF), bb:(_arg1 & 0xFF)}); } override public function initTweenVals():void{ var _local1:int; var _local2:String; var _local3:Number; if (_mc != null){ super.initTweenVals(); if (this.vars.type != null){ _clrsa = []; _matrix = _idMatrix.slice(); if ((((this.vars.quality == undefined)) || (isNaN(this.vars.quality)))){ this.vars.quality = 2; }; if (this.vars.runBackwards == true){ for (_local2 in this.tweens) { this.tweens[_local2].flipped = true; }; }; switch (this.vars.type.toLowerCase()){ case "blur": setFilter(BlurFilter, ["blurX", "blurY", "quality"], new BlurFilter(0, 0, this.vars.quality)); break; case "glow": setFilter(GlowFilter, ["alpha", "blurX", "blurY", "color", "quality", "strength", "inner", "knockout"], new GlowFilter(0xFFFFFF, 0, 0, 0, ((this.vars.strength) || (1)), this.vars.quality, this.vars.inner, this.vars.knockout)); break; case "colormatrix": case "color": case "colormatrixfilter": case "colorize": setFilter(ColorMatrixFilter, [], new ColorMatrixFilter(_matrix)); _matrix = _f.matrix; if (this.vars.relative == true){ _endMatrix = _matrix.slice(); } else { _endMatrix = _idMatrix.slice(); }; _endMatrix = setBrightness(_endMatrix, this.vars.brightness); _endMatrix = setContrast(_endMatrix, this.vars.contrast); _endMatrix = setHue(_endMatrix, this.vars.hue); _endMatrix = setSaturation(_endMatrix, this.vars.saturation); _endMatrix = setThreshold(_endMatrix, this.vars.threshold); if (!isNaN(this.vars.colorize)){ _endMatrix = colorize(_endMatrix, this.vars.colorize, this.vars.amount); } else { if (!isNaN(this.vars.color)){ _endMatrix = colorize(_endMatrix, this.vars.color, this.vars.amount); }; }; _local3 = (this.delay - ((getTimer() - this.initTime) / 1000)); _clrMtxTw = new TweenLite(_matrix, this.duration, {endMatrix:_endMatrix, ease:this.vars.ease, delay:_local3, overwrite:false, runBackwards:this.vars.runBackwards}); _clrMtxTw.endTarget = _mc; break; case "shadow": case "dropshadow": setFilter(DropShadowFilter, ["alpha", "angle", "blurX", "blurY", "color", "distance", "quality", "strength", "inner", "knockout", "hideObject"], new DropShadowFilter(0, 45, 0, 0, 0, 0, 1, this.vars.quality, this.vars.inner, this.vars.knockout, this.vars.hideObject)); break; case "bevel": setFilter(BevelFilter, ["angle", "blurX", "blurY", "distance", "highlightAlpha", "highlightColor", "quality", "shadowAlpha", "shadowColor", "strength"], new BevelFilter(0, 0, 0xFFFFFF, 0.5, 0, 0.5, 2, 2, 0, this.vars.quality)); break; }; if (this.vars.runBackwards == true){ flipFilterVals(); }; }; }; } private function flipFilterVals():void{ var _local1:Boolean; var _local2:int; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Object; var _local7:String; var _local8:Array; _local1 = this.active; for (_local7 in this.tweens) { if (this.tweens[_local7].flipped != true){ _local6 = this.tweens[_local7]; this.tweens[_local7].s = (_local6.s + _local6.c); _local6.c = (_local6.c * -1); _local6.o[_local7] = _local6.e(0, _local6.s, _local6.c, this.duration); _local6.flipped = true; }; }; _local2 = 0; while (_local2 < _clrsa.length) { _local6 = _clrsa[_local2]; _clrsa[_local2].sr = (_local6.sr + _local6.cr); _local6.cr = (_local6.cr * -1); _local6.sg = (_local6.sg + _local6.cg); _local6.cg = (_local6.cg * -1); _local6.sb = (_local6.sb + _local6.cb); _local6.cb = (_local6.cb * -1); if (!_local1){ _local3 = _local6.e(0, _local6.sr, _local6.cr, this.duration); _local4 = _local6.e(0, _local6.sg, _local6.cg, this.duration); _local5 = _local6.e(0, _local6.sb, _local6.cb, this.duration); _f[_local6.p] = (((_local3 << 16) | (_local4 << 8)) | _local5); }; _local2++; }; if (((_local1) && (!((this.duration == 0.001))))){ render(getTimer()); } else { if (_mc.parent != null){ if (_endMatrix != null){ _f.matrix = _matrix; }; _local8 = ((_mc.filters.slice()) || ([])); _local2 = (_local8.length - 1); while (_local2 > -1) { if ((_local8[_local2] is _fType)){ _local8[_local2] = _f; break; }; _local2--; }; _mc.filters = _local8; }; }; if (this.onUpdate != null){ this.onUpdate.apply(null, this.onUpdateParams); }; } public static function setContrast(_arg1:Array, _arg2:Number):Array{ var _local3:Array; if (isNaN(_arg2)){ return (_arg1); }; _arg2 = (_arg2 + 0.01); _local3 = [_arg2, 0, 0, 0, (128 * (1 - _arg2)), 0, _arg2, 0, 0, (128 * (1 - _arg2)), 0, 0, _arg2, 0, (128 * (1 - _arg2)), 0, 0, 0, 1, 0]; return (applyMatrix(_local3, _arg1)); } public static function applyMatrix(_arg1:Array, _arg2:Array):Array{ var _local3:Array; var _local4:int; var _local5:int; var _local6:int; var _local7:int; if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){ return (_arg2); }; _local3 = []; _local4 = 0; _local5 = 0; _local6 = 0; while (_local6 < 4) { _local7 = 0; while (_local7 < 5) { if (_local7 == 4){ _local5 = _arg1[(_local4 + 4)]; } else { _local5 = 0; }; _local3[(_local4 + _local7)] = (((((_arg1[_local4] * _arg2[_local7]) + (_arg1[(_local4 + 1)] * _arg2[(_local7 + 5)])) + (_arg1[(_local4 + 2)] * _arg2[(_local7 + 10)])) + (_arg1[(_local4 + 3)] * _arg2[(_local7 + 15)])) + _local5); _local7++; }; _local4 = (_local4 + 5); _local6++; }; return (_local3); } public static function colorize(_arg1:Array, _arg2:Number, _arg3:Number=100):Array{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Array; if (isNaN(_arg2)){ return (_arg1); }; if (isNaN(_arg3)){ _arg3 = 1; }; _local4 = (((_arg2 >> 16) & 0xFF) / 0xFF); _local5 = (((_arg2 >> 8) & 0xFF) / 0xFF); _local6 = ((_arg2 & 0xFF) / 0xFF); _local7 = (1 - _arg3); _local8 = [(_local7 + ((_arg3 * _local4) * _lumR)), ((_arg3 * _local4) * _lumG), ((_arg3 * _local4) * _lumB), 0, 0, ((_arg3 * _local5) * _lumR), (_local7 + ((_arg3 * _local5) * _lumG)), ((_arg3 * _local5) * _lumB), 0, 0, ((_arg3 * _local6) * _lumR), ((_arg3 * _local6) * _lumG), (_local7 + ((_arg3 * _local6) * _lumB)), 0, 0, 0, 0, 0, 1, 0]; return (applyMatrix(_local8, _arg1)); } public static function setBrightness(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; _arg2 = ((_arg2 * 100) - 100); return (applyMatrix([1, 0, 0, 0, _arg2, 0, 1, 0, 0, _arg2, 0, 0, 1, 0, _arg2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1], _arg1)); } public static function setSaturation(_arg1:Array, _arg2:Number):Array{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Array; if (isNaN(_arg2)){ return (_arg1); }; _local3 = (1 - _arg2); _local4 = (_local3 * _lumR); _local5 = (_local3 * _lumG); _local6 = (_local3 * _lumB); _local7 = [(_local4 + _arg2), _local5, _local6, 0, 0, _local4, (_local5 + _arg2), _local6, 0, 0, _local4, _local5, (_local6 + _arg2), 0, 0, 0, 0, 0, 1, 0]; return (applyMatrix(_local7, _arg1)); } public static function from(_arg1:DisplayObject, _arg2:Number, _arg3:Object):TweenFilterLite{ _arg3.runBackwards = true; return (new TweenFilterLite(_arg1, _arg2, _arg3)); } public static function setThreshold(_arg1:Array, _arg2:Number):Array{ var _local3:Array; if (isNaN(_arg2)){ return (_arg1); }; _local3 = [(_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), 0, 0, 0, 1, 0]; return (applyMatrix(_local3, _arg1)); } public static function setHue(_arg1:Array, _arg2:Number):Array{ var _local3:Number; var _local4:Number; var _local5:Array; if (isNaN(_arg2)){ return (_arg1); }; _arg2 = (_arg2 * (Math.PI / 180)); _local3 = Math.cos(_arg2); _local4 = Math.sin(_arg2); _local5 = [((_lumR + (_local3 * (1 - _lumR))) + (_local4 * -(_lumR))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * -(_lumG))), ((_lumB + (_local3 * -(_lumB))) + (_local4 * (1 - _lumB))), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * 0.143)), ((_lumG + (_local3 * (1 - _lumG))) + (_local4 * 0.14)), ((_lumB + (_local3 * -(_lumB))) + (_local4 * -0.283)), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * -((1 - _lumR)))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * _lumG)), ((_lumB + (_local3 * (1 - _lumB))) + (_local4 * _lumB)), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]; return (applyMatrix(_local5, _arg1)); } public static function to(_arg1:DisplayObject, _arg2:Number, _arg3:Object):TweenFilterLite{ return (new TweenFilterLite(_arg1, _arg2, _arg3)); } } }//package com.mercedesamg.gs
Section 61
//TweenLite (com.mercedesamg.gs.TweenLite) package com.mercedesamg.gs { import flash.events.*; import flash.display.*; import flash.media.*; import flash.geom.*; import flash.utils.*; public class TweenLite { public var delay:Number; public var onUpdate:Function; private var _sound:SoundTransform; public var target:Object; public var duration:Number; public var extraTweens:Object; private var _active:Boolean; private var _endColor:ColorTransform; public var onStartParams:Array; public var vars:Object; public var onUpdateParams:Array; public var onComplete:Function; public var onStart:Function; private var _endTarget:Object; public var startTime:uint; public var onCompleteParams:Array; private var _color:ColorTransform; public var tweens:Object; public var initTime:uint; private static var _sprite:Sprite = new Sprite(); private static var _timer:Timer = new Timer(2000); private static var _all:Dictionary = new Dictionary(); public static var killDelayedCallsTo:Function = killTweensOf; public static var version:Number = 5.3; private static var _listening:Boolean; public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){ var _local4:Boolean; super(); if (_arg1 == null){ return; }; if (((((!((_arg3.overwrite == false))) && (!((_arg1 == null))))) || ((_all[_arg1] == undefined)))){ delete _all[_arg1]; _all[_arg1] = new Dictionary(); }; _all[_arg1][this] = this; this.vars = _arg3; this.duration = _arg2; this.delay = ((_arg3.delay) || (0)); if (_arg2 == 0){ this.duration = 0.001; if (this.delay == 0){ this.vars.runBackwards = true; }; }; this.target = (_endTarget = _arg1); this.onComplete = _arg3.onComplete; this.onCompleteParams = ((_arg3.onCompleteParams) || ([])); this.onUpdate = _arg3.onUpdate; this.onUpdateParams = ((_arg3.onUpdateParams) || ([])); this.onStart = _arg3.onStart; this.onStartParams = ((_arg3.onStartParams) || ([])); if (this.vars.ease == undefined){ this.vars.ease = easeOut; } else { if (!(this.vars.ease is Function)){ trace((("ERROR: You cannot use '" + this.vars.ease) + "' for the TweenLite ease property. Only functions are accepted.")); }; }; if (!isNaN(Number(this.vars.autoAlpha))){ this.vars.alpha = Number(this.vars.autoAlpha); } else { if (!isNaN(Number(this.vars._autoAlpha))){ this.vars.alpha = (this.vars.autoAlpha = Number(this.vars._autoAlpha)); }; }; this.tweens = {}; this.extraTweens = {}; this.initTime = getTimer(); if (this.vars.runBackwards == true){ initTweenVals(); }; _active = false; _local4 = this.active; if ((((_arg2 == 0)) && ((this.delay == 0)))){ if (this.vars.autoAlpha == 0){ this.target.visible = false; }; if (this.onComplete != null){ this.onComplete.apply(null, this.onCompleteParams); }; removeTween(this); } else { if (!_listening){ _sprite.addEventListener(Event.ENTER_FRAME, executeAll); _timer.addEventListener("timer", killGarbage); _timer.start(); _listening = true; }; }; } public function get active():Boolean{ if (_active){ return (true); }; if (((getTimer() - this.initTime) / 1000) > this.delay){ _active = true; this.startTime = (this.initTime + (this.delay * 1000)); if (this.vars.runBackwards != true){ initTweenVals(); } else { if (typeof(this.vars.autoAlpha) == "number"){ this.target.visible = true; }; }; if (this.onStart != null){ this.onStart.apply(null, this.onStartParams); }; if (this.duration == 0.001){ this.startTime = (this.startTime - 1); }; return (true); //unresolved jump }; return (false); } public function render(_arg1:int):void{ var _local2:Number; var _local3:Object; var _local4:String; _local2 = ((_arg1 - this.startTime) / 1000); if (_local2 > this.duration){ _local2 = this.duration; }; for (_local4 in this.tweens) { _local3 = this.tweens[_local4]; _local3.o[_local4] = _local3.e(_local2, _local3.s, _local3.c, this.duration); }; if (this.onUpdate != null){ this.onUpdate.apply(null, this.onUpdateParams); }; if (_local2 == this.duration){ if ((((typeof(this.vars.autoAlpha) == "number")) && ((this.target.alpha == 0)))){ this.target.visible = false; }; if (this.onComplete != null){ this.onComplete.apply(null, this.onCompleteParams); }; removeTween(this); }; } public function set colorProxy(_arg1:Number):void{ var _local2:Number; _local2 = (1 - _arg1); this.target.transform.colorTransform = new ColorTransform(((_color.redMultiplier * _local2) + (_endColor.redMultiplier * _arg1)), ((_color.greenMultiplier * _local2) + (_endColor.greenMultiplier * _arg1)), ((_color.blueMultiplier * _local2) + (_endColor.blueMultiplier * _arg1)), ((_color.alphaMultiplier * _local2) + (_endColor.alphaMultiplier * _arg1)), ((_color.redOffset * _local2) + (_endColor.redOffset * _arg1)), ((_color.greenOffset * _local2) + (_endColor.greenOffset * _arg1)), ((_color.blueOffset * _local2) + (_endColor.blueOffset * _arg1)), ((_color.alphaOffset * _local2) + (_endColor.alphaOffset * _arg1))); } public function set endTarget(_arg1:Object):void{ delete _all[_endTarget][this]; _endTarget = _arg1; if (_all[_arg1] == undefined){ _all[_arg1] = new Dictionary(); }; _all[_arg1][this] = this; } public function get colorProxy():Number{ return (0); } public function get endTarget():Object{ return (_endTarget); } public function initTweenVals():void{ var _local1:Number; var _local2:String; var _local3:Number; var _local4:Array; var _local5:int; var _local6:TweenLite; var _local7:TweenLite; var _local8:Object; _local1 = (this.delay - ((getTimer() - this.initTime) / 1000)); if ((this.target is Array)){ _local4 = []; for (_local2 in this.vars) { if ((this.vars[_local2] is Array)){ _local4 = this.vars[_local2]; break; }; }; _local5 = 0; while (_local5 < _local4.length) { if (((!((this.target[_local5] == _local4[_local5]))) && (!((this.target[_local5] == undefined))))){ this.tweens[_local5.toString()] = {o:this.target, s:this.target[_local5], c:(_local4[_local5] - this.target[_local5]), e:this.vars.ease}; }; _local5++; }; } else { for (_local2 in this.vars) { if ((((_local2 == "volume")) && ((this.target is MovieClip)))){ _sound = this.target.soundTransform; _local6 = new TweenLite(this, this.duration, {volumeProxy:this.vars[_local2], ease:easeOut, delay:_local1, overwrite:false, runBackwards:this.vars.runBackwards}); _local6.endTarget = this.target; } else { if ((((_local2.toLowerCase() == "mccolor")) && ((this.target is DisplayObject)))){ _color = this.target.transform.colorTransform; _endColor = new ColorTransform(); _endColor.alphaMultiplier = ((this.vars.alpha) || (this.target.alpha)); if (((!((this.vars[_local2] == null))) && (!((this.vars[_local2] == ""))))){ _endColor.color = this.vars[_local2]; }; _local7 = new TweenLite(this, this.duration, {colorProxy:1, delay:_local1, overwrite:false, runBackwards:this.vars.runBackwards}); _local7.endTarget = this.target; } else { if ((((((((((((((((((((((((_local2 == "delay")) || ((_local2 == "ease")))) || ((_local2 == "overwrite")))) || ((_local2 == "onComplete")))) || ((_local2 == "onCompleteParams")))) || ((_local2 == "runBackwards")))) || ((_local2 == "onUpdate")))) || ((_local2 == "onUpdateParams")))) || ((_local2 == "autoAlpha")))) || ((_local2 == "_autoAlpha")))) || ((_local2 == "onStart")))) || ((_local2 == "onStartParams")))){ } else { if (this.target.hasOwnProperty(_local2)){ if (typeof(this.vars[_local2]) == "number"){ _local3 = (this.vars[_local2] - this.target[_local2]); } else { _local3 = Number(this.vars[_local2]); }; this.tweens[_local2] = {o:this.target, s:this.target[_local2], c:_local3, e:this.vars.ease}; } else { this.extraTweens[_local2] = {o:this.target, s:0, c:0, e:this.vars.ease, v:this.vars[_local2]}; }; }; }; }; }; }; if (this.vars.runBackwards == true){ for (_local2 in this.tweens) { _local8 = this.tweens[_local2]; this.tweens[_local2].s = (_local8.s + _local8.c); _local8.c = (_local8.c * -1); if (_local8.c != 0){ _local8.o[_local2] = _local8.e(0, _local8.s, _local8.c, this.duration); }; }; if (this.onUpdate != null){ this.onUpdate.apply(null, this.onUpdateParams); }; }; if (typeof(this.vars.autoAlpha) == "number"){ this.target.visible = !((((this.vars.runBackwards == true)) && ((this.target.alpha == 0)))); }; } public function set volumeProxy(_arg1:Number):void{ _sound.volume = _arg1; this.target.soundTransform = _sound; } public function get volumeProxy():Number{ return (_sound.volume); } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null):TweenLite{ return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, overwrite:false})); } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ _arg3.runBackwards = true; return (new TweenLite(_arg1, _arg2, _arg3)); } public static function removeTween(_arg1:TweenLite=null):void{ if (((!((_arg1 == null))) && (!((_all[_arg1.endTarget] == null))))){ delete _all[_arg1.endTarget][_arg1]; }; } private static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function killGarbage(_arg1:TimerEvent):void{ var _local2:Object; var _local3:int; var _local4:Boolean; var _local5:Object; var _local6:Object; var _local7:Object; _local2 = _all; _local3 = 0; for (_local5 in _local2) { _local4 = false; for (_local6 in _local2[_local5]) { _local4 = true; break; }; if (!_local4){ delete _local2[_local5]; } else { _local3++; }; }; if (_local3 == 0){ _sprite.removeEventListener(Event.ENTER_FRAME, executeAll); _timer.removeEventListener("timer", killGarbage); _timer.stop(); _listening = false; }; } public static function executeAll(_arg1:Event):void{ var _local2:Object; var _local3:int; var _local4:Object; var _local5:Object; var _local6:Object; _local2 = _all; _local3 = getTimer(); for (_local4 in _local2) { for (_local5 in _local2[_local4]) { _local6 = _local2[_local4][_local5]; if (_local6.active){ _local6.render(_local3); }; }; }; } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ return (new TweenLite(_arg1, _arg2, _arg3)); } public static function killTweensOf(_arg1:Object=null):void{ if (_arg1 != null){ delete _all[_arg1]; }; } } }//package com.mercedesamg.gs
Section 62
//DriftParticle3d (com.mercedesamg.mcClasses.DriftParticle3d) package com.mercedesamg.mcClasses { import flash.display.*; public class DriftParticle3d extends MovieClip { private var speedz:Number; public var yPos:Number; public var front:Boolean; private var cont:MovieClip; private var speed:Number; public var xMove:Number; public var scale:Number; public var dead:Boolean; private var snowScale:Number; public var dy:Number; public var zPos:Number; public var dx:Number; public var dir:Number; public var xPos:Number; private var scale_ceil:Number; private var angdiff:Number; static const snowScale:Number = 1.12; static const snowGravity:Number = 2.45; static const snowFrict:Number = 0.95; static const snowFade:Number = 0.03; public function DriftParticle3d(_arg1:Number, _arg2:uint, _arg3:Number){ var _local4:Number; super(); this.dead = false; this.front = false; this.dir = _arg2; this.angdiff = _arg3; _local4 = (60 - _arg3); this.scaleX = (this.scaleY = 2); if (_arg2){ xMove = ((Math.abs(((_arg1 * 0.45) - _arg3)) * -1) - 1); this.x = ((Math.random() * -60) - 60); } else { xMove = (Math.abs(((_arg1 * 0.45) - _arg3)) + 1); this.x = ((Math.random() * 60) + 60); }; this.y = ((Math.random() * (-(_arg1) * 6)) - 20); this.speedz = (_arg1 * 1.2); this.rotation = (Math.random() * 180); this.cacheAsBitmap = true; } public function destroy():void{ delete ??getglobalscope [this]; } public function calculate():void{ this.x = (this.x + xMove); this.y = (this.y - speedz); speedz = (speedz - DriftParticle3d.snowGravity); this.alpha = (this.alpha - DriftParticle3d.snowFade); this.scaleX = (this.scaleY = (this.scaleX * DriftParticle3d.snowScale)); if ((((((this.y > 0)) || ((this.alpha < 0.1)))) || ((this.scaleX > 6)))){ dead = true; }; } } }//package com.mercedesamg.mcClasses
Section 63
//BackgroundView (com.mercedesamg.mvc.BackgroundView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; public class BackgroundView { private var mountains:MovieClip; private var model:GameModel; private var viewingWidth:Number;// = 750 private var cloudsHW:Number; private var mountainsHW:Number; private var rootmc:MovieClip; private var clouds:MovieClip; public function BackgroundView(){ viewingWidth = 750; super(); } private function fixAngle(_arg1:Number):Number{ _arg1 = (_arg1 % 360); return (((_arg1)<0) ? (_arg1 + 360) : _arg1); } private function prepView(_arg1:Event):void{ clouds.x = 0; mountains.x = 0; } private function render(_arg1:Event):void{ var _local2:Number; _local2 = fixAngle(_arg1.target.getCameraFacingAngle()); clouds.x = (-(cloudsHW) + ((cloudsHW / 360) * _local2)); mountains.x = (-(mountainsHW) + ((mountainsHW / 360) * _local2)); } public function init(_arg1:GameModel, _arg2:MovieClip):void{ this.model = _arg1; this.rootmc = _arg2; this.mountains = rootmc.mountains_mc; this.clouds = rootmc.clouds_mc; mountainsHW = (mountains.width / 2); cloudsHW = (clouds.width / 2); _arg1.addEventListener(GameModel.MODEL_CHANGED, render); _arg1.addEventListener(GameModel.PREP_GAME, prepView); } } }//package com.mercedesamg.mvc
Section 64
//Car3dView (com.mercedesamg.mvc.Car3dView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; public class Car3dView { private var lastGoodAngleDiff:Number; private var model:GameModel; private var initY:uint; private var car:MovieClip; private var rear_snow_mc:MovieClip; private var toggle:Boolean;// = false public function Car3dView(){ toggle = false; super(); } private function reset(_arg1:Event):void{ car.gotoAndStop(13); rear_snow_mc.visible = false; } private function gameEnd(_arg1:Event):void{ rear_snow_mc.visible = false; } private function render(_arg1:Event):void{ var _local2:Number; var _local3:Number; var _local4:uint; var _local5:Number; var _local6:uint; var _local7:Boolean; _local2 = _arg1.target.getAcceleration(); if (((toggle) && ((_local2 > 1)))){ _local7 = _arg1.target.getIsOffroad(); if (_local7){ if (_local2 > 4){ car.y = (initY + 2); } else { car.y = (initY + 1); }; }; } else { car.y = initY; }; toggle = !(toggle); _local3 = _arg1.target.getAngleDifference(); if (_local3 > 180){ return; }; _local4 = _arg1.target.getTurningDirection(); _local5 = Math.ceil((_local3 / 10)); _local6 = 13; if (!_local4){ if ((((_local3 > 0.25)) && ((_local3 < 5)))){ _local6++; } else { if (_local3 > 5){ _local6 = Math.min(25, (_local6 + _local5)); }; }; lastGoodAngleDiff = _local3; } else { if ((((_local3 > 0.1)) && ((_local3 < 5)))){ _local6--; } else { if (_local3 > 5){ _local6 = Math.max(1, (_local6 - _local5)); }; }; lastGoodAngleDiff = _local3; }; car.gotoAndStop(_local6); if (_arg1.target.getAcceleration() > 3){ rear_snow_mc.visible = true; switch (_local6){ case 13: rear_snow_mc.scaleX = 1; rear_snow_mc.rotation = 0; rear_snow_mc.x = 355; break; case 14: rear_snow_mc.scaleX = 1; rear_snow_mc.rotation = 0; rear_snow_mc.x = 377; break; case 15: rear_snow_mc.scaleX = 1; rear_snow_mc.rotation = -3; rear_snow_mc.x = 405; break; case 16: rear_snow_mc.scaleX = 1; rear_snow_mc.rotation = -5.5; rear_snow_mc.x = 421; break; case 12: rear_snow_mc.scaleX = 1; rear_snow_mc.rotation = 0; rear_snow_mc.x = 330; break; case 11: rear_snow_mc.scaleX = 1; rear_snow_mc.rotation = 3; rear_snow_mc.x = 305; rear_snow_mc.y = 337; break; case 10: rear_snow_mc.scaleX = 1; rear_snow_mc.rotation = 5.3; rear_snow_mc.x = 279; break; case 9: rear_snow_mc.scaleX = 0.88; rear_snow_mc.rotation = 9.7; rear_snow_mc.x = 260; break; default: rear_snow_mc.visible = false; }; } else { rear_snow_mc.visible = false; }; } public function init(_arg1:GameModel, _arg2:MovieClip, _arg3):void{ this.model = _arg1; this.car = _arg2; this.rear_snow_mc = _arg3; initY = car.y; _arg1.addEventListener(GameModel.MODEL_CHANGED, render); _arg1.addEventListener(GameModel.END_GAME, gameEnd); _arg1.addEventListener(GameModel.PREP_GAME, reset); } } }//package com.mercedesamg.mvc
Section 65
//DashboardView (com.mercedesamg.mvc.DashboardView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; import flash.text.*; public class DashboardView { private var speedo_needle:MovieClip; private var car_angle:MovieClip; private var model:GameModel; private var steering_wheel:MovieClip; private var clock_txt:TextField; private var distance_txt:TextField; private var rootmc:MovieClip; private var bonus_txt:TextField; private function render(_arg1:Event):void{ var _local2:Number; var _local3:uint; _local2 = _arg1.target.getAngleDifference(); _local3 = _arg1.target.getTurningDirection(); if (_local3){ car_angle.rotation = _local2; steering_wheel.rotation = (_local2 * 3); } else { car_angle.rotation = -(_local2); steering_wheel.rotation = (-(_local2) * 3); }; speedo_needle.rotation = (_arg1.target.getAcceleration() * 8); distance_txt.text = _arg1.target.getTotalKmTraveled().toString(); bonus_txt.text = _arg1.target.getDriftBonus().toString(); } private function updateGameClock(_arg1:Event):void{ clock_txt.text = (_arg1.target.getGameClock() + ":00"); } private function reset(_arg1:Event):void{ car_angle.rotation = 0; steering_wheel.rotation = 0; speedo_needle.rotation = 0; distance_txt.text = "0"; bonus_txt.text = "1"; clock_txt.text = ""; } public function init(_arg1:GameModel, _arg2:MovieClip):void{ this.model = _arg1; this.rootmc = _arg2; this.steering_wheel = _arg2.steering_wheel_mc; this.speedo_needle = _arg2.speedo_mc.needle_mc; this.car_angle = _arg2.angle_mc.car_mc; this.distance_txt = _arg2.distance_txt; this.bonus_txt = _arg2.bonus_txt; this.clock_txt = _arg2.game_clock_txt; _arg1.addEventListener(GameModel.MODEL_CHANGED, render); _arg1.addEventListener(GameModel.GAME_CLOCK_UPDATED, updateGameClock); _arg1.addEventListener(GameModel.PREP_GAME, reset); } } }//package com.mercedesamg.mvc
Section 66
//DriftParticlesView (com.mercedesamg.mvc.DriftParticlesView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; import flash.geom.*; import com.mercedesamg.mcClasses.*; public class DriftParticlesView { private var container_back:MovieClip; private var model:GameModel; private var container_front:MovieClip; private var particles:Array; private var particlesAdd:Array; private var uuid:int;// = 0 private var flen:Number;// = 20 public function DriftParticlesView(){ flen = 20; uuid = 0; super(); } private function createParticle(_arg1:Number, _arg2:Number):void{ var _local3:uint; var _local4:uint; var _local5:DriftParticle3d; _local3 = model.getTurningDirection(); _local4 = 0; while (_local4 < 2) { _local5 = new DriftParticle3d(_arg1, _local3, _arg2); _local5.name = ("p" + uuid); particlesAdd.push(_local5); container_back.addChild(_local5); uuid++; _local4++; }; } private function render(_arg1:Event):void{ var _local2:Point; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:uint; var _local7:uint; var _local8:DriftParticle3d; var _local9:Number; particlesAdd = new Array(); _local2 = new Point(_arg1.target.getXPos(), _arg1.target.getYPos()); _local3 = (_arg1.target.getCameraFacingAngle() * GameModel.DEG2RAD); _local4 = _arg1.target.getAngleDifference(); _local5 = _arg1.target.getAcceleration(); if ((((_local5 > 1.5)) && ((_local4 > 1)))){ createParticle(_local5, _local4); }; _local6 = particles.length; _local7 = 0; for (;_local7 < _local6;_local7++) { _local8 = (particles[_local7] as DriftParticle3d); _local8.calculate(); if (_local8.dead){ particles.splice(_local7, 1); if (_local8.front){ _local9 = container_front.getChildIndex(container_front.getChildByName(_local8.name)); container_front.removeChildAt(_local9); } else { _local9 = container_back.getChildIndex(container_back.getChildByName(_local8.name)); container_back.removeChildAt(_local9); }; _local8.destroy(); _local6--; _local7--; continue; }; }; particles = particles.concat(particlesAdd); } public function init(_arg1:GameModel, _arg2:MovieClip, _arg3:MovieClip):void{ this.model = _arg1; this.container_back = _arg2; this.container_front = _arg3; particles = new Array(); _arg1.addEventListener(GameModel.MODEL_CHANGED, render); _arg1.addEventListener(GameModel.PREP_GAME, reset); } private function reset(_arg1:Event):void{ var _local2:uint; var _local3:uint; var _local4:DriftParticle3d; var _local5:int; _local2 = particles.length; _local3 = 0; while (_local3 < _local2) { _local4 = (particles[_local3] as DriftParticle3d); if (_local4.front){ _local5 = container_front.getChildIndex(container_front.getChildByName(_local4.name)); container_front.removeChildAt(_local5); } else { _local5 = container_back.getChildIndex(container_back.getChildByName(_local4.name)); container_back.removeChildAt(_local5); }; _local3++; }; particles = new Array(); particlesAdd = new Array(); uuid = 0; } } }//package com.mercedesamg.mvc
Section 67
//GameModel (com.mercedesamg.mvc.GameModel) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; import com.mercedesamg.utils.*; import flash.utils.*; public class GameModel extends EventDispatcher { private var snowDepth;// = 0 private var keyPressedSpace:Boolean;// = false private var keyPressedDown:Boolean;// = false private var sideGravity;// = 0.5 private var deccel:Number;// = 0.92 private var steer_normal:Number;// = 0.07 private var keyPressedRight:Boolean;// = false private var handbrake:Number;// = 0.95 private var gameTimeMax:Number;// = 60 private var pixelsTraveled:Number; private var lastDriftTime:Number;// = 0 private var steer_handbrake:Number;// = 0.08 private var offroad:Boolean;// = false private var traction:Number; private var cameraDistance:Number;// = 10 private var tractionRate:Number;// = 1.11 private var offroadArea:OffroadHitTestArea; private var currentSound:uint;// = 50 private var driftAngleMin:Number;// = 24 private var realSpeed:Number;// = 0 private var snowGravity;// = 2.3 private var speed:Number;// = 0 private var reset:Boolean; private var speedSlideMin:Number;// = 7 private var driftAngleMax:Number;// = 60 private var speedSlideMax:Number;// = 12 private var car_pos:Vector; private var keyPressedLeft:Boolean;// = false private var movementAngle:Number;// = 0 private var gameTimer:Timer; private var angleDiff:Number;// = 0 private var steer_threshold:Number;// = 5 private var tractionMin:Number;// = 2 private var snowMaxHeight;// = 0 private var snowScale;// = 0.5 private var snowHeight;// = 6 private var speedMin:Number;// = 0 private var dw:Number;// = 0 private var dir;// = null private var tractionMax:Number;// = 150 private var driftingTotalTime:Number;// = 1 private var drifting:Boolean;// = false private var speedMax:Number;// = 40 private var carFacingAngle:Number;// = 0 private var drift:Number;// = 0.97 private var snowFade;// = 2 private var cameraFacingAngle:Number;// = 0 private var snowSpeedDecay;// = 1 private var speedMaxOffroad:Number;// = 4 private var turningDirection:uint;// = 0 private var keyPressedUp:Boolean;// = false private var vx:Number;// = 0 private var isTurning:Boolean;// = false private var steer:Number;// = 0.05 private var angle:Number;// = 0 private var worldScale:Number;// = 0.008 private var handbraking:Boolean;// = false private var vy:Number;// = 0 private var kmTraveled:Number; private var gameTime:Number; private var cam_pos:Vector; private var accel:Number;// = 0.14 private var snowBounce;// = 0.3 private var frameRate:Number;// = 60 private var rootmc:MovieClip; private var handbrake_traction:Number;// = 11 static const KEY_RIGHT = 39; public static const SOUND_CHANGED:String = "sound_changed"; public static const END_DRIFT:String = "end_drift"; static const KEY_LEFT = 37; public static const PREP_GAME:String = "prep_game"; public static const START_DRIFT:String = "start_drift"; public static const CANCEL_DRIFT:String = "cancel_drift"; public static const START_GAME:String = "start_game"; static const KEY_UP = 38; public static const MODEL_CHANGED:String = "model_changed"; public static const PI2:Number = 1.5707963267949; public static const TWOPI:Number = 6.28318530717959; static const KEY_SPACE = 32; public static const DEG2RAD:Number = 0.0174532925199433; public static const RAD2DEG:Number = 57.2957795130823; static const KEY_DOWN = 40; public static const HALFPI:Number = 1.5707963267949; public static const END_GAME:String = "end_game"; public static const GAME_CLOCK_UPDATED:String = "clock_updated"; public function GameModel(_arg1:MovieClip, _arg2:Number, _arg3:Number){ frameRate = 60; worldScale = 0.008; cameraDistance = 10; accel = 0.14; steer = 0.05; steer_normal = 0.07; steer_handbrake = 0.08; steer_threshold = 5; deccel = 0.92; handbrake = 0.95; handbrake_traction = 11; drift = 0.97; handbraking = false; drifting = false; driftAngleMin = 24; driftAngleMax = 60; tractionMin = 2; tractionMax = 150; traction = tractionMin; tractionRate = 1.11; speed = 0; realSpeed = 0; speedMax = 40; speedMaxOffroad = 4; speedSlideMin = 7; speedSlideMax = 12; speedMin = 0; vx = 0; vy = 0; dw = 0; isTurning = false; turningDirection = 0; angle = 0; carFacingAngle = 0; cameraFacingAngle = 0; movementAngle = 0; angleDiff = 0; dir = null; snowGravity = 2.3; snowScale = 0.5; snowHeight = 6; snowFade = 2; snowBounce = 0.3; snowMaxHeight = 0; snowSpeedDecay = 1; sideGravity = 0.5; snowDepth = 0; keyPressedRight = false; keyPressedLeft = false; keyPressedUp = false; keyPressedDown = false; keyPressedSpace = false; driftingTotalTime = 1; lastDriftTime = 0; offroad = false; gameTimeMax = 60; currentSound = 50; super(); rootmc = _arg1; offroadArea = new OffroadHitTestArea(); offroadArea.cacheAsBitmap = true; offroadArea.visible = false; rootmc.addChildAt(offroadArea, 0); reset = false; } public function getDirectionNormal():void{ } public function initGame():void{ var _local1:Sprite; _local1 = new Sprite(); _local1.name = "modelSprite"; rootmc.addChild(_local1); } public function getDriftTotal():Number{ return (driftingTotalTime); } public function getCameraFacingAngle():Number{ return (cameraFacingAngle); } private function keyUpListener(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case KEY_LEFT: keyPressedLeft = false; break; case KEY_RIGHT: keyPressedRight = false; break; case KEY_UP: keyPressedUp = false; break; case KEY_DOWN: keyPressedDown = false; break; case KEY_SPACE: keyPressedSpace = false; break; }; } public function getTurningDirection():uint{ return (turningDirection); } private function addToDriftTotal():void{ driftingTotalTime = (driftingTotalTime + (getTimer() - lastDriftTime)); lastDriftTime = getTimer(); } public function setIsOffroad(_arg1:Boolean):void{ offroad = _arg1; } public function getXPos():Number{ return (cam_pos.x); } private function calculate(_arg1:Event):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Vector; var _local9:Vector; var _local10:Vector; _local2 = speedMax; if (offroad){ _local2 = speedMaxOffroad; }; if (keyPressedLeft){ isTurning = true; turningDirection = 0; if ((speed > speedSlideMin)){ traction = Math.min(tractionMax, (traction * tractionRate)); } else { traction = Math.max(tractionMin, (traction / tractionRate)); }; dw = ((steer * adjust(Math.abs(speed), steer_threshold)) * sign(speed)); angle = (angle + dw); } else { if (keyPressedRight){ isTurning = true; turningDirection = 1; if ((speed > speedSlideMin)){ traction = Math.min(tractionMax, (traction * tractionRate)); } else { traction = Math.max(tractionMin, (traction / tractionRate)); }; dw = ((-(steer) * adjust(Math.abs(speed), steer_threshold)) * sign(speed)); angle = (angle + dw); } else { dw = 0; if (isTurning){ speed = (realSpeed * sign(speed)); }; isTurning = false; traction = Math.max(tractionMin, (traction / tractionRate)); }; }; if (keyPressedSpace){ speed = Math.min((speed + accel), _local2); setCurrentSound(1); } else { if (keyPressedDown){ speed = Math.max((speed - accel), speedMin); setCurrentSound(2); } else { speed = (speed * drift); traction = Math.max(tractionMin, (traction / tractionRate)); setCurrentSound(2); }; }; vx = (vx + (((Math.cos(angle) * speed) - vx) / traction)); vy = (vy + (((Math.sin(angle) * speed) - vy) / traction)); realSpeed = Math.sqrt(((vx * vx) + (vy * vy))); carFacingAngle = (angle * RAD2DEG); movementAngle = (Math.atan2(vy, vx) * RAD2DEG); if (!turningDirection){ angleDiff = fixAngle((carFacingAngle - movementAngle)); } else { angleDiff = fixAngle((movementAngle - carFacingAngle)); }; if ((((((((realSpeed > speedSlideMin)) && ((angleDiff >= driftAngleMin)))) && ((angleDiff <= driftAngleMax)))) && (!(offroad)))){ if (!drifting){ lastDriftTime = getTimer(); } else { addToDriftTotal(); }; drifting = true; } else { if (offroad){ driftingTotalTime = Math.max(1, (driftingTotalTime - 40)); drifting = false; } else { drifting = false; }; }; if (Math.abs(speed) > 0.1){ if (!offroad){ pixelsTraveled = (pixelsTraveled + realSpeed); }; } else { setCurrentSound(0); speed = 0; }; _local3 = (movementAngle * DEG2RAD); _local4 = Math.cos(_local3); _local5 = Math.sin(_local3); _local6 = (_local4 * cameraDistance); _local7 = (_local5 * cameraDistance); _local8 = new Vector(vx, vy); _local9 = new Vector(_local6, _local7); _local10 = car_pos.getClone(); _local10.plus(_local8); if ((((((((_local10.x > -760)) && ((_local10.x < 760)))) && ((_local10.y > -760)))) && ((_local10.y < 760)))){ car_pos.plus(_local8); cam_pos = car_pos.getClone(); cam_pos.minus(_local9); }; cameraFacingAngle = movementAngle; if (offroadArea.hitTestPoint(car_pos.x, car_pos.y, true)){ offroad = true; } else { offroad = false; }; dispatchEvent(new Event(GameModel.MODEL_CHANGED)); } public function getAngleDifference():Number{ return (angleDiff); } private function endGame():void{ rootmc.getChildByName("modelSprite").stage.removeEventListener(Event.ENTER_FRAME, calculate); rootmc.getChildByName("modelSprite").stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownListener); rootmc.getChildByName("modelSprite").stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpListener); reset = false; } private function keyDownListener(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case KEY_LEFT: keyPressedLeft = true; break; case KEY_RIGHT: keyPressedRight = true; break; case KEY_UP: keyPressedUp = true; break; case KEY_DOWN: keyPressedDown = true; break; case KEY_SPACE: keyPressedSpace = true; break; }; } public function getCarXPos():Number{ return (car_pos.x); } private function updateGameClock(_arg1:TimerEvent):void{ gameTime--; dispatchEvent(new Event(GameModel.GAME_CLOCK_UPDATED)); if (gameTime <= 0){ endGame(); dispatchEvent(new Event(GameModel.END_GAME)); gameTimer.stop(); }; } public function startGame():void{ if (!reset){ resetGame(); reset = true; }; gameTime = gameTimeMax; gameTimer = new Timer(1000); gameTimer.addEventListener(TimerEvent.TIMER, updateGameClock); gameTimer.start(); rootmc.getChildByName("modelSprite").stage.addEventListener(Event.ENTER_FRAME, calculate); rootmc.getChildByName("modelSprite").stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownListener); rootmc.getChildByName("modelSprite").stage.addEventListener(KeyboardEvent.KEY_UP, keyUpListener); dispatchEvent(new Event(GameModel.START_GAME)); } public function getIsTurning():Boolean{ return (isTurning); } public function getCurrentSound():uint{ return (currentSound); } private function adjust(_arg1:Number, _arg2:Number):Number{ var _local3:Number; _local3 = 0; if (_arg1 < 2){ _local3 = 0; } else { if (_arg1 <= _arg2){ _local3 = (_arg1 / _arg2); } else { _local3 = 1; }; }; return (_local3); } public function getYPos():Number{ return (cam_pos.y); } public function getCarFacingAngle():Number{ return (carFacingAngle); } private function setCurrentSound(_arg1:uint):void{ if (currentSound != _arg1){ currentSound = _arg1; dispatchEvent(new Event(GameModel.SOUND_CHANGED)); }; } public function getGameClock():Number{ return (gameTime); } public function getTraction():Number{ return (traction); } public function getMovementAngle():Number{ return (movementAngle); } private function sign(_arg1:Number):Number{ if (_arg1 < 0){ return (-1); }; if (_arg1 > 0){ return (1); }; return (0); } public function getFinalScore():Number{ return ((int(((getTotalKmTraveled() * getDriftBonus()) * 100)) / 100)); } public function fixAngle(_arg1:Number):Number{ _arg1 = (_arg1 % 360); return (((_arg1)<0) ? (_arg1 + 360) : _arg1); } public function getIsOffroad():Boolean{ return (offroad); } public function getCarYPos():Number{ return (car_pos.y); } public function resetGame():void{ drifting = false; traction = tractionMin; speed = 0; realSpeed = 0; vx = 0; vy = 0; dw = 0; isTurning = false; turningDirection = 0; angle = 0; carFacingAngle = 0; cameraFacingAngle = 0; movementAngle = 0; angleDiff = 0; dir = null; keyPressedRight = false; keyPressedLeft = false; keyPressedUp = false; keyPressedDown = false; keyPressedSpace = false; car_pos = new Vector(0, 0); cam_pos = car_pos.getClone(); pixelsTraveled = 0; kmTraveled = 0; lastDriftTime = 0; driftingTotalTime = 1; dispatchEvent(new Event(GameModel.PREP_GAME)); } public function getTotalKmTraveled():Number{ kmTraveled = (int((((pixelsTraveled / 85) * 4.65) * 100)) / 100); return (kmTraveled); } public function getDriftBonus():Number{ return (Math.max(1, (int(((driftingTotalTime / 1000) * 100)) / 100))); } public function getIsDrifting():Boolean{ return (drifting); } public function getAcceleration():Number{ return (speed); } } }//package com.mercedesamg.mvc
Section 68
//GameOverView (com.mercedesamg.mvc.GameOverView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; import flash.text.*; public class GameOverView { private var distance_txt:TextField; private var model:GameModel; private var total_txt:TextField; private var bonus_txt:TextField; private var rootmc:MovieClip; private function showGameOver(_arg1:Event):void{ var _local2:Number; var _local3:Number; var _local4:Number; rootmc.visible = true; rootmc.gotoAndPlay("_show"); _local2 = _arg1.target.getTotalKmTraveled(); _local3 = _arg1.target.getDriftBonus(); _local4 = _arg1.target.getFinalScore(); distance_txt.text = _local2.toString(); bonus_txt.text = _local3.toString(); total_txt.text = _local4.toString(); } public function init(_arg1:GameModel, _arg2:MovieClip):void{ this.model = _arg1; this.rootmc = _arg2; rootmc.master = this; distance_txt = rootmc.scoring_fields_mc.distance_txt; bonus_txt = rootmc.scoring_fields_mc.bonus_txt; total_txt = rootmc.scoring_fields_mc.total_txt; _arg1.addEventListener(GameModel.END_GAME, showGameOver); } } }//package com.mercedesamg.mvc
Section 69
//MiniMapView (com.mercedesamg.mvc.MiniMapView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; import flash.geom.*; public class MiniMapView { private var track_area:MovieClip; private var model:GameModel; private var offroad:Boolean;// = false private var rootmc:MovieClip; private var offroad_area:MovieClip; private var car_dot:MovieClip; public function MiniMapView(){ offroad = false; super(); } private function render(_arg1:Event):void{ var _local2:Point; _local2 = new Point(_arg1.target.getXPos(), _arg1.target.getYPos()); car_dot.x = _local2.x; car_dot.y = _local2.y; } private function reset(_arg1:Event):void{ car_dot.x = (car_dot.y = 0); } public function init(_arg1:GameModel, _arg2:MovieClip):void{ this.model = _arg1; this.rootmc = _arg2; this.track_area = _arg2.track_map_mc; this.car_dot = _arg2.car_pos_mc; _arg1.addEventListener(GameModel.MODEL_CHANGED, render); _arg1.addEventListener(GameModel.PREP_GAME, reset); } } }//package com.mercedesamg.mvc
Section 70
//SoundView (com.mercedesamg.mvc.SoundView) package com.mercedesamg.mvc { import flash.events.*; import flash.media.*; public class SoundView { private var offroadSound:Sound; private var accelLoopSound:Sound; private var currentListener:Function;// = null private var accelSound:Sound; private var idleSoundTransform:SoundTransform; private var idleSound:Sound; private var decelSound:Sound; private var model:GameModel; private var decelGurgleSound:Sound; private var basicSoundTransform:SoundTransform; private var driftSound:Sound; private var soundChannel:SoundChannel; public function SoundView(){ basicSoundTransform = new SoundTransform(); currentListener = null; super(); } public function init(_arg1:GameModel):void{ this.model = _arg1; basicSoundTransform.volume = 0.6; soundChannel = new SoundChannel(); idleSound = new IdleSound(); idleSoundTransform = new SoundTransform(); idleSoundTransform.volume = 0.4; decelGurgleSound = new DecelerateGurgleSound(); decelSound = new DeceleratingSound(); accelSound = new AcceleratingSound(); accelLoopSound = new AccelerationLoopSound(); _arg1.addEventListener(GameModel.SOUND_CHANGED, changeSound); _arg1.addEventListener(GameModel.START_GAME, startGame); _arg1.addEventListener(GameModel.END_GAME, stopSounds); } private function playAccelerationLoopSound(_arg1:Event):void{ soundChannel.removeEventListener(Event.SOUND_COMPLETE, currentListener); soundChannel = accelLoopSound.play(0, 500); soundChannel.soundTransform = basicSoundTransform; } private function playDecelerationSound(_arg1:Event):void{ soundChannel.removeEventListener(Event.SOUND_COMPLETE, currentListener); soundChannel = decelSound.play(0, 0); soundChannel.soundTransform = basicSoundTransform; currentListener = playIdleSound; soundChannel.addEventListener(Event.SOUND_COMPLETE, currentListener); } private function playIdleSound(_arg1:Event):void{ soundChannel.removeEventListener(Event.SOUND_COMPLETE, currentListener); soundChannel.soundTransform = idleSoundTransform; soundChannel = idleSound.play(0, 900); } private function startMainMusic(_arg1:TimerEvent):void{ } private function stopSounds(_arg1:Event):void{ if (currentListener != null){ soundChannel.removeEventListener(Event.SOUND_COMPLETE, currentListener); }; soundChannel.stop(); } private function startGame(_arg1:Event):void{ currentListener = null; } private function changeSound(_arg1:Event):void{ var _local2:uint; _local2 = _arg1.target.getCurrentSound(); soundChannel.stop(); soundChannel.soundTransform = basicSoundTransform; if (currentListener != null){ soundChannel.removeEventListener(Event.SOUND_COMPLETE, currentListener); }; switch (_local2){ case 0: soundChannel = idleSound.play(0, 900); soundChannel.soundTransform = idleSoundTransform; currentListener = null; break; case 1: if (model.getAcceleration() > 4){ currentListener = null; soundChannel = accelLoopSound.play(0, 900); } else { soundChannel = accelSound.play(0, 0); currentListener = playAccelerationLoopSound; soundChannel.addEventListener(Event.SOUND_COMPLETE, currentListener); }; break; case 2: if (model.getAcceleration() > 5){ soundChannel = decelGurgleSound.play(0, 0); currentListener = playDecelerationSound; soundChannel.addEventListener(Event.SOUND_COMPLETE, currentListener); } else { currentListener = playIdleSound; soundChannel = decelSound.play(0, 0); soundChannel.addEventListener(Event.SOUND_COMPLETE, currentListener); }; break; }; } } }//package com.mercedesamg.mvc
Section 71
//StatusIconsView (com.mercedesamg.mvc.StatusIconsView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; public class StatusIconsView { private var rootmc:MovieClip; private var model:GameModel; private function render(_arg1:Event):void{ var _local2:Number; var _local3:uint; _local2 = _arg1.target.getIsOffroad(); _local3 = _arg1.target.getIsDrifting(); if (_local2){ rootmc.gotoAndStop("offroad"); } else { if (_local3){ rootmc.gotoAndStop("perfect_drift"); } else { rootmc.gotoAndStop(1); }; }; } private function reset(_arg1:Event):void{ rootmc.gotoAndStop(1); } public function init(_arg1:GameModel, _arg2:MovieClip):void{ this.model = _arg1; this.rootmc = _arg2; _arg1.addEventListener(GameModel.PREP_GAME, reset); _arg1.addEventListener(GameModel.MODEL_CHANGED, render); } } }//package com.mercedesamg.mvc
Section 72
//SubmitScoreView (com.mercedesamg.mvc.SubmitScoreView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; import com.mercedesamg.utils.*; import com.mercedesamg.serverComm.*; import flash.text.*; import flash.utils.*; public class SubmitScoreView { private var showTimer:Timer; private var country_txt:TextField; private var country_up_btn:MovieClip; private var country_down_btn:MovieClip; private var model:GameModel; private var submit_btn:MovieClip; private var rootmc:MovieClip; private var name_txt:TextField; private function showView(_arg1:TimerEvent):void{ rootmc.visible = true; rootmc.gotoAndPlay("_show"); showTimer.removeEventListener(TimerEvent.TIMER, showView); showTimer.stop(); } private function onHighScoreSubmitted(_arg1:Event):void{ submit_btn.addEventListener(MouseEvent.CLICK, submitHighScore); } public function init(_arg1:GameModel, _arg2:MovieClip):void{ this.model = _arg1; this.rootmc = _arg2; rootmc.master = this; name_txt = rootmc.name_mc.name_txt; country_txt = rootmc.country_mc.country_txt; submit_btn = rootmc.highscore_btn; submit_btn.addEventListener(MouseEvent.CLICK, submitHighScore); name_txt.addEventListener(MouseEvent.CLICK, clearNameField); _arg1.addEventListener(GameModel.END_GAME, checkForHighScores); HighScores.getInstance().addEventListener(HighScores.HIGH_SCORE_SUBMITTED, onHighScoreSubmitted); } public function submitHighScore(_arg1:MouseEvent):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:Number; var _local6:String; var _local7:uint; submit_btn.removeEventListener(MouseEvent.CLICK, submitHighScore); _local2 = new Array(); _local3 = name_txt.text; _local4 = country_txt.text; if (_local3.length == 0){ _local2.push("You must enter your name."); } else { if (_local3 == "Enter Name Here"){ _local2.push("You must enter your name."); }; }; if (_local4.length == 0){ _local2.push("Your must enter your country of residence."); }; if (_local2.length <= 0){ _local5 = model.getFinalScore(); HighScores.getInstance().submitHighScore(_local3, _local5, _local4); } else { _local6 = ""; _local7 = 0; while (_local7 < _local2.length) { _local6 = (_local6 + (_local2[_local7] + "\n")); _local7++; }; AlertModalWindow.getInstance().showMessage("Form Validation Error", _local6); submit_btn.addEventListener(MouseEvent.CLICK, submitHighScore); }; } private function clearNameField(_arg1:MouseEvent):void{ if (_arg1.target.text == "Enter Name Here"){ _arg1.target.text = ""; }; } private function checkForHighScores(_arg1:Event):void{ var _local2:Number; var _local3:Array; var _local4:Boolean; var _local5:Number; _local2 = _arg1.target.getFinalScore(); _local3 = HighScores.getInstance().getHighScores(); _local4 = false; if (_local3.length == 0){ _local4 = true; } else { _local5 = _local3[(_local3.length - 1)].score; trace(("lowest score is " + _local5)); if (_local2 > _local5){ _local4 = true; }; }; if (_local4){ trace("you have a high score!"); showTimer = new Timer(3000, 1); showTimer.addEventListener(TimerEvent.TIMER, showView); showTimer.start(); } else { trace("you don't have a high score"); }; } } }//package com.mercedesamg.mvc
Section 73
//TrackZMappingView (com.mercedesamg.mvc.TrackZMappingView) package com.mercedesamg.mvc { import flash.events.*; import flash.display.*; public class TrackZMappingView { private var groundScale:Number;// = 3 private var numStrips:Number;// = 0 private var model:GameModel; private var totalHeight:Number;// = 260 private var topH:Number;// = 1 private var rootmc:MovieClip; private var cont:MovieClip; private var strips:Array; private var bottomH:Number;// = 8 public function TrackZMappingView(){ topH = 1; bottomH = 8; groundScale = 3; totalHeight = 260; numStrips = 0; super(); } private function render(_arg1:Event):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:uint; var _local7:*; var _local8:*; var _local9:*; var _local10:*; var _local11:*; _local2 = _arg1.target.getXPos(); _local3 = _arg1.target.getYPos(); _local4 = _arg1.target.getAngleDifference(); _local5 = _arg1.target.getCameraFacingAngle(); _local6 = _arg1.target.getTurningDirection(); if (_local6){ _local5 = (_local5 - _local4); } else { _local5 = (_local5 + _local4); }; _local7 = 0; while (_local7 < numStrips) { _local8 = strips[_local7]; _local9 = _local8.getChildByName("m"); _local10 = strips[(_local7 + 1)]; _local11 = _local10.getChildByName("m"); _local8.rotation = (_local10.rotation = _local5); _local9.y = (_local11.y = _local2); _local9.x = (_local11.x = _local3); _local7 = (_local7 + 2); }; } public function init(_arg1:GameModel, _arg2:MovieClip):void{ var _local3:Number; var _local4:Number; var _local5:Sprite; var _local6:*; var _local7:box; var _local8:Number; var _local9:Number; this.model = _arg1; this.cont = _arg2; cont.x = 385; cont.y = 210; cont.cacheAsBitmap = true; _local3 = ((topH + bottomH) / 2); _local4 = 0; strips = new Array(); _local6 = 0; while (_local6 < totalHeight) { if (_local4 < (totalHeight * 0.06)){ _local5 = new track_lo(); } else { _local5 = new track_hi(); }; strips.push(_local5); _local5.y = 200; _local7 = new box(); _local8 = Math.pow((_local6 / (totalHeight / _local3)), 1.5); _local9 = Math.round((topH + ((bottomH - topH) * _local8))); _local7.height = (_local9 + 2); _local7.width = 750; _local7.x = (_local7.x - 375); _local4 = (_local4 + _local9); _local7.y = _local4; _local5.mask = _local7; _local5.rotation = 0; _local5.getChildByName("m").y = 0; _local5.getChildByName("m").x = 0; _local5.scaleX = (_local5.scaleY = ((((_local4 / totalHeight) * totalHeight) * groundScale) / 110)); cont.addChild(_local5); cont.addChild(_local7); if (((((_local4 + (_local9 * 2)) > totalHeight)) && (((_local6 % 2) == 0)))){ break; }; _local6++; }; numStrips = _local6; _arg1.addEventListener(GameModel.MODEL_CHANGED, render); _arg1.addEventListener(GameModel.PREP_GAME, resetTrack); } public function resetTrack(_arg1:Event):void{ var _local2:*; var _local3:*; var _local4:*; var _local5:*; var _local6:*; _local2 = 0; while (_local2 < numStrips) { _local3 = strips[_local2]; _local4 = _local3.getChildByName("m"); _local5 = strips[(_local2 + 1)]; _local6 = _local5.getChildByName("m"); _local3.rotation = (_local5.rotation = 0); _local4.y = (_local6.y = -10); _local4.x = (_local6.x = 0); _local2 = (_local2 + 2); }; } } }//package com.mercedesamg.mvc
Section 74
//HighScores (com.mercedesamg.serverComm.HighScores) package com.mercedesamg.serverComm { import flash.events.*; import flash.display.*; import flash.text.*; import flash.net.*; import flash.xml.*; public class HighScores extends EventDispatcher { public var scoreSubmitted:Boolean; private var loader:URLLoader; private var highScores:Array; private var view:DisplayObject; public static const HIGH_SCORE_SUBMITTED:String = "high_score_subitted"; public static const HIGH_SCORES_RECEIVED:String = "high_scores_received"; private static var _instance:HighScores; public function HighScores(_arg1:SingletonEnforcer){ loader = new URLLoader(); highScores = new Array(); scoreSubmitted = false; } private function highScoreSubmitted(_arg1:Event):void{ loader.removeEventListener(Event.COMPLETE, highScoreSubmitted); dispatchEvent(new Event(HighScores.HIGH_SCORE_SUBMITTED)); } private function onHighScoresLoaded(_arg1:Event):void{ var s:String; var s2:String; var d:XML; var e = _arg1; loader.removeEventListener(Event.COMPLETE, onHighScoresLoaded); try { s = e.target.data; s2 = (("<?xml version='1.0' encoding='UTF-8'?><high_scores>" + e.target.data) + "</high_scores>"); d = new XML(s2); parseHighScores(d); } catch(er:TypeError) { trace(((("data could not to converted to XML format:\n" + er) + "\n") + e.target.data)); }; } public function submitHighScore(_arg1:String, _arg2:Number, _arg3:String):void{ var _local4:URLVariables; var _local5:URLRequest; trace(((((("HighScores.submitHighScore() name: " + _arg1) + " score: ") + _arg2) + " country: ") + _arg3)); _local4 = new URLVariables(); _local4.action = "i"; _local4.racename = _arg1; _local4.score = _arg2; _local4.country = _arg3; _local5 = new URLRequest("http://www.mercedes-amg.com/drift/scores.php"); _local5.data = _local4; _local5.method = URLRequestMethod.POST; scoreSubmitted = true; loader.addEventListener(Event.COMPLETE, highScoreSubmitted); loader.load(_local5); } public function getHighScores():Array{ return (highScores); } public function registerView(_arg1:DisplayObject):void{ this.view = _arg1; } public function loadHighScores():void{ loader.addEventListener(Event.COMPLETE, onHighScoresLoaded); loader.dataFormat = URLLoaderDataFormat.TEXT; loader.load(new URLRequest("http://www.mercedes-amg.com/drift/scores.php")); } private function parseHighScores(_arg1:XML):void{ var _local2:XMLList; var _local3:int; var _local4:int; highScores = new Array(); _local2 = _arg1.user; _local3 = _local2.length(); _local4 = 0; while (_local4 < _local3) { highScores.push({racename:_local2[_local4].racename, score:_local2[_local4].score, country:_local2[_local4].country}); _local4++; }; dispatchEvent(new Event(HighScores.HIGH_SCORES_RECEIVED)); trace((("high scores parsed!\nThere are " + highScores.length) + " number of scores")); } public static function getInstance():HighScores{ if (HighScores._instance == null){ HighScores._instance = new HighScores(new SingletonEnforcer()); }; return (HighScores._instance); } } }//package com.mercedesamg.serverComm class SingletonEnforcer { private function SingletonEnforcer(){ } }
Section 75
//SendToFriend (com.mercedesamg.serverComm.SendToFriend) package com.mercedesamg.serverComm { import flash.events.*; import flash.display.*; import com.mercedesamg.utils.*; import flash.text.*; import flash.net.*; public class SendToFriend extends EventDispatcher { private var loader:URLLoader; public static const TAF_SERVER_ERROR:String = "taf_server_error"; public static const TAF_SUBMITTED:String = "taf_submitted"; public static const TAF_ERROR:String = "taf_error"; private static var _instance:SendToFriend; public function SendToFriend(_arg1:SingletonEnforcer){ loader = new URLLoader(); } private function onTAFComplete(_arg1:Event):void{ loader.removeEventListener(Event.COMPLETE, onTAFComplete); dispatchEvent(new Event(SendToFriend.TAF_SUBMITTED)); AlertModalWindow.getInstance().showMessage("Your Email Has Been Sent", "Thank you for spreading the word about our latest Drift Revolution online game!"); } public function submitToServer(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String):void{ var _local6:URLVariables; var _local7:URLRequest; trace(((((((((("submiting TAF to server. from: " + _arg2) + " fromE: ") + _arg3) + " to: ") + _arg4) + " toE:") + _arg5) + " mesg: ") + _arg1)); _local6 = new URLVariables(); _local6.subject = (_arg2 + " has invited you to a Winter Drift!"); _local6.messageBody = _arg1; _local6.senderName = _arg2; _local6.senderEmail = _arg3; _local6.friendName1 = _arg4; _local6.friendEmail1 = _arg5; _local7 = new URLRequest("http://www.mercedes-amg.com/drift/sendtoafriend.php"); _local7.data = _local6; _local7.method = URLRequestMethod.POST; loader.addEventListener(Event.COMPLETE, onTAFComplete); loader.load(_local7); } public function onSubmit(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String):void{ var _local6:Array; var _local7:String; var _local8:uint; _local6 = new Array(); if (_arg2.length == 0){ _local6.push("You must enter your name."); }; if (_arg3.length == 0){ _local6.push("Your must enter your email address."); } else { if (!TextFieldValidators.validateEmail(_arg3)){ _local6.push("Your email address is invalid."); }; }; if (_arg4.length == 0){ _local6.push("You must enter your friend's name."); }; if (_arg5.length == 0){ _local6.push("Your must enter your friend's email address."); } else { if (!TextFieldValidators.validateEmail(_arg5)){ _local6.push("Your friend's email address is invalid."); }; }; if (_local6.length == 0){ submitToServer(_arg1, _arg2, _arg3, _arg4, _arg5); } else { dispatchEvent(new Event(SendToFriend.TAF_ERROR)); _local7 = ""; _local8 = 0; while (_local8 < _local6.length) { _local7 = (_local7 + (_local6[_local8] + "\n")); _local8++; }; AlertModalWindow.getInstance().showMessage("Form Validation Error", _local7); }; } public static function getInstance():SendToFriend{ if (SendToFriend._instance == null){ SendToFriend._instance = new SendToFriend(new SingletonEnforcer()); }; return (SendToFriend._instance); } } }//package com.mercedesamg.serverComm class SingletonEnforcer { private function SingletonEnforcer(){ } }
Section 76
//AlertModalWindow (com.mercedesamg.utils.AlertModalWindow) package com.mercedesamg.utils { import com.mercedesamg.gs.*; import flash.events.*; import flash.display.*; import flash.text.*; public class AlertModalWindow extends EventDispatcher { private var showing:Boolean; private var titletxt:TextField; private var bgmc:MovieClip; private var closebtn:MovieClip; private var descmc:MovieClip; private var titlemc:MovieClip; private var rootmc:MovieClip; private var desctxt:TextField; private static const TEXT_WIDTH:Number = 430; private static var _instance:AlertModalWindow; public function AlertModalWindow(_arg1:SingletonEnforcer){ } private function closeBtnClicked(_arg1:MouseEvent):void{ hideMessage(); } public function init(_arg1:MovieClip):void{ _arg1.visible = false; rootmc = _arg1; titlemc = rootmc.title_mc; titletxt = titlemc.title_txt; descmc = rootmc.description_mc; desctxt = descmc.description_txt; closebtn = rootmc.close_btn; bgmc = rootmc.bg_mc; titletxt.autoSize = (desctxt.autoSize = TextFieldAutoSize.LEFT); titletxt.width = (desctxt.width = AlertModalWindow.TEXT_WIDTH); titletxt.multiline = false; desctxt.multiline = true; desctxt.wordWrap = true; showing = false; closebtn.addEventListener(MouseEvent.ROLL_OVER, closeBtnRollOver); closebtn.addEventListener(MouseEvent.ROLL_OUT, closeBtnRollOut); closebtn.buttonMode = true; } public function showMessage(_arg1:String, _arg2:String, _arg3:Boolean=true):void{ titletxt.text = _arg1; desctxt.text = _arg2; closebtn.y = ((descmc.y + descmc.height) + 15); if (!this.showing){ rootmc.alpha = 0; rootmc.visible = true; TweenLite.to(rootmc, 0.5, {alpha:1}); this.showing = true; bgmc.addEventListener(MouseEvent.CLICK, modalEnforcer); if (_arg3){ closebtn.addEventListener(MouseEvent.CLICK, closeBtnClicked); closebtn.visible = true; } else { closebtn.visible = false; }; }; } private function onHideTweenCompleted():void{ rootmc.visible = false; } public function hideMessage():void{ if (this.showing){ TweenLite.to(rootmc, 0.2, {alpha:0, onComplete:onHideTweenCompleted}); this.showing = false; bgmc.removeEventListener(MouseEvent.CLICK, modalEnforcer); closebtn.removeEventListener(MouseEvent.CLICK, closeBtnClicked); }; } private function closeBtnRollOver(_arg1:MouseEvent):void{ closebtn.gotoAndPlay("_rollover"); } private function modalEnforcer(_arg1:MouseEvent):void{ } private function closeBtnRollOut(_arg1:MouseEvent):void{ closebtn.gotoAndStop(1); } public static function getInstance():AlertModalWindow{ if (AlertModalWindow._instance == null){ AlertModalWindow._instance = new AlertModalWindow(new SingletonEnforcer()); }; return (AlertModalWindow._instance); } } }//package com.mercedesamg.utils class SingletonEnforcer { private function SingletonEnforcer(){ } }
Section 77
//MathAddons (com.mercedesamg.utils.MathAddons) package com.mercedesamg.utils { public class MathAddons { static const DEG2RAD = 0.0174532925199433; static const RAD2DEG = 57.2957795130823; public static function atan2D(_arg1:Number, _arg2:Number):Number{ return ((Math.atan2(_arg1, _arg2) * RAD2DEG)); } public static function tanD(_arg1:Number):Number{ return (Math.tan((_arg1 * DEG2RAD))); } public static function fixAngle(_arg1:Number):Number{ _arg1 = (_arg1 % 360); return (((_arg1)<0) ? (_arg1 + 360) : _arg1); } public static function sinD(_arg1:Number):Number{ return (Math.sin((_arg1 * DEG2RAD))); } public static function asinD(_arg1:Number):Number{ return ((Math.asin(_arg1) * RAD2DEG)); } public static function degreesToRadians(_arg1:Number):Number{ return ((_arg1 * DEG2RAD)); } public static function distanceBetweenPoints(_arg1, _arg2, _arg3, _arg4):Number{ var _local5:*; var _local6:*; _local5 = (_arg3 - _arg1); _local6 = (_arg4 - _arg2); return (Math.sqrt(((_local5 * _local5) + (_local6 * _local6)))); } public static function radiansToDegrees(_arg1:Number):Number{ return ((_arg1 * RAD2DEG)); } public static function cosD(_arg1:Number):Number{ return (Math.cos((_arg1 * DEG2RAD))); } public static function acosD(_arg1:Number):Number{ return ((Math.acos(_arg1) * RAD2DEG)); } } }//package com.mercedesamg.utils
Section 78
//MiscDataProviders (com.mercedesamg.utils.MiscDataProviders) package com.mercedesamg.utils { public class MiscDataProviders { public static function getCountriesList():Array{ var _local1:Array; _local1 = new Array(); _local1.push({uuid:230, name:"United Kingdom"}); _local1.push({uuid:231, name:"United States"}); _local1.push({uuid:80, name:"Germany"}); _local1.push({uuid:1, name:"Abkhazia"}); _local1.push({uuid:2, name:"Afghanistan"}); _local1.push({uuid:3, name:"Akrotiri and Dhekelia"}); _local1.push({uuid:4, name:"Åland"}); _local1.push({uuid:5, name:"Albania"}); _local1.push({uuid:6, name:"Algeria"}); _local1.push({uuid:7, name:"American Samoa"}); _local1.push({uuid:8, name:"Andorra"}); _local1.push({uuid:9, name:"Angola"}); _local1.push({uuid:10, name:"Anguilla"}); _local1.push({uuid:11, name:"Antigua and Barbuda"}); _local1.push({uuid:12, name:"Argentina"}); _local1.push({uuid:13, name:"Armenia"}); _local1.push({uuid:14, name:"Aruba"}); _local1.push({uuid:15, name:"Ascension Island"}); _local1.push({uuid:16, name:"Australia"}); _local1.push({uuid:17, name:"Austria"}); _local1.push({uuid:18, name:"Azerbaijan"}); _local1.push({uuid:19, name:"Bahamas, The"}); _local1.push({uuid:20, name:"Bahrain"}); _local1.push({uuid:21, name:"Bangladesh"}); _local1.push({uuid:22, name:"Barbados"}); _local1.push({uuid:23, name:"Belarus"}); _local1.push({uuid:24, name:"Belguim"}); _local1.push({uuid:25, name:"Belize"}); _local1.push({uuid:26, name:"Benin"}); _local1.push({uuid:27, name:"Bermuda"}); _local1.push({uuid:28, name:"Bhutan"}); _local1.push({uuid:29, name:"Bolivia"}); _local1.push({uuid:30, name:"Bosnia and Herzegovina"}); _local1.push({uuid:31, name:"Botswana"}); _local1.push({uuid:32, name:"Brazil"}); _local1.push({uuid:33, name:"Brunei"}); _local1.push({uuid:34, name:"Bulgeria"}); _local1.push({uuid:35, name:"Burkina Faso"}); _local1.push({uuid:36, name:"Burundi"}); _local1.push({uuid:37, name:"Cambodia"}); _local1.push({uuid:38, name:"Cameroon"}); _local1.push({uuid:39, name:"Canada"}); _local1.push({uuid:40, name:"Cape Verde"}); _local1.push({uuid:41, name:"Cayman Islands"}); _local1.push({uuid:42, name:"Central African Republic"}); _local1.push({uuid:43, name:"Chad"}); _local1.push({uuid:44, name:"Chile"}); _local1.push({uuid:45, name:"China, People's Republic of"}); _local1.push({uuid:46, name:"China, Republic of"}); _local1.push({uuid:47, name:"Christman Island"}); _local1.push({uuid:48, name:"Cocos (Keeling) Islands"}); _local1.push({uuid:49, name:"Colombia"}); _local1.push({uuid:50, name:"Comoros"}); _local1.push({uuid:51, name:"Congo, Democratic Republic of"}); _local1.push({uuid:52, name:"Congo, Republic of"}); _local1.push({uuid:53, name:"Cook Islands"}); _local1.push({uuid:54, name:"Costa Rica"}); _local1.push({uuid:55, name:"Côte d'Ivoire"}); _local1.push({uuid:56, name:"Croatia"}); _local1.push({uuid:57, name:"Cuba"}); _local1.push({uuid:58, name:"Cyprus"}); _local1.push({uuid:59, name:"Czech Republic"}); _local1.push({uuid:60, name:"Denmark"}); _local1.push({uuid:61, name:"Djibouti"}); _local1.push({uuid:62, name:"Dominica"}); _local1.push({uuid:63, name:"Dominican Republic"}); _local1.push({uuid:64, name:"Ecuador"}); _local1.push({uuid:65, name:"Egypt"}); _local1.push({uuid:66, name:"El Salvador"}); _local1.push({uuid:67, name:"Equatorial Guinea"}); _local1.push({uuid:68, name:"Eritrea"}); _local1.push({uuid:69, name:"Estonia"}); _local1.push({uuid:70, name:"Ethiopia"}); _local1.push({uuid:71, name:"Falkland Islands"}); _local1.push({uuid:72, name:"Faroe Islands"}); _local1.push({uuid:73, name:"Fiji"}); _local1.push({uuid:74, name:"Finland"}); _local1.push({uuid:75, name:"France"}); _local1.push({uuid:76, name:"French Polynesia"}); _local1.push({uuid:77, name:"Gabon"}); _local1.push({uuid:78, name:"Gambia, The"}); _local1.push({uuid:79, name:"Georgia"}); _local1.push({uuid:81, name:"Ghana"}); _local1.push({uuid:82, name:"Gibraltar"}); _local1.push({uuid:83, name:"Greece"}); _local1.push({uuid:84, name:"Greenland"}); _local1.push({uuid:85, name:"Grenada"}); _local1.push({uuid:86, name:"Guam"}); _local1.push({uuid:87, name:"Guatemala"}); _local1.push({uuid:88, name:"Guernsey"}); _local1.push({uuid:89, name:"Guinea"}); _local1.push({uuid:90, name:"Guinea-Bissau"}); _local1.push({uuid:91, name:"Guyana"}); _local1.push({uuid:92, name:"Haiti"}); _local1.push({uuid:93, name:"Honduras"}); _local1.push({uuid:94, name:"Hong Kong"}); _local1.push({uuid:95, name:"Hungary"}); _local1.push({uuid:96, name:"Iceland"}); _local1.push({uuid:97, name:"India"}); _local1.push({uuid:98, name:"Indonesia"}); _local1.push({uuid:99, name:"Iran"}); _local1.push({uuid:100, name:"Iraq"}); _local1.push({uuid:101, name:"Ireland"}); _local1.push({uuid:102, name:"Isle of Man"}); _local1.push({uuid:103, name:"Isreal"}); _local1.push({uuid:104, name:"Italy"}); _local1.push({uuid:105, name:"Jamaica"}); _local1.push({uuid:106, name:"Japan"}); _local1.push({uuid:107, name:"Jersey"}); _local1.push({uuid:108, name:"Jordan"}); _local1.push({uuid:109, name:"Kazakhstan"}); _local1.push({uuid:110, name:"Kenya"}); _local1.push({uuid:111, name:"Kiribati"}); _local1.push({uuid:112, name:"Korea, Democratic People's Republic of"}); _local1.push({uuid:113, name:"Korea, Republic of"}); _local1.push({uuid:114, name:"Kosovo"}); _local1.push({uuid:115, name:"Kuwait"}); _local1.push({uuid:116, name:"Kyrgyzstan"}); _local1.push({uuid:117, name:"Laos"}); _local1.push({uuid:118, name:"Latvia"}); _local1.push({uuid:119, name:"Lebanon"}); _local1.push({uuid:120, name:"Lesotho"}); _local1.push({uuid:121, name:"Liberia"}); _local1.push({uuid:122, name:"Libya"}); _local1.push({uuid:123, name:"Liechtenstein"}); _local1.push({uuid:124, name:"Lithuania"}); _local1.push({uuid:125, name:"Luxembourg"}); _local1.push({uuid:126, name:"Macao"}); _local1.push({uuid:127, name:"Macedonia, Republic of"}); _local1.push({uuid:128, name:"Madagascar"}); _local1.push({uuid:129, name:"Malawi"}); _local1.push({uuid:130, name:"Malaysia"}); _local1.push({uuid:131, name:"Maldives"}); _local1.push({uuid:132, name:"Mali"}); _local1.push({uuid:133, name:"Malta"}); _local1.push({uuid:134, name:"Marshall Islands"}); _local1.push({uuid:135, name:"Mauritania"}); _local1.push({uuid:136, name:"Mauritius"}); _local1.push({uuid:137, name:"Mayotte"}); _local1.push({uuid:138, name:"Mexico"}); _local1.push({uuid:139, name:"Micronesia"}); _local1.push({uuid:140, name:"Moldova"}); _local1.push({uuid:141, name:"Monaco"}); _local1.push({uuid:142, name:"Mongolia"}); _local1.push({uuid:143, name:"Montenegro"}); _local1.push({uuid:144, name:"Montserrat"}); _local1.push({uuid:145, name:"Morocco"}); _local1.push({uuid:146, name:"Mozambique"}); _local1.push({uuid:147, name:"Myanmar"}); _local1.push({uuid:148, name:"Nagorno-Karabakh"}); _local1.push({uuid:149, name:"Namibia"}); _local1.push({uuid:150, name:"Nauru"}); _local1.push({uuid:151, name:"Nepal"}); _local1.push({uuid:152, name:"Netherlands"}); _local1.push({uuid:153, name:"Netherlands Antilles"}); _local1.push({uuid:154, name:"New Caledonia"}); _local1.push({uuid:155, name:"New Zealand"}); _local1.push({uuid:156, name:"Nicaragua"}); _local1.push({uuid:157, name:"Niger"}); _local1.push({uuid:158, name:"Nigeria"}); _local1.push({uuid:159, name:"Niue"}); _local1.push({uuid:160, name:"Norfolk Island"}); _local1.push({uuid:161, name:"Northern Cyprus"}); _local1.push({uuid:162, name:"Northern Mariana Islands"}); _local1.push({uuid:163, name:"Norway"}); _local1.push({uuid:164, name:"Oman"}); _local1.push({uuid:165, name:"Pakistan"}); _local1.push({uuid:166, name:"Palau"}); _local1.push({uuid:167, name:"Palestine - State of Palestine"}); _local1.push({uuid:168, name:"Panama"}); _local1.push({uuid:169, name:"Papua New Guinea"}); _local1.push({uuid:170, name:"Paraguay"}); _local1.push({uuid:171, name:"Peru"}); _local1.push({uuid:172, name:"Phillippines"}); _local1.push({uuid:173, name:"Pitcairn Islands"}); _local1.push({uuid:174, name:"Poland"}); _local1.push({uuid:175, name:"Portugal"}); _local1.push({uuid:176, name:"Pridnestrovie"}); _local1.push({uuid:177, name:"Puerto Rico"}); _local1.push({uuid:178, name:"Qatar"}); _local1.push({uuid:179, name:"Romania"}); _local1.push({uuid:180, name:"Russia"}); _local1.push({uuid:181, name:"Rwanda"}); _local1.push({uuid:182, name:"Saint Barthelemy"}); _local1.push({uuid:183, name:"Saint Helena"}); _local1.push({uuid:184, name:"Saint Kitts and Nevis"}); _local1.push({uuid:185, name:"Saint Lucia"}); _local1.push({uuid:186, name:"Saint Martin"}); _local1.push({uuid:187, name:"Saint Pierre and Miquelon"}); _local1.push({uuid:188, name:"Saint Vincent and the Granadines"}); _local1.push({uuid:189, name:"Samoa"}); _local1.push({uuid:190, name:"San Marino"}); _local1.push({uuid:191, name:"São Tomé and Príncipe"}); _local1.push({uuid:192, name:"Saudi Arabia"}); _local1.push({uuid:193, name:"Senegal"}); _local1.push({uuid:194, name:"Seychelles"}); _local1.push({uuid:195, name:"Sierra Leone"}); _local1.push({uuid:196, name:"Singapore"}); _local1.push({uuid:197, name:"Slovakia"}); _local1.push({uuid:198, name:"Slovenia"}); _local1.push({uuid:199, name:"Solomon Islands"}); _local1.push({uuid:200, name:"Somalia"}); _local1.push({uuid:201, name:"Somaliland"}); _local1.push({uuid:202, name:"South Africa"}); _local1.push({uuid:203, name:"South Ossetia"}); _local1.push({uuid:204, name:"Spain"}); _local1.push({uuid:205, name:"Sri Lanka"}); _local1.push({uuid:206, name:"Sudan"}); _local1.push({uuid:207, name:"Suriname"}); _local1.push({uuid:208, name:"Svalbard"}); _local1.push({uuid:209, name:"Swaziland"}); _local1.push({uuid:210, name:"Sweden"}); _local1.push({uuid:211, name:"Switzerland"}); _local1.push({uuid:212, name:"Syria"}); _local1.push({uuid:213, name:"Tajikistan"}); _local1.push({uuid:214, name:"Tanzania"}); _local1.push({uuid:215, name:"Thailand"}); _local1.push({uuid:216, name:"Timor-Leste"}); _local1.push({uuid:217, name:"Togo"}); _local1.push({uuid:218, name:"Tokelau"}); _local1.push({uuid:219, name:"Tonga"}); _local1.push({uuid:220, name:"Trinidad and Tobago"}); _local1.push({uuid:221, name:"Tristan de Cunha"}); _local1.push({uuid:222, name:"Tunisia"}); _local1.push({uuid:223, name:"Turkey"}); _local1.push({uuid:224, name:"Turkmenistan"}); _local1.push({uuid:225, name:"Turks and Caicos Islands"}); _local1.push({uuid:226, name:"Tuvalu"}); _local1.push({uuid:227, name:"Uganda"}); _local1.push({uuid:228, name:"Ukraine"}); _local1.push({uuid:229, name:"United Arab Emirates"}); _local1.push({uuid:232, name:"Uruguay"}); _local1.push({uuid:233, name:"Uzbekistan"}); _local1.push({uuid:234, name:"Vanuatu"}); _local1.push({uuid:235, name:"Vatican City"}); _local1.push({uuid:236, name:"Venezuela"}); _local1.push({uuid:237, name:"Vietnam"}); _local1.push({uuid:238, name:"Virgin Islands, British"}); _local1.push({uuid:239, name:"Virgin Islands, United States"}); _local1.push({uuid:240, name:"Wallis and Futuna"}); _local1.push({uuid:241, name:"Western Sahara - Sahrawi Arab Democratic Republic"}); _local1.push({uuid:242, name:"Yemen"}); _local1.push({uuid:243, name:"Zambia"}); _local1.push({uuid:244, name:"Zimbabwe"}); return (_local1); } public static function getUSStates():Array{ var _local1:Array; _local1 = new Array(); _local1.push({data:null, label:""}); _local1.push({data:"AL", label:"AL"}); _local1.push({data:"AK", label:"AK"}); _local1.push({data:"AZ", label:"AZ"}); _local1.push({data:"AR", label:"AR"}); _local1.push({data:"CA", label:"CA"}); _local1.push({data:"CO", label:"CO"}); _local1.push({data:"CT", label:"CT"}); _local1.push({data:"DE", label:"DE"}); _local1.push({data:"FL", label:"FL"}); _local1.push({data:"GA", label:"GA"}); _local1.push({data:"HI", label:"HI"}); _local1.push({data:"ID", label:"ID"}); _local1.push({data:"IL", label:"IL"}); _local1.push({data:"IN", label:"IN"}); _local1.push({data:"IA", label:"IA"}); _local1.push({data:"KS", label:"KS"}); _local1.push({data:"KY", label:"KY"}); _local1.push({data:"LA", label:"LA"}); _local1.push({data:"ME", label:"ME"}); _local1.push({data:"MD", label:"MD"}); _local1.push({data:"MA", label:"MA"}); _local1.push({data:"MI", label:"MI"}); _local1.push({data:"MN", label:"MN"}); _local1.push({data:"MS", label:"MS"}); _local1.push({data:"MO", label:"MO"}); _local1.push({data:"MT", label:"MT"}); _local1.push({data:"NE", label:"NE"}); _local1.push({data:"NV", label:"NV"}); _local1.push({data:"NH", label:"NH"}); _local1.push({data:"NJ", label:"NJ"}); _local1.push({data:"NM", label:"NM"}); _local1.push({data:"NY", label:"NY"}); _local1.push({data:"NC", label:"NC"}); _local1.push({data:"ND", label:"ND"}); _local1.push({data:"OH", label:"OH"}); _local1.push({data:"OK", label:"OK"}); _local1.push({data:"OR", label:"OR"}); _local1.push({data:"PA", label:"PA"}); _local1.push({data:"RI", label:"RI"}); _local1.push({data:"SC", label:"SC"}); _local1.push({data:"SD", label:"SD"}); _local1.push({data:"TN", label:"TN"}); _local1.push({data:"TX", label:"TX"}); _local1.push({data:"UT", label:"UT"}); _local1.push({data:"VT", label:"VT"}); _local1.push({data:"VA", label:"VA"}); _local1.push({data:"WA", label:"WA"}); _local1.push({data:"DC", label:"DC"}); _local1.push({data:"WV", label:"WV"}); _local1.push({data:"WI", label:"WI"}); _local1.push({data:"WY", label:"WI"}); return (_local1); } } }//package com.mercedesamg.utils
Section 79
//NavButton (com.mercedesamg.utils.NavButton) package com.mercedesamg.utils { import flash.events.*; import flash.display.*; public class NavButton extends EventDispatcher { private var instance:MovieClip; private var btn_name:String; public static const NAV_BUTTON_CLICKED:String = "nav_button_clicked"; public function NavButton(_arg1:MovieClip, _arg2:String){ instance = _arg1; btn_name = _arg2; instance.buttonMode = true; instance.addEventListener(MouseEvent.ROLL_OVER, rollOverListener); instance.addEventListener(MouseEvent.ROLL_OUT, rollOutListener); instance.addEventListener(MouseEvent.CLICK, clickListener); } public function disableButton():void{ instance.removeEventListener(MouseEvent.CLICK, clickListener); instance.removeEventListener(MouseEvent.ROLL_OVER, rollOverListener); instance.removeEventListener(MouseEvent.ROLL_OUT, rollOutListener); instance.alpha = 0.25; instance.buttonMode = false; } private function clickListener(_arg1:MouseEvent):void{ dispatchEvent(new Event(NavButton.NAV_BUTTON_CLICKED)); } private function rollOutListener(_arg1:MouseEvent):void{ instance.gotoAndPlay("_rollout"); } public function enableButton():void{ instance.addEventListener(MouseEvent.CLICK, clickListener); instance.addEventListener(MouseEvent.ROLL_OVER, rollOverListener); instance.addEventListener(MouseEvent.ROLL_OUT, rollOutListener); instance.alpha = 1; instance.buttonMode = true; } public function getButtonName():String{ return (btn_name); } private function rollOverListener(_arg1:MouseEvent):void{ instance.gotoAndPlay("_rollover"); } } }//package com.mercedesamg.utils
Section 80
//TextFieldValidators (com.mercedesamg.utils.TextFieldValidators) package com.mercedesamg.utils { public class TextFieldValidators { public static function validatePhoneNumber(_arg1:String):Boolean{ var _local2:RegExp; var _local3:Object; _local2 = /^\d{3}-\d{3}-\d{4}$/; _local3 = _local2.exec(_arg1); if (_local3 == null){ return (false); }; return (true); } public static function validateEmail(_arg1:String):Boolean{ var _local2:RegExp; var _local3:Object; _local2 = /(\w|[_.\-])+@((\w|-)+\.)+\w{2,4}+/; _local3 = _local2.exec(_arg1); if (_local3 == null){ return (false); }; return (true); } } }//package com.mercedesamg.utils
Section 81
//Vector (com.mercedesamg.utils.Vector) package com.mercedesamg.utils { public class Vector { public var x:Number; public var y:Number; public function Vector(_arg1:Number, _arg2:Number){ this.x = _arg1; this.y = _arg2; } public function negate():void{ this.x = -(this.x); this.y = -(this.y); } public function rotateNew(_arg1:Number):Vector{ var _local2:Vector; _local2 = new Vector(this.x, this.y); _local2.rotate(_arg1); return (_local2); } public function dot(_arg1:Vector):Number{ return (((this.x * _arg1.x) + (this.y * _arg1.y))); } public function scale(_arg1:Number):void{ this.x = (this.x * _arg1); this.y = (this.y * _arg1); } public function reset(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } public function minusNew(_arg1:Vector):Vector{ return (new Vector((this.x = (this.x - _arg1.x)), (this.y = (this.y - _arg1.y)))); } public function setAngle(_arg1:Number):void{ var _local2:Number; _local2 = getLength(); this.x = (_local2 * MathAddons.cosD(_arg1)); this.y = (_local2 * MathAddons.sinD(_arg1)); } public function isPerpTo(_arg1:Vector):Boolean{ return ((dot(_arg1) == 0)); } public function plus(_arg1:Vector):void{ this.x = (this.x + _arg1.x); this.y = (this.y + _arg1.y); } public function rotate(_arg1:Number):void{ var ca:Number; var sa:Number; var a = _arg1; ca = MathAddons.cosD(a); sa = MathAddons.sinD(a); var _local3 = this; with (_local3) { x = ((x * ca) - (y * sa)); y = ((x * sa) + (y * ca)); }; } public function getLength():Number{ return (Math.sqrt(((this.x * this.x) + (this.y * this.y)))); } public function getAngle():Number{ return (MathAddons.atan2D(this.y, this.x)); } public function getNormal():Vector{ return (new Vector(-(this.y), this.x)); } public function plusNew(_arg1:Vector):Vector{ return (new Vector((this.x = (this.x + _arg1.x)), (this.y = (this.y + _arg1.y)))); } public function getClone():Vector{ return (new Vector(this.x, this.y)); } public function setLength(_arg1:Number):void{ var _local2:Number; _local2 = getLength(); if (_local2){ this.scale((_arg1 / _local2)); } else { this.x = _arg1; }; } public function angleBetween(_arg1:Vector):Number{ var _local2:Number; var _local3:Number; _local2 = dot(_arg1); _local3 = (_local2 / (getLength() * _arg1.getLength())); return (MathAddons.acosD(_local3)); } public function scaleNew(_arg1:Number):Vector{ return (new Vector((this.x = (this.x * _arg1)), (this.y = (this.y * _arg1)))); } public function minus(_arg1:Vector):void{ this.x = (this.x - _arg1.x); this.y = (this.y - _arg1.y); } public function negateNew():Vector{ return (new Vector(-(this.x), -(this.y))); } public function equals(_arg1:Vector):Boolean{ return ((((this.x == _arg1.x)) && ((this.y == _arg1.y)))); } } }//package com.mercedesamg.utils
Section 82
//DriftRevolution (com.mercedesamg.DriftRevolution) package com.mercedesamg { import flash.events.*; import com.mercedesamg.mvc.*; import flash.display.*; import com.mercedesamg.utils.*; import com.mercedesamg.serverComm.*; public class DriftRevolution extends Sprite { private var soundsView:SoundView; private var submitScoreView:SubmitScoreView; private var navbtns:Array; private var gameModel:GameModel; private var highScores:HighScores; private var dashView:DashboardView; private var bgView:BackgroundView; private var trackView:TrackZMappingView; private var car3dView:Car3dView; private var gameOverView:GameOverView; private var driftParticlesView:DriftParticlesView; private var viewsInitted:Boolean; private var iconsView:StatusIconsView; private var minimapView:MiniMapView; private var navmc:MovieClip; private var rootmc:MovieClip; private static var _instance:DriftRevolution; public function DriftRevolution(_arg1:SingletonEnforcer){ viewsInitted = false; } public function onStartDriftingClicked():void{ trace("main 'start drifting' button clicked"); rootmc.gotoAndStop("instructions"); } public function init(_arg1:MovieClip):void{ var _local2:Array; var _local3:uint; var _local4:uint; var _local5:AlertModalWindow; var _local6:MovieClip; var _local7:NavButton; rootmc = _arg1; navmc = rootmc.navbuttons_mc; _local2 = ["start", "scores", "friend", "about"]; navbtns = new Array(); _local3 = _local2.length; while (_local4 < _local3) { _local6 = (navmc.getChildByName((_local2[_local4] + "_btn")) as MovieClip); _local7 = new NavButton(_local6, _local2[_local4]); _local7.addEventListener(NavButton.NAV_BUTTON_CLICKED, onNavButtonClicked); navbtns.push(_local7); _local4++; }; gameModel = new GameModel(rootmc, 0, 0); gameModel.initGame(); gameModel.addEventListener(GameModel.END_GAME, onGameEnd); car3dView = new Car3dView(); trackView = new TrackZMappingView(); bgView = new BackgroundView(); dashView = new DashboardView(); driftParticlesView = new DriftParticlesView(); minimapView = new MiniMapView(); soundsView = new SoundView(); iconsView = new StatusIconsView(); submitScoreView = new SubmitScoreView(); gameOverView = new GameOverView(); initGameViews(); _local5 = AlertModalWindow.getInstance(); _local5.init(rootmc.alert_modal_window_mc); HighScores.getInstance().addEventListener(HighScores.HIGH_SCORE_SUBMITTED, onHighScoreSubmitted); } private function onHighScoreSubmitted(_arg1:Event):void{ lockNavigation(); rootmc.game_mc.visible = false; rootmc.gotoAndStop("highscores"); } private function onNavButtonClicked(_arg1:Event):void{ var _local2:String; var _local3:MovieClip; _local2 = _arg1.target.getButtonName(); switch (_local2){ case "start": trace("start button was clicked"); if ((((rootmc.currentLabel == "instructions")) || ((rootmc.currentLabel == "game")))){ _local3 = (navmc.getChildByName("start_btn") as MovieClip); _local3.gotoAndStop(1); onStartGameClicked(); return; }; rootmc.gotoAndStop("instructions"); break; case "scores": trace("scores button was clicked"); rootmc.gotoAndStop("highscores"); break; case "friend": trace("send to friend button was clicked"); rootmc.gotoAndStop("sendtofriend"); break; case "about": trace("about black series button was clicked"); rootmc.gotoAndStop("blackseries"); break; }; rootmc.game_mc.visible = false; } public function onStartGameClicked():void{ trace("main 'start drifting' button clicked"); trace(rootmc.game_mc); HighScores.getInstance().loadHighScores(); lockNavigation(); gameModel.resetGame(); rootmc.game_mc.car_view_mc.gotoAndStop(13); rootmc.game_mc.gameover_mc.visible = false; rootmc.game_mc.countdown_mc.visible = true; rootmc.game_mc.countdown_mc.gotoAndPlay(2); rootmc.game_mc.submit_score_mc.visible = false; rootmc.gotoAndStop("game"); rootmc.game_mc.visible = true; } private function initGameViews():void{ if (viewsInitted){ return; }; viewsInitted = true; trace("initting game views"); car3dView.init(gameModel, rootmc.game_mc.car_view_mc, rootmc.game_mc.rear_snow_mc); trackView.init(gameModel, rootmc.game_mc.track_mc); minimapView.init(gameModel, rootmc.game_mc.minimap_mc); dashView.init(gameModel, rootmc.game_mc); iconsView.init(gameModel, rootmc.game_mc.status_icons_mc); soundsView.init(gameModel); bgView.init(gameModel, rootmc.game_mc.background_mc); gameOverView.init(gameModel, rootmc.game_mc.gameover_mc); submitScoreView.init(gameModel, rootmc.game_mc.submit_score_mc); driftParticlesView = new DriftParticlesView(); driftParticlesView.init(gameModel, rootmc.game_mc.drift_particles_back_mc, rootmc.game_mc.drift_particles_front_mc); rootmc.game_mc.alpha = 1; } public function unlockNavigation():void{ var _local1:uint; while (_local1 < navbtns.length) { navbtns[_local1].enableButton(); _local1++; }; } public function startGame():void{ gameModel.startGame(); } public function lockNavigation():void{ var _local1:uint; while (_local1 < navbtns.length) { navbtns[_local1].disableButton(); _local1++; }; } private function onGameEnd(_arg1:Event):void{ unlockNavigation(); } public function onPlayAgainClicked():void{ lockNavigation(); gameModel.resetGame(); rootmc.game_mc.car_view_mc.gotoAndStop(13); rootmc.game_mc.gameover_mc.visible = false; rootmc.game_mc.countdown_mc.visible = true; rootmc.game_mc.countdown_mc.gotoAndPlay(2); rootmc.game_mc.submit_score_mc.visible = false; } public static function getInstance():DriftRevolution{ if (DriftRevolution._instance == null){ DriftRevolution._instance = new DriftRevolution(new SingletonEnforcer()); }; return (DriftRevolution._instance); } } }//package com.mercedesamg class SingletonEnforcer { private function SingletonEnforcer(){ } }
Section 83
//AcceleratingSound (AcceleratingSound) package { import flash.media.*; public dynamic class AcceleratingSound extends Sound { } }//package
Section 84
//AccelerationLoopSound (AccelerationLoopSound) package { import flash.media.*; public dynamic class AccelerationLoopSound extends Sound { } }//package
Section 85
//box (box) package { import flash.display.*; public dynamic class box extends Sprite { } }//package
Section 86
//DecelerateGurgleSound (DecelerateGurgleSound) package { import flash.media.*; public dynamic class DecelerateGurgleSound extends Sound { } }//package
Section 87
//DeceleratingSound (DeceleratingSound) package { import flash.media.*; public dynamic class DeceleratingSound extends Sound { } }//package
Section 88
//IdleSound (IdleSound) package { import flash.media.*; public dynamic class IdleSound extends Sound { } }//package
Section 89
//OffroadHitTestArea (OffroadHitTestArea) package { import flash.display.*; public dynamic class OffroadHitTestArea extends MovieClip { } }//package
Section 90
//track_hi (track_hi) package { import flash.display.*; public dynamic class track_hi extends Sprite { public var m:MovieClip; } }//package
Section 91
//track_lo (track_lo) package { import flash.display.*; public dynamic class track_lo extends MovieClip { public var m:MovieClip; } }//package

Library Items

Symbol 1 Sound {IdleSound}
Symbol 2 Sound {DecelerateGurgleSound}
Symbol 3 Sound {DeceleratingSound}
Symbol 4 Sound {AcceleratingSound}
Symbol 5 Sound {AccelerationLoopSound}
Symbol 6 BitmapUsed by:7
Symbol 7 GraphicUses:6Used by:8 144
Symbol 8 MovieClip {com.mercedesamg.mcClasses.DriftParticle3d}Uses:7
Symbol 9 GraphicUsed by:10
Symbol 10 MovieClip {box}Uses:9
Symbol 11 GraphicUsed by:12
Symbol 12 MovieClip {OffroadHitTestArea}Uses:11
Symbol 13 BitmapUsed by:14
Symbol 14 GraphicUses:13Used by:15
Symbol 15 MovieClipUses:14Used by:16 263
Symbol 16 MovieClip {track_hi}Uses:15
Symbol 17 BitmapUsed by:18
Symbol 18 GraphicUses:17Used by:19
Symbol 19 MovieClipUses:18Used by:20
Symbol 20 MovieClip {track_lo}Uses:19
Symbol 21 GraphicUsed by:22
Symbol 22 MovieClipUses:21Used by:26
Symbol 23 GraphicUsed by:26
Symbol 24 GraphicUsed by:25
Symbol 25 MovieClipUses:24Used by:26
Symbol 26 MovieClipUses:22 23 25Used by:Timeline
Symbol 27 GraphicUsed by:28 43 58 162 180 181
Symbol 28 MovieClipUses:27Used by:48
Symbol 29 FontUsed by:30 166 171 173 175 186 187 188 216 218 258 259 365 366 367 368 369 370 371 372 373 374
Symbol 30 EditableTextUses:29Used by:31
Symbol 31 MovieClip {AMG07_en_fla.description_mc_6}Uses:30Used by:48
Symbol 32 FontUsed by:33 260 261 262 298 317 318
Symbol 33 EditableTextUses:32Used by:34
Symbol 34 MovieClip {AMG07_en_fla.title_mc_7}Uses:33Used by:48
Symbol 35 BitmapUsed by:36
Symbol 36 GraphicUses:35Used by:37 280
Symbol 37 MovieClipUses:36Used by:47 212 230 279 280 456
Symbol 38 BitmapUsed by:39
Symbol 39 GraphicUses:38Used by:44
Symbol 40 BitmapUsed by:41
Symbol 41 GraphicUses:40Used by:42
Symbol 42 MovieClipUses:41Used by:44
Symbol 43 MovieClipUses:27Used by:44
Symbol 44 MovieClipUses:39 42 43Used by:47 212 230 280 456
Symbol 45 FontUsed by:46
Symbol 46 TextUses:45Used by:47
Symbol 47 MovieClip {AMG07_en_fla.close_btn_8}Uses:37 44 46Used by:48
Symbol 48 MovieClip {AMG07_en_fla.alert_modal_window_mc_4}Uses:28 31 34 47Used by:Timeline
Symbol 49 GraphicUsed by:Timeline
Symbol 50 GraphicUsed by:51
Symbol 51 MovieClipUses:50Used by:Timeline
Symbol 52 GraphicUsed by:57 178 418 425 440
Symbol 53 ShapeTweeningUsed by:57
Symbol 54 ShapeTweeningUsed by:57
Symbol 55 ShapeTweeningUsed by:57
Symbol 56 ShapeTweeningUsed by:57
Symbol 57 MovieClip {AMG07_en_fla.bottomlinksmask_15}Uses:52 53 54 55 56Used by:82
Symbol 58 MovieClipUses:27Used by:62 65 68 71
Symbol 59 FontUsed by:60 63 66 69 233 441 442 443 444 445 446 447 448 449 450 451
Symbol 60 TextUses:59Used by:61
Symbol 61 MovieClipUses:60Used by:62
Symbol 62 MovieClip {AMG07_en_fla.btn_start_comp_16}Uses:58 61Used by:82
Symbol 63 TextUses:59Used by:64
Symbol 64 MovieClipUses:63Used by:65
Symbol 65 MovieClip {AMG07_en_fla.btn_view_scores_19}Uses:58 64Used by:82
Symbol 66 TextUses:59Used by:67
Symbol 67 MovieClipUses:66Used by:68
Symbol 68 MovieClip {AMG07_en_fla.btn_send_to_friend_21}Uses:58 67Used by:82
Symbol 69 TextUses:59Used by:70
Symbol 70 MovieClipUses:69Used by:71
Symbol 71 MovieClip {AMG07_en_fla.btn_about_23}Uses:58 70Used by:82
Symbol 72 BitmapUsed by:73
Symbol 73 GraphicUses:72Used by:74
Symbol 74 MovieClipUses:73Used by:78
Symbol 75 BitmapUsed by:76
Symbol 76 GraphicUses:75Used by:77
Symbol 77 MovieClipUses:76Used by:78
Symbol 78 MovieClip {AMG07_en_fla.AMGlogo_25}Uses:74 77Used by:82
Symbol 79 BitmapUsed by:80
Symbol 80 GraphicUses:79Used by:81
Symbol 81 MovieClipUses:80Used by:82
Symbol 82 MovieClip {AMG07_en_fla.navbuttonsanim_14}Uses:57 62 65 68 71 78 81Used by:Timeline
Symbol 83 MovieClipUsed by:263
Symbol 84 GraphicUsed by:263
Symbol 85 BitmapUsed by:86
Symbol 86 GraphicUses:85Used by:87
Symbol 87 MovieClipUses:86Used by:91
Symbol 88 BitmapUsed by:89
Symbol 89 GraphicUses:88Used by:90
Symbol 90 MovieClipUses:89Used by:91
Symbol 91 MovieClip {AMG07_en_fla.background_mc_32}Uses:87 90Used by:263
Symbol 92 MovieClipUsed by:263
Symbol 93 BitmapUsed by:94
Symbol 94 GraphicUses:93Used by:143
Symbol 95 BitmapUsed by:96
Symbol 96 GraphicUses:95Used by:143
Symbol 97 BitmapUsed by:98
Symbol 98 GraphicUses:97Used by:143
Symbol 99 BitmapUsed by:100
Symbol 100 GraphicUses:99Used by:143
Symbol 101 BitmapUsed by:102
Symbol 102 GraphicUses:101Used by:143
Symbol 103 BitmapUsed by:104
Symbol 104 GraphicUses:103Used by:143
Symbol 105 BitmapUsed by:106
Symbol 106 GraphicUses:105Used by:143
Symbol 107 BitmapUsed by:108
Symbol 108 GraphicUses:107Used by:143
Symbol 109 BitmapUsed by:110
Symbol 110 GraphicUses:109Used by:143
Symbol 111 BitmapUsed by:112
Symbol 112 GraphicUses:111Used by:143
Symbol 113 BitmapUsed by:114
Symbol 114 GraphicUses:113Used by:143
Symbol 115 BitmapUsed by:116
Symbol 116 GraphicUses:115Used by:143
Symbol 117 BitmapUsed by:118
Symbol 118 GraphicUses:117Used by:143
Symbol 119 BitmapUsed by:120
Symbol 120 GraphicUses:119Used by:143
Symbol 121 BitmapUsed by:122
Symbol 122 GraphicUses:121Used by:143
Symbol 123 BitmapUsed by:124
Symbol 124 GraphicUses:123Used by:143
Symbol 125 BitmapUsed by:126
Symbol 126 GraphicUses:125Used by:143
Symbol 127 BitmapUsed by:128
Symbol 128 GraphicUses:127Used by:143
Symbol 129 BitmapUsed by:130
Symbol 130 GraphicUses:129Used by:143
Symbol 131 BitmapUsed by:132
Symbol 132 GraphicUses:131Used by:143
Symbol 133 BitmapUsed by:134
Symbol 134 GraphicUses:133Used by:143
Symbol 135 BitmapUsed by:136
Symbol 136 GraphicUses:135Used by:143
Symbol 137 BitmapUsed by:138
Symbol 138 GraphicUses:137Used by:143
Symbol 139 BitmapUsed by:140
Symbol 140 GraphicUses:139Used by:143
Symbol 141 BitmapUsed by:142
Symbol 142 GraphicUses:141Used by:143
Symbol 143 MovieClip {AMG07_en_fla.car_view_mc_36}Uses:94 96 98 100 102 104 106 108 110 112 114 116 118 120 122 124 126 128 130 132 134 136 138 140 142Used by:263
Symbol 144 MovieClipUses:7Used by:145
Symbol 145 MovieClip {AMG07_en_fla.snowrearanim_38}Uses:144Used by:146
Symbol 146 MovieClipUses:145Used by:263
Symbol 147 BitmapUsed by:148
Symbol 148 GraphicUses:147Used by:155
Symbol 149 GraphicUsed by:150
Symbol 150 MovieClipUses:149Used by:155
Symbol 151 BitmapUsed by:152
Symbol 152 GraphicUses:151Used by:155
Symbol 153 GraphicUsed by:154
Symbol 154 MovieClipUses:153Used by:155
Symbol 155 MovieClip {AMG07_en_fla.status_icons_mc_40}Uses:148 150 152 154Used by:263
Symbol 156 GraphicUsed by:157
Symbol 157 MovieClipUses:156Used by:160
Symbol 158 GraphicUsed by:159
Symbol 159 MovieClipUses:158Used by:160
Symbol 160 MovieClip {AMG07_en_fla.minimap_mc_43}Uses:157 159Used by:263
Symbol 161 GraphicUsed by:263
Symbol 162 MovieClipUses:27Used by:179 213 416
Symbol 163 GraphicUsed by:164
Symbol 164 MovieClipUses:163Used by:179
Symbol 165 GraphicUsed by:178
Symbol 166 TextUses:29Used by:167
Symbol 167 MovieClipUses:166Used by:178
Symbol 168 ShapeTweeningUsed by:178
Symbol 169 BitmapUsed by:170
Symbol 170 GraphicUses:169Used by:178
Symbol 171 TextUses:29Used by:172
Symbol 172 MovieClipUses:171Used by:178
Symbol 173 TextUses:29Used by:174
Symbol 174 MovieClipUses:173Used by:178
Symbol 175 TextUses:29Used by:176
Symbol 176 MovieClipUses:175Used by:178
Symbol 177 ShapeTweeningUsed by:178
Symbol 178 MovieClip {AMG07_en_fla.Countdown_49}Uses:165 167 168 170 52 172 174 176 177Used by:179
Symbol 179 MovieClip {AMG07_en_fla.countdownanim_46}Uses:162 164 178Used by:263
Symbol 180 MovieClipUses:27Used by:213 234 407 471
Symbol 181 MovieClipUses:27Used by:213
Symbol 182 GraphicUsed by:213
Symbol 183 FontUsed by:184 185 190
Symbol 184 TextUses:183Used by:189
Symbol 185 TextUses:183Used by:189
Symbol 186 EditableTextUses:29Used by:189
Symbol 187 EditableTextUses:29Used by:189
Symbol 188 EditableTextUses:29Used by:189
Symbol 189 MovieClip {AMG07_en_fla.scoring_fields_mc_57}Uses:184 185 186 187 188Used by:213
Symbol 190 TextUses:183Used by:191
Symbol 191 MovieClipUses:190Used by:213
Symbol 192 ShapeTweeningUsed by:213
Symbol 193 BitmapUsed by:194
Symbol 194 GraphicUses:193Used by:195
Symbol 195 MovieClipUses:194Used by:213
Symbol 196 FontUsed by:197 199
Symbol 197 TextUses:196Used by:198
Symbol 198 MovieClipUses:197Used by:204
Symbol 199 TextUses:196Used by:200
Symbol 200 MovieClipUses:199Used by:204
Symbol 201 FontUsed by:202
Symbol 202 TextUses:201Used by:203
Symbol 203 MovieClipUses:202Used by:204
Symbol 204 MovieClip {AMG07_en_fla.gameovercopyanim_60}Uses:198 200 203Used by:213
Symbol 205 GraphicUsed by:213
Symbol 206 ShapeTweeningUsed by:212
Symbol 207 ShapeTweeningUsed by:212
Symbol 208 ShapeTweeningUsed by:212
Symbol 209 GraphicUsed by:212 221 230 281 456
Symbol 210 FontUsed by:211 229 278 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 413 455 469
Symbol 211 TextUses:210Used by:212
Symbol 212 MovieClip {AMG07_en_fla.playagainbluebtnanim_64}Uses:206 207 208 209 37 44 211Used by:213
Symbol 213 MovieClip {AMG07_en_fla.gameover_54}Uses:162 180 181 182 189 191 192 195 204 205 212Used by:263
Symbol 214 GraphicUsed by:234
Symbol 215 GraphicUsed by:217 225
Symbol 216 EditableTextUses:29Used by:217
Symbol 217 MovieClip {AMG07_en_fla.enterName_66}Uses:215 216Used by:234
Symbol 218 EditableTextUses:29Used by:225
Symbol 219 GraphicUsed by:224
Symbol 220 ShapeTweeningUsed by:221
Symbol 221 MovieClip {AMG07_en_fla.arrow_base_fade_69}Uses:220 209Used by:224
Symbol 222 GraphicUsed by:224
Symbol 223 GraphicUsed by:224
Symbol 224 MovieClip {AMG07_en_fla.select_box_arrow_68}Uses:219 221 222 223Used by:225
Symbol 225 MovieClip {AMG07_en_fla.selectCountry_67}Uses:215 218 224Used by:234
Symbol 226 ShapeTweeningUsed by:230
Symbol 227 ShapeTweeningUsed by:230
Symbol 228 ShapeTweeningUsed by:230
Symbol 229 TextUses:210Used by:230
Symbol 230 MovieClip {AMG07_en_fla.submitbluebtnanim_70}Uses:226 227 228 209 37 44 229Used by:234
Symbol 231 FontUsed by:232
Symbol 232 TextUses:231Used by:234
Symbol 233 TextUses:59Used by:234
Symbol 234 MovieClip {AMG07_en_fla.highscorebox_65}Uses:180 214 217 225 230 232 233Used by:263
Symbol 235 BitmapUsed by:236
Symbol 236 GraphicUses:235Used by:237
Symbol 237 MovieClipUses:236Used by:263
Symbol 238 GraphicUsed by:239
Symbol 239 MovieClipUses:238Used by:263
Symbol 240 GraphicUsed by:247 257
Symbol 241 GraphicUsed by:242
Symbol 242 MovieClipUses:241Used by:247
Symbol 243 BitmapUsed by:244
Symbol 244 GraphicUses:243Used by:247
Symbol 245 GraphicUsed by:246
Symbol 246 MovieClipUses:245Used by:247
Symbol 247 MovieClip {AMG07_en_fla.speedometer_mc2_73}Uses:240 242 244 246Used by:263
Symbol 248 GraphicUsed by:254
Symbol 249 MovieClipUsed by:254 257
Symbol 250 GraphicUsed by:251
Symbol 251 MovieClipUses:250Used by:254
Symbol 252 GraphicUsed by:253
Symbol 253 MovieClipUses:252Used by:254
Symbol 254 MovieClip {AMG07_en_fla.angle_mc_76}Uses:248 249 251 253Used by:263
Symbol 255 GraphicUsed by:256
Symbol 256 MovieClipUses:255Used by:257
Symbol 257 MovieClipUses:240 249 256Used by:263
Symbol 258 TextUses:29Used by:263
Symbol 259 TextUses:29Used by:263
Symbol 260 EditableTextUses:32Used by:263
Symbol 261 EditableTextUses:32Used by:263
Symbol 262 EditableTextUses:32Used by:263
Symbol 263 MovieClip {AMG07_en_fla.game_MC_29}Uses:15 83 84 91 92 143 146 155 160 161 179 213 234 237 239 247 254 257 258 259 260 261 262Used by:Timeline
Symbol 264 BitmapUsed by:265
Symbol 265 GraphicUses:264Used by:283
Symbol 266 BitmapUsed by:267
Symbol 267 GraphicUses:266Used by:268
Symbol 268 MovieClipUses:267Used by:282
Symbol 269 BitmapUsed by:270
Symbol 270 GraphicUses:269Used by:271
Symbol 271 MovieClipUses:270Used by:282
Symbol 272 BitmapUsed by:273
Symbol 273 GraphicUses:272Used by:274
Symbol 274 MovieClipUses:273Used by:282
Symbol 275 ShapeTweeningUsed by:281
Symbol 276 ShapeTweeningUsed by:281
Symbol 277 ShapeTweeningUsed by:281
Symbol 278 TextUses:210Used by:280
Symbol 279 MovieClip {AMG07_en_fla.over_btn_base_90}Uses:37Used by:280
Symbol 280 ButtonUses:37 44 278 279 36Used by:281
Symbol 281 MovieClip {AMG07_en_fla.driftbutton_88}Uses:275 276 277 209 280Used by:282 357
Symbol 282 MovieClip {AMG07_en_fla.logoanim_84}Uses:268 271 274 281Used by:283 284
Symbol 283 MovieClip {AMG07_en_fla.homepageimage_83}Uses:265 282Used by:284
Symbol 284 MovieClip {AMG07_en_fla.home_page_MC_82}Uses:283 282Used by:Timeline
Symbol 285 GraphicUsed by:289 356 433 434
Symbol 286 BitmapUsed by:287
Symbol 287 GraphicUses:286Used by:288
Symbol 288 MovieClipUses:287Used by:289 356 433 434
Symbol 289 MovieClip {AMG07_en_fla.highscoreboxes_93}Uses:285 288Used by:293 360 432 463
Symbol 290 FontUsed by:291 350 358 430 461 468
Symbol 291 TextUses:290Used by:292
Symbol 292 MovieClipUses:291Used by:293
Symbol 293 MovieClip {AMG07_en_fla.Instructions_intro_92}Uses:289 292Used by:357
Symbol 294 GraphicUsed by:295
Symbol 295 MovieClipUses:294Used by:296
Symbol 296 MovieClipUses:295Used by:307
Symbol 297 GraphicUsed by:307
Symbol 298 TextUses:32Used by:307
Symbol 299 FontUsed by:300 301 302
Symbol 300 TextUses:299Used by:307
Symbol 301 TextUses:299Used by:307
Symbol 302 TextUses:299Used by:307
Symbol 303 GraphicUsed by:307
Symbol 304 FontUsed by:305 306 315 316 353
Symbol 305 TextUses:304Used by:307
Symbol 306 TextUses:304Used by:307
Symbol 307 MovieClipUses:296 297 298 300 301 302 303 305 306Used by:357
Symbol 308 GraphicUsed by:309
Symbol 309 MovieClipUses:308Used by:319
Symbol 310 GraphicUsed by:319
Symbol 311 GraphicUsed by:312
Symbol 312 MovieClipUses:311Used by:319
Symbol 313 GraphicUsed by:314
Symbol 314 MovieClipUses:313Used by:319
Symbol 315 TextUses:304Used by:319
Symbol 316 TextUses:304Used by:319
Symbol 317 TextUses:32Used by:319
Symbol 318 TextUses:32Used by:319
Symbol 319 MovieClipUses:309 310 312 314 315 316 317 318Used by:357
Symbol 320 GraphicUsed by:348
Symbol 321 GraphicUsed by:324
Symbol 322 GraphicUsed by:323
Symbol 323 MovieClipUses:322Used by:324
Symbol 324 MovieClipUses:321 323Used by:348
Symbol 325 GraphicUsed by:326
Symbol 326 MovieClipUses:325Used by:348
Symbol 327 GraphicUsed by:348
Symbol 328 FontUsed by:329 330
Symbol 329 TextUses:328Used by:348
Symbol 330 TextUses:328Used by:348
Symbol 331 GraphicUsed by:332
Symbol 332 MovieClipUses:331Used by:348
Symbol 333 GraphicUsed by:348
Symbol 334 GraphicUsed by:335
Symbol 335 MovieClipUses:334Used by:348
Symbol 336 GraphicUsed by:348
Symbol 337 GraphicUsed by:338
Symbol 338 MovieClipUses:337Used by:348
Symbol 339 GraphicUsed by:340 343
Symbol 340 MovieClipUses:339Used by:342
Symbol 341 GraphicUsed by:342
Symbol 342 MovieClipUses:340 341Used by:348
Symbol 343 MovieClipUses:339Used by:345
Symbol 344 GraphicUsed by:345
Symbol 345 MovieClipUses:343 344Used by:348
Symbol 346 FontUsed by:347
Symbol 347 TextUses:346Used by:348
Symbol 348 MovieClipUses:320 324 326 327 329 330 332 333 335 336 338 342 345 347Used by:357
Symbol 349 GraphicUsed by:351
Symbol 350 TextUses:290Used by:351
Symbol 351 MovieClipUses:349 350Used by:357
Symbol 352 ShapeTweeningUsed by:355
Symbol 353 TextUses:304Used by:355
Symbol 354 GraphicUsed by:355 472
Symbol 355 MovieClip {AMG07_en_fla.instr_copy_115}Uses:352 353 354Used by:357
Symbol 356 MovieClip {AMG07_en_fla.instructiondivboxes_116}Uses:285 288Used by:357
Symbol 357 MovieClip {AMG07_en_fla.instructions_MC_91}Uses:293 307 319 348 351 355 356 281Used by:Timeline
Symbol 358 TextUses:290Used by:359
Symbol 359 MovieClipUses:358Used by:360
Symbol 360 MovieClip {AMG07_en_fla.highscoresheadline_119}Uses:289 359Used by:418
Symbol 361 BitmapUsed by:362
Symbol 362 GraphicUses:361Used by:363
Symbol 363 MovieClipUses:362Used by:418
Symbol 364 ShapeTweeningUsed by:418
Symbol 365 TextUses:29Used by:418
Symbol 366 TextUses:29Used by:418
Symbol 367 TextUses:29Used by:418
Symbol 368 TextUses:29Used by:418
Symbol 369 TextUses:29Used by:418
Symbol 370 TextUses:29Used by:418
Symbol 371 TextUses:29Used by:418
Symbol 372 TextUses:29Used by:418
Symbol 373 TextUses:29Used by:418
Symbol 374 TextUses:29Used by:418
Symbol 375 EditableTextUses:210Used by:418
Symbol 376 EditableTextUses:210Used by:418
Symbol 377 EditableTextUses:210Used by:418
Symbol 378 EditableTextUses:210Used by:418
Symbol 379 EditableTextUses:210Used by:418
Symbol 380 EditableTextUses:210Used by:418
Symbol 381 EditableTextUses:210Used by:418
Symbol 382 EditableTextUses:210Used by:418
Symbol 383 EditableTextUses:210Used by:418
Symbol 384 EditableTextUses:210Used by:418
Symbol 385 EditableTextUses:210Used by:418
Symbol 386 EditableTextUses:210Used by:418
Symbol 387 EditableTextUses:210Used by:418
Symbol 388 EditableTextUses:210Used by:418
Symbol 389 EditableTextUses:210Used by:418
Symbol 390 EditableTextUses:210Used by:418
Symbol 391 EditableTextUses:210Used by:418
Symbol 392 EditableTextUses:210Used by:418
Symbol 393 EditableTextUses:210Used by:418
Symbol 394 EditableTextUses:210Used by:418
Symbol 395 EditableTextUses:210Used by:418
Symbol 396 EditableTextUses:210Used by:418
Symbol 397 EditableTextUses:210Used by:418
Symbol 398 EditableTextUses:210Used by:418
Symbol 399 EditableTextUses:210Used by:418
Symbol 400 EditableTextUses:210Used by:418
Symbol 401 EditableTextUses:210Used by:418
Symbol 402 EditableTextUses:210Used by:418
Symbol 403 EditableTextUses:210Used by:418
Symbol 404 EditableTextUses:210Used by:418
Symbol 405 TextUses:210Used by:406
Symbol 406 MovieClipUses:405Used by:407
Symbol 407 MovieClip {AMG07_en_fla.btn_visit_amg_123}Uses:180 406Used by:417 472
Symbol 408 ShapeTweeningUsed by:417
Symbol 409 BitmapUsed by:410
Symbol 410 GraphicUses:409Used by:411
Symbol 411 MovieClipUses:410Used by:417
Symbol 412 GraphicUsed by:417
Symbol 413 TextUses:210Used by:414
Symbol 414 MovieClipUses:413Used by:415 416
Symbol 415 MovieClip {AMG07_en_fla.txt_PlayAgain_glow_128}Uses:414Used by:416
Symbol 416 MovieClip {AMG07_en_fla.playagainbtn_126}Uses:162 414 415Used by:417
Symbol 417 MovieClip {AMG07_en_fla.visitAMGbuttons_122}Uses:407 408 411 412 416Used by:418 457
Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118}Uses:360 363 364 365 366 367 368 369 370 371 372 373 374 52 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 417Used by:419
Symbol 419 MovieClipUses:418Used by:Timeline
Symbol 420 ShapeTweeningUsed by:425
Symbol 421 ShapeTweeningUsed by:425
Symbol 422 ShapeTweeningUsed by:425
Symbol 423 ShapeTweeningUsed by:425
Symbol 424 ShapeTweeningUsed by:425
Symbol 425 MovieClip {AMG07_en_fla.sendformmask_130}Uses:420 421 52 422 423 424Used by:457
Symbol 426 GraphicUsed by:427
Symbol 427 MovieClipUses:426Used by:457
Symbol 428 GraphicUsed by:429
Symbol 429 MovieClipUses:428Used by:457
Symbol 430 TextUses:290Used by:431
Symbol 431 MovieClipUses:430Used by:432
Symbol 432 MovieClip {AMG07_en_fla.SendtoFriend_intro_133}Uses:289 431Used by:457
Symbol 433 MovieClip {AMG07_en_fla.send2friendboxdividershort_135}Uses:285 288Used by:457
Symbol 434 MovieClip {AMG07_en_fla.send2friendboxdividermid_136}Uses:285 288Used by:457
Symbol 435 ShapeTweeningUsed by:440
Symbol 436 ShapeTweeningUsed by:440
Symbol 437 ShapeTweeningUsed by:440
Symbol 438 ShapeTweeningUsed by:440
Symbol 439 ShapeTweeningUsed by:440
Symbol 440 MovieClip {AMG07_en_fla.sendcopymask_137}Uses:435 436 52 437 438 439Used by:457
Symbol 441 TextUses:59Used by:457
Symbol 442 TextUses:59Used by:457
Symbol 443 TextUses:59Used by:457
Symbol 444 TextUses:59Used by:457
Symbol 445 TextUses:59Used by:457
Symbol 446 EditableTextUses:59Used by:457
Symbol 447 EditableTextUses:59Used by:457
Symbol 448 EditableTextUses:59Used by:457
Symbol 449 EditableTextUses:59Used by:457
Symbol 450 EditableTextUses:59Used by:457
Symbol 451 EditableTextUses:59Used by:457
Symbol 452 ShapeTweeningUsed by:456
Symbol 453 ShapeTweeningUsed by:456
Symbol 454 ShapeTweeningUsed by:456
Symbol 455 TextUses:210Used by:456
Symbol 456 MovieClip {AMG07_en_fla.sendbutton_138}Uses:452 453 454 209 37 44 455Used by:457
Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129}Uses:425 427 429 432 433 434 440 441 442 443 444 445 446 447 448 449 450 451 417 456Used by:Timeline
Symbol 458 BitmapUsed by:459
Symbol 459 GraphicUses:458Used by:460
Symbol 460 MovieClipUses:459Used by:473
Symbol 461 TextUses:290Used by:462
Symbol 462 MovieClipUses:461Used by:463
Symbol 463 MovieClip {AMG07_en_fla.BlackSeries_intro_141}Uses:289 462Used by:473
Symbol 464 ShapeTweeningUsed by:472
Symbol 465 GraphicUsed by:472
Symbol 466 ShapeTweeningUsed by:472
Symbol 467 FontUsed by:468
Symbol 468 TextUses:290 467Used by:472
Symbol 469 TextUses:210Used by:470
Symbol 470 MovieClipUses:469Used by:471
Symbol 471 MovieClip {AMG07_en_fla.btn_learn_more_144}Uses:180 470Used by:472
Symbol 472 MovieClip {AMG07_en_fla.black_copyanim_143}Uses:464 465 466 468 354 407 471Used by:473
Symbol 473 MovieClip {AMG07_en_fla.black_series_MC_139}Uses:460 463 472Used by:Timeline

Instance Names

"gradient_bg_mc"Frame 1Symbol 26 MovieClip
"alert_modal_window_mc"Frame 1Symbol 48 MovieClip {AMG07_en_fla.alert_modal_window_mc_4}
"frame_mc"Frame 1Symbol 51 MovieClip
"navbuttons_mc"Frame 1Symbol 82 MovieClip {AMG07_en_fla.navbuttonsanim_14}
"game_mc"Frame 3Symbol 263 MovieClip {AMG07_en_fla.game_MC_29}
"home_mc"Frame 5Symbol 284 MovieClip {AMG07_en_fla.home_page_MC_82}
"instructions_mc"Frame 10Symbol 357 MovieClip {AMG07_en_fla.instructions_MC_91}
"high_scores_mc"Frame 18Symbol 419 MovieClip
"send_to_friend_mc"Frame 26Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129}
"black_series_mc"Frame 35Symbol 473 MovieClip {AMG07_en_fla.black_series_MC_139}
"m"Symbol 16 MovieClip {track_hi} Frame 1Symbol 15 MovieClip
"m"Symbol 20 MovieClip {track_lo} Frame 1Symbol 19 MovieClip
"description_txt"Symbol 31 MovieClip {AMG07_en_fla.description_mc_6} Frame 1Symbol 30 EditableText
"title_txt"Symbol 34 MovieClip {AMG07_en_fla.title_mc_7} Frame 1Symbol 33 EditableText
"bg_mc"Symbol 48 MovieClip {AMG07_en_fla.alert_modal_window_mc_4} Frame 1Symbol 28 MovieClip
"description_mc"Symbol 48 MovieClip {AMG07_en_fla.alert_modal_window_mc_4} Frame 1Symbol 31 MovieClip {AMG07_en_fla.description_mc_6}
"title_mc"Symbol 48 MovieClip {AMG07_en_fla.alert_modal_window_mc_4} Frame 1Symbol 34 MovieClip {AMG07_en_fla.title_mc_7}
"close_btn"Symbol 48 MovieClip {AMG07_en_fla.alert_modal_window_mc_4} Frame 1Symbol 47 MovieClip {AMG07_en_fla.close_btn_8}
"start_btn"Symbol 82 MovieClip {AMG07_en_fla.navbuttonsanim_14} Frame 1Symbol 62 MovieClip {AMG07_en_fla.btn_start_comp_16}
"scores_btn"Symbol 82 MovieClip {AMG07_en_fla.navbuttonsanim_14} Frame 1Symbol 65 MovieClip {AMG07_en_fla.btn_view_scores_19}
"friend_btn"Symbol 82 MovieClip {AMG07_en_fla.navbuttonsanim_14} Frame 1Symbol 68 MovieClip {AMG07_en_fla.btn_send_to_friend_21}
"about_btn"Symbol 82 MovieClip {AMG07_en_fla.navbuttonsanim_14} Frame 1Symbol 71 MovieClip {AMG07_en_fla.btn_about_23}
"clouds_mc"Symbol 91 MovieClip {AMG07_en_fla.background_mc_32} Frame 1Symbol 87 MovieClip
"mountains_mc"Symbol 91 MovieClip {AMG07_en_fla.background_mc_32} Frame 1Symbol 90 MovieClip
"track_map_mc"Symbol 160 MovieClip {AMG07_en_fla.minimap_mc_43} Frame 1Symbol 157 MovieClip
"car_pos_mc"Symbol 160 MovieClip {AMG07_en_fla.minimap_mc_43} Frame 1Symbol 159 MovieClip
"countdown_mc"Symbol 179 MovieClip {AMG07_en_fla.countdownanim_46} Frame 21Symbol 178 MovieClip {AMG07_en_fla.Countdown_49}
"distance_txt"Symbol 189 MovieClip {AMG07_en_fla.scoring_fields_mc_57} Frame 1Symbol 186 EditableText
"bonus_txt"Symbol 189 MovieClip {AMG07_en_fla.scoring_fields_mc_57} Frame 1Symbol 187 EditableText
"total_txt"Symbol 189 MovieClip {AMG07_en_fla.scoring_fields_mc_57} Frame 1Symbol 188 EditableText
"scoring_fields_mc"Symbol 213 MovieClip {AMG07_en_fla.gameover_54} Frame 1Symbol 189 MovieClip {AMG07_en_fla.scoring_fields_mc_57}
"play_again_btn"Symbol 213 MovieClip {AMG07_en_fla.gameover_54} Frame 98Symbol 212 MovieClip {AMG07_en_fla.playagainbluebtnanim_64}
"name_txt"Symbol 217 MovieClip {AMG07_en_fla.enterName_66} Frame 1Symbol 216 EditableText
"country_txt"Symbol 225 MovieClip {AMG07_en_fla.selectCountry_67} Frame 1Symbol 218 EditableText
"arrow_up"Symbol 225 MovieClip {AMG07_en_fla.selectCountry_67} Frame 1Symbol 224 MovieClip {AMG07_en_fla.select_box_arrow_68}
"arrow_down"Symbol 225 MovieClip {AMG07_en_fla.selectCountry_67} Frame 1Symbol 224 MovieClip {AMG07_en_fla.select_box_arrow_68}
"name_mc"Symbol 234 MovieClip {AMG07_en_fla.highscorebox_65} Frame 1Symbol 217 MovieClip {AMG07_en_fla.enterName_66}
"country_mc"Symbol 234 MovieClip {AMG07_en_fla.highscorebox_65} Frame 1Symbol 225 MovieClip {AMG07_en_fla.selectCountry_67}
"highscore_btn"Symbol 234 MovieClip {AMG07_en_fla.highscorebox_65} Frame 1Symbol 230 MovieClip {AMG07_en_fla.submitbluebtnanim_70}
"needle_mc"Symbol 247 MovieClip {AMG07_en_fla.speedometer_mc2_73} Frame 1Symbol 246 MovieClip
"car_mc"Symbol 254 MovieClip {AMG07_en_fla.angle_mc_76} Frame 1Symbol 253 MovieClip
"track_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 83 MovieClip
"background_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 91 MovieClip {AMG07_en_fla.background_mc_32}
"drift_particles_back_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 92 MovieClip
"car_view_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 143 MovieClip {AMG07_en_fla.car_view_mc_36}
"rear_snow_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 146 MovieClip
"drift_particles_front_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 92 MovieClip
"status_icons_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 155 MovieClip {AMG07_en_fla.status_icons_mc_40}
"minimap_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 160 MovieClip {AMG07_en_fla.minimap_mc_43}
"countdown_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 179 MovieClip {AMG07_en_fla.countdownanim_46}
"gameover_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 213 MovieClip {AMG07_en_fla.gameover_54}
"submit_score_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 234 MovieClip {AMG07_en_fla.highscorebox_65}
"speedo_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 247 MovieClip {AMG07_en_fla.speedometer_mc2_73}
"angle_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 254 MovieClip {AMG07_en_fla.angle_mc_76}
"steering_wheel_mc"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 257 MovieClip
"game_clock_txt"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 260 EditableText
"distance_txt"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 261 EditableText
"bonus_txt"Symbol 263 MovieClip {AMG07_en_fla.game_MC_29} Frame 1Symbol 262 EditableText
"drift_btn"Symbol 281 MovieClip {AMG07_en_fla.driftbutton_88} Frame 17Symbol 280 Button
"start_drift_btn"Symbol 282 MovieClip {AMG07_en_fla.logoanim_84} Frame 82Symbol 281 MovieClip {AMG07_en_fla.driftbutton_88}
"logo_mc"Symbol 283 MovieClip {AMG07_en_fla.homepageimage_83} Frame 1Symbol 282 MovieClip {AMG07_en_fla.logoanim_84}
"logo_mc"Symbol 284 MovieClip {AMG07_en_fla.home_page_MC_82} Frame 1Symbol 282 MovieClip {AMG07_en_fla.logoanim_84}
"start_drift_btn"Symbol 357 MovieClip {AMG07_en_fla.instructions_MC_91} Frame 40Symbol 281 MovieClip {AMG07_en_fla.driftbutton_88}
"btn_visit_amg"Symbol 417 MovieClip {AMG07_en_fla.visitAMGbuttons_122} Frame 1Symbol 407 MovieClip {AMG07_en_fla.btn_visit_amg_123}
"btn_play_again"Symbol 417 MovieClip {AMG07_en_fla.visitAMGbuttons_122} Frame 9Symbol 416 MovieClip {AMG07_en_fla.playagainbtn_126}
"name0"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 375 EditableText
"name1"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 376 EditableText
"name2"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 377 EditableText
"name3"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 378 EditableText
"name4"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 379 EditableText
"name5"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 380 EditableText
"name6"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 381 EditableText
"name7"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 382 EditableText
"name8"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 383 EditableText
"name9"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 384 EditableText
"score0"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 385 EditableText
"score1"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 386 EditableText
"score2"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 387 EditableText
"score3"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 388 EditableText
"score4"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 389 EditableText
"score5"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 390 EditableText
"score6"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 391 EditableText
"score7"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 392 EditableText
"score8"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 393 EditableText
"score9"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 394 EditableText
"country0"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 395 EditableText
"country1"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 396 EditableText
"country2"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 397 EditableText
"country3"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 398 EditableText
"country4"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 399 EditableText
"country5"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 400 EditableText
"country6"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 401 EditableText
"country7"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 402 EditableText
"country8"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 403 EditableText
"country9"Symbol 418 MovieClip {AMG07_en_fla.highscore_intro_118} Frame 42Symbol 404 EditableText
"textName"Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129} Frame 30Symbol 446 EditableText
"status_txt"Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129} Frame 30Symbol 447 EditableText
"textBody"Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129} Frame 30Symbol 448 EditableText
"textEmail"Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129} Frame 30Symbol 449 EditableText
"textName2"Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129} Frame 30Symbol 450 EditableText
"textEmail2"Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129} Frame 30Symbol 451 EditableText
"send_btn"Symbol 457 MovieClip {AMG07_en_fla.send_to_friend_MC_129} Frame 50Symbol 456 MovieClip {AMG07_en_fla.sendbutton_138}
"btn_visit_amg"Symbol 472 MovieClip {AMG07_en_fla.black_copyanim_143} Frame 30Symbol 407 MovieClip {AMG07_en_fla.btn_visit_amg_123}
"btn_learn_more"Symbol 472 MovieClip {AMG07_en_fla.black_copyanim_143} Frame 30Symbol 471 MovieClip {AMG07_en_fla.btn_learn_more_144}
"about_image_mc"Symbol 473 MovieClip {AMG07_en_fla.black_series_MC_139} Frame 1Symbol 460 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.

Labels

"home"Frame 5
"instructions"Frame 10
"highscores"Frame 18
"sendtofriend"Frame 26
"blackseries"Frame 35
"game"Frame 43
"_rollover"Symbol 47 MovieClip {AMG07_en_fla.close_btn_8} Frame 5
"_rollover"Symbol 62 MovieClip {AMG07_en_fla.btn_start_comp_16} Frame 5
"_rollout"Symbol 62 MovieClip {AMG07_en_fla.btn_start_comp_16} Frame 16
"_rollover"Symbol 65 MovieClip {AMG07_en_fla.btn_view_scores_19} Frame 5
"_rollout"Symbol 65 MovieClip {AMG07_en_fla.btn_view_scores_19} Frame 16
"_rollover"Symbol 68 MovieClip {AMG07_en_fla.btn_send_to_friend_21} Frame 5
"_rollout"Symbol 68 MovieClip {AMG07_en_fla.btn_send_to_friend_21} Frame 16
"_rollover"Symbol 71 MovieClip {AMG07_en_fla.btn_about_23} Frame 5
"_rollout"Symbol 71 MovieClip {AMG07_en_fla.btn_about_23} Frame 16
"loop"Symbol 145 MovieClip {AMG07_en_fla.snowrearanim_38} Frame 10
"offroad"Symbol 155 MovieClip {AMG07_en_fla.status_icons_mc_40} Frame 5
"perfect_drift"Symbol 155 MovieClip {AMG07_en_fla.status_icons_mc_40} Frame 14
"_show"Symbol 179 MovieClip {AMG07_en_fla.countdownanim_46} Frame 2
"_null"Symbol 212 MovieClip {AMG07_en_fla.playagainbluebtnanim_64} Frame 17
"_rollover"Symbol 212 MovieClip {AMG07_en_fla.playagainbluebtnanim_64} Frame 22
"_show"Symbol 213 MovieClip {AMG07_en_fla.gameover_54} Frame 5
"_null"Symbol 224 MovieClip {AMG07_en_fla.select_box_arrow_68} Frame 1
"_rollover"Symbol 224 MovieClip {AMG07_en_fla.select_box_arrow_68} Frame 10
"_click"Symbol 224 MovieClip {AMG07_en_fla.select_box_arrow_68} Frame 20
"_null"Symbol 230 MovieClip {AMG07_en_fla.submitbluebtnanim_70} Frame 17
"_rollover"Symbol 230 MovieClip {AMG07_en_fla.submitbluebtnanim_70} Frame 24
"_show"Symbol 234 MovieClip {AMG07_en_fla.highscorebox_65} Frame 2
"_hide"Symbol 234 MovieClip {AMG07_en_fla.highscorebox_65} Frame 28
"_null"Symbol 407 MovieClip {AMG07_en_fla.btn_visit_amg_123} Frame 1
"_rollover"Symbol 407 MovieClip {AMG07_en_fla.btn_visit_amg_123} Frame 5
"_rollover"Symbol 416 MovieClip {AMG07_en_fla.playagainbtn_126} Frame 5
"_null"Symbol 456 MovieClip {AMG07_en_fla.sendbutton_138} Frame 17
"_rollover"Symbol 456 MovieClip {AMG07_en_fla.sendbutton_138} Frame 23
"_null"Symbol 471 MovieClip {AMG07_en_fla.btn_learn_more_144} Frame 1
"_rollover"Symbol 471 MovieClip {AMG07_en_fla.btn_learn_more_144} Frame 5




http://swfchan.com/22/108036/info.shtml
Created: 15/3 -2019 22:52:12 Last modified: 15/3 -2019 22:52:12 Server time: 06/05 -2024 17:57:04