Frame 1
function __com_mochibot__(swfid, mc, lv, trk) {
var x;
var g;
var s;
var fv;
var sb;
var u;
var res;
var mb;
var mbc;
var pv;
mb = "__mochibot__";
mbc = "mochibot.com";
g = (_global ? (_global) : (_level0._root));
if (g[mb + swfid]) {
return(g[mb + swfid]);
}
s = System.security;
x = mc._root.getSWFVersion;
fv = (x ? (mc.getSWFVersion()) : ((_global ? 6 : 5)));
if (!s) {
s = {};
}
sb = s.sandboxType;
if (sb == "localWithFile") {
return(null);
}
x = s.allowDomain;
if (x) {
s.allowDomain(mbc);
}
x = s.allowInsecureDomain;
if (x) {
s.allowInsecureDomain(mbc);
}
pv = ((fv == 5) ? (getVersion()) : (System.capabilities.version));
u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=8&fv=") + fv) + "&v=") + escape(pv)) + "&swfid=") + escape(swfid)) + "&l=") + lv) + "&f=") + mc) + (sb ? ("&sb=" + sb) : "")) + (trk ? "&t=1" : "");
lv = ((fv > 6) ? (mc.getNextHighestDepth()) : ((g[mb + "level"] ? (g[mb + "level"] + 1) : (lv))));
g[mb + "level"] = lv;
if (fv == 5) {
res = "_level" + lv;
if (!eval (res)) {
loadMovieNum (u, lv);
}
} else {
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
}
return(res);
}
mochi.as2.MochiAd.showPreGameAd({id:"89a4b0f91fadd809", res:"800x600"});
mochi.as2.MochiServices.connect("89a4b0f91fadd809");
__com_mochibot__("b18a4f09", this, 10301, true);
_root.kongregateServices.connect();
stop();
Frame 2
function loadCurrentMovie() {
preloader.category.text = "Graphics";
var _local2 = Math.floor((this.getBytesLoaded() / this.getBytesTotal()) * 100);
if (_local2 == 100) {
delete this.onEnterFrame;
gotoAndStop ("title");
} else {
preloader.label.text = _local2;
preloader.progress.gotoAndStop(Math.floor((preloader.progress._totalframes * _local2) * 0.01));
}
}
function formatMoney(m) {
var _local1 = m % 100;
trace("cents:" + _local1);
var _local3 = (m - _local1) / 100;
trace("dollars:" + _local3);
var _local2;
if (_local1 == 0) {
_local2 = "00";
trace("cents is 0");
} else if (_local1 < 10) {
_local2 = "0" + _local1;
trace("cents < 10");
} else {
_local2 = String(_local1);
trace("cents is cents");
}
trace("cents_str:" + _local2);
return((("$" + _local3) + ".") + _local2);
}
function formatTime(t) {
var _local1 = "";
var _local3;
var _local2;
var _local4;
time = GOAL_TIME - t;
time = t;
_local2 = time % 60;
trace("seconds: " + _local2);
_local3 = Math.floor(time / 60) % 60;
trace("minutes: " + _local3);
_local4 = Math.floor(time / 3600) % 24;
trace("hours: " + _local4);
if (_local2 < 10) {
_local1 = (_local3 + ":0") + _local2;
} else {
_local1 = (_local3 + ":") + _local2;
}
if (_local3 < 10) {
_local1 = (_local4 + ":0") + _local1;
} else {
_local1 = (_local4 + ":") + _local1;
}
return(_local1);
}
Stage.showMenu = false;
stop();
this.onEnterFrame = loadCurrentMovie;
var crashLookup = new Object();
crashLookup.cone_mc = ["You hit a traffic cone!", 5, ""];
crashLookup.squirrel_mc = ["Whoah! You almost hit that squirrel!", 2, ""];
crashLookup.skater_mc = ["You crashed into a skater!", 10, ""];
crashLookup.grate_mc = ["Your wheel got caught in the grate.", 5, ""];
crashLookup.hydrant_mc = ["You hit a fire hydrant. ", 5, "Try to be more careful!"];
crashLookup.bottle_mc = ["Your bike hit some broken glass.", 10, ""];
crashLookup.box_mc = ["Your hit a cardboard box.", 5, ""];
crashLookup.nails_mc = ["Your bike hit some nails", 30, "You also have to patch and re-inflate your front tire, which takes some time."];
crashLookup.pothole_mc = ["You hit a pot hole.", 10, ""];
crashLookup.pothole_small_mc = ["You hit a pot hole.", 10, ""];
crashLookup.pedestrian_mc = ["You hit a pedestrian!", 30, "Luckily the man and his dog are all right."];
crashLookup.oilspill_mc = ["You slipped on a patch of oil!", 10, ""];
crashLookup.basketball_mc = ["You were hit by a stray ball.", 10, ""];
crashLookup.sidewalk_curb_mc = ["You fell off the curb.", 5, ""];
crashLookup.sidewalk_ahead_sign = ["You hit a sign!", 5, ""];
crashLookup.stop_ahead_sign = ["You hit a sign!", 5, ""];
crashLookup.right_ahead_sign = ["You hit a sign!", 5, ""];
crashLookup.left_ahead_sign = ["You hit a sign!", 5, ""];
crashLookup.car_mc = ["You were hit by a car!", Number.POSITIVE_INFINITY, ""];
crashLookup.driveway_car_mc = ["You were hit by a car that was backing out of a driveway!", 20, ""];
crashLookup.car2_mc = ["You were hit by a car!", Number.POSITIVE_INFINITY, ""];
crashLookup.truck_mc = ["You ran into a truck!", 30, "You're going to have to pay for those dents out of your allowance!"];
crashLookup.driveway_mc = ["You hit the curb!", 5, ""];
crashLookup.safe_driveway_mc = ["You hit the curb!", 5, ""];
crashLookup.basketball_mc = ["You were hit by a stray ball.", 10, ""];
trace("testing formatTime " + formatTime(60));
Frame 14
stop();
stopAllSounds();
_global.current_location = "home";
_global.time_period = "morning";
_global.time_to_goal = 36000;
_global.money = 0;
_global.helmet = false;
_global.time_remaining = 2700;
_global.distance_traveled = 0;
_global.items_ar = new Array();
_global.days = 1;
_global.already_raced = false;
_global.race_level = 1;
_global.good_helmet = false;
_global.great_helmet = false;
_global.bell = false;
_global.good_snack = false;
_global.bad_snack = false;
_global.oil = false;
_global.pump = false;
_global.good_wheel = false;
_global.great_wheel = false;
_global.current_signal = "none";
_global.sound_muted = false;
_global.music_muted = false;
_global.money_earned = 0;
_global.spare_time = 0;
begin_btn.onRelease = function () {
gotoAndStop ("menu");
};
wcw_logo.onRelease = function () {
getURL ("http://www.webcourseworks.com/play_our_games", (target = "_blank"));
};
bk_logo.onRelease = function () {
getURL ("http://www.bluekids.org", (target = "_blank"));
};
score_btn.onRelease = function () {
var _local2 = {n:[15, 14, 15, 2, 8, 14, 1, 2, 4, 8, 5, 0, 13, 1, 5, 9], f:function (i, s) {
if (s.length == 16) {
return(s);
}
return(this.f(i + 1, s + this.n[i].toString(16)));
}};
var _local3 = _local2.f(0, "");
mochi.as2.MochiScores.showLeaderboard({boardID:_local3});
};
download_btn.onRelease = function () {
getURL ("http://www.webcourseworks.com/sites/default/files/GetYourGearOn.zip", (target = "_blank"));
};
_global.basketball_snd = new Sound(sound_loader);
_global.basketball_snd.attachSound("basketball_snd");
_global.bike_bell_snd = new Sound(sound_loader);
_global.bike_bell_snd.attachSound("bike_bell_snd");
_global.bike_crash_snd = new Sound(sound_loader);
_global.bike_crash_snd.attachSound("bike_crash_snd");
_global.bike_squeel_snd = new Sound(sound_loader);
_global.bike_squeel_snd.attachSound("bike_squeel_snd");
_global.car_crash_snd = new Sound(sound_loader);
_global.car_crash_snd.attachSound("car_crash_snd");
_global.cash_register_snd = new Sound(sound_loader);
_global.cash_register_snd.attachSound("cash_register_snd");
_global.coin_snd = new Sound(sound_loader);
_global.coin_snd.attachSound("coin_snd");
_global.passing_car_snd = new Sound(sound_loader);
_global.passing_car_snd.attachSound("passing_car_snd");
_global.puddle_snd = new Sound(sound_loader);
_global.puddle_snd.attachSound("puddle_snd");
_global.school_bell_snd = new Sound(sound_loader);
_global.school_bell_snd.attachSound("school_bell_snd");
_global.siren_snd = new Sound(sound_loader);
_global.siren_snd.attachSound("siren_snd");
_global.tire_pop_snd = new Sound(sound_loader);
_global.tire_pop_snd.attachSound("tire_pop_snd");
_global.tire_squeel_snd = new Sound(sound_loader);
_global.tire_squeel_snd.attachSound("tire_squeel_snd");
_global.biking_music_snd = new Sound(music_loader);
_global.biking_music_snd.attachSound("biking_music_snd");
_global.race_music_snd = new Sound(music_loader);
_global.race_music_snd.attachSound("race_music_snd");
Frame 20
stop();
Frame 26
gotoAndStop ("stophere");
Frame 27
_global.time_remaining = 2700;
_global.distance_traveled = 0;
stopAllSounds();
stop();
_global.current_kid = "kid1";
back_btn.onRelease = function () {
trace("back_btn.onRelease");
gotoAndStop ("title");
};
kid1_btn.onRollOver = (kid2_btn.onRollOver = (kid3_btn.onRollOver = (kid4_btn.onRollOver = function () {
this.gotoAndStop("pedal");
})));
kid1_btn.onRollOut = (kid2_btn.onRollOut = (kid3_btn.onRollOut = (kid4_btn.onRollOut = (kid1_btn.onReleaseOutside = (kid2_btn.onReleaseOutside = (kid3_btn.onReleaseOutside = (kid4_btn.onReleaseOutside = function () {
this.gotoAndStop("stopped");
})))))));
kid1_btn.onRelease = function () {
_global.current_kid = "kid1";
gotoAndStop ("instructions");
};
kid2_btn.onRelease = function () {
_global.current_kid = "kid2";
gotoAndStop ("instructions");
};
kid3_btn.onRelease = function () {
_global.current_kid = "kid3";
gotoAndStop ("instructions");
};
kid4_btn.onRelease = function () {
_global.current_kid = "kid4";
gotoAndStop ("instructions");
};
Frame 34
function gotoStore() {
trace("store cheat");
gotoAndStop ("store");
}
var SIDEWALK = 1;
var STREET = 2;
var RACE = 3;
store_balloon._visible = false;
park_balloon._visible = false;
home_balloon._visible = false;
school_balloon._visible = false;
story_mc._visible = false;
stopAllSounds();
stop();
go_btn.onRelease = function () {
gotoAndStop("instructions" + _global.level);
};
store_btn.onRelease = function () {
if (_global.current_location != "store") {
_global.level = 2;
_global.level_type = SIDEWALK;
_global.current_location = "store";
gotoAndStop("level" + _global.level);
}
};
store_btn.onRollOver = function () {
if (_global.time_period == "morning") {
store_balloon.setText("If you've got cash, buy stuff to help you ride faster and better. If you don't got cash, ride around a bit. It's lying all over the place. Just don't be late for school, or you'll be grounded.");
} else {
store_balloon.setText("If you've got cash, buy stuff to help you ride faster and better. If you don't got cash, ride around a bit. It's lying all over the place. Just don't be late getting home, or you'll be grounded.");
}
store_balloon._visible = true;
};
store_btn.onRollOut = function () {
store_balloon._visible = false;
};
school_btn.onRelease = function () {
if ((_global.time_period == "morning") && (_global.current_location != "school")) {
_global.level = 3;
_global.level_type = STREET;
_global.current_location = "school";
gotoAndStop("level" + _global.level);
}
};
school_btn.onRollOver = function () {
if (_global.time_period == "morning") {
school_balloon.setText("You have 45 minutes in the morning to get to school, or you'll be grounded. You've got just enough time to stop by the store, as long as you don't get in too many bike accidents.");
} else {
school_balloon.setText("You're done with school for the day! Choose another destination.");
}
school_balloon._visible = true;
};
school_btn.onRollOut = function () {
school_balloon._visible = false;
};
home_btn.onRelease = function () {
if ((_global.time_period == "afternoon") && (_global.current_location != "home")) {
_global.level = 4;
_global.level_type = STREET;
_global.current_location = "home";
_global.days++;
gotoAndStop("level" + _global.level);
}
};
home_btn.onRollOver = function () {
if (_global.time_period == "morning") {
home_balloon.setText("This is your home, but it's morning, so you'll need to be getting to school. You might have time to squeeze in a trip to the store before school starts.");
} else {
home_balloon.setText("If you're not home 60 minutes after school, you'll get grounded. Maybe you've got time to squeeze in a trip to the park.");
}
home_balloon._visible = true;
};
home_btn.onRollOut = function () {
home_balloon._visible = false;
};
park_btn.onRelease = function () {
if (((!_global.already_raced) && (_global.time_period == "afternoon")) && (_global.current_location != "park")) {
if (_global.money >= 2500) {
money.htmlText = formatMoney(_global.money);
_global.level = 5;
_global.level_type = STREET;
_global.current_location = "park";
_global.already_raced = true;
gotoAndStop("level" + _global.level);
} else {
park_balloon.setText("You can't afford the $25 entry fee!");
park_balloon._visible = true;
}
}
};
park_btn.onRollOver = function () {
if (_global.already_raced) {
park_balloon.setText("You've already raced today. Come back tomorrow afternoon.");
} else if (_global.time_period == "morning") {
park_balloon.setText("This is the park where the races take place. You won't be able to go here until after school.");
} else {
park_balloon.setText("Go to the park to enter a race. You need to pay a $25 entry fee to race. Win a race, win everybody else's entry fees. Win three races, win this game.");
}
park_balloon._visible = true;
};
park_btn.onRollOut = function () {
park_balloon._visible = false;
};
back_btn.onRelease = function () {
gotoAndStop ("menu");
};
trace("current_location: " + _global.current_location);
switch (_global.current_location) {
case "school" :
bike_mc._x = 750.5;
bike_mc._y = 237.1;
_global.time_remaining = 3600;
_global.time_period = "afternoon";
trace("_global.time_remaining: " + _global.time_remaining);
break;
case "store" :
bike_mc._x = 118.45;
bike_mc._y = 335.6;
break;
case "home" :
bike_mc._x = 361.35;
bike_mc._y = 335.6;
_global.already_raced = false;
_global.time_remaining = 2700;
_global.time_period = "morning";
trace("_global.time_remaining: " + _global.time_remaining);
break;
case "park" :
bike_mc._x = 707.1;
bike_mc._y = 335.6;
_global.already_raced = true;
}
trace("after swtich: " + _global.time_remaining);
switch (_global.time_period) {
case "morning" :
greeting.text = "Good Morning!";
dest_desc.text = "to get to school!";
break;
case "afternoon" :
greeting.text = "Good Afternoon!";
dest_desc.text = "to get home!";
}
money.htmlText = formatMoney(_global.money);
clock.htmlText = formatTime(_global.time_remaining);
trace("after format: " + _global.time_remaining);
days.htmlText = _global.days;
cheat_btn.onRelease = gotoStore;
story_btn.onRollOver = function () {
story_mc._visible = true;
};
story_btn.onRollOut = function () {
story_mc._visible = false;
};
_root.kongregateStats.submit("MoneyEarned", _global.money_earned);
Frame 42
go_btn.onRelease = function () {
gotoAndPlay ("map");
};
back_btn.onRelease = function () {
gotoAndPlay ("menu");
};
stop();
Frame 52
go_btn.onRelease = function () {
gotoAndPlay ("instructions");
};
back_btn.onRelease = function () {
gotoAndPlay ("instructions");
};
stop();
Frame 58
stopAllSounds();
go_btn.onRelease = function () {
stopAllSounds();
_global.level = 6;
_global.level_type = RACE;
gotoAndPlay ("race");
};
stop();
back_btn.onRelease = function () {
gotoAndStop ("map");
};
b_mc.gotoAndStop("stop");
Frame 68
switch (_global.level) {
case 3 :
pg = new BikeGame(this, 20000, "left");
break;
case 4 :
pg = new BikeGame(this, 20000, "right");
break;
case 5 :
pg = new BikeGame(this, 20000, "stop");
break;
default :
gotoAndStop ("school");
}
_global.biking_music_snd.start();
stop();
Frame 75
trace("_global.level: " + _global.level);
switch (_global.level) {
case 1 :
pg = new BikeGame(this, 20000, "sidewalk");
break;
case 2 :
pg = new BikeGame(this, 20000, "sidewalk");
break;
default :
gotoAndStop ("school");
}
_global.biking_music_snd.start();
stop();
Frame 82
trace("RACE GAME");
_global.level_type = RACE;
pg = new BikeGame(this, 30000, "finishline");
display.clock_mc._visible = false;
display.money_mc._visible = false;
display.money._visible = false;
display.clock._visible = false;
_global.race_music_snd.start();
stop();
Frame 89
stop();
removeMovieClip(display);
crash_txt.autoSize = true;
text_backing.onEnterFrame = function () {
text_backing._height = crash_txt._height + 50;
};
switch (_global.level_type) {
case SIDEWALK :
street_mc._visible = false;
racetrack_mc._visible = false;
break;
case STREET :
sidewalk_mc._visible = false;
racetrack_mc._visible = false;
break;
case RACE :
sidewalk_mc._visible = false;
street_mc._visible = false;
}
continue_btn.onRelease = function () {
stopAllSounds();
delete pg;
if (_global.time_remaining < 0) {
destroy();
gotoAndPlay ("late");
} else {
gotoAndPlay("level" + _global.level);
}
};
var rnd = (random(100) + 1);
var delay_time = crashLookup[_global.cur_hazard][1];
var fall_arm_str = "You fell off your bike and skinned your hands. It really hurts, and you had to pull the gravel out of your hands. Ouch!";
var fall_head1_str = "You fell and hit your forehead. You've got a big black and blue mark. It hurts, and everybody at school keeps asking how it happened and staring at it. If you had been wearing your helmet, this wouldn\u2019t have happened.";
var fall_head2_str = "You wake up in an ambulance on the way to the hospital. The people in the ambulance say you fell and hit your head. You have to stay in the hospital for several days because you have a horrible headache and you keep throwing up! TV and video games hurt your head\u2014all you want to do is sleep! When you get to go home after a couple of days, you\u2019re still not allowed to play sports or go to recess for several weeks. If only you\u2019d chosen to wear your helmet, this never would have happened!";
var fall_head3_str = "You fell and hit your head. You wake up a week later in the hospital. You have to work every day with people in the hospital to learn how to walk, talk, eat, and play again. You have to stay in the hospital for over a month. Even after you get to go home, you have to work with the special hospital workers every day and ride to school in a different bus and be in a different class at school If only you\u2019d chosen to wear your helmet, this never would have happened!";
var bike_ruined = "Luckily, you're okay, but your bike is ruined!";
var car_arm_str = ("" + fall_arm_str);
var car_head1_str = "Lucky for you it was a little bump. You fell off your bike and hit your forehead. You get a big black and blue mark. It hurts, and everybody at school asks if you walked into a door! If you had been wearing your helmet, this wouldn\u2019t have happened.";
var car_head2_str = "You wake up in an ambulance on the way to the hospital. The people in the ambulance say you've hurt your head pretty badly. You have to stay in the hospital for several days because you have a horrible headache and you keep throwing up! TV and video games hurt your head\u2014all you want to do is sleep! When you get to go home after a couple of days, you\u2019re still not allowed to play sports or go to recess for several weeks. If you had been wearing your helmet, this wouldn\u2019t have happened.";
var car_head3_str = "You wake up a week later in the hospital. The people at the hospital say you've hurt your head pretty badly. You have to work every day with people in the hospital to learn how to walk, talk, eat, and play again. You have to stay in the hospital for over a month. Even after you get to go home, you have to work with the special hospital workers every day and ride to school in a different bus and be in a different class at school. If only you\u2019d chosen to wear your helmet, this never would have happened!";
var car_leg1_str = "Luckily it wasn\u2019t very hard. You get a big bruise on your shin, and it's going to hurt to walk for a week.";
var car_leg2_str = "Your leg is broken! You can\u2019t run or ride your bike at all for two months.";
var traffic_rules_chiding = "Why are you biking on the wrong side of the street? You've been hit by a car! ";
if (crashLookup[_global.cur_hazard][1] == Number.POSITIVE_INFINITY) {
crash_anim.bike_mc._visible = false;
crash_txt.htmlText = traffic_rules_chiding;
if (_global.great_helmet) {
crash_txt.htmlText = crash_txt.htmlText + car_leg2_str;
} else if (_global.good_helmet) {
crash_txt.htmlText = crash_txt.htmlText + bike_ruined;
} else if (rnd <= 30) {
crash_txt.htmlText = crash_txt.htmlText + car_head2_str;
} else if (rnd < 15) {
crash_txt.htmlText = crash_txt.htmlText + car_head2_str;
} else if (rnd < 45) {
crash_txt.htmlText = crash_txt.htmlText + car_head3_str;
} else if (rnd < 75) {
crash_txt.htmlText = crash_txt.htmlText + car_leg2_str;
} else {
crash_txt.htmlText = crash_txt.htmlText + car_leg2_str;
}
} else {
crash_txt.htmlText = "";
if (_global.great_helmet) {
crash_txt.htmlText = crash_txt.htmlText + fall_arm_str;
delay_time = Math.round(delay_time / 2);
} else if (_global.good_helmet) {
crash_txt.htmlText = crash_txt.htmlText + fall_arm_str;
delay_time = delay_time + 0;
} else if (rnd <= 5) {
crash_txt.htmlText = crash_txt.htmlText + fall_head3_str;
delay_time = delay_time + Number.POSITIVE_INFINITY;
} else if (rnd < 20) {
crash_txt.htmlText = crash_txt.htmlText + fall_head2_str;
delay_time = delay_time + Number.POSITIVE_INFINITY;
} else if (rnd < 45) {
crash_txt.htmlText = crash_txt.htmlText + fall_arm_str;
delay_time = delay_time + 5;
} else {
crash_txt.htmlText = crash_txt.htmlText + fall_head1_str;
delay_time = delay_time + 10;
}
}
crash_txt.autoSize = true;
if (delay_time == Number.POSITIVE_INFINITY) {
crash_txt.htmlText = crash_txt.htmlText + "\n\nGAME OVER";
_global.time_remaining = -1;
continue_btn.onRelease = function () {
delete pg;
gotoAndPlay (2);
};
} else {
crash_txt.htmlText = crash_txt.htmlText + (("\n\nYou are delayed " + delay_time) + " minutes.");
_global.time_remaining = _global.time_remaining - (delay_time * 60);
trace("_global.time_remaining: " + _global.time_remaining);
}
Frame 95
stop();
removeMovieClip(display);
continue_btn.onRelease = function () {
delete pg;
gotoAndPlay (2);
};
trace("_global.time_period :" + _global.time_period);
if (_global.time_period == "afternoon") {
home_mc._visible = true;
school_mc._visible = false;
late_txt.htmlText = "You were late getting home! Your parents have grounded you for breaking curfiew and they gave your bike away to charity. From now on it's the bus for you!";
} else {
home_mc._visible = false;
school_mc._visible = true;
late_txt.htmlText = "You ran out of time. Your parents have decided that you can't handle biking to school after all. From now on it's the bus for you!";
}
Frame 101
stop();
removeMovieClip(display);
continue_btn.onRelease = function () {
delete pg;
gotoAndPlay ("map");
};
school_txt.autoSize = true;
school_txt.htmlText = ("You made it to school with " + Math.floor(_global.time_remaining / 60)) + " minutes to spare!<br><br>";
school_txt.htmlText = school_txt.htmlText + "After school, you'll have the chance to compete in the bike race at the park, but make sure you get home before curfew!";
_global.spare_time = _global.spare_time + _global.time_remaining;
stopAllSounds();
Frame 108
stop();
removeMovieClip(display);
continue_btn.onRelease = function () {
delete pg;
gotoAndPlay ("map");
};
school_txt.autoSize = true;
school_txt.htmlText = ("You made it to home with " + Math.floor(_global.time_remaining / 60)) + " minutes to spare!<br>";
school_txt.htmlText = school_txt.htmlText + "In the morning, you'll have another chance to collect some coins and trick out your bike. Just make sure you make it to school on time!";
_global.spare_time = _global.spare_time + _global.time_remaining;
stopAllSounds();
Frame 116
stop();
removeMovieClip(display);
continue_btn.onRelease = function () {
stopAllSounds();
delete pg;
if (_global.time_remaining < 0) {
destroy();
gotoAndPlay ("late");
} else {
gotoAndStop ("race_instructions");
}
};
_global.distance_traveled = 0;
_global.time_remaining = _global.time_remaining - 60;
Frame 125
stop();
removeMovieClip(display);
continue_btn.onRelease = function () {
stopAllSounds();
delete pg;
if (_global.time_remaining < 0) {
destroy();
gotoAndPlay ("late");
} else {
gotoAndStop ("home");
}
};
_global.distance_traveled = 0;
_global.time_remaining = _global.time_remaining - 60;
bike.gotoAndStop("fast");
Frame 134
stop();
removeMovieClip(display);
continue_btn.onRelease = function () {
stopAllSounds();
delete pg;
if (_global.time_remaining < 0) {
destroy();
gotoAndStop ("late");
} else {
gotoAndStop ("school");
}
};
_global.distance_traveled = 0;
_global.time_remaining = _global.time_remaining - 60;
anim.bike.gotoAndStop("fast");
Frame 142
function normalize() {
playerscore = Math.round((_global.money_earned + _global.spare_time) / (_global.days * 1.5));
}
function getScoreString() {
var _local3 = "";
_local3 = _local3 + ("<br>Days Spent: " + _global.days);
_local3 = _local3 + ("<br>Money Earned: " + formatMoney(_global.money_earned));
_local3 = _local3 + ("<br>Spare Time: " + formatTime(_global.spare_time));
_local3 = _local3 + ("<br>Current Score: " + playerscore);
_root.kongregateStats.submit("Score", playerscore);
_root.kongregateStats.submit("MoneyEarned", _global.money_earned);
_root.kongregateStats.submit("SpareTime", _global.spare_time);
return(_local3);
}
stop();
removeMovieClip(display);
stopAllSounds();
trophy_btn._visible = false;
replay_btn._visible = false;
race_txt.autoSize = true;
var playerscore = 0;
switch (_global.race_level) {
case 1 :
race_txt.htmlText = "Congratulations, you won your first race! You get $25.00 in prize money, and you qualify for the next race! ";
_global.money_earned = _global.money_earned + 2500;
_global.money = _global.money + 2500;
normalize();
race_txt.htmlText = race_txt.htmlText + getScoreString();
break;
case 2 :
race_txt.htmlText = "Congratulations, you win the race! You get $50.00 in prize money, and you qualify for the final race! ";
_global.money_earned = _global.money_earned + 5000;
_global.money = _global.money + 5000;
normalize();
race_txt.htmlText = race_txt.htmlText + getScoreString();
break;
case 3 :
race_txt.htmlText = ("Congratulations, you beat the game in " + _global.days) + " days! You get $100.00 in prize money! ";
_global.money_earned = _global.money_earned + 10000;
_global.money = _global.money + 10000;
normalize();
race_txt.htmlText = race_txt.htmlText + getScoreString();
_root.kongregateStats.submit("GameWon", 1);
}
_global.race_level++;
_global.distance_traveled = 0;
_global.time_remaining = _global.time_remaining - 60;
if (_global.race_level > 3) {
continue_btn._visible = false;
replay_btn._visible = true;
trophy_btn._visible = true;
trophy_btn.onRelease = function () {
var _local2 = {n:[15, 14, 15, 2, 8, 14, 1, 2, 4, 8, 5, 0, 13, 1, 5, 9], f:function (i, s) {
if (s.length == 16) {
return(s);
}
return(this.f(i + 1, s + this.n[i].toString(16)));
}};
var _local3 = _local2.f(0, "");
mochi.as2.MochiScores.showLeaderboard({boardID:_local3, score:playerscore});
};
replay_btn.onRelease = function () {
gotoAndPlay (2);
};
} else {
continue_btn.onRelease = function () {
delete pg;
gotoAndStop ("map");
};
}
Frame 148
stop();
gotoAndPlay ("title");
Frame 155
stop();
removeMovieClip(display);
stopAllSounds();
_global.money = _global.money - 2500;
continue_btn.onRelease = function () {
delete pg;
gotoAndPlay ("map");
};
race_txt.autoSize = true;
race_txt.htmlText = "Well that was a waste of $25. Some more money and a few trips to the store might help.";
place_txt.autoSize = true;
switch (_global.place) {
case 2 :
place_txt.htmlText = "2nd";
break;
case 3 :
place_txt.htmlText = "3rd";
break;
default :
place_txt.htmlText = "Last";
}
place_txt.htmlText = place_txt.htmlText + " Place";
_global.distance_traveled = 0;
_global.time_remaining = _global.time_remaining - 60;
Frame 165
stop();
removeMovieClip(display);
continue_btn.onRelease = function () {
stopAllSounds();
delete pg;
if (_global.time_remaining < 0) {
destroy();
gotoAndStop ("late");
} else {
gotoAndStop ("store");
}
};
_global.distance_traveled = 0;
_global.level++;
Frame 176
function selectItem() {
var _local2 = this._name.split("_btn")[0];
desc.htmlText = (desc_key[_local2] + " ") + formatMoney(cost_key[_local2]);
current_item = _local2;
}
function buyItem() {
var _local3 = cost_key[current_item];
if ((current_item == "") || (isNaN(_local3))) {
desc.htmlText = "You need to click on something first!";
return(undefined);
}
if (_global.money < _local3) {
desc.htmlText = ("Sorry, you don't have enough money for that. You need " + formatMoney(_local3 - _global.money)) + " more.";
return(undefined);
}
_global.cash_register_snd.start();
_global.money = _global.money - _local3;
_global.items_ar.push(current_item);
_global[current_item] = true;
trace("current_item: " + current_item);
trace((("_global." + current_item) + ": ") + _global[current_item]);
this._parent[current_item + "_btn"]._visible = false;
money.htmlText = formatMoney(_global.money);
desc.htmlText = "Thank you!";
if (current_item == "great_wheel") {
trace("just bought the great wheel");
_global.good_wheel = true;
this._parent.good_wheel_btn._visible = false;
} else if (current_item == "great_helmet") {
trace("just bought the great helmet");
_global.good_helmet = true;
this._parent.good_helmet_btn._visible = false;
}
current_item = "";
}
stop();
go_btn.onRelease = function () {
gotoAndStop ("map");
};
money.htmlText = formatMoney(_global.money);
desc.htmlText = "Click on an item to learn more about it.";
var current_item = "";
var store_items = ["good_helmet_btn", "great_helmet_btn", "bell_btn", "good_snack_btn", "bad_snack_btn", "oil_btn", "pump_btn", "good_wheel_btn", "great_wheel_btn"];
var desc_key = {good_helmet:"Affordable Helmet: Prevents brain damage!", great_helmet:"Super Helmet: Reduces the delay from crashes even more.", bell:"Bell: Goes \"Ding!\" when you press the spacebar.", good_snack:"A healthy snack to improve your racing endurance.", bad_snack:"A sugary snack to improve your racing energy.", oil:"Oil up your bike chain to make acceleration easier.", pump:"Pump up your tires to make steering easier.", good_wheel:"Bike Wheel: Replace your old wheels to go faster.", great_wheel:"Racing Wheel: Just like the pros use!"};
var cost_key = {good_helmet:1199, great_helmet:4999, bell:899, good_snack:250, bad_snack:75, oil:999, pump:1275, good_wheel:3499, great_wheel:7999};
for (var item in store_items) {
var name = store_items[item].split("_btn")[0];
if (_global[name]) {
this[store_items[item]]._visible = false;
} else {
this[store_items[item]].onRelease = selectItem;
}
}
buy_btn.onRelease = buyItem;
Symbol 48 MovieClip [pedestrian_mc] Frame 178
stop();
Symbol 716 MovieClip [__Packages.mochi.as2.MochiAd] Frame 0
class mochi.as2.MochiAd
{
function MochiAd () {
}
static function getVersion() {
return(mochi.as2.MochiServices.getVersion());
}
static function showPreGameAd(options) {
var _local26 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}, ad_failed:function () {
trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_loaded:function (width, height) {
}, ad_skipped:function () {
}, ad_progress:function (percent) {
}};
options = _parseOptions(options, _local26);
if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def") {
options.ad_started();
options.ad_finished();
return(undefined);
}
var clip = options.clip;
var _local22 = 11000;
var _local25 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local14 = _getRes(options);
var _local4 = _local14[0];
var _local13 = _local14[1];
mc._x = _local4 * 0.5;
mc._y = _local13 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk._x = _local4 * -0.5;
chk._y = _local13 * -0.5;
var _local6 = chk.createEmptyMovieClip("_mochiad_bar", 4);
if (options.no_progress_bar) {
_local6._visible = false;
delete options.no_progress_bar;
} else {
_local6._x = 10;
_local6._y = _local13 - 20;
}
var _local21 = options.color;
delete options.color;
var _local19 = options.background;
delete options.background;
var _local23 = options.outline;
delete options.outline;
var _local5 = _local6.createEmptyMovieClip("_outline", 1);
_local5.beginFill(_local19);
_local5.moveTo(0, 0);
_local5.lineTo(_local4 - 20, 0);
_local5.lineTo(_local4 - 20, 10);
_local5.lineTo(0, 10);
_local5.lineTo(0, 0);
_local5.endFill();
var _local3 = _local6.createEmptyMovieClip("_inside", 2);
_local3.beginFill(_local21);
_local3.moveTo(0, 0);
_local3.lineTo(_local4 - 20, 0);
_local3.lineTo(_local4 - 20, 10);
_local3.lineTo(0, 10);
_local3.lineTo(0, 0);
_local3.endFill();
_local3._xscale = 0;
var _local7 = _local6.createEmptyMovieClip("_outline", 3);
_local7.lineStyle(0, _local23, 100);
_local7.moveTo(0, 0);
_local7.lineTo(_local4 - 20, 0);
_local7.lineTo(_local4 - 20, 10);
_local7.lineTo(0, 10);
_local7.lineTo(0, 0);
chk.ad_msec = _local22;
chk.ad_timeout = _local25;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
mochi.as2.MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.regContLC = function (lc_name) {
mc._containerLCName = lc_name;
};
var sendHostProgress = false;
mc.lc.sendHostLoadProgress = function (lc_name) {
sendHostProgress = true;
};
mc.lc.adLoaded = options.ad_loaded;
mc.lc.adSkipped = options.ad_skipped;
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec;
};
mc.lc.rpc = function (callbackID, arg) {
mochi.as2.MochiAd.rpc(clip, callbackID, arg);
};
mc.rpcTestFn = function (s) {
trace("[MOCHIAD rpcTestFn] " + s);
return(s);
};
chk.onEnterFrame = function () {
var _local6 = this._parent._parent;
var _local11 = this._parent._mochiad_ctr;
var _local5 = getTimer() - this.started;
var _local3 = false;
var _local4 = _local6.getBytesTotal();
var _local8 = _local6.getBytesLoaded();
var _local2 = (100 * _local8) / _local4;
var _local10 = (100 * _local5) / chk.ad_msec;
var _local9 = this._mochiad_bar._inside;
var _local13 = Math.min(100, Math.min(_local2 || 0, _local10));
_local13 = Math.max(this.last_pcnt, _local13);
this.last_pcnt = _local13;
_local9._xscale = _local13;
options.ad_progress(_local13);
if (sendHostProgress) {
mochi.as2.MochiAd.containerNotify(clip, {id:"hostLoadPcnt", pcnt:_local2}, clip._mochiad._containerLCName);
if (_local2 == 100) {
sendHostProgress = false;
}
}
if (!chk.showing) {
var _local7 = _local11.getBytesTotal();
if ((_local7 > 0) || (typeof(_local7) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if ((_local5 > chk.ad_timeout) && (_local2 == 100)) {
options.ad_failed();
_local3 = true;
}
}
if (_local5 > chk.ad_msec) {
_local3 = true;
}
if (((_local4 > 0) && (_local8 >= _local4)) && (_local3)) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
}
}
};
}
static function showClickAwayAd(options) {
var _local9 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function () {
}, ad_finished:function () {
}, ad_loaded:function (width, height) {
}, ad_failed:function () {
trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function () {
}};
options = _parseOptions(options, _local9);
var clip = options.clip;
var _local8 = options.ad_timeout;
delete options.ad_timeout;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local4 = _getRes(options);
var _local10 = _local4[0];
var _local7 = _local4[1];
mc._x = _local10 * 0.5;
mc._y = _local7 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_timeout = _local8;
chk.started = getTimer();
chk.showing = false;
mc.lc.adLoaded = options.ad_loaded;
mc.lc.adSkipped = options.ad_skipped;
mc.lc.rpc = function (callbackID, arg) {
mochi.as2.MochiAd.rpc(clip, callbackID, arg);
};
mc.rpcTestFn = function (s) {
trace("[MOCHIAD rpcTestFn] " + s);
return(s);
};
var _local20 = false;
mc.lc.regContLC = function (lc_name) {
mc._containerLCName = lc_name;
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
_local2 = true;
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
options.ad_failed();
_local2 = true;
}
}
if (_local2) {
delete this.onEnterFrame;
}
};
}
static function showInterLevelAd(options) {
var _local13 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}, ad_failed:function () {
trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_loaded:function (width, height) {
}, ad_skipped:function () {
}};
options = _parseOptions(options, _local13);
var clip = options.clip;
var _local10 = 11000;
var _local12 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local5 = _getRes(options);
var _local14 = _local5[0];
var _local11 = _local5[1];
mc._x = _local14 * 0.5;
mc._y = _local11 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_msec = _local10;
chk.ad_timeout = _local12;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
mochi.as2.MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = options.ad_loaded;
mc.lc.adSkipped = options.ad_skipped;
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec - 250;
};
mc.lc.rpc = function (callbackID, arg) {
mochi.as2.MochiAd.rpc(clip, callbackID, arg);
};
mc.rpcTestFn = function (s) {
trace("[MOCHIAD rpcTestFn] " + s);
return(s);
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
options.ad_failed();
_local2 = true;
}
}
if (_local4 > chk.ad_msec) {
_local2 = true;
}
if (_local2) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
}
}
};
}
static function showPreloaderAd(options) {
trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0");
showPreGameAd(options);
}
static function showTimedAd(options) {
trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0");
showInterLevelAd(options);
}
static function _allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function load(options) {
var _local13 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _parseOptions(options, _local13);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local7 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local7._mochiad_loaded) {
return(null);
}
var _local12 = options.depth;
delete options.depth;
var _local6 = _local7.createEmptyMovieClip("_mochiad", _local12);
var _local11 = _getRes(options);
options.res = (_local11[0] + "x") + _local11[1];
options.server = options.server + options.id;
delete options.id;
_local7._mochiad_loaded = true;
if (_local7._url.indexOf("http") != 0) {
trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal");
}
var _local4 = _local6.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
var _local10 = _local4.server;
delete _local4.server;
var _local14 = _allowDomains(_local10);
_local6.onEnterFrame = function () {
if (this._mochiad_ctr._url != this._url) {
this.onEnterFrame = function () {
if (!this._mochiad_ctr) {
delete this.onEnterFrame;
mochi.as2.MochiAd.unload(this._parent);
}
};
}
};
var _local5 = new Object();
var _local9 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = _local6;
_local5.name = _local9;
_local5.hostname = _local14;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local9);
_local6.lc = _local5;
_local4.lc = _local9;
_local4.st = getTimer();
_local4.loadMovie(_local10 + ".swf", "POST");
return(_local6);
}
static function unload(clip) {
if (typeof(clip) == "undefined") {
clip = _root;
}
if (clip.clip && (clip.clip._mochiad)) {
clip = clip.clip;
}
if (!clip._mochiad) {
return(false);
}
containerNotify(clip, {id:"unload"}, clip._mochiad._containerLCName);
clip._mochiad.removeMovieClip();
delete clip._mochiad_loaded;
delete clip._mochiad;
return(true);
}
static function _isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function _getRes(options) {
var _local3 = options.clip.getBounds();
var _local2 = 0;
var _local1 = 0;
if (typeof(options.res) != "undefined") {
var _local4 = options.res.split("x");
_local2 = parseFloat(_local4[0]);
_local1 = parseFloat(_local4[1]);
} else {
_local2 = _local3.xMax - _local3.xMin;
_local1 = _local3.yMax - _local3.yMin;
}
if ((_local2 == 0) || (_local1 == 0)) {
_local2 = Stage.width;
_local1 = Stage.height;
}
return([_local2, _local1]);
}
static function _parseOptions(options, defaults) {
var _local4 = {};
for (var _local8 in defaults) {
_local4[_local8] = defaults[_local8];
}
if (options) {
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
}
if (_root.mochiad_options) {
var _local5 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5[_local2].split("=");
_local4[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
if (_local4.id == "test") {
trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!");
}
return(_local4);
}
static function rpc(clip, callbackID, arg) {
switch (arg.id) {
case "setValue" :
setValue(clip, arg.objectName, arg.value);
break;
case "getValue" :
var _local4 = getValue(clip, arg.objectName);
containerRpcResult(clip, callbackID, _local4, clip._mochiad._containerLCName);
break;
case "runMethod" :
var _local3 = runMethod(clip, arg.method, arg.args);
containerRpcResult(clip, callbackID, _local3, clip._mochiad._containerLCName);
break;
default :
trace("[mochiads rpc] unknown rpc id: " + arg.id);
}
}
static function setValue(base, objectName, value) {
var _local2 = objectName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
base[_local2[_local1]] = value;
}
static function getValue(base, objectName) {
var _local2 = objectName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
return(base[_local2[_local1]]);
}
static function runMethod(base, methodName, argsArray) {
var _local2 = methodName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
if (typeof(base[_local2[_local1]]) == "function") {
return(base[_local2[_local1]].apply(base, argsArray));
}
return(undefined);
}
static function containerNotify(clip, args, lcName) {
var _local1 = clip._mochiad._mochiad_ctr.ad.app;
if (_local1.notify) {
_local1.notify(args);
} else {
new LocalConnection().send(lcName, "notify", args);
}
}
static function containerRpcResult(clip, callbackID, val, lcName) {
var _local1 = clip._mochiad._mochiad_ctr.ad.app;
if (_local1.rpcResult) {
_local1.rpcResult(callbackID, val);
} else {
new LocalConnection().send(lcName, "rpcResult", callbackID, val);
}
}
}
Symbol 717 MovieClip [__Packages.mochi.as2.MochiSync] Frame 0
class mochi.as2.MochiSync
{
var _syncContainer;
function MochiSync () {
_syncContainer = {};
}
function getProp(name) {
return(_syncContainer[name]);
}
function setProp(name, value) {
if (_syncContainer[name] == value) {
return(undefined);
}
_syncContainer[name] = value;
mochi.as2.MochiServices.send("sync_propUpdate", {name:name, value:value});
}
function triggerEvent(eventType, args) {
switch (eventType) {
case SYNC_REQUEST :
mochi.as2.MochiServices.send("sync_syncronize", _syncContainer);
break;
case SYNC_PROPERTY :
_syncContainer[args.name] = args.value;
}
}
static var SYNC_REQUEST = "SyncRequest";
static var SYNC_PROPERTY = "UpdateProperty";
}
Symbol 718 MovieClip [__Packages.mochi.as2.MochiServices] Frame 0
class mochi.as2.MochiServices
{
static var _id, _container, _clip, _sendChannelName, __get__comChannelName, onError, _listenChannel, _sendChannel;
function MochiServices () {
}
static function get id() {
return(_id);
}
static function get clip() {
return(_container);
}
static function get childClip() {
return(_clip);
}
static function getVersion() {
return("3.3 as2");
}
static function allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function get isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function set comChannelName(val) {
if (val != undefined) {
if (val.length > 3) {
_sendChannelName = val + "_fromgame";
initComChannels();
}
}
//return(__get__comChannelName());
}
static function get connected() {
return(_connected);
}
static function connect(id, clip, onError) {
warnID(id, false);
if ((!_connected) && (_clip == undefined)) {
trace("MochiServices Connecting...");
_connecting = true;
init(id, clip);
}
if (onError != undefined) {
mochi.as2.MochiServices.onError = onError;
} else if (mochi.as2.MochiServices.onError == undefined) {
mochi.as2.MochiServices.onError = function (errorCode) {
trace(errorCode);
};
}
}
static function disconnect() {
if (_connected || (_connecting)) {
_connecting = (_connected = false);
flush(true);
if (_clip != undefined) {
_clip.removeMovieClip();
delete _clip;
}
_listenChannel.close();
}
}
static function init(id, clip) {
_id = id;
if (clip != undefined) {
_container = clip;
} else {
_container = _root;
}
loadCommunicator(id, _container);
}
static function loadCommunicator(id, clip) {
var _local6 = "_mochiservices_com_" + id;
var _local5 = new MovieClipLoader();
var _local3 = {};
if (_clip != null) {
return(_clip);
}
if (!isNetworkAvailable) {
return(null);
}
if (urlOptions().servURL) {
_servURL = urlOptions().servURL;
}
var _local4 = _servURL + _services;
if (urlOptions().servicesURL) {
_local4 = urlOptions().servicesURL;
}
allowDomains(_local4);
_clip = clip.createEmptyMovieClip(_local6, 10336, false);
_listenChannelName = _listenChannelName + ((Math.floor(new Date().getTime()) + "_") + Math.floor(Math.random() * 99999));
listen();
if (_local3.waitInterval != null) {
clearInterval(_local3.waitInterval);
}
_local3.onLoadError = loadError;
_local3.onLoadStart = function (target_mc) {
this.isLoading = true;
};
_local3.startTime = getTimer();
_local3.wait = function () {
if ((getTimer() - this.startTime) > 10000) {
if (!this.isLoading) {
mochi.as2.MochiServices.disconnect();
mochi.as2.MochiServices.onError.apply(null, ["IOError"]);
}
clearInterval(this.waitInterval);
}
};
_local3.waitInterval = setInterval(_local3, "wait", 1000);
_local5.addListener(_local3);
_local5.loadClip((((((_local4 + "?listenLC=") + _listenChannelName) + "&mochiad_options=") + escape(_root.mochiad_options)) + "&api_version=") + getVersion(), _clip);
_sendChannel = new LocalConnection();
_sendChannel._queue = [];
return(_clip);
}
static function loadError(target_mc, errorCode, httpStatus) {
trace("MochiServices could not load.");
disconnect();
onError.apply(null, [errorCode]);
}
static function onStatus(infoObject) {
if (!(infoObject.level === "error")) {
} else {
_connected = false;
_listenChannel.connect(_listenChannelName);
}
}
static function listen() {
_listenChannel = new LocalConnection();
_listenChannel.handshake = function (args) {
mochi.as2.MochiServices.__set__comChannelName(args.newChannel);
};
_listenChannel.allowDomain = function (d) {
return(true);
};
_listenChannel.allowInsecureDomain = _listenChannel.allowDomain;
_listenChannel._nextcallbackID = 0;
_listenChannel._callbacks = {};
_listenChannel.connect(_listenChannelName);
trace("Waiting for MochiAds services to connect...");
}
static function initComChannels() {
if (!_connected) {
_sendChannel.onStatus = function (infoObject) {
mochi.as2.MochiServices.onStatus(infoObject);
};
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_clip, version:getVersion()});
_listenChannel.onStatus = function (infoObject) {
mochi.as2.MochiServices.onStatus(infoObject);
};
_listenChannel.onReceive = function (pkg) {
var _local5 = pkg.callbackID;
var _local4 = this._callbacks[_local5];
if (!_local4) {
return(undefined);
}
var _local2 = _local4.callbackMethod;
var _local3 = _local4.callbackObject;
if (_local3 && (typeof(_local2) == "string")) {
_local2 = _local3[_local2];
}
if (_local2 != undefined) {
_local2.apply(_local3, pkg.args);
}
delete this._callbacks[_local5];
};
_listenChannel.onEvent = function (pkg) {
switch (pkg.target) {
case "events" :
mochi.as2.MochiEvents.triggerEvent(pkg.event, pkg.args);
break;
case "coins" :
mochi.as2.MochiCoins.triggerEvent(pkg.event, pkg.args);
break;
case "sync" :
mochi.as2.MochiServices.servicesSync.triggerEvent(pkg.event, pkg.args);
}
};
_listenChannel.onError = function () {
mochi.as2.MochiServices.onError.apply(null, ["IOError"]);
};
trace("[SERVICES_API] connected!");
_connecting = false;
_connected = true;
while (_sendChannel._queue.length > 0) {
_sendChannel.send(_sendChannelName, "onReceive", _sendChannel._queue.shift());
}
}
}
static function flush(error) {
var _local1;
var _local2;
while (_sendChannel._queue.length > 0) {
_local1 = _sendChannel._queue.shift();
if (_local1.callbackID != null) {
_local2 = _listenChannel._callbacks[_local1.callbackID];
}
delete _listenChannel._callbacks[_local1.callbackID];
if (error) {
handleError(_local1.args, _local2.callbackObject, _local2.callbackMethod);
}
}
}
static function handleError(args, callbackObject, callbackMethod) {
if (args != null) {
if (args.onError != null) {
args.onError.apply(null, ["NotConnected"]);
}
if ((args.options != null) && (args.options.onError != null)) {
args.options.onError.apply(null, ["NotConnected"]);
}
}
if (callbackMethod != null) {
args = {};
args.error = true;
args.errorCode = "NotConnected";
if ((callbackObject != null) && (typeof(callbackMethod) == "string")) {
callbackObject[callbackMethod](args);
} else if (callbackMethod != null) {
callbackMethod.apply(args);
}
}
}
static function send(methodName, args, callbackObject, callbackMethod) {
if (_connected) {
_sendChannel.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_listenChannel._nextcallbackID});
} else {
if ((_clip == undefined) || (!_connecting)) {
trace("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + methodName);
handleError(args, callbackObject, callbackMethod);
flush(true);
return(undefined);
}
_sendChannel._queue.push({methodName:methodName, args:args, callbackID:_listenChannel._nextcallbackID});
}
_listenChannel._callbacks[_listenChannel._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod};
_listenChannel._nextcallbackID++;
}
static function urlOptions() {
var _local5 = {};
var _local6;
if (_root._url.indexOf("mochiad_options") != -1) {
var _local2 = (_root._url.indexOf("mochiad_options") + "mochiad_options".length) + 1;
_local6 = _root._url.substr(_local2, _root._url.length);
} else if (_root.mochiad_options) {
_local6 = _root.mochiad_options;
}
if (_local6) {
var _local4 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = _local4[_local2].split("=");
_local5[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
return(_local5);
}
static function warnID(bid, leaderboard) {
bid = bid.toLowerCase();
if (bid.length != 16) {
trace(("WARNING: " + (leaderboard ? "board" : "game")) + " ID is not the appropriate length");
return(undefined);
}
if (bid == "1e113c7239048b3f") {
if (leaderboard) {
trace("WARNING: Using testing board ID");
} else {
trace("WARNING: Using testing board ID as game ID");
}
return(undefined);
}
if (bid == "84993a1de4031cd8") {
if (leaderboard) {
trace("WARNING: Using testing game ID as board ID");
} else {
trace("WARNING: Using testing game ID");
}
return(undefined);
}
var _local1 = 0;
while (_local1 < bid.length) {
switch (bid.charAt(_local1)) {
case "0" :
case "1" :
case "2" :
case "3" :
case "4" :
case "5" :
case "6" :
case "7" :
case "8" :
case "9" :
case "a" :
case "b" :
case "c" :
case "d" :
case "e" :
case "f" :
break;
default :
trace("WARNING: Board ID contains illegal characters: " + bid);
return(undefined);
}
_local1++;
}
}
static function addLinkEvent(url, burl, btn, onClick) {
var timeout = 1500;
var t0 = getTimer();
var _local2 = new Object();
_local2.mav = getVersion();
_local2.swfv = btn.getSWFVersion() || 6;
_local2.swfurl = btn._url;
_local2.fv = System.capabilities.version;
_local2.os = System.capabilities.os;
_local2.lang = System.capabilities.language;
_local2.scres = (System.capabilities.screenResolutionX + "x") + System.capabilities.screenResolutionY;
var s = "?";
var _local3 = 0;
for (var _local6 in _local2) {
if (_local3 != 0) {
s = s + "&";
}
_local3++;
s = ((s + _local6) + "=") + escape(_local2[_local6]);
}
if (!(netupAttempted || (_connected))) {
var ping = btn.createEmptyMovieClip("ping", 777);
var _local7 = btn.createEmptyMovieClip("nettest", 778);
netupAttempted = true;
ping.loadMovie("http://x.mochiads.com/linkping.swf?t=" + getTimer());
_local7.onEnterFrame = function () {
if ((ping._totalframes > 0) && (ping._totalframes == ping._framesloaded)) {
delete this.onEnterFrame;
} else if ((getTimer() - t0) > timeout) {
delete this.onEnterFrame;
mochi.as2.MochiServices.netup = false;
}
};
}
var _local4 = btn.createEmptyMovieClip("clk", 1001);
_local4._alpha = 0;
_local4.beginFill(1044735);
_local4.moveTo(0, 0);
_local4.lineTo(0, btn._height);
_local4.lineTo(btn._width, btn._height);
_local4.lineTo(btn._width, 0);
_local4.lineTo(0, 0);
_local4.endFill();
_local4.onRelease = function () {
if (mochi.as2.MochiServices.netup) {
getURL (url + s, "_blank");
} else {
getURL (burl, "_blank");
}
if (onClick != undefined) {
onClick();
}
};
}
static function setContainer(clip) {
}
static function stayOnTop(clip) {
}
static var _servURL = "http://www.mochiads.com/static/lib/services/";
static var _services = "services.swf";
static var _mochiLC = "MochiLC.swf";
static var _listenChannelName = "__ms_";
static var _connecting = false;
static var _connected = false;
static var netup = true;
static var netupAttempted = false;
static var servicesSync = new mochi.as2.MochiSync();
}
Symbol 719 MovieClip [__Packages.mochi.as2.MochiEventDispatcher] Frame 0
class mochi.as2.MochiEventDispatcher
{
var eventTable;
function MochiEventDispatcher () {
eventTable = {};
}
function buildDelegate(thisObject, thatObject) {
var _local2 = {thisObject:thisObject, thatObject:thatObject};
if (thatObject != undefined) {
var funct = ((typeof(thatObject) == "string") ? (thisObject[thatObject]) : (thatObject));
_local2.delegate = function (args) {
funct.call(thisObject, args);
};
} else {
_local2.delegate = thisObject;
}
return(_local2);
}
function compareDelegate(d_A, d_B) {
if ((d_A.thisObject != d_B.thisObject) || (d_A.thatObject != d_B.thatObject)) {
return(false);
}
return(true);
}
function addEventListener(event, thisObject, thatObject) {
removeEventListener(event, thisObject, thatObject);
eventTable[event].push(buildDelegate(thisObject, thatObject));
}
function removeEventListener(event, thisObject, thatObject) {
var _local3 = buildDelegate(thisObject, thatObject);
if (eventTable[event] == undefined) {
eventTable[event] = [];
return(undefined);
}
for (var _local4 in eventTable[event]) {
if (!compareDelegate(eventTable[event][_local4], _local3)) {
continue;
}
eventTable[event].splice(Number(_local4), 1);
}
}
function triggerEvent(event, args) {
if (eventTable[event] == undefined) {
return(undefined);
}
for (var _local4 in eventTable[event]) {
eventTable[event][_local4].delegate(args);
}
}
}
Symbol 720 MovieClip [__Packages.mochi.as2.MochiEvents] Frame 0
class mochi.as2.MochiEvents
{
static var gameStart, levelStart;
function MochiEvents () {
}
static function getVersion() {
return(mochi.as2.MochiServices.getVersion());
}
static function startSession(achievementID) {
mochi.as2.MochiServices.send("events_beginSession", {achievementID:achievementID}, null, null);
}
static function trigger(kind, obj) {
if (obj == undefined) {
obj = {};
} else if (obj.kind != undefined) {
trace("WARNING: optional arguements package contains key 'id', it will be overwritten");
obj.kind = kind;
}
mochi.as2.MochiServices.send("events_triggerEvent", {eventObject:obj}, null, null);
}
static function setNotifications(clip, style) {
var _local2 = {};
for (var _local3 in style) {
_local2[_local3] = style[_local3];
}
_local2.clip = clip;
mochi.as2.MochiServices.send("events_setNotifications", _local2, null, null);
}
static function addEventListener(eventType, thisObject, thatObject) {
_dispatcher.addEventListener(eventType, thisObject, thatObject);
}
static function triggerEvent(eventType, args) {
_dispatcher.triggerEvent(eventType, args);
}
static function removeEventListener(eventType, thisObject, thatObject) {
_dispatcher.removeEventListener(eventType, thisObject, thatObject);
}
static function startGame() {
gameStart = new Date().getTime();
trigger("start_game");
}
static function endGame() {
var _local1 = new Date().getTime() - gameStart;
trigger("end_game", {time:_local1});
}
static function startLevel() {
levelStart = new Date().getTime();
trigger("start_level");
}
static function endLevel() {
var _local1 = new Date().getTime() - levelStart;
trigger("end_level", {time:_local1});
}
static var ACHIEVEMENT_RECEIVED = "AchievementReceived";
static var ALIGN_TOP_LEFT = "ALIGN_TL";
static var ALIGN_TOP = "ALIGN_T";
static var ALIGN_TOP_RIGHT = "ALIGN_TR";
static var ALIGN_LEFT = "ALIGN_L";
static var ALIGN_CENTER = "ALIGN_C";
static var ALIGN_RIGHT = "ALIGN_R";
static var ALIGN_BOTTOM_LEFT = "ALIGN_BL";
static var ALIGN_BOTTOM = "ALIGN_B";
static var ALIGN_BOTTOM_RIGHT = "ALIGN_BR";
static var FORMAT_SHORT = "ShortForm";
static var FORMAT_LONG = "LongForm";
static var _dispatcher = new mochi.as2.MochiEventDispatcher();
}
Symbol 721 MovieClip [__Packages.mochi.as2.MochiCoins] Frame 0
class mochi.as2.MochiCoins
{
function MochiCoins () {
}
static function getVersion() {
return(mochi.as2.MochiServices.getVersion());
}
static function showStore(options) {
mochi.as2.MochiServices.send("coins_showStore", {options:options}, null, null);
}
static function showItem(options) {
if ((options == undefined) || (typeof(options.item) != "string")) {
trace("ERROR: showItem call must pass an Object with an item key");
return(undefined);
}
mochi.as2.MochiServices.send("coins_showItem", {options:options}, null, null);
}
static function showVideo(options) {
if ((options == undefined) || (typeof(options.item) != "string")) {
trace("ERROR: showVideo call must pass an Object with an item key");
return(undefined);
}
mochi.as2.MochiServices.send("coins_showVideo", {options:options}, null, null);
}
static function showLoginWidget(options) {
mochi.as2.MochiServices.setContainer();
mochi.as2.MochiServices.stayOnTop();
mochi.as2.MochiServices.send("coins_showLoginWidget", {options:options});
}
static function hideLoginWidget() {
mochi.as2.MochiServices.send("coins_hideLoginWidget");
}
static function getStoreItems() {
mochi.as2.MochiServices.send("coins_getStoreItems");
}
static function getUserInfo() {
mochi.as2.MochiServices.send("coins_getUserInfo");
}
static function saveUserProperties(properties) {
mochi.as2.MochiServices.send("coins_saveUserProperties", properties);
}
static function addEventListener(eventType, delegate) {
_dispatcher.addEventListener(eventType, delegate);
}
static function triggerEvent(eventType, args) {
_dispatcher.triggerEvent(eventType, args);
}
static function removeEventListener(eventType, delegate) {
_dispatcher.removeEventListener(eventType, delegate);
}
static var LOGGED_IN = "LoggedIn";
static var LOGGED_OUT = "LoggedOut";
static var LOGIN_SHOW = "LoginShow";
static var LOGIN_HIDE = "LoginHide";
static var STORE_SHOW = "StoreShow";
static var STORE_HIDE = "StoreHide";
static var PROFILE_SHOW = "ProfileShow";
static var PROFILE_HIDE = "ProfileHide";
static var PROPERTIES_SAVED = "PropertySaved";
static var WIDGET_LOADED = "WidgetLoaded";
static var ITEM_OWNED = "ItemOwned";
static var ITEM_NEW = "ItemNew";
static var STORE_ITEMS = "StoreItems";
static var USER_INFO = "UserInfo";
static var ERROR = "Error";
static var IO_ERROR = "IOError";
static var NO_USER = "NoUser";
static var PROPERTIES_SIZE = "PropertiesSize";
static var _dispatcher = new mochi.as2.MochiEventDispatcher();
}
Symbol 722 MovieClip [__Packages.mochi.as2.MochiScores] Frame 0
class mochi.as2.MochiScores
{
static var boardID, onClose, onError;
function MochiScores () {
}
static function setBoardID(boardID) {
mochi.as2.MochiServices.warnID(boardID, true);
mochi.as2.MochiScores.boardID = boardID;
mochi.as2.MochiServices.send("scores_setBoardID", {boardID:boardID});
}
static function showLeaderboard(options) {
options.clip = mochi.as2.MochiServices.clip;
if ((options.clip != mochi.as2.MochiServices.__get__clip()) || (mochi.as2.MochiServices.__get__childClip()._target == undefined)) {
mochi.as2.MochiServices.disconnect();
trace("WARNING! This application is attempting to connect to MochiServices inside a showLeaderboard call!");
trace("make sure MochiServices.connect is called as early in the application runtime as possible.");
mochi.as2.MochiServices.connect(mochi.as2.MochiServices.__get__id(), options.clip);
}
delete options.clip;
if (options.name != null) {
if (typeof(options.name) == "object") {
if (options.name.text != undefined) {
options.name = options.name.text;
}
}
}
if (options.score != null) {
if (options.score instanceof TextField) {
if (options.score.text != undefined) {
options.score = options.score.text;
}
} else if (options.score instanceof mochi.as2.MochiDigits) {
options.score = options.score.value;
}
var _local1 = Number(options.score);
if (isNaN(_local1)) {
trace(("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'");
} else if ((_local1 == Number.NEGATIVE_INFINITY) || (_local1 == Number.POSITIVE_INFINITY)) {
trace(("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite");
} else {
if (Math.floor(_local1) != _local1) {
trace(("WARNING: Submitted score '" + options.score) + "' will be truncated");
}
options.score = _local1;
}
}
if (options.onDisplay != null) {
options.onDisplay();
} else {
mochi.as2.MochiServices.__get__clip().stop();
}
if (options.onClose != null) {
onClose = options.onClose;
} else {
onClose = function () {
mochi.as2.MochiServices.__get__clip().play();
};
}
if (options.onError != null) {
onError = options.onError;
} else {
onError = onClose;
}
if (options.boardID == null) {
if (boardID != null) {
options.boardID = boardID;
}
}
mochi.as2.MochiServices.warnID(options.boardID, true);
trace("[MochiScores] NOTE: Security Sandbox Violation errors below are normal");
mochi.as2.MochiServices.send("scores_showLeaderboard", {options:options}, null, doClose);
}
static function closeLeaderboard() {
mochi.as2.MochiServices.send("scores_closeLeaderboard");
}
static function getPlayerInfo(callbackObj, callbackMethod) {
mochi.as2.MochiServices.send("scores_getPlayerInfo", null, callbackObj, callbackMethod);
}
static function submit(score, name, callbackObj, callbackMethod) {
score = Number(score);
if (isNaN(score)) {
trace(("ERROR: Submitted score '" + String(score)) + "' will be rejected, score is 'Not a Number'");
} else if ((score == Number.NEGATIVE_INFINITY) || (score == Number.POSITIVE_INFINITY)) {
trace(("ERROR: Submitted score '" + String(score)) + "' will be rejected, score is an infinite");
} else {
if (Math.floor(score) != score) {
trace(("WARNING: Submitted score '" + String(score)) + "' will be truncated");
}
score = Number(score);
}
mochi.as2.MochiServices.send("scores_submit", {score:score, name:name}, callbackObj, callbackMethod);
}
static function requestList(callbackObj, callbackMethod) {
mochi.as2.MochiServices.send("scores_requestList", null, callbackObj, callbackMethod);
}
static function scoresArrayToObjects(scores) {
var _local5 = {};
var _local1;
var _local4;
var _local2;
var _local6;
for (var _local8 in scores) {
if (typeof(scores[_local8]) == "object") {
if ((scores[_local8].cols != null) && (scores[_local8].rows != null)) {
_local5[_local8] = [];
_local2 = scores[_local8];
_local4 = 0;
while (_local4 < _local2.rows.length) {
_local6 = {};
_local1 = 0;
while (_local1 < _local2.cols.length) {
_local6[_local2.cols[_local1]] = _local2.rows[_local4][_local1];
_local1++;
}
_local5[_local8].push(_local6);
_local4++;
}
} else {
_local5[_local8] = {};
for (var _local7 in scores[_local8]) {
_local5[_local8][_local7] = scores[_local8][_local7];
}
}
} else {
_local5[_local8] = scores[_local8];
}
}
return(_local5);
}
static function doClose(args) {
if (args.error == true) {
if (args.errorCode == undefined) {
args.errorCode = "IOError";
}
onError.apply(null, [args.errorCode]);
} else {
onClose.apply();
}
}
}
Symbol 723 MovieClip [__Packages.mochi.as2.MochiDigits] Frame 0
class mochi.as2.MochiDigits
{
var Encoder, Fragment, Sibling;
function MochiDigits (digit, index) {
Encoder = 0;
setValue(digit, index);
}
function get value() {
return(Number(toString()));
}
function set value(v) {
setValue(v);
//return(value);
}
function addValue(v) {
value = value + v;
}
function setValue(digit, index) {
var _local3 = digit.toString();
if ((index == undefined) || (isNaN(index))) {
index = 0;
}
Fragment = _local3.charCodeAt(index++) ^ Encoder;
if (index < _local3.length) {
Sibling = new mochi.as2.MochiDigits(digit, index);
} else {
Sibling = null;
}
reencode();
}
function reencode() {
var _local2 = int(2147483647 * Math.random());
Fragment = Fragment ^ (_local2 ^ Encoder);
Encoder = _local2;
}
function toString() {
var _local2 = String.fromCharCode(Fragment ^ Encoder);
return(((Sibling != null) ? (_local2.concat(Sibling.toString())) : (_local2)));
}
}
Symbol 724 MovieClip [__Packages.BikeGame] Frame 0
class BikeGame
{
var parent, intersection_type, street, intersection_spawned, warnings_spawned, STREET_START_X, STREET_MAX_X, GOAL_TIME, GOAL_DISTANCE, HAZARD_DISTANCE, CURB_DISTANCE, distance_to_hazard, distance_to_curb, holderArea_mc, bike, hazards, coins_ar, level_type, timeInterval, streetInterval, time;
function BikeGame (parent, goal_distance, intersection_type) {
trace("BikeGame instanciated");
this.parent = parent;
this.intersection_type = intersection_type;
parent.display.MAX_DISTANCE = goal_distance;
street = this.parent.street_mc;
intersection_spawned = false;
warnings_spawned = 0;
STREET_START_X = street._x;
STREET_MAX_X = 800;
GOAL_TIME = _global.time_to_goal;
GOAL_DISTANCE = goal_distance;
HAZARD_DISTANCE = 700;
CURB_DISTANCE = 1500;
distance_to_hazard = 9999;
distance_to_curb = CURB_DISTANCE;
holderArea_mc = parent.createEmptyMovieClip("holderArea_mc", parent.getNextHighestDepth());
bike = new Bike(holderArea_mc, holderArea_mc.getNextHighestDepth(), this);
resetClock();
hazards = new Array();
street.stop();
createHazards();
addMoney(0);
}
function createHazards() {
coins_ar = ["coin_mc", "coin_mc", "coin_mc", "coin_mc", "coin_mc", "coin_mc", "coin_mc", "coin2_mc", "coin2_mc", "coin2_mc"];
var _local3 = ["cone_mc", "box_mc", "puddle_mc", "puddle2_mc", "nails_mc", "pothole_mc", "pothole_small_mc", "bottle_mc", "oilspill_mc"];
level_type = _global.level_type;
switch (_global.level) {
case 1 :
hazard_types = ["squirrel_mc", "squirrel_mc", "squirrel_mc"];
spawnHazard("sidewalk_curb_mc");
break;
case 2 :
hazard_types = _local3.concat(["hydrant_mc"]);
spawnHazard("sidewalk_curb_mc");
break;
case 3 :
driveway_has_cars = false;
if (_global.bell) {
hazard_types = _local3.concat(["car_mc", "car2_mc", "truck_mc"]);
} else {
hazard_types = _local3.concat(["car_mc", "car2_mc", "truck_mc", "pedestrian_mc"]);
}
break;
case 4 :
driveway_has_cars = true;
hazard_types = _local3.concat(["basketball_mc", "car_mc", "car2_mc"]);
break;
case 5 :
driveway_has_cars = false;
if (_global.bell) {
hazard_types = _local3.concat(["squirrel_mc", "basketball_mc", "car2_mc", "car_mc"]);
} else {
hazard_types = _local3.concat(["squirrel_mc", "basketball_mc", "skater_mc", "car2_mc", "car_mc"]);
}
break;
case 6 :
hazard_types = ["squirrel_mc", "rock_mc", "rock_mc", "rock_mc", "rock_mc", "stick_mc", "bigrock_mc"];
spawnHazard("other_racer_1");
if (_global.race_level <= 1) {
break;
}
spawnHazard("other_racer_2");
if (_global.race_level <= 2) {
break;
}
spawnHazard("other_racer_3");
}
if ((!intersection_spawned) && (_global.distance_traveled >= (GOAL_DISTANCE - 2600))) {
_global.distance_traveled = GOAL_DISTANCE - 2600;
intersection_spawned = true;
spawnHazard(intersection_type + "_intersection_mc");
spawnHazard(intersection_type + "_ahead_sign");
}
}
function getKeyInput() {
}
function crash() {
if (level_type == RACE) {
bike.crash();
} else {
destroy();
gotoAndPlay ("crash");
}
}
function spawnRandomHazard() {
if (!NO_HAZARDS) {
spawnHazard(hazard_types[random(hazard_types.length)]);
}
}
function spawnCoin() {
spawnHazard(coins_ar[random(coins_ar.length)]);
}
function spawnHazard(hazardType) {
var _local2 = new Hazard(holderArea_mc, hazardType, holderArea_mc.getNextHighestDepth(), this);
hazards.push(_local2);
}
function resetClock() {
stopClock();
timeInterval = setInterval(this, "clock", 1000);
streetInterval = setInterval(this, "moveStreet", 30);
}
function stopClock() {
time = 0;
displayTime();
clearInterval(timeInterval);
}
function clock() {
if (_global.paused) {
return(undefined);
}
_global.time_remaining--;
displayTime();
if (_global.time_remaining < 0) {
destroy();
gotoAndPlay ("late");
}
}
function displayTime() {
var _local3 = "";
var _local5;
var _local4;
var _local6;
time = GOAL_TIME - _global.time_remaining;
time = _global.time_remaining;
_local4 = time % 60;
_local5 = Math.floor(time / 60) % 60;
_local6 = Math.floor(time / 3600) % 24;
if (_local4 < 10) {
_local3 = (_local5 + ":0") + _local4;
} else {
_local3 = (_local5 + ":") + _local4;
}
if (_local5 < 10) {
_local3 = (_local6 + ":0") + _local3;
} else {
_local3 = (_local6 + ":") + _local3;
}
parent.display.clock.text = _local3;
}
function gimmieFriction() {
if ((level_type == SIDEWALK) && (((bike.getY() > 264) && (bike.getY() < 500)) || (bike.getY() > 550))) {
bike.friction(0.2);
} else if ((level_type == STREET) && (bike.getY() > 177)) {
bike.friction(0.2);
} else if (level_type == RACE) {
bike.friction(0.2);
} else {
bike.friction(0.5);
}
}
function moveStreet() {
getKeyInput();
street._x = street._x + bike.getSpeed();
_global.distance_traveled = _global.distance_traveled + bike.getSpeed();
distance_to_hazard = distance_to_hazard + bike.getSpeed();
distance_to_curb = distance_to_curb + bike.getSpeed();
parent.display.distance = Math.round(_global.distance_traveled);
parent.display.speed_txt.text = Math.round(bike.getSpeed());
gimmieFriction();
for (var _local4 in hazards) {
hazards[_local4].moveX(bike.getSpeed());
if ((!hazards[_local4].isRacer()) && (hazards[_local4].getX() > 1500)) {
removeHazardAt(_local4);
}
}
if (street._x > STREET_MAX_X) {
street._x = street._x - (STREET_MAX_X - STREET_START_X);
}
if ((distance_to_hazard >= HAZARD_DISTANCE) && (_global.distance_traveled <= (GOAL_DISTANCE - 2600))) {
distance_to_hazard = 0;
spawnRandomHazard();
}
if ((level_type != RACE) && (random(200) <= bike.getSpeed())) {
spawnCoin();
}
if ((!intersection_spawned) && (_global.distance_traveled >= (GOAL_DISTANCE - 2600))) {
intersection_spawned = true;
spawnHazard(intersection_type + "_intersection_mc");
spawnHazard(intersection_type + "_ahead_sign");
}
if ((((level_type == STREET) && (_global.distance_traveled <= (GOAL_DISTANCE - 4200))) && (!intersection_spawned)) && (distance_to_curb >= CURB_DISTANCE)) {
distance_to_curb = 0;
if (level_type == STREET) {
if (driveway_has_cars && (random(5) <= 2)) {
spawnHazard("driveway_car_mc");
}
spawnHazard("driveway_mc");
} else {
spawnHazard("safe_driveway_mc");
}
}
if ((intersection_type == "finishline") && (_global.distance_traveled >= GOAL_DISTANCE)) {
_global.place = 1;
for (var _local3 in hazards) {
if (hazards[_local3].isRacer() && (hazards[_local3].getX() < bike.getX())) {
_global.place++;
}
}
if (_global.place == 1) {
destroy();
gotoAndStop ("finish");
return(undefined);
}
destroy();
gotoAndStop ("finish_lose");
return(undefined);
}
if (((!SIGNAL_NEEDED) && (intersection_spawned)) && (_global.distance_traveled >= (GOAL_DISTANCE - 500))) {
switch (intersection_type) {
case "stop" :
bike.handSignal("stop");
gotoAndStop ("goodstop");
destroy();
return(undefined);
case "right" :
bike.handSignal("right");
gotoAndStop ("goodright");
destroy();
return(undefined);
case "left" :
bike.handSignal("left");
gotoAndStop ("goodleft");
destroy();
return(undefined);
case "sidewalk" :
bike.handSignal("stop");
gotoAndStop ("sidewalkstop");
destroy();
return(undefined);
}
return(undefined);
}
if ((((bike.getSpeed() == 0) && (intersection_spawned)) && (intersection_type == "stop")) && (_global.distance_traveled >= (GOAL_DISTANCE - 500))) {
destroy();
gotoAndStop ("goodstop");
return(undefined);
}
if ((((bike.getSpeed() == 0) && (intersection_type == "sidewalk")) && (intersection_spawned)) && (_global.distance_traveled >= (GOAL_DISTANCE - 500))) {
destroy();
gotoAndPlay ("sidewalkstop");
return(undefined);
}
if ((((intersection_type != "stop") && (bike.getSignal() == intersection_type)) && (intersection_spawned)) && (_global.distance_traveled >= (GOAL_DISTANCE - 100))) {
destroy();
gotoAndPlay("good" + intersection_type);
return(undefined);
}
if (((intersection_spawned && (level_type == SIDEWALK)) && (intersection_type == "sidewalk")) && (_global.distance_traveled >= (GOAL_DISTANCE - 100))) {
destroy();
gotoAndPlay ("sidewalkaccident");
return(undefined);
}
if ((intersection_spawned && (level_type != RACE)) && (_global.distance_traveled >= (GOAL_DISTANCE - 100))) {
destroy();
gotoAndPlay ("accident");
return(undefined);
}
parent.display.swapDepths(parent.getNextHighestDepth());
}
function removeHazardAt(index) {
hazards[index].destroy();
hazards.splice(index, 1);
}
function addMoney(value) {
if (isNaN(_global.money)) {
_global.money = 0;
}
if (value > 0) {
_global.coin_snd.start();
_global.money_earned = _global.money_earned + value;
}
_global.money = _global.money + value;
trace("value: " + value);
trace("_global.money : " + _global.money);
parent.display.money.text = formatMoney(_global.money);
}
function formatMoney(m) {
var _local1 = m % 100;
trace("cents:" + _local1);
var _local3 = (m - _local1) / 100;
trace("dollars:" + _local3);
var _local2;
if (_local1 == 0) {
_local2 = "00";
trace("cents is 0");
} else if (_local1 < 10) {
_local2 = "0" + _local1;
trace("cents < 10");
} else {
_local2 = String(_local1);
trace("cents is cents");
}
trace("cents_str:" + _local2);
return((("$" + _local3) + ".") + _local2);
}
function destroy() {
bike.destroy();
for (var _local2 in hazards) {
removeHazardAt(_local2);
}
street._x = street._x - STREET_START_X;
holderArea_mc.removeMovieClip();
clearInterval(timeInterval);
clearInterval(streetInterval);
}
var hazard_types = [];
var NO_HAZARDS = false;
var SIDEWALK = 1;
var STREET = 2;
var RACE = 3;
var driveway_has_cars = false;
var SIGNAL_NEEDED = false;
}
Symbol 725 MovieClip [__Packages.Bike] Frame 0
class Bike extends Object
{
var parent, depth, bike_mc, actionInterval, fatigue, signal_timer, MAX_FATIGUE, MAX_SPEED, started_biking, keyListener, current_signal;
function Bike (holder, depth, parent) {
super();
this.parent = parent;
this.depth = depth;
activate();
bike_mc = bike_mc.createEmptyMovieClip("bike", holder.getNextHighestDepth());
bike_mc = holder.attachMovie("bike_mc", "bike", depth);
setPosition(600, 300);
}
function activate() {
_global.squeeling_tire = true;
clearInterval(actionInterval);
actionInterval = setInterval(this, "action", 30);
fatigue = 0;
signal_timer = 0;
MAX_FATIGUE = 0;
if (_global.level_type == RACE) {
MAX_FATIGUE = 50;
if (_global.bad_snack) {
MAX_FATIGUE = MAX_FATIGUE + 5;
}
if (_global.good_snack) {
MAX_FATIGUE = MAX_FATIGUE + 10;
}
}
TURN_SPEED = 2;
if (_global.pump) {
TURN_SPEED = 4;
}
MAX_SPEED = 40;
if (_global.good_wheel) {
MAX_SPEED = MAX_SPEED + 5;
}
if (_global.great_wheel) {
MAX_SPEED = MAX_SPEED + 10;
}
ACCELERATION = 2;
if (_global.oil) {
ACCELERATION = 3;
}
parent.parent.display.MAX_FATIGUE = MAX_FATIGUE;
started_biking = false;
handSignal("main");
keyListener = new Object();
keyListener.parent = this;
keyListener.onKeyDown = function () {
this.parent.signalControl();
};
Key.addListener(keyListener);
}
function action() {
var _local3 = Math.round((bike_mc._y * 100000) + bike_mc._x) + 10000000;
bike_mc.swapDepths(_local3);
parent.parent.fatigue_text.text = fatigue;
parent.parent.display.fatigue = fatigue;
if (signal_timer > 0) {
signal_timer--;
} else if (signal_timer == 0) {
signal_timer = -1;
handSignal("main");
current_signal = "main";
_global.current_signal = "main";
}
controls();
}
function friction(coef) {
speed = speed - coef;
if ((coef >= 0.5) & (speed >= 14)) {
speed = 14;
}
if (speed < MIN_SPEED) {
speed = MIN_SPEED;
}
}
function signalControl() {
if (_global.bell && (Key.getCode() == 32)) {
_global.bike_bell_snd.start();
}
}
function controls() {
if (((speed > 0) && (upKey())) && (bike_mc._y > MIN_HEIGHT)) {
bike_mc._x = bike_mc._x - TURN_SPEED;
bike_mc._y = bike_mc._y - (2 * TURN_SPEED);
} else if (((speed > 0) && (downKey())) && (bike_mc._y < MAX_HEIGHT)) {
bike_mc._x = bike_mc._x + TURN_SPEED;
bike_mc._y = bike_mc._y + (2 * TURN_SPEED);
}
if ((_global.level_type == RACE) && (fatigue >= MAX_FATIGUE)) {
ADJUSTED_MAX_SPEED = MAX_SPEED / 2;
parent.parent.display.exhausted._visible = true;
} else if (fatigue <= (MAX_FATIGUE / 2)) {
ADJUSTED_MAX_SPEED = MAX_SPEED;
parent.parent.display.exhausted._visible = false;
}
if (leftKey()) {
_global.squeeling_tire = false;
if (fatigue > (MAX_FATIGUE / 0.75)) {
speed++;
} else {
speed = speed + ACCELERATION;
}
if ((speed >= 2) && (fatigue < MAX_FATIGUE)) {
fatigue++;
}
if (speed > ADJUSTED_MAX_SPEED) {
speed = ADJUSTED_MAX_SPEED;
} else if (speed >= 5) {
started_biking = true;
} else if (speed < 0) {
speed = 0;
}
handSignal("main");
} else if (rightKey()) {
speed = speed - 2;
tireSqueel();
handSignal("stop");
if (fatigue > 0) {
fatigue--;
}
if (speed < MIN_SPEED) {
speed = MIN_SPEED;
started_biking = false;
handSignal("main");
}
} else {
fatigue = fatigue - 0.5;
}
if (fatigue < 0) {
fatigue = 0;
}
bike_mc.speed = speed;
}
function tireSqueel() {
if (!_global.squeeling_tire) {
_global.squeeling_tire = true;
_global.bike_squeel_snd.start();
}
}
function handSignal(signal_type) {
if (signal_type != "main") {
signal_timer = 100;
}
current_signal = signal_type;
bike_mc.signal_state = signal_type;
_global.current_signal = signal_type;
}
function crash() {
speed = 0.5;
}
function getSignal() {
return(current_signal);
}
function getSpeed() {
return(speed);
}
function getX() {
return(bike_mc._x);
}
function getY() {
return(bike_mc._y);
}
function getHitClip() {
return(bike_mc.hitArea_mc);
}
function setPosition(newX, newY) {
bike_mc._x = newX;
bike_mc._y = newY;
}
function downKey() {
return(Key.isDown(40) || (Key.isDown(83)));
}
function upKey() {
return(Key.isDown(38) || (Key.isDown(87)));
}
function rightKey() {
return(Key.isDown(39) || (Key.isDown(68)));
}
function leftKey() {
return(Key.isDown(37) || (Key.isDown(65)));
}
function destroy() {
bike_mc.removeMovieClip();
clearInterval(actionInterval);
}
var TURN_SPEED = -1;
var MIN_SPEED = 0;
var ADJUSTED_MAX_SPEED = 40;
var MIN_HEIGHT = 150;
var MAX_HEIGHT = 600;
var ACCELERATION = 2;
var speed = 0;
var SIDEWALK = 1;
var STREET = 2;
var RACE = 3;
}
Symbol 726 MovieClip [__Packages.Hazard] Frame 0
class Hazard
{
var parent, depth, hazardType, FLAT_DEPTH, object_mc, speed, checkInterval;
function Hazard (holder, hazardType, depth, parent) {
this.parent = parent;
this.depth = depth;
this.hazardType = hazardType;
if ((((((((hazardType == "driveway_mc") || (hazardType == "safe_driveway_mc")) || (hazardType == "sidewalk_intersection_mc")) || (hazardType == "puddle_mc")) || (hazardType == "puddle2_mc")) || (hazardType == "left_intersection_mc")) || (hazardType == "right_intersection_mc")) || (hazardType == "stop_intersection_mc")) {
FLAT_DEPTH = 1;
} else {
FLAT_DEPTH = 10000000 /* 0x989680 */;
}
if (!isNaN(_global.auto_inc)) {
_global.auto_inc++;
} else {
_global.auto_inc = 0;
}
object_mc = holder.attachMovie(hazardType, hazardType + _global.auto_inc, depth);
activate();
}
function activate() {
object_mc._x = -50;
switch (hazardType) {
case "hydrant_mc" :
object_mc._y = 380;
break;
case "sidewalk_curb_mc" :
SLOW_OBSTICAL = true;
object_mc._y = 497.6;
object_mc._x = 0;
break;
case "cone_mc" :
case "pothole_mc" :
case "pothole_small_mc" :
case "bottle_mc" :
case "nails_mc" :
case "oilspill_mc" :
case "box_mc" :
object_mc._y = random(350) + 260;
break;
case "puddle_mc" :
case "puddle2_mc" :
object_mc._y = random(350) + 260;
PUDDLE = true;
break;
case "rock_mc" :
case "stick_mc" :
case "bigrock_mc" :
object_mc._y = random(600);
break;
case "pedestrian_mc" :
case "basketball_mc" :
case "squirrel_mc" :
case "skater_mc" :
object_mc._y = random(40) + 200;
break;
case "driveway_mc" :
case "safe_driveway_mc" :
case "left_intersection_mc" :
case "right_intersection_mc" :
case "stop_intersection_mc" :
case "grate_mc" :
case "bikelane_mc" :
SLOW_OBSTICAL = true;
object_mc._y = 178.9;
object_mc._x = -1800;
break;
case "stop_ahead_sign" :
case "right_ahead_sign" :
case "left_ahead_sign" :
object_mc._y = 285;
object_mc._x = 0;
break;
case "sidewalk_ahead_sign" :
object_mc._y = 264;
object_mc._x = 0;
break;
case "driveway_car_mc" :
object_mc._y = 189.4;
object_mc._x = -1530;
break;
case "truck_mc" :
object_mc._y = 310;
break;
case "finishline_intersection_mc" :
case "sidewalk_intersection_mc" :
object_mc._y = 178.9;
object_mc._x = -2000;
break;
case "car_mc" :
case "car2_mc" :
object_mc._y = 590;
_global.passing_car_snd.start();
break;
case "other_racer_1" :
RACER = true;
speed = 0;
object_mc._y = 490;
object_mc._x = 590;
setMaxSpeed();
break;
case "other_racer_2" :
RACER = true;
speed = 0;
object_mc._y = 360;
object_mc._x = 560;
setMaxSpeed();
break;
case "other_racer_3" :
RACER = true;
speed = 0;
object_mc._y = 250;
object_mc._x = 540;
setMaxSpeed();
break;
case "coin2_mc" :
coin_value = 100;
COIN = true;
object_mc._y = random(350) + 260;
break;
case "coin_mc" :
COIN = true;
coin_value = 10;
object_mc._y = random(350) + 260;
}
clearInterval(checkInterval);
checkInterval = setInterval(this, "collisionCheck", 30);
}
function setMaxSpeed() {
if (_global.race_level >= 3) {
MAX_SPEED = 45;
trace("final race, racers are really fast! MAX_SPEED is " + MAX_SPEED);
} else if (_global.race_level == 2) {
MAX_SPEED = 40;
trace("second race, racers are a bit faster! MAX_SPEED is " + MAX_SPEED);
} else {
MAX_SPEED = 35;
trace("first race, racers are a not too fast. MAX_SPEED is " + MAX_SPEED);
}
}
function moveX(move_amount) {
object_mc._x = object_mc._x + move_amount;
}
function getX() {
return(object_mc._x);
}
function getY() {
return(object_mc._y);
}
function collisionCheck() {
if (RACER) {
race();
}
if (getHitClip().hitTest(parent.bike.getHitClip())) {
_global.cur_hazard = hazardType;
if (COIN) {
parent.addMoney(coin_value);
object_mc._visible = false;
destroy();
return(undefined);
}
if (SLOW_OBSTICAL) {
parent.bike.crash();
} else if (PUDDLE) {
playSplash();
} else {
parent.crash();
}
}
var _local3 = Math.round((getBaseY() * 100000) + getBaseX()) + FLAT_DEPTH;
object_mc.swapDepths(_local3);
}
function race() {
if (speed < MAX_SPEED) {
speed++;
object_mc.racer.bike_mc = speed;
}
object_mc._x = object_mc._x - speed;
race_distance = race_distance + speed;
parent.parent.display[("r" + Number(hazardType.charAt(12))) + "_dist"] = race_distance;
for (var _local2 in parent.hazards) {
if (parent.hazards[_local2] != this) {
if (parent.hazards[_local2].getHitClip().hitTest(object_mc.danger_zone)) {
if (parent.hazards[_local2].getY() < 350) {
object_mc._y = object_mc._y + 5;
} else {
object_mc._y = object_mc._y - 5;
}
} else if (parent.hazards[_local2].getHitClip().hitTest(getHitClip())) {
speed = 0;
}
}
}
if (parent.bike.getHitClip().hitTest(object_mc.danger_zone)) {
speed = 0;
}
}
function isRacer() {
return(RACER);
}
function isCoin() {
return(COIN);
}
function getBaseY() {
if (object_mc.hazard_mc) {
return(object_mc._y + object_mc.hazard_mc._y);
}
return(object_mc._y);
}
function getBaseX() {
if (object_mc.hazard_mc) {
return(object_mc._x + object_mc.hazard_mc._x);
}
return(object_mc._x);
}
function getHitClip() {
return(object_mc.hazard_mc);
}
function getMovieClip() {
return(object_mc);
}
function getDepth() {
return(object_mc.getDepth());
}
function setPosition(newX, newY) {
object_mc._x = newX;
object_mc._y = newY;
}
function playSplash() {
if (!played_puddle) {
played_puddle = true;
_global.puddle_snd.start();
}
}
function destroy() {
object_mc.removeMovieClip();
clearInterval(checkInterval);
}
var RACER = false;
var COIN = false;
var MAX_SPEED = 35;
var race_distance = 0;
var SIDEWALK = 1;
var STREET = 2;
var RACE = 3;
var coin_value = 0;
var SLOW_OBSTICAL = false;
var PUDDLE = false;
var played_puddle = false;
}
Symbol 92 MovieClip Frame 1
stop();
Symbol 127 MovieClip [car_mc] Frame 61
stop();
Symbol 158 MovieClip [car2_mc] Frame 61
stop();
Symbol 163 MovieClip [skater_mc] Frame 61
stop();
Symbol 171 MovieClip [truck_mc] Frame 1
gotoAndPlay(random(50) + 1);
Symbol 193 MovieClip Frame 1
stop();
Symbol 193 MovieClip Frame 12
stop();
Symbol 200 MovieClip Frame 1
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 200 MovieClip Frame 7
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 200 MovieClip Frame 13
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 200 MovieClip Frame 20
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 228 MovieClip Frame 1
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 228 MovieClip Frame 7
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 228 MovieClip Frame 13
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 228 MovieClip Frame 20
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 233 MovieClip Frame 1
stop();
Symbol 233 MovieClip Frame 12
stop();
Symbol 243 MovieClip Frame 1
if ((_global.current_kid == "kid1") || (_global.current_kid == "kid2")) {
gotoAndStop ("kid3");
} else {
gotoAndStop ("kid2");
}
this.onEnterFrame = function () {
if ((_global.current_kid == "kid1") || (_global.current_kid == "kid2")) {
gotoAndStop ("kid3");
} else {
gotoAndStop ("kid2");
}
};
stop();
Symbol 243 MovieClip Frame 10
gotoAndStop ("Ramon");
this.onEnterFrame = function () {
gotoAndStop ("Ramon");
};
stop();
Symbol 245 MovieClip [basketball_mc] Frame 10
_global.basketball_snd.start();
Symbol 245 MovieClip [basketball_mc] Frame 20
_global.basketball_snd.start();
Symbol 245 MovieClip [basketball_mc] Frame 30
_global.basketball_snd.start();
Symbol 245 MovieClip [basketball_mc] Frame 40
_global.basketball_snd.start();
Symbol 245 MovieClip [basketball_mc] Frame 50
_global.basketball_snd.start();
stop();
Symbol 251 MovieClip [squirrel_mc] Frame 90
stop();
Symbol 264 MovieClip Frame 1
stop();
if (_global.great_helmet) {
_visible = true;
gotoAndStop ("great_helmet");
}
Symbol 264 MovieClip Frame 12
stop();
Symbol 275 MovieClip Frame 1
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 275 MovieClip Frame 7
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 275 MovieClip Frame 13
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 275 MovieClip Frame 20
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
Symbol 289 MovieClip Frame 1
stop();
Symbol 289 MovieClip Frame 12
stop();
Symbol 308 MovieClip Frame 1
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 308 MovieClip Frame 7
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 308 MovieClip Frame 13
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 308 MovieClip Frame 20
this.onEnterFrame = function () {
gotoAndStop(_global.current_signal);
};
gotoAndStop(_global.current_signal);
stop();
Symbol 318 MovieClip Frame 1
gotoAndStop(_global.current_kid);
anim.helmet_mc._visible = Boolean(_global.good_helmet || (_global.great_helmet));
this.onEnterFrame = function () {
anim.helmet_mc._visible = Boolean(_global.good_helmet || (_global.great_helmet));
gotoAndStop(_global.current_kid);
if (_global.great_helmet) {
anim.helmet_mc.gotoAndStop("great_helmet");
}
};
stop();
Symbol 318 MovieClip Frame 10
gotoAndStop(_global.current_kid);
anim.helmet_mc._visible = Boolean(_global.good_helmet || (_global.great_helmet));
this.onEnterFrame = function () {
anim.helmet_mc._visible = Boolean(_global.good_helmet || (_global.great_helmet));
gotoAndStop(_global.current_kid);
if (_global.great_helmet) {
anim.helmet_mc.gotoAndStop("great_helmet");
}
};
stop();
Symbol 318 MovieClip Frame 18
gotoAndStop(_global.current_kid);
anim.helmet_mc._visible = Boolean(_global.good_helmet || (_global.great_helmet));
this.onEnterFrame = function () {
anim.helmet_mc._visible = Boolean(_global.good_helmet || (_global.great_helmet));
gotoAndStop(_global.current_kid);
if (_global.great_helmet) {
anim.helmet_mc.gotoAndStop("great_helmet");
}
};
stop();
Symbol 318 MovieClip Frame 25
gotoAndStop(_global.current_kid);
anim.helmet_mc._visible = Boolean(_global.good_helmet || (_global.great_helmet));
this.onEnterFrame = function () {
anim.helmet_mc._visible = Boolean(_global.good_helmet || (_global.great_helmet));
gotoAndStop(_global.current_kid);
if (_global.great_helmet) {
anim.helmet_mc.gotoAndStop("great_helmet");
}
};
stop();
Symbol 319 MovieClip [bike_mc] Frame 1
function animationControl() {
bike_mc.signal_mc.gotoAndStop(signal_state);
if (speed <= 0) {
gotoAndStop ("stop");
} else if (speed <= 10) {
gotoAndStop ("slow");
} else if (speed <= 20) {
gotoAndStop ("medium");
} else if (speed <= 30) {
gotoAndStop ("medium");
} else if (speed <= 40) {
gotoAndStop ("fast");
}
}
this.onEnterFrame = animationControl;
var signal_state = "main";
Symbol 319 MovieClip [bike_mc] Frame 10
stop();
bike_mc.anim.stop();
bike_mc.backwheel_mc.stop();
bike_mc.frontwheel_mc.stop();
Symbol 319 MovieClip [bike_mc] Frame 19
stop();
bike_mc.anim.play();
bike_mc.frontwheel_mc.play();
bike_mc.backwheel_mc.play();
Symbol 319 MovieClip [bike_mc] Frame 29
stop();
bike_mc.anim.play();
bike_mc.frontwheel_mc.play();
bike_mc.backwheel_mc.play();
Symbol 319 MovieClip [bike_mc] Frame 39
stop();
bike_mc.anim.play();
bike_mc.frontwheel_mc.play();
bike_mc.backwheel_mc.play();
Symbol 320 MovieClip Frame 1
if (_global.current_kid == "kid1") {
gotoAndStop ("kid2");
} else {
gotoAndStop ("kid1");
}
this.onEnterFrame = function () {
if (_global.current_kid == "kid1") {
gotoAndStop ("kid2");
} else {
gotoAndStop ("kid1");
}
};
stop();
Symbol 320 MovieClip Frame 10
this.onEnterFrame();
this.onEnterFrame = function () {
gotoAndStop ("Ramon");
};
stop();
Symbol 324 MovieClip [driveway_car_mc] Frame 40
gotoAndPlay(random(60) + 1);
Symbol 324 MovieClip [driveway_car_mc] Frame 92
stop();
Symbol 347 MovieClip Frame 1
trace("_global.current_kid :" + _global.current_kid);
if (_global.current_kid == "kid4") {
gotoAndStop ("kid3");
} else {
gotoAndStop ("kid4");
}
this.onEnterFrame = function () {
if (_global.current_kid == "kid4") {
gotoAndStop ("kid3");
} else {
gotoAndStop ("kid4");
}
};
stop();
Symbol 347 MovieClip Frame 10
gotoAndStop ("Keisha");
this.onEnterFrame = function () {
gotoAndStop ("Keisha");
};
stop();
Symbol 381 MovieClip Frame 1
stop();
Symbol 385 MovieClip Frame 1
stop();
Symbol 390 MovieClip Frame 1
gotoAndPlay(random(20));
Symbol 390 MovieClip Frame 39
if (random(4) != 1) {
gotoAndPlay (1);
}
Symbol 392 MovieClip Frame 1
gotoAndPlay(random(20));
Symbol 392 MovieClip Frame 39
if (random(4) != 1) {
gotoAndPlay (1);
}
Symbol 394 MovieClip Frame 1
gotoAndPlay(random(20));
Symbol 394 MovieClip Frame 39
if (random(4) != 1) {
gotoAndPlay (1);
}
Symbol 396 MovieClip Frame 1
gotoAndPlay(random(20));
Symbol 396 MovieClip Frame 39
if (random(4) != 1) {
gotoAndPlay (1);
}
Symbol 420 MovieClip Frame 1
stop();
Symbol 420 MovieClip Frame 9
stop();
bike_mc.anim.play();
bike_mc.frontwheel_mc.play();
bike_mc.backwheel_mc.play();
bike_mc.anim.helmet_mc._visible = false;
Symbol 424 MovieClip Frame 1
stop();
Symbol 424 MovieClip Frame 8
stop();
bike_mc.anim.play();
bike_mc.frontwheel_mc.play();
bike_mc.backwheel_mc.play();
bike_mc.anim.helmet_mc._visible = false;
Symbol 428 MovieClip Frame 1
stop();
Symbol 428 MovieClip Frame 8
stop();
bike_mc.anim.play();
bike_mc.frontwheel_mc.play();
bike_mc.backwheel_mc.play();
bike_mc.anim.helmet_mc._visible = false;
Symbol 432 MovieClip Frame 1
stop();
Symbol 432 MovieClip Frame 8
stop();
bike_mc.anim.play();
bike_mc.frontwheel_mc.play();
bike_mc.backwheel_mc.play();
bike_mc.anim.helmet_mc._visible = false;
Symbol 494 MovieClip Frame 1
function setup() {
if (_global.level_type != STREET) {
right_btn._visible = (left_btn._visible = (stop_btn._visible = false));
}
if (_global.level_type == RACE) {
clock_mc._visible = (clock._visible = false);
}
}
exhausted._visible = false;
var energy = 100;
var SIDEWALK = 1;
var STREET = 2;
var RACE = 3;
this.onEnterFrame = function () {
energy = MAX_FATIGUE - fatigue;
dist_indicator._x = 195.3 - ((182.4 * distance) / MAX_DISTANCE);
if (_global.level_type == RACE) {
fatigue_label._visible = true;
fat_indicator._width = (206 * energy) / MAX_FATIGUE;
fat_indicator.tint._alpha = Math.round((fatigue / MAX_FATIGUE) * 100);
racer1._x = 195.3 - ((182.4 * r1_dist) / MAX_DISTANCE);
racer2._x = 195.3 - ((182.4 * r2_dist) / MAX_DISTANCE);
racer3._x = 195.3 - ((182.4 * r3_dist) / MAX_DISTANCE);
} else {
racer1._visible = false;
racer2._visible = false;
racer3._visible = false;
exhausted._visible = false;
fatigue_label._visible = (fat_indicator._visible = false);
}
};
setup();
Symbol 512 MovieClip Frame 1
function setText(new_text) {
var _local1 = 10;
var _local5 = 10;
var _local4 = 5;
var _local3 = 5;
var _local2 = balloon_bg._y + balloon_bg._height;
balloon_text.htmlText = ("<b>" + new_text) + "</b>";
balloon_text.autoSize = true;
balloon_bg._width = balloon_text._width + _local1;
balloon_bg._height = balloon_text._height + _local5;
balloon_bg._y = _local2 - balloon_bg._height;
balloon_text._x = balloon_bg._x + _local3;
balloon_text._y = balloon_bg._y + _local4;
}
Symbol 515 MovieClip Frame 1
function setText(new_text) {
var _local1 = 10;
var _local5 = 10;
var _local4 = 5;
var _local3 = 5;
var _local2 = balloon_bg._y + balloon_bg._height;
balloon_text.htmlText = ("<b>" + new_text) + "</b>";
balloon_text.autoSize = true;
balloon_bg._width = balloon_text._width + _local1;
balloon_bg._height = balloon_text._height + _local5;
balloon_bg._y = _local2 - balloon_bg._height;
balloon_text._x = balloon_bg._x + _local3;
balloon_text._y = balloon_bg._y + _local4;
}
Symbol 518 MovieClip Frame 1
function setText(new_text) {
var _local1 = 10;
var _local5 = 10;
var _local4 = 5;
var _local3 = 5;
var _local2 = balloon_bg._y + balloon_bg._height;
balloon_text.htmlText = ("<b>" + new_text) + "</b>";
balloon_text.autoSize = true;
balloon_bg._width = balloon_text._width + _local1;
balloon_bg._height = balloon_text._height + _local5;
balloon_bg._y = _local2 - balloon_bg._height;
balloon_text._x = balloon_bg._x + _local3;
balloon_text._y = balloon_bg._y + _local4;
}
Symbol 521 MovieClip Frame 1
function setText(new_text) {
var _local1 = 10;
var _local5 = 10;
var _local4 = 5;
var _local3 = 5;
var _local2 = balloon_bg._y + balloon_bg._height;
balloon_text.htmlText = ("<b>" + new_text) + "</b>";
balloon_text.autoSize = true;
balloon_bg._width = balloon_text._width + _local1;
balloon_bg._height = balloon_text._height + _local5;
balloon_bg._y = _local2 - balloon_bg._height;
balloon_text._x = balloon_bg._x + _local3;
balloon_text._y = balloon_bg._y + _local4;
}
Symbol 572 MovieClip Frame 1
stop();
Symbol 574 MovieClip Frame 1
stop();
Symbol 574 MovieClip Frame 6
stop();
Symbol 574 MovieClip Frame 11
stop();
Symbol 576 MovieClip Frame 1
stop();
Symbol 578 MovieClip Frame 1
stop();
Symbol 578 MovieClip Frame 6
stop();
Symbol 578 MovieClip Frame 11
stop();
Symbol 588 MovieClip Frame 1
function setup() {
if (_global.level_type != STREET) {
right_btn._visible = (left_btn._visible = (stop_btn._visible = false));
}
if (_global.level_type == RACE) {
clock_mc._visible = (clock._visible = false);
}
if (_global.race_level < 3) {
racer3._visible = false;
if (_global.race_level < 2) {
racer2._visible = false;
}
}
}
exhausted._visible = false;
var energy = 100;
var SIDEWALK = 1;
var STREET = 2;
var RACE = 3;
this.onEnterFrame = function () {
energy = MAX_FATIGUE - fatigue;
dist_indicator._x = 195.3 - ((182.4 * distance) / MAX_DISTANCE);
if (_global.level_type == RACE) {
fatigue_label._visible = true;
fat_indicator._width = (206 * energy) / MAX_FATIGUE;
fat_indicator.tint._alpha = Math.round((fatigue / MAX_FATIGUE) * 100);
racer1._x = 195.3 - ((182.4 * r1_dist) / MAX_DISTANCE);
if (_global.race_level >= 2) {
racer2._x = 195.3 - ((182.4 * r2_dist) / MAX_DISTANCE);
if (_global.race_level >= 3) {
racer3._x = 195.3 - ((182.4 * r3_dist) / MAX_DISTANCE);
} else {
racer3._visible = false;
}
} else {
racer2._visible = false;
}
} else {
racer1._visible = false;
racer2._visible = false;
racer3._visible = false;
exhausted._visible = false;
fatigue_label._visible = (fat_indicator._visible = false);
}
};
mutesound_btn.onRelease = function () {
if (_global.sound_muted) {
_global.basketball_snd.setVolume(100);
_global.sound_muted = false;
mutesound_btn.gotoAndStop("on");
} else {
_global.basketball_snd.setVolume(0);
_global.sound_muted = true;
mutesound_btn.gotoAndStop("off");
}
};
mutemusic_btn.onRelease = function () {
if (_global.music_muted) {
_global.biking_music_snd.setVolume(100);
_global.music_muted = false;
mutemusic_btn.gotoAndStop("on");
} else {
_global.biking_music_snd.setVolume(0);
_global.music_muted = true;
mutemusic_btn.gotoAndStop("off");
}
};
if (_global.sound_muted) {
mutesound_btn.gotoAndStop("off");
} else {
mutesound_btn.gotoAndStop("on");
}
if (_global.music_muted) {
mutemusic_btn.gotoAndStop("off");
} else {
mutemusic_btn.gotoAndStop("on");
}
setup();
Symbol 603 MovieClip Frame 1
var depth = this.getNextHighestDepth();
var object_mc = new MovieClip();
if ((_global.cur_hazard != "driveway_mc") && (_global.cur_hazard != "safe_driveway_mc")) {
object_mc = object_mc.createEmptyMovieClip("object_mc" + depth, holder.getNextHighestDepth());
object_mc = hazard_mc.attachMovie(_global.cur_hazard, _global.cur_hazard + depth, depth);
}
if (_global.cur_hazard == "hydrant_mc") {
object_mc._y = -100;
object_mc._x = 170;
}
if ((_global.cur_hazard == "car_mc") || (_global.cur_hazard == "car2_mc")) {
_global.car_crash_snd.start();
}
Symbol 603 MovieClip Frame 4
_global.biking_music_snd.stop();
if ((_global.cur_hazard == "nails_mc") || (_global.cur_hazard == "bottle_mc")) {
trace("popped tires!");
_global.tire_pop_snd.start();
} else if (_global.cur_hazard == "oilspill_mc") {
_global.puddle_snd.start();
} else {
_global.bike_crash_snd.start();
}
Symbol 603 MovieClip Frame 15
stop();
trace("_parent.delay_time: " + _parent.delay_time);
if (_parent.delay_time == Number.POSITIVE_INFINITY) {
_global.siren_snd.start();
play();
}
Symbol 603 MovieClip Frame 26
stop();
Symbol 631 MovieClip Frame 1
bike_mc.speed = 40;
Symbol 631 MovieClip Frame 40
stop();
Symbol 636 MovieClip Frame 1
bike_mc.speed = 40;
Symbol 636 MovieClip Frame 40
stop();