Frame 1
fscommand ("allowscale", "false");
stop();
Frame 7
function do_setup_next_level() {
_root.num_cars_this_level++;
_root.do_get_map_num();
_root.train_speed = _root.normal_speed;
_root.gotoAndPlay("start_play");
}
function do_snap_to_grid(passed_x, start_x, passed_y, start_y) {
var x_result = do_the_grid_snap(passed_x, start_x);
var y_result = do_the_grid_snap(passed_y, start_y);
var my_result_array = new Array(x_result, y_result);
return(my_result_array);
}
function do_the_grid_snap(passed_value, start_value) {
var my_delta = (passed_value - start_value);
var my_multiplier = Math.round(my_delta / _root.grid_size);
var my_result = (start_value + (my_multiplier * _root.grid_size));
return(my_result);
}
function get_segment_number() {
var stalength = _root.segment_temp_array.length;
if (stalength < 1) {
_root.segment_temp_array = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8);
stalength = _root.segment_temp_array.length;
}
var starand = Math.floor(Math.random() * stalength);
var staseg = _root.segment_temp_array[starand];
_root.segment_temp_array.splice(starand, 1);
return(staseg);
}
function do_attach_track_segment(passed_type, passed_x, passed_y) {
_root.number_segments++;
var new_ID = ("segment_" + _root.number_segments);
_root.track_segments_MC.attachMovie(passed_type, new_ID, _root.number_segments);
_root.track_segments_MC[new_ID]._x = passed_x;
_root.track_segments_MC[new_ID]._y = passed_y;
}
function do_increase_score(passed_amount, passed_bonus_flag) {
_root.my_score = _root.my_score + passed_amount;
}
function do_attach_sounds(passed_name) {
_root[passed_name] = new Sound();
_root[passed_name].attachSound(passed_name);
}
function do_handle_train_crashed_dialog() {
_root.lives_remaining--;
if (_root.lives_remaining <= 0) {
_root.lost_life_dialog_MC.message_text = out_of_lives_text;
} else {
_root.lost_life_dialog_MC.message_text = lost_life_text;
}
_root.lost_life_dialog_MC._visible = true;
}
function do_you_win() {
_root.you_win = true;
if (_root.current_map_num == number_of_levels) {
_root.gotoAndPlay("game_complete");
} else {
_root.gotoAndPlay("level_complete");
}
}
function do_get_map_num() {
_root.current_map_num++;
}
function do_trigger_bonus(passed_score, bonus_spawn_x, bonus_spawn_y) {
bonus_counter++;
bonus_ID = "bonus_" + bonus_counter;
_root.bonus_display_MC.attachMovie("bonus_MC", bonus_ID, bonus_counter);
_root.bonus_display_MC[bonus_ID].bonus_amount = passed_score;
_root.bonus_display_MC[bonus_ID]._x = bonus_spawn_x;
_root.bonus_display_MC[bonus_ID]._y = bonus_spawn_y;
}
allsound = new Sound();
vol = 1;
Stage.showMenu = "false";
stop();
_root.do_attach_sounds("harp_loop");
_root.harp_loop.start(0, 999);
Instance of Symbol 155 MovieClip in Frame 7
//component parameters
onClipEvent (initialize) {
label = "change map";
wide = 110;
c1 = 0;
c2 = 0;
c3 = 0;
hc1 = 200;
hc2 = 200;
hc3 = 200;
baseMode = true;
widthMode = true;
rgb = 0;
rb = 255;
gb = 255;
bb = 255;
hilitergb = 13158600 /* 0xC8C8C8 */;
}
on (release) {
_root.gotoAndPlay("setup_game");
}
Frame 17
score_increment_amount = 50;
start_delays_array = new Array(240, 240, 240, 240, 240, 240, 240, 240);
_root.my_score = 0;
_root.lives_remaining = 3;
number_of_levels = 8;
_root.grid_size = 50;
num_cars_array = new Array(3, 3, 3, 3, 3, 3, 3, 3);
_root.turbo_speed = 3;
_root.normal_speed = 1;
_root.train_speed = _root.normal_speed;
_root.number_of_segment_types = 9;
_root.segment_orig_array = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8);
_root.segment_temp_array = _root.segment_orig_array;
segment_names_array = new Array("track_curve_1_MC", "track_curve_2_MC", "track_curve_3_MC", "track_curve_4_MC", "track_crossing_MC", "track_duo_curves_1_MC", "track_duo_curves_2_MC", "track_straight_horiz_MC", "track_straight_vert_MC");
_root.do_attach_sounds("coin");
_root.do_attach_sounds("end_riff");
_root.do_attach_sounds("harp_blast");
_root.do_attach_sounds("game_loop");
_root.do_attach_sounds("lay_track_sound");
_root.do_attach_sounds("bomb_sound");
_root.do_attach_sounds("no_drop_sound");
_root.do_attach_sounds("crash_sound");
_root.do_attach_sounds("steam_sound");
out_of_lives_text = "No lives left \n game over!";
lost_life_text = "Train crashed! \n Lose a life";
_root.harp_loop.stop();
_root.harp_blast.start(0, 1);
Frame 75
stop();
var paused = 0;
_root.num_cars_this_level = num_cars_array[current_map_num - 1];
_root.start_train_delay = start_delays_array[current_map_num - 1];
_root.train_car_length = 34;
_root.you_win = false;
_root.train_crash_timer_running = false;
active_segments_array = new Array();
_root.game_loop.start(0, 999);
Instance of Symbol 244 MovieClip "track_segments_MC" in Frame 75
onClipEvent (load) {
gotoAndStop(_root.current_map_num);
}
Instance of Symbol 249 MovieClip in Frame 75
onClipEvent (load) {
gotoAndStop(_root.current_map_num);
}
Instance of Symbol 251 MovieClip "car_generator_MC" in Frame 75
onClipEvent (load) {
function do_add_train_car(set_car_type) {
train_car_counter++;
train_car_ID = "train_car_" + train_car_counter;
_root.train_holder_MC.attachMovie("Train_Cars_Comp_MC", train_car_ID, 100 - train_car_counter);
_root.train_holder_MC[train_car_ID]._x = train_start_x;
_root.train_holder_MC[train_car_ID]._y = _root.track_segments_MC.segment_1._y;
_root.train_holder_MC[train_car_ID].my_car_type = set_car_type;
_root.train_holder_MC[train_car_ID].my_position_in_train = train_car_counter;
}
function do_reset_train() {
_root.active_segments_array = new Array();
_root.turbo_button_MC.gotoAndStop("up");
_root.train_speed = _root.normal_speed;
c = 1;
while (c < (_root.num_cars_this_level + 1)) {
train_car_ID = "train_car_" + c;
_root.train_holder_MC[train_car_ID].removeMovieClip();
c++;
}
delay_start_timer = 0;
train_car_counter = 0;
}
delay_start_timer = 0;
train_car_counter = 0;
train_start_x = _root.track_segments_MC.segment_1._x - ((_root.grid_size / 2) - 1);
}
onClipEvent (enterFrame) {
if (_root.paused == 0) {
delay_start_timer++;
_root.train_start_countdown_frames = _root.start_train_delay - delay_start_timer;
if (Math.round(_root.train_start_countdown_frames / 20) < 0) {
_root.train_start_countdown = 0;
} else {
_root.train_start_countdown = Math.round(_root.train_start_countdown_frames / 20);
}
trace(_root.start_train_delay);
trace(_root.train_start_countdown);
if (delay_start_timer == _root.start_train_delay) {
do_add_train_car(1);
_root.steam_sound.start();
}
if (train_car_counter < _root.num_cars_this_level) {
if ((_root.train_holder_MC[train_car_ID]._x - train_start_x) > _root.train_car_length) {
do_add_train_car(2);
}
}
}
}
Instance of Symbol 263 MovieClip "lost_life_dialog_MC" in Frame 75
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 299 MovieClip "countDown" in Frame 75
onClipEvent (load) {
this.swapDepths(999936);
}
Frame 88
play();
_root.game_loop.stop();
_root.end_riff.start(0, 1);
removeMovieClip(_root.countDown);
Frame 164
_root.gotoAndStop("intro");
Frame 165
stop();
_root.game_loop.stop();
_root.harp_blast.start(0, 1);
removeMovieClip(_root.countDown);
Frame 176
stop();
_root.game_loop.stop();
_root.end_riff.start(0, 1);
removeMovieClip(_root.countDown);
Frame 187
stop();
Frame 188
stop();
Symbol 2 MovieClip Frame 1
stop();
var new_loc = _root.do_snap_to_grid(_parent._x, _root.grid_start_x, _parent._y, _root.grid_start_y);
_parent._x = new_loc[0];
_parent._y = new_loc[1];
_root.number_segments++;
Symbol 6 MovieClip [track_crossing_MC] Frame 1
enter_left = new Array("crossing", 1, 0);
enter_right = new Array("crossing", -1, 0);
enter_top = new Array("crossing", 0, 1);
enter_bottom = new Array("crossing", 0, -1);
Symbol 9 MovieClip [track_straight_vert_MC] Frame 1
enter_left = new Array("crash");
enter_right = new Array("crash");
enter_top = new Array("straight", 0, 1);
enter_bottom = new Array("straight", 0, -1);
Symbol 12 MovieClip [track_straight_horiz_MC] Frame 1
enter_left = new Array("straight", 1, 0);
enter_right = new Array("straight", -1, 0);
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Symbol 21 MovieClip Frame 1
stop();
my_random = Math.ceil(Math.random() * 3);
gotoAndStop(my_random);
_parent.give_bonus = true;
_parent.bonus_amount = 500;
Symbol 21 MovieClip Frame 2
stop();
Symbol 21 MovieClip Frame 3
stop();
Symbol 22 MovieClip [track_curve_3_MC] Frame 1
enter_left = new Array("crash");
enter_right = new Array("curve", 0, 25, -1, -1, 180, -1);
enter_top = new Array("crash");
enter_bottom = new Array("curve", 25, 0, -1, -1, -90, 1);
Symbol 26 MovieClip [track_duo_curves_2_MC] Frame 1
enter_left = new Array("curve", 0, 25, 1, -1, 0, 1);
enter_right = new Array("curve", 0, -25, -1, 1, 180, 1);
enter_top = new Array("curve", 25, 0, -1, 1, 90, -1);
enter_bottom = new Array("curve", -25, 0, 1, -1, -90, -1);
Symbol 28 MovieClip [track_curve_4_MC] Frame 1
enter_left = new Array("curve", 0, 25, 1, -1, 0, 1);
enter_right = new Array("crash");
enter_top = new Array("crash");
enter_bottom = new Array("curve", -25, 0, 1, -1, -90, -1);
Symbol 30 MovieClip [track_curve_2_MC] Frame 1
enter_left = new Array("crash");
enter_right = new Array("curve", 0, -25, -1, 1, 180, 1);
enter_top = new Array("curve", 25, 0, -1, 1, 90, -1);
enter_bottom = new Array("crash");
Symbol 33 MovieClip [track_duo_curves_1_MC] Frame 1
enter_left = new Array("curve", 0, -25, 1, 1, 0, -1);
enter_right = new Array("curve", 0, 25, -1, -1, 180, -1);
enter_top = new Array("curve", -25, 0, 1, 1, 90, 1);
enter_bottom = new Array("curve", 25, 0, -1, -1, -90, 1);
Symbol 35 MovieClip [track_curve_1_MC] Frame 1
enter_left = new Array("curve", 0, -25, 1, 1, 0, -1);
enter_right = new Array("crash");
enter_top = new Array("curve", -25, 0, 1, 1, 90, 1);
enter_bottom = new Array("crash");
Symbol 47 MovieClip [Train_Cars_Comp_MC] Frame 1
gotoAndStop(my_car_type);
Instance of Symbol 40 MovieClip in Symbol 47 MovieClip [Train_Cars_Comp_MC] Frame 1
onClipEvent (enterFrame) {
my_x = _parent._x;
my_y = _parent._y;
if (!_root.track_segments_MC.hitTest(my_x, my_y, true)) {
do_train_crashes();
} else {
do_test_against_segments();
}
if ((crash_timer < (5 * _parent.my_position_in_train)) && (_root.you_win == false)) {
if (_root.train_crash_timer_running == true) {
crash_timer++;
_parent.train_car._rotation = _parent.train_car._rotation + 5;
}
if (segment_data[0] == "curve") {
theta_delta_total = theta_delta_total + my_theta_delta;
if (vert_flag == false) {
theta_total = 90 - theta_delta_total;
} else {
theta_total = theta_delta_total;
}
theta_rad = theta_total * (Math.PI/180);
var new_speed_x = Math.round(25 * Math.cos(theta_rad));
var new_speed_y = Math.round(25 * Math.sin(theta_rad));
_parent._x = start_x + (x_factor * new_speed_x);
_parent._y = start_y + (y_factor * new_speed_y);
_parent._rotation = train_mod_angle + (clockwise * theta_delta_total);
distance_travelled = distance_travelled + parseInt(start_speed);
if (start_speed != _root.train_speed) {
distance_remaining = distance_for_90_deg - distance_travelled;
do_calculate_angular_stuff(90 - theta_delta_total, distance_remaining);
}
}
if ((segment_data[0] == "straight") || (segment_data[0] == "crossing")) {
_parent._x = _parent._x + (_root.train_speed * x_factor);
_parent._y = _parent._y + (_root.train_speed * y_factor);
_parent._rotation = _parent._rotation + crash_rotation_amount;
if (segment_data[0] == "crossing") {
}
}
if (segment_data[0] == "station") {
if (_parent._x >= station_stop_point) {
_root.do_you_win();
return(undefined);
}
_parent._x = _parent._x + (_root.train_speed * x_factor);
_parent._y = _parent._y + (_root.train_speed * y_factor);
}
}
}
onClipEvent (load) {
function do_test_against_segments() {
j = 1;
while (j < (_root.number_segments + 1)) {
segment_ID = "segment_" + j;
if (_root.track_segments_MC[segment_ID].hitTest(my_x, my_y, true)) {
if (current_segment_name == _root.track_segments_MC[segment_ID]._name) {
return(undefined);
}
var my_limit = _root.active_segments_array.length;
a = 0;
while (a < my_limit) {
if (_root.active_segments_array[a] == current_segment_name) {
_root.active_segments_array.splice(a, 1);
a = my_limit;
}
a++;
}
current_segment_name = _root.track_segments_MC[segment_ID]._name;
_root.active_segments_array.push(current_segment_name);
_root.track_segments_MC[segment_ID].segment_used = true;
do_find_train_relative_to_segment(segment_ID);
do_bounce_train_to_corrected_position();
do_grab_segment_info();
if ((_parent.my_position_in_train == 1) && (_root.train_crash_timer_running != true)) {
if ((_root.track_segments_MC[segment_ID].give_bonus == true) && (_root.track_segments_MC[segment_ID].bonus_used != true)) {
score_inc = _root.track_segments_MC[segment_ID].bonus_amount;
pass_bonus = true;
bonus_spawn_x = _root.track_segments_MC[segment_ID]._x;
bonus_spawn_y = _root.track_segments_MC[segment_ID]._y;
_root.do_trigger_bonus(score_inc, bonus_spawn_x, bonus_spawn_y);
_root.track_segments_MC[segment_ID].bonus_used = true;
_root.track_segments_MC[segment_ID].bonus_item_MC._visible = false;
} else {
score_inc = _root.score_increment_amount;
pass_bonus = false;
}
_root.do_increase_score(score_inc, pass_bonus);
}
}
j++;
}
}
function do_find_train_relative_to_segment() {
var segment_x = _root.track_segments_MC[segment_ID]._x;
var segment_y = _root.track_segments_MC[segment_ID]._y;
delta_x = segment_x - my_x;
delta_y = segment_y - my_y;
if (delta_x < -5) {
corrected_x = segment_x + (_root.grid_size / 2);
new_rotation = 180;
my_quarter = "right";
vert_flag = false;
} else if (delta_x > 5) {
corrected_x = segment_x - (_root.grid_size / 2);
my_quarter = "left";
new_rotation = 0;
vert_flag = false;
} else {
corrected_x = segment_x;
}
if (delta_y < -5) {
corrected_y = segment_y + (_root.grid_size / 2);
my_quarter = "bottom";
new_rotation = -90;
vert_flag = true;
} else if (delta_y > 5) {
corrected_y = segment_y - (_root.grid_size / 2);
my_quarter = "top";
new_rotation = 90;
vert_flag = true;
} else {
corrected_y = segment_y;
}
}
function do_bounce_train_to_corrected_position() {
_parent._x = corrected_x;
_parent._y = corrected_y;
_parent._rotation = new_rotation;
}
function do_grab_segment_info() {
quarter_ID = "enter_" + my_quarter;
segment_data = null;
var my_length = _root.track_segments_MC[segment_ID][quarter_ID].length;
segment_data = _root.track_segments_MC[segment_ID][quarter_ID].slice(0, my_length);
if (segment_data[0] == "curve") {
start_x = corrected_x + segment_data[1];
start_y = corrected_y + segment_data[2];
x_factor = segment_data[3];
y_factor = segment_data[4];
train_mod_angle = segment_data[5];
clockwise = segment_data[6];
theta_total = 0;
theta_delta_total = 0;
distance_travelled = 0;
distance_for_90_deg = (Math.PI * _root.grid_size) / 4;
do_calculate_angular_stuff(90, distance_for_90_deg);
}
if ((segment_data[0] == "straight") || (segment_data[0] == "crossing")) {
x_factor = segment_data[1];
y_factor = segment_data[2];
}
if (segment_data[0] == "station") {
x_factor = segment_data[1];
y_factor = segment_data[2];
station_stop_point = _parent._x + (_root.grid_size / 2);
}
if (segment_data[0] == "crash") {
do_train_crashes();
}
}
function do_calculate_angular_stuff(passed_angle, passed_distance) {
start_speed = _root.train_speed;
var my_time = (passed_distance / start_speed);
my_theta_delta = passed_angle / my_time;
}
function do_train_crashes() {
if (_root.train_crash_timer_running == false) {
_root.crash_sound.start();
_root.train_crash_timer_running = true;
_root.do_handle_train_crashed_dialog();
}
}
_visible = false;
train_start_angle = 0;
train_mod_angle = 0;
x_factor = 1;
segment_data = new Array("straight");
crash_rotation_amount = 0;
}
Symbol 47 MovieClip [Train_Cars_Comp_MC] Frame 2
number_carriage_colours = 6;
gotoAndStop(2 + Math.ceil(Math.random() * number_carriage_colours));
stop();
Symbol 50 MovieClip [tunnel_bottom_left_MC] Frame 1
stop();
_root.tunnel_counter++;
tunnel_ID = "tunnel_top_" + _root.tunnel_counter;
_root.tunnels_overlay_MC.attachMovie("tunnel_top_left_MC", tunnel_ID, _root.tunnel_counter);
_root.tunnels_overlay_MC[tunnel_ID]._x = _x;
_root.tunnels_overlay_MC[tunnel_ID]._y = _y;
no_bomb = true;
give_bonus = true;
bonus_amount = 500;
enter_left = new Array("straight", 1, 0);
enter_right = new Array("straight", -1, 0);
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Symbol 59 MovieClip [mountain_D_MC] Frame 1
no_bomb = true;
enter_left = new Array("crash");
enter_right = new Array("crash");
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Symbol 62 MovieClip [mountain_C_MC] Frame 1
no_bomb = true;
enter_left = new Array("crash");
enter_right = new Array("crash");
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Symbol 65 MovieClip [mountain_B_MC] Frame 1
no_bomb = true;
enter_left = new Array("crash");
enter_right = new Array("crash");
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Symbol 68 MovieClip [obstacle_segment_MC] Frame 1
enter_left = new Array("crash");
enter_right = new Array("crash");
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Symbol 71 MovieClip [mountain_A_MC] Frame 1
no_bomb = true;
enter_left = new Array("crash");
enter_right = new Array("crash");
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Symbol 75 Button
on (press) {
_parent.do_start_bomb_drag(_x, _y, _name);
}
on (release, releaseOutside) {
_parent.do_stop_bomb_drag(_name);
}
Symbol 84 MovieClip [bonus_MC] Frame 9
this.removeMovieClip();
Symbol 87 MovieClip [tunnel_bottom_right_MC] Frame 1
stop();
_root.tunnel_counter++;
tunnel_ID = "tunnel_top_" + _root.tunnel_counter;
_root.tunnels_overlay_MC.attachMovie("tunnel_top_right_MC", tunnel_ID, _root.tunnel_counter);
_root.tunnels_overlay_MC[tunnel_ID]._x = _x;
_root.tunnels_overlay_MC[tunnel_ID]._y = _y;
trace(_root.tunnel_counter);
no_bomb = true;
enter_left = new Array("straight", 1, 0);
enter_right = new Array("straight", -1, 0);
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Instance of Symbol 89 MovieClip "slider" in Symbol 91 MovieClip Frame 1
onClipEvent (load) {
this._x = this._x - this._width;
startPos = this._x;
}
onClipEvent (enterFrame) {
total = _root.getBytesTotal();
sofar = _root.getBytesLoaded();
percent = Math.floor((sofar / total) * 100);
this._x = startPos + (percent * 2);
if (percent == 100) {
_root.gotoAndStop("intro");
}
}
Symbol 100 Button
on (release) {
getURL ("javascript:popUp(\"screen1.html\",\"Screenshots\",\"width=630,height=500,alwaysLowered=0,alwaysRaised=1,channelmode=0,dependent=1,directories=0 ,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=0,toolbar=0,z-lock=0,screenX=50,screenY=50,left=50,top=50\")");
}
Symbol 103 Button
on (release) {
getURL ("javascript:popUp(\"screen2.html\",\"Screenshots\",\"width=630,height=500,alwaysLowered=0,alwaysRaised=1,channelmode=0,dependent=1,directories=0 ,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=0,toolbar=0,z-lock=0,screenX=50,screenY=50,left=50,top=50\")");
}
Symbol 104 MovieClip Frame 1
play();
Symbol 104 MovieClip Frame 125
gotoAndPlay (1);
Symbol 107 Button
on (release) {
getURL ("javascript:popUp(\"screen3.html\",\"Screenshots\",\"width=630,height=500,alwaysLowered=0,alwaysRaised=1,channelmode=0,dependent=1,directories=0 ,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=0,toolbar=0,z-lock=0,screenX=50,screenY=50,left=50,top=50\")");
}
Symbol 110 Button
on (release) {
getURL ("javascript:popUp(\"screen4.html\",\"Screenshots\",\"width=630,height=500,alwaysLowered=0,alwaysRaised=1,channelmode=0,dependent=1,directories=0 ,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=0,toolbar=0,z-lock=0,screenX=50,screenY=50,left=50,top=50\")");
}
Symbol 111 MovieClip Frame 1
play();
Symbol 111 MovieClip Frame 125
gotoAndPlay (1);
Symbol 114 Button
on (release) {
getURL ("javascript:popUp(\"screen5.html\",\"Screenshots\",\"width=630,height=500,alwaysLowered=0,alwaysRaised=1,channelmode=0,dependent=1,directories=0 ,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=0,toolbar=0,z-lock=0,screenX=50,screenY=50,left=50,top=50\")");
}
Symbol 117 Button
on (release) {
getURL ("javascript:popUp(\"screen6.html\",\"Screenshots\",\"width=630,height=500,alwaysLowered=0,alwaysRaised=1,channelmode=0,dependent=1,directories=0 ,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=0,toolbar=0,z-lock=0,screenX=50,screenY=50,left=50,top=50\")");
}
Symbol 118 MovieClip Frame 1
play();
Symbol 118 MovieClip Frame 125
gotoAndPlay (1);
Symbol 121 Button
on (release) {
getURL ("javascript:popUp(\"screen7.html\",\"Screenshots\",\"width=630,height=500,alwaysLowered=0,alwaysRaised=1,channelmode=0,dependent=1,directories=0 ,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=0,toolbar=0,z-lock=0,screenX=50,screenY=50,left=50,top=50\")");
}
Symbol 124 Button
on (release) {
getURL ("javascript:popUp(\"screen8.html\",\"Screenshots\",\"width=243,height=350,alwaysLowered=0,alwaysRaised=1,channelmode=0,dependent=1,directories=0 ,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=0,scrollbars=0,status=0,titlebar=0,toolbar=0,z-lock=0,screenX=50,screenY=50,left=50,top=50\")");
}
Symbol 125 MovieClip Frame 1
play();
Symbol 125 MovieClip Frame 125
gotoAndPlay (1);
Symbol 155 MovieClip Frame 1
this.onPress = function () {
pressing = true;
i = 1;
while (i <= 3) {
buttonColor = new Color(eval ("piece" + i).colorchip);
buttonColor.setRGB(3355443);
lowColor = new Color(eval ("piece" + i).bottomhilite);
lowColorTransform = new Object();
lowColorTransform = {ra:"0", rb:"200", ga:"0", gb:"200", ba:"0", bb:"200", aa:"100", ab:"0"};
lowColor.setTransform(lowColorTransform);
i++;
}
};
this.onRelease = function () {
pressing = false;
};
this.onReleaseOutside = function () {
pressing = false;
};
this.onEnterFrame = function () {
if (pressing != true) {
i = 1;
while (i <= 3) {
buttonColor = new Color(eval ("piece" + i).colorchip);
buttonColor.setRGB(rgb);
lowColor = new Color(eval ("piece" + i).bottomhilite);
lowColorTransform = new Object();
lowColorTransform = {ra:"0", rb:hc1, ga:"0", gb:hc2, ba:"0", bb:hc3, aa:"100", ab:"0"};
lowColor.setTransform(lowColorTransform);
i++;
}
}
};
with (piece2) {
_width = _parent.wide;
piece1._x = _x - (_width / 2);
piece3._x = _x + (_width / 2);
_parent.midshadow._width = _width;
_parent.leftshadow._x = _x - (_width / 2);
_parent.rightshadow._x = _x + (_width / 2);
}
label1.autoSize = "center";
label2.autoSize = "center";
Symbol 160 Button
on (release) {
gotoAndPlay (17);
}
Symbol 217 MovieClip Frame 1
stop();
Symbol 220 Button
on (press) {
if (_root.paused == 0) {
startDrag (this, true);
my_start_y = _y;
}
}
on (release, releaseOutside) {
if (_root.paused == 0) {
_parent.do_drop_piece(_name, my_type, my_start_y);
}
}
Symbol 230 MovieClip [drag_track_MC] Frame 1
next_seg = _root.get_segment_number();
gotoAndStop((_currentframe + next_seg) + 1);
Symbol 230 MovieClip [drag_track_MC] Frame 2
stop();
my_type = "track_curve_1_MC";
Symbol 230 MovieClip [drag_track_MC] Frame 3
stop();
my_type = "track_curve_2_MC";
Symbol 230 MovieClip [drag_track_MC] Frame 4
stop();
my_type = "track_curve_3_MC";
Symbol 230 MovieClip [drag_track_MC] Frame 5
stop();
my_type = "track_curve_4_MC";
Symbol 230 MovieClip [drag_track_MC] Frame 6
stop();
my_type = "track_straight_horiz_MC";
Symbol 230 MovieClip [drag_track_MC] Frame 7
stop();
my_type = "track_straight_vert_MC";
Symbol 230 MovieClip [drag_track_MC] Frame 8
stop();
my_type = "track_crossing_MC";
Symbol 230 MovieClip [drag_track_MC] Frame 9
stop();
my_type = "track_duo_curves_1_MC";
Symbol 230 MovieClip [drag_track_MC] Frame 10
stop();
my_type = "track_duo_curves_2_MC";
Symbol 233 MovieClip Frame 1
stop();
Symbol 233 MovieClip Frame 2
stop();
Symbol 234 Button
on (press) {
if (_root.vol == 1) {
speaker.gotoAndPlay("off");
_root.vol = 0;
_root.allsound.setVolume(0);
} else if (_root.vol == 0) {
speaker.gotoAndPlay("on");
_root.vol = 1;
_root.allsound.setVolume(100);
}
}
Instance of Symbol 239 MovieClip "square11" in Symbol 241 MovieClip Frame 1
onClipEvent (load) {
_root.grid_start_x = _x;
_root.grid_start_y = _y;
}
Symbol 242 MovieClip Frame 1
no_bomb = true;
enter_left = new Array("station", 1, 0);
enter_right = new Array("crash");
enter_top = new Array("crash");
enter_bottom = new Array("crash");
Symbol 244 MovieClip Frame 1
stop();
_root.countDown._y = 280;
Symbol 244 MovieClip Frame 2
stop();
_root.countDown._y = 130;
Symbol 244 MovieClip Frame 3
stop();
_root.countDown._y = 30;
Symbol 244 MovieClip Frame 4
stop();
_root.countDown._y = 130;
Symbol 244 MovieClip Frame 5
stop();
_root.countDown._y = 380;
Symbol 244 MovieClip Frame 6
stop();
_root.countDown._y = 130;
Symbol 244 MovieClip Frame 7
stop();
_root.countDown._y = 330;
Symbol 244 MovieClip Frame 8
stop();
_root.countDown._y = 30;
Symbol 246 MovieClip Frame 1
_visible = false;
if (my_type == "use_random") {
my_limit = _root.segment_names_array.length;
access_ID = Math.floor(Math.random() * my_limit);
my_type = _root.segment_names_array[access_ID];
}
_root.do_attach_track_segment(my_type, _x, _y);
Symbol 249 MovieClip Frame 1
stop();
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 1
//component parameters
onClipEvent (initialize) {
my_type = "track_straight_horiz_MC";
}
Symbol 249 MovieClip Frame 2
stop();
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 2
//component parameters
onClipEvent (initialize) {
my_type = "track_crossing_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 2
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 2
//component parameters
onClipEvent (initialize) {
my_type = "track_straight_horiz_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 2
//component parameters
onClipEvent (initialize) {
my_type = "track_duo_curves_1_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 2
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 2
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Symbol 249 MovieClip Frame 3
stop();
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "mountain_A_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "mountain_D_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "track_curve_4_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 3
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Symbol 249 MovieClip Frame 4
stop();
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "track_duo_curves_1_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "mountain_B_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "mountain_C_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "mountain_B_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "mountain_C_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 4
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Symbol 249 MovieClip Frame 5
stop();
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "mountain_A_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "mountain_B_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "mountain_D_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "mountain_C_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 5
//component parameters
onClipEvent (initialize) {
my_type = "track_straight_horiz_MC";
}
Symbol 249 MovieClip Frame 6
stop();
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "track_duo_curves_1_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "mountain_A_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "mountain_B_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "mountain_D_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "mountain_C_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "mountain_A_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "mountain_B_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "mountain_D_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "mountain_C_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "track_curve_4_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 6
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Symbol 249 MovieClip Frame 7
stop();
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "track_crossing_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "mountain_B_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "mountain_A_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "mountain_B_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "mountain_D_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "mountain_C_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "mountain_C_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "mountain_A_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 7
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Symbol 249 MovieClip Frame 8
stop();
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "mountain_A_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "mountain_B_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "mountain_D_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "mountain_C_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "use_random";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "mountain_A_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "mountain_D_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_left_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "tunnel_bottom_right_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "track_crossing_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Instance of Symbol 246 MovieClip in Symbol 249 MovieClip Frame 8
//component parameters
onClipEvent (initialize) {
my_type = "obstacle_segment_MC";
}
Symbol 257 MovieClip Frame 1
function do_attach_new_piece(passed_y) {
spawn_piece_counter++;
new_ID = "spawn_piece_" + spawn_piece_counter;
this.attachMovie("drag_track_MC", new_ID, spawn_piece_counter);
this[new_ID]._x = slider_x;
this[new_ID]._y = passed_y;
}
function do_drop_piece(passed_name, passed_type, passed_y) {
var drop_flag = true;
drop_flag = do_test_outside_grid();
if (drop_flag == true) {
drop_flag = do_test_against_existing_track();
}
if (_root.lost_life_dialog_MC._visible == true) {
drop_flag = false;
}
if (drop_flag == false) {
do_return_piece_to_start(passed_name, passed_y);
} else {
r = 1;
while (r <= 8) {
c = 1;
while (c <= 8) {
if (_root.grid_MC[("square" + r) + c].hitTest(_root._xmouse, _root._ymouse, 0)) {
seg_x = _root.grid_MC[("square" + r) + c]._x;
seg_y = _root.grid_MC[("square" + r) + c]._y;
_root.do_attach_track_segment(passed_type, seg_x, seg_y);
_root.lay_track_sound.start();
removeMovieClip(this[passed_name]);
do_attach_new_piece(passed_y);
return(undefined);
}
c++;
}
r++;
}
}
}
function do_test_outside_grid() {
if (!_root.grid_MC.hitTest(_root._xmouse, _root._ymouse, true)) {
return(false);
}
return(true);
}
function do_test_against_existing_track() {
if (_root.track_segments_MC.hitTest(_root._xmouse, _root._ymouse, true)) {
return(false);
}
}
function do_return_piece_to_start(passed_name, passed_y) {
stopDrag();
_root.no_drop_sound.start();
this[passed_name]._x = slider_x;
this[passed_name]._y = passed_y;
}
slider_x = 56;
y_stop_1 = 149;
y_stop_2 = 201;
y_stop_3 = 253;
do_attach_new_piece(y_stop_1);
do_attach_new_piece(y_stop_2);
do_attach_new_piece(y_stop_3);
Symbol 261 Button
on (release) {
this._visible = false;
if (_root.lives_remaining > 0) {
_root.train_crash_timer_running = false;
if (_root.bombs.bombs_remaining_count == 0) {
_root.bombs.bombs_remaining_count = 3;
_root.bombs_remaining_text = "x" + _root.bombs.bombs_remaining_count;
_root.bombs.do_add_next_bomb_tile();
}
_root.car_generator_MC.do_reset_train();
} else {
_root.gotoAndPlay("game_over");
}
}
Symbol 274 Button
on (release) {
_root.train_speed = _root.turbo_speed;
gotoAndStop (6);
}
Symbol 279 Button
on (release) {
_root.train_speed = _root.normal_speed;
gotoAndStop (1);
}
Symbol 280 MovieClip Frame 1
stop();
Symbol 280 MovieClip Frame 6
stop();
Symbol 285 Button
on (release) {
if (paused == 0) {
paused = 1;
_root.train_speed = 0;
} else if (paused == 1) {
paused = 0;
_root.train_speed = _root.normal_speed;
turbo_button_MC.gotoAndStop("up");
}
}
Symbol 288 Button
on (release) {
removeMovieClip(_root.countDown);
_root.game_loop.stop();
gotoAndStop (7);
}
Symbol 292 MovieClip Frame 9
stop();
Symbol 294 MovieClip Frame 1
stop();
Symbol 294 MovieClip Frame 5
play();
Symbol 295 MovieClip Frame 1
function do_start_bomb_drag(passed_x, passed_y, passed_name) {
this[passed_name].startDrag(true);
}
function do_stop_bomb_drag(passed_name) {
bomb_allowed = true;
if (_root.track_segments_MC.hitTest(_root._xmouse, _root._ymouse, true)) {
j = 1;
while (j < (_root.number_segments + 1)) {
segment_ID = "segment_" + j;
if (_root.track_segments_MC[segment_ID].hitTest(_root._xmouse, _root._ymouse, true)) {
var my_limit = _root.active_segments_array.length;
a = 0;
while (a < my_limit) {
if (_root.active_segments_array[a] == segment_ID) {
do_bounce_bomb_back(passed_name);
bomb_allowed = false;
}
a++;
}
if (_root.track_segments_MC[segment_ID].no_bomb == true) {
do_bounce_bomb_back(passed_name);
bomb_allowed = false;
}
if (bomb_allowed == true) {
_root.bomb_sound.start();
duplicateMovieClip (explosion, "explode", 99923);
explode._x = this[passed_name]._x;
explode._y = this[passed_name]._y;
explode.gotoAndPlay("go");
this[passed_name].removeMovieClip();
_root.track_segments_MC[segment_ID].removeMovieClip();
bombs_remaining_count--;
_root.bombs_remaining_text = "x" + bombs_remaining_count;
if (bombs_remaining_count > 0) {
do_add_next_bomb_tile();
}
}
}
j++;
}
} else {
do_bounce_bomb_back(passed_name);
}
}
function do_add_next_bomb_tile() {
bomb_generation_count++;
bomb_ID = "bomb_" + bomb_generation_count;
this.attachMovie("bomb_button_MC", bomb_ID, bomb_generation_count);
}
function do_bounce_bomb_back(passed_name) {
_root.no_drop_sound.start();
this[passed_name]._x = 0;
this[passed_name]._y = 0;
stopDrag();
}
stop();
var bombs_remaining_count = 3;
_root.bombs_remaining_text = "x" + bombs_remaining_count;
do_add_next_bomb_tile();
Symbol 303 Button
on (release) {
_root.do_setup_next_level();
}
Symbol 308 Button
on (release) {
_root.gotoAndPlay("setup_game");
}