// IW6 GSC SOURCE // Generated by https://github.com/xensik/gsc-tool main() { player_anims(); generic_human_anims(); script_model_anims(); vehicle_anims(); } #using_animtree("player"); player_anims() { level.scr_animtree["player_rig"] = #animtree; level.scr_model["player_rig"] = "viewhands_player_gs_stealth"; level.scr_anim["player_rig"]["player_sway_static"] = %sw_player_sway_static; level.scr_anim["player_rig"]["player_wind_static"] = %sw_player_wind_static; level.scr_anim["player_rig"]["player_nosway_static"] = %sw_player_nosway_static; maps\_anim::addnotetrack_notify( "player_rig", "player_hit_car", "player_hit_car" ); maps\_anim::addnotetrack_notify( "player_rig", "player_end_vignette", "notify_player_end_vignette" ); level.scr_anim["player_rig"]["death_fall"] = %sw_player_fallofftrain; level.scr_anim["player_rig"]["hangar_intro"] = %sw_intro_player; maps\_anim::addnotetrack_notify( "player_rig", "rumble_medium", "rumble_medium" ); level.scr_anim["player_rig"]["bridge_push_player"] = %sw_bridge_push_player; maps\_anim::addnotetrack_notify( "player_rig", "draw_weapon", "notify_draw_weapon" ); level.scr_anim["player_rig"]["loco_breach"] = %sw_enginecar_breach_player; level.scr_anim["player_rig"]["loco_breach_blast"] = %sw_enginecar_breach_blast_player; level.scr_anim["player_rig"]["loco_slide"] = %sw_enginecar_slide_player; level.scr_anim["player_rig"]["loco_blasthit"] = %sw_enginecar_blasthit_player; level.scr_animtree["player_rig_struggle"] = #animtree; level.scr_model["player_rig_struggle"] = "player_rorke_arm_struggle_world"; level.scr_anim["player_rig_struggle"]["loco_standoff"] = %sw_enginecar_standoff_player; maps\_anim::addnotetrack_customfunction( "player_rig_struggle", "in_the_face", ::notetrack_in_the_face ); maps\_anim::addnotetrack_customfunction( "player_rig", "opfor_start", ::loco_breach_opfor_start ); maps\_anim::addnotetrack_notify( "player_rig", "slomo_start", "notify_loco_breach_slowmo_start", "loco_breach" ); maps\_anim::addnotetrack_customfunction( "player_rig", "smokin_mirrors", ::loco_breach_smokin_mirrors ); maps\_anim::addnotetrack_notify( "player_rig", "merge_to_anim", "notify_merge_to_anim" ); maps\_anim::addnotetrack_customfunction( "player_rig", "player_view_lerp_down", ::loco_slide_player_view_lerp_down ); maps\_anim::addnotetrack_customfunction( "player_rig", "player_view_lerp_up", ::loco_slide_player_view_lerp_up ); maps\_anim::addnotetrack_notify( "player_rig", "start_slowmo", "notify_loco_breach_slowmo_start", "loco_slide" ); maps\_anim::addnotetrack_notify( "player_rig", "player_raise_weapon", "notify_player_raise_weapon" ); maps\_anim::addnotetrack_customfunction( "player_rig", "player_drop_weapon", ::loco_gunhold_player_drop_weapon, "loco_slide" ); maps\_anim::addnotetrack_customfunction( "player_rig", "end_slomo", ::loco_gunhold_end_slowmo, "loco_slide" ); maps\_anim::addnotetrack_notify( "player_rig_struggle", "struggle", "notify_loco_breach_struggle" ); maps\_anim::addnotetrack_customfunction( "player_rig", "blackscreen", maps\skyway_loco::blackscreen ); maps\_anim::addnotetrack_customfunction( "player_rig", "glass_rise", ::loco_falling_glass, "loco_blasthit" ); level.scr_anim["player_rig_struggle"]["loco_bodyshield_accelerate_forward_parent"] = %bodyshield_accelerate_front_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_accelerate_back_parent"] = %bodyshield_accelerate_back_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_accelerate_right_parent"] = %bodyshield_accelerate_right_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_accelerate_left_parent"] = %bodyshield_accelerate_left_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_accelerate_forward"] = %sw_ending_bodyshield_accelerate_front_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_accelerate_back"] = %sw_ending_bodyshield_accelerate_back_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_accelerate_right"] = %sw_ending_bodyshield_accelerate_right_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_accelerate_left"] = %sw_ending_bodyshield_accelerate_left_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_forward_parent"] = %bodyshield_forward_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_back_parent"] = %bodyshield_back_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_right_parent"] = %bodyshield_right_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_left_parent"] = %bodyshield_left_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_forward"] = %sw_ending_bodyshield_forward_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_back"] = %sw_ending_bodyshield_back_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_right"] = %sw_ending_bodyshield_right_player; level.scr_anim["player_rig_struggle"]["loco_bodyshield_left"] = %sw_ending_bodyshield_left_player; maps\_anim::addnotetrack_notify( "player_rig", "door_enemies", "notify_loco_breach_door_enemies" ); maps\_anim::addnotetrack_notify( "player_rig", "door_explode", "notify_loco_breach_door_explode" ); maps\_anim::addnotetrack_customfunction( "player_rig", "kick_door", ::notetrack_player_kick_door ); maps\_anim::addnotetrack_customfunction( "player_rig", "player_blast", ::notetrack_player_blast ); maps\_anim::addnotetrack_customfunction( "player_rig", "headbutt", ::notetrack_headbutt ); maps\_anim::addnotetrack_customfunction( "player_rig", "hit_door", ::notetrack_hit_door ); level.scr_anim["player_rig"]["swimout"] = %sw_swimout_init_player; level.scr_animtree["player_rig_magnum"] = #animtree; level.scr_model["player_rig_magnum"] = "sw_viewhands_magnum_combine"; level.scr_anim["player_rig"]["pt2_crash"] = %sw_end_pt2_start_player; maps\_anim::addnotetrack_notify( "player_rig", "fade_in", "notify_fade_in" ); maps\_anim::addnotetrack_notify( "player_rig", "player_hurt", "notify_player_hurt" ); level.scr_anim["player_rig_magnum"]["pt2_crawl"] = %sw_end_pt2_crawl_player; level.scr_anim["player_rig_magnum"]["pt2_draw"] = %sw_end_pt2_draw_player; level.scr_anim["player_rig_magnum"]["pt2_aim_loop"][0] = %sw_end_pt2_aim_player; level.scr_anim["player_rig_magnum"]["pt2_aim_loop_cocked"][0] = %sw_end_pt2_aim_player_v2; level.scr_anim["player_rig_magnum"]["pt2_fire_empty"] = %sw_end_pt2_gun_fire_blank; level.scr_anim["player_rig"]["pt2_speedloader"] = %sw_end_pt2_speedloader_player; level.scr_anim["player_rig"]["pt2_speedloader2"] = %sw_end_pt2_speedloader_player2; level.scr_goaltime["player_rig"]["pt2_speedloader2"] = 0.15; level.scr_anim["player_rig_magnum"]["pt2_load_gun"] = %sw_end_pt2_loadgun_player; level.scr_anim["player_rig_magnum"]["pt2_fire"] = %sw_end_pt2_kill_vargas_player; level.scr_anim["player_rig_magnum"]["pt2_fire_hit"] = %sw_end_pt2_kill_vargas_player_success; level.scr_anim["player_rig_magnum"]["pt2_fire_win"] = %sw_end_pt2_kill_win_player; level.scr_anim["player_rig"]["pt2_help"] = %sw_end_pt2_help_hesh_player; level.scr_anim["player_rig_magnum"]["pt2_dry_fire_aim"] = %sw_end_pt2_player_proxy_01; level.scr_anim["player_rig_magnum"]["pt2_wet_fire_aim"] = %sw_end_pt2_player_proxy_02; level.scr_anim["player_rig_magnum"]["pt2_ads_up"] = %sw_end_pt2_gun_ads_up; level.scr_anim["player_rig_magnum"]["pt2_ads_down"] = %sw_end_pt2_gun_ads_down; level.scr_anim["player_rig_magnum"]["pt2_ads_fire"] = %sw_end_pt2_gun_ads_fire; level.scr_anim["player_rig_magnum"]["pt2_ads_fire_empty"] = %sw_end_pt2_gun_ads_fire_blank; level.scr_anim["player_rig_magnum"]["pt2_ads_aim_loop"][0] = %sw_end_pt2_gun_ads_idle; level.scr_anim["player_rig"]["beach_pt1_idle"][0] = %sw_beach_player_pt1_idle; level.scr_anim["player_rig"]["beach_pt2"] = %sw_beach_player_pt2; level.scr_goaltime["player_rig"]["beach_pt2"] = 0.7; level.scr_anim["player_rig"]["beach_pt3"] = %sw_beach_player_pt3; level.scr_anim["player_rig"]["pit_of_despair"] = %sw_player_pit_of_despair; maps\_anim::addnotetrack_notify( "player_rig", "brostache", "notify_beach_drag_control_start" ); maps\_anim::addnotetrack_notify( "player_rig", "camera_lerp", "notify_beach_cam_lerp" ); maps\_anim::addnotetrack_notify( "player_rig", "face_kick", "notify_beach_face_kick" ); maps\_anim::addnotetrack_notify( "player_rig", "knife_pullout", "notify_beach_knife_grab" ); maps\_anim::addnotetrack_notify( "player_rig", "arm_break", "notify_beach_arm_break" ); maps\_anim::addnotetrack_notify( "player_rig", "face_hit", "notify_beach_face_hit" ); } notetrack_test( var_0 ) { iprintln( "test" ); } #using_animtree("generic_human"); generic_human_anims() { level.scr_anim["generic"]["sw_op_sat_cover_bl"] = %sw_op_sat_cover_bl; level.scr_anim["generic"]["sw_op_sat_cover_br"] = %sw_op_sat_cover_br; level.scr_anim["generic"]["sw_op_sat_cover_r"] = %sw_op_sat_cover_r; level.scr_anim["generic"]["sw_op_sat_cover_l"] = %sw_op_sat_cover_l; level.scr_anim["generic"]["sw_op_satledge1"] = %sw_op_satledge1; level.scr_anim["generic"]["sw_op_satledge2"] = %sw_op_satledge2; level.scr_anim["generic"]["sw_op_stand_rail_front_land"] = %sw_op_stand_rail_front_land; level.scr_anim["generic"]["sw_op_crouch_rail_front_land"] = %sw_op_crouch_rail_front_land; level.scr_anim["generic"]["sw_op_crouch_rail_front"] = %sw_op_crouch_rail_front; level.scr_anim["generic"]["sw_op_crouch_rail_left"] = %sw_op_crouch_rail_left; level.scr_anim["generic"]["sw_op_crouch_rail_right"] = %sw_op_crouch_rail_right; level.scr_anim["generic"]["sw_op_stand_rail_back"] = %sw_op_stand_rail_back; level.scr_anim["generic"]["sw_op_stand_rail_front"] = %sw_op_stand_rail_front; level.scr_anim["generic"]["sw_op_stand_rail_left"] = %sw_op_stand_rail_left; level.scr_anim["generic"]["sw_op_stand_rail_right"] = %sw_op_stand_rail_right; level.scr_anim["ally1"]["hangar_intro"] = %sw_intro_hesh; level.scr_anim["ally1"]["hangar_intro_idle"][0] = %sw_intro_hesh_idle; level.scr_anim["ally1"]["hangar_intro_exit"] = %sw_intro_hesh_exit; level.scr_anim["boss"]["hangar_intro"] = %sw_intro_rorke; level.scr_anim["enemy_hangar_pip"]["hangar_intro"] = %sw_intro_security; maps\_anim::addnotetrack_notify( "ally1", "punch_monitor", "nt_punch_monitor" ); maps\_anim::addnotetrack_notify( "ally1", "open_door", "nt_open_door" ); level.scr_anim["ally1"]["noticket"] = %sw_rail_throw_short_hesh; level.scr_anim["noticket_enemy"]["noticket"] = %sw_rail_throw_short_enemy; level.scr_anim["ally1"]["sat_rog_hit"] = %sw_hesh_stationary_hit; level.scr_anim["generic"]["sat2_enemy_rog_run"] = %sw_sat2_enemy_reaction_01; level.scr_anim["generic"]["sat2_enemy_rog_surprise"] = %sw_sat2_enemy_reaction_02; level.scr_anim["generic"]["sat2_enemy_rog_stumble"] = %sw_hesh_stationary_hit; level.scr_anim["generic"]["sat1_enemy_rog_fall"] = %sw_op_overrail; maps\_anim::addnotetrack_notify( "generic", "rail", "notify_sat1_rog_run_fall" ); maps\_anim::addnotetrack_notify( "generic", "delete", "notify_sat1_rog_run_delete" ); level.scr_anim["ally1"]["bridge_push"] = %sw_bridge_push_hesh; level.scr_anim["ally1"]["rt_train_impact"] = %sw_traversal_rooftop_rodhit; level.scr_anim["generic"]["helo_pilot_death"][0] = %aas_72x_pilot_death_1; level.scr_anim["generic"]["helo_pilot_death"][1] = %aas_72x_pilot_death_2; level.scr_anim["generic"]["helo_shooter_death"][0] = %sw_aas_72x_death2; level.scr_anim["generic"]["helo_shooter_death"][1] = %sw_aas_72x_death2; level.scr_anim["generic"]["helo_shooter_death"][2] = %sw_aas_72x_death2; level.scr_anim["generic"]["helo_shooter_death"][3] = %sw_aas_72x_death2; level.scr_anim["generic"]["helo_shooter_death"][4] = %sw_aas_72x_death2; level.scr_anim["generic"]["helo_shooter_death"][5] = %sw_aas_72x_death2; level.scr_anim["ally1"]["rt_helo_crash"] = %sw_hesh_choppercrash; level.scr_anim["sw_door_r_opfor"]["sw_entry_u"] = %sw_rooftop_ladder_infils_dr_s; level.scr_anim["sw_door_l_opfor"]["sw_entry_u"] = %sw_rooftop_ladder_infils_dl_s; level.scr_anim["sw_opfor_grapple_1"]["sw_grapple_up"] = %sw_opfor_grapple_up_1; level.scr_anim["sw_opfor_grapple_1"]["sw_grapple_up_death"] = %sw_opfor_grapple_up_death_1; level.scr_anim["sw_opfor_grapple_2"]["sw_grapple_up"] = %sw_opfor_grapple_up_2; level.scr_anim["sw_opfor_grapple_2"]["sw_grapple_up_death"] = %sw_opfor_grapple_up_death_1; level.scr_anim["sw_opfor_grapple_3"]["sw_grapple_up"] = %sw_opfor_grapple_up_3; level.scr_anim["sw_opfor_grapple_3"]["sw_grapple_up_death"] = %sw_opfor_grapple_up_death_1; level.scr_anim["sw_opfor_grapple_4"]["sw_grapple_up"] = %sw_opfor_grapple_up_4; level.scr_anim["sw_opfor_grapple_4"]["sw_grapple_up_death"] = %sw_opfor_grapple_up_death_1; level.scr_anim["sw_opfor_grapple_5"]["sw_grapple_up"] = %sw_opfor_grapple_up_5; level.scr_anim["sw_opfor_grapple_5"]["sw_grapple_up_death"] = %sw_opfor_grapple_up_death_1; level.scr_anim["sw_opfor_grapple_6"]["sw_grapple_up"] = %sw_opfor_grapple_up_6; level.scr_anim["sw_opfor_grapple_6"]["sw_grapple_up_death"] = %sw_opfor_grapple_up_death_1; level.scr_anim["sw_opfor_grapple"]["sw_grapple_up_death"] = %sw_opfor_grapple_up_death_1; level.scr_anim["ally1"]["loco_breach"] = %sw_enginecar_breach_hesh; level.scr_anim["opfor1"]["loco_breach"] = %sw_enginecar_breach_opfor1; level.scr_anim["opfor2"]["loco_breach"] = %sw_enginecar_breach_opfor2; level.scr_anim["opfor3"]["loco_breach"] = %sw_enginecar_breach_opfor3; maps\_anim::addnotetrack_notify( "opfor1", "player_can_die", "notify_player_can_die", "loco_breach" ); maps\_anim::addnotetrack_notify( "opfor1", "fire", "notify_player_death_via_notetrack" ); maps\_anim::addnotetrack_notify( "opfor3", "slomo_end", "notify_loco_breach_slowmo_end" ); level.scr_anim["opfor1"]["loco_breach_death"] = %sw_enginecar_breach_death_opfor1; level.scr_anim["opfor2"]["loco_breach_death"] = %sw_enginecar_breach_death_opfor2; level.scr_anim["opfor3"]["loco_breach_death"] = %sw_enginecar_breach_death_opfor3; level.scr_anim["opfor4"]["loco_breach_death"] = %sw_enginecar_breach_death_opfor1; maps\_anim::addnotetrack_notify( "opfor2", "knife_show", "notify_opfor_knife_show", "loco_breach" ); maps\_anim::addnotetrack_customfunction( "opfor2", "player_stab", ::breach_enemy_player_stab, "loco_breach" ); maps\_anim::addnotetrack_flag( "opfor3", "fire_rpg", "flag_player_failed_breach", "loco_breach" ); maps\_anim::addnotetrack_notify( "opfor3", "fire_rpg", "notify_fire_rpg", "loco_breach_death" ); level.scr_animtree["player_legs"] = #animtree; level.scr_model["player_legs"] = "body_rangers_bdu_assault_a"; level.scr_anim["player_legs"]["loco_breach"] = %sw_enginecar_breach_playerlegs; level.scr_anim["ally1"]["loco_slide"] = %sw_enginecar_slide_hesh; level.scr_anim["opfor1"]["loco_slide"] = %sw_enginecar_slide_opfor1; level.scr_anim["opfor2"]["loco_slide"] = %sw_enginecar_slide_opfor2; level.scr_anim["opfor3"]["loco_slide"] = %sw_enginecar_slide_opfor3; level.scr_anim["opfor4"]["loco_slide"] = %sw_enginecar_slide_opfor4; level.scr_anim["opfor5"]["loco_slide"] = %sw_enginecar_slide_opfor5; level.scr_anim["opfor6"]["loco_slide"] = %sw_enginecar_slide_opfor6; level.scr_anim["player_legs"]["loco_slide"] = %sw_enginecar_slide_playerlegs; level.scr_anim["boss"]["loco_slide"] = %sw_enginecar_slide_rorke; maps\_anim::addnotetrack_notify( "boss", "break_glass", "notify_break_cockpit_glass", "loco_slide" ); level.scr_anim["opfor5"]["loco_gunhold_death"] = %sw_enginecar_gunhold_death_opfor5; level.scr_anim["opfor6"]["loco_gunhold_death"] = %sw_enginecar_gunhold_death_opfor6; level.scr_anim["ally1"]["loco_standoff"] = %sw_enginecar_standoff_hesh; level.scr_anim["boss"]["loco_standoff"] = %sw_enginecar_standoff_vargas; level.scr_anim["opfor4"]["loco_standoff"] = %sw_enginecar_standoff_opfor4; maps\_anim::addnotetrack_notify( "ally1", "send_rog", "notify_call_in_final_rog", "loco_standoff" ); level.scr_anim["ally1"]["loco_blasthit"] = %sw_enginecar_blasthit_hesh; level.scr_anim["boss"]["loco_blasthit"] = %sw_enginecar_blasthit_vargas; level.scr_anim["ally1"]["pt2_crash"] = %sw_end_pt2_start_hesch; level.scr_anim["boss"]["pt2_crash"] = %sw_end_pt2_start_vargas; maps\_anim::addnotetrack_notify( "boss", "glass_crack_01", "glass_crack_01" ); level.scr_anim["opfor1"]["pt2_crash"] = %sw_end_pt2_start_dead_01; level.scr_anim["opfor2"]["pt2_crash"] = %sw_end_pt2_start_dead_02; level.scr_anim["opfor1"]["pt2_crash_loop"][0] = %sw_end_pt2_loop_dead_01; level.scr_anim["opfor2"]["pt2_crash_loop"][0] = %sw_end_pt2_loop_dead_02; level.scr_anim["ally1"]["pt2_crawl"] = %sw_end_pt2_crawl_hesch; level.scr_anim["boss"]["pt2_crawl"] = %sw_end_pt2_crawl_vargas; maps\_anim::addnotetrack_notify( "boss", "grab_gun", "notify_rorke_grab_gun", "pt2_crawl" ); maps\_anim::addnotetrack_notify( "boss", "glass_crack_02", "glass_crack_02" ); maps\_anim::addnotetrack_notify( "boss", "gun_fire", "enemy_gun_fire" ); level.scr_anim["ally1"]["pt2_draw"] = %sw_end_pt2_draw_hesch; level.scr_anim["boss"]["pt2_draw"] = %sw_end_pt2_draw_vargas; maps\_anim::addnotetrack_notify( "boss", "spawn_knife", "spawn_knife" ); level.scr_anim["ally1"]["pt2_fight"] = %sw_end_pt2_fight_loop_hesch; level.scr_anim["boss"]["pt2_fight"] = %sw_end_pt2_fight_loop_vargas; level.scr_anim["ally1"]["pt2_speedloader"] = %sw_end_pt2_speedloader_hesch; level.scr_anim["boss"]["pt2_speedloader"] = %sw_end_pt2_speedloader_vargas; level.scr_goaltime["ally1"]["pt2_speedloader"] = 0.25; level.scr_goaltime["boss"]["pt2_speedloader"] = 0.25; level.scr_anim["ally1"]["pt2_speedloader_fail"] = %sw_end_pt2_speedloader_hesch_fail; level.scr_anim["boss"]["pt2_speedloader_fail"] = %sw_end_pt2_speedloader_vargas_fail; level.scr_anim["ally1"]["pt2_load_gun"] = %sw_end_pt2_loadgun_hesch; level.scr_anim["boss"]["pt2_load_gun"] = %sw_end_pt2_loadgun_vargas; level.scr_anim["ally1"]["pt2_shoot_chance_loop"][0] = %sw_end_pt2_kill_vargas_hesch; level.scr_anim["boss"]["pt2_shoot_chance_loop"][0] = %sw_end_pt2_kill_vargas_vargas; level.scr_anim["ally1"]["pt2_fire_fail"] = %sw_end_pt2_kill_vargas_fail_hesch; level.scr_anim["boss"]["pt2_fire_fail"] = %sw_end_pt2_kill_vargas_fail_vargas; level.scr_anim["ally1"]["pt2_fire_win"] = %sw_end_pt2_kill_win_hesch; level.scr_anim["boss"]["pt2_fire_win"] = %sw_end_pt2_kill_win_vargas; level.scr_goaltime["ally1"]["pt2_fire_win"] = 0.25; level.scr_goaltime["boss"]["pt2_fire_win"] = 0.25; level.scr_anim["ally1"]["pt2_help_loop"][0] = %sw_end_pt2_help_hesh_loop_hesch; level.scr_anim["boss"]["pt2_help_loop"][0] = %sw_end_pt2_help_hesh_loop_vargas; level.scr_anim["ally1"]["pt2_help"] = %sw_end_pt2_help_hesh_hesch; level.scr_anim["boss"]["pt2_help"] = %sw_end_pt2_help_hesh_vargas; maps\_anim::addnotetrack_notify( "ally1", "hesch_kick_vo", "hesch_kick_vo" ); maps\_anim::addnotetrack_notify( "ally1", "hesch_speedloader_vo", "hesch_speedloader_vo" ); maps\_anim::addnotetrack_notify( "ally1", "slomo_start", "notify_slomo_start" ); maps\_anim::addnotetrack_notify( "ally1", "qte_start", "notify_qte_start" ); maps\_anim::addnotetrack_notify( "ally1", "bullets_blend", "notify_start_bullet_blend" ); maps\_anim::addnotetrack_flag( "ally1", "qte_end", "flag_qte_end" ); maps\_anim::addnotetrack_notify( "ally1", "bullets_ground", "notify_bullets_hit_ground" ); maps\_anim::addnotetrack_notify( "ally1", "start_water_fx", "start_water_fx" ); maps\_anim::addnotetrack_notify( "ally1", "player_swept", "player_swept" ); maps\_anim::addnotetrack_notify( "ally1", "too_late_now", "too_late_now" ); maps\_anim::addnotetrack_customfunction( "boss", "knife_floor", maps\skyway_end_wreck::detach_knife ); maps\_anim::addnotetrack_customfunction( "boss", "knife_hand", maps\skyway_end_wreck::attach_knife ); level.scr_sound["ally1"]["skyway_hsh_shoothim"] = "skyway_hsh_shoothim"; level.scr_face["ally1"]["skyway_hsh_shoothim"] = %sw_end_pt2_face_shoot_him; level.scr_sound["ally1"]["skyway_hsh_logandoitnow"] = "skyway_hsh_logandoitnow"; level.scr_face["ally1"]["skyway_hsh_logandoitnow"] = %sw_end_pt2_face_logan_now; level.scr_sound["ally1"]["skyway_hsh_doit"] = "skyway_hsh_doit"; level.scr_face["ally1"]["skyway_hsh_doit"] = %sw_end_pt2_face_doit; level.scr_anim["ally1"]["swimout"] = %sw_swimout_init_hesh; level.scr_anim["boss"]["swimout"] = %sw_swimout_rorke; level.scr_anim["opfor3"]["swimout"] = %sw_swimout_deadbody3; level.scr_anim["opfor4"]["swimout"] = %sw_swimout_deadbody4; level.scr_anim["boss"]["swimout_loop"][0] = %sw_swimout_rorke_loop; level.scr_anim["opfor3"]["swimout_loop"][0] = %sw_swimout_deadbody3_loop; level.scr_anim["opfor4"]["swimout_loop"][0] = %sw_swimout_deadbody4_loop; level.scr_anim["ally1"]["beach_pt1_idle"][0] = %sw_beach_hesh_pt1_idle; level.scr_anim["ally1"]["beach_pt2"] = %sw_beach_hesh_pt2; level.scr_anim["ally1"]["beach_pt3"] = %sw_beach_hesh_pt3; level.scr_anim["boss"]["beach_pt2"] = %sw_beach_vargas_pt2; level.scr_anim["boss"]["beach_pt3"] = %sw_beach_vargas_pt3; level.scr_animtree["player_body"] = #animtree; level.scr_model["player_body"] = "body_keegan_cornered_a"; level.scr_anim["player_body"]["beach_pt1_idle"][0] = %sw_beach_playerbody_pt1_idle; level.scr_anim["player_body"]["beach_pt2"] = %sw_beach_playerbody_pt2; level.scr_anim["player_body"]["beach_pt3"] = %sw_beach_playerbody_pt3; level.scr_anim["generic"]["hang2sat"] = %sw_traversal_jump_10; level.scr_anim["generic"]["sat2roof"] = %sw_hesh_sat2roof; level.scr_anim["generic"]["sw_jump_80"] = %sw_traversal_jump_1; level.scr_anim["generic"]["sw_jump_88"] = %sw_traversal_jump_8; level.scr_anim["generic"]["sw_jump_104"] = %sw_traversal_jump_11; level.scr_anim["generic"]["sw_jump_96_fall"] = %sw_traversal_jump_9; level.scr_anim["generic"]["sat_in"] = %sw_traversal_sat_in; level.scr_anim["generic"]["sat_out"] = %sw_traversal_sat_out; level.scr_anim["generic"]["bin_in"] = %sw_traversal_bin_in; level.scr_anim["generic"]["bin_out"] = %sw_traversal_bin_out; level.scr_anim["generic"]["sw_loco_stackup"] = %sw_enginecar_hesh_breach_init; maps\_anim::addnotetrack_flag( "generic", "line_1", "stack_line_1", "sw_loco_stackup" ); maps\_anim::addnotetrack_flag( "generic", "line_2", "stack_line_2", "sw_loco_stackup" ); maps\_anim::addnotetrack_flag( "generic", "line_3", "stack_line_3", "sw_loco_stackup" ); maps\_anim::addnotetrack_flag( "generic", "line_4", "stack_line_4", "sw_loco_stackup" ); maps\_anim::addnotetrack_flag( "generic", "line_5", "stack_line_5", "sw_loco_stackup" ); maps\_anim::addnotetrack_flag( "generic", "line_6", "stack_line_6", "sw_loco_stackup" ); var_0 = []; var_0["cover_right_stand"]["alert_idle_twitch"] = [ %corner_standr_alert_twitch02, %corner_standr_alert_twitch04, %corner_standr_alert_twitch06 ]; var_0["cover_left_stand"]["alert_idle_twitch"] = [ %corner_standl_alert_twitch01, %corner_standl_alert_twitch02, %corner_standl_alert_twitch03, %corner_standl_alert_twitch04, %corner_standl_alert_twitch05, %corner_standl_alert_twitch07 ]; var_0["cover_crouch"]["hide_idle_twitch"] = [ %covercrouch_twitch_1, %covercrouch_twitch_3, %covercrouch_twitch_4 ]; var_0["cover_stand"]["hide_idle_twitch"] = [ %coverstand_hide_idle_twitch02, %coverstand_hide_idle_twitch03, %coverstand_hide_idle_twitch05 ]; maps\_utility::register_archetype( "no_helmet", var_0 ); } #using_animtree("script_model"); script_model_anims() { level.scr_animtree["view_roll"] = #animtree; level.scr_model["view_roll"] = "sw_view_roll"; level.scr_anim["view_roll"]["nosway"] = %sw_view_roll_nosway; level.scr_anim["view_roll"]["roll_R"] = %sw_view_roll_r; level.scr_anim["view_roll"]["roll_L"] = %sw_view_roll_l; level.scr_anim["view_roll"]["roll_engineroom_sieze"] = %sw_view_roll_engineroom_sieze; level.scr_animtree["hangar_door"] = #animtree; level.scr_animtree["hangar_pip_camera"] = #animtree; level.scr_model["hangar_pip_camera"] = "tag_origin"; level.scr_anim["hangar_door"]["hangar_intro"] = %sw_intro_slidingdoor; level.scr_anim["hangar_pip_camera"]["hangar_intro"] = %sw_intro_camera; level.scr_animtree["enemy_hangar_1"] = #animtree; level.scr_animtree["enemy_hangar_2"] = #animtree; level.scr_model["enemy_hangar_1"] = "body_elite_pmc_assault_b_desert"; level.scr_model["enemy_hangar_2"] = "body_elite_pmc_shotgun_b_desert"; level.scr_anim["enemy_hangar_1"]["hangar_intro"] = %sw_intro_enemy_01; level.scr_anim["enemy_hangar_2"]["hangar_intro"] = %sw_intro_enemy_02; level.scr_animtree["sw_jet"] = #animtree; level.scr_model["sw_jet"] = "sw_jet_skel"; level.scr_anim["sw_jet"]["rt_bomb"] = %sw_jet_bomb_rt; level.scr_anim["sw_jet"]["hang_flyby"] = %sw_jet_hang_flyby; level.scr_anim["sw_jet"]["rt_bomb_canyon_1"] = %sw_jet_bomb_canyon_1; level.scr_anim["sw_jet"]["rt_bomb_canyon_2"] = %sw_jet_bomb_canyon_2; level.scr_anim["sw_jet"]["rt_bomb_outpost"] = %sw_jet_bomb_outpost; level.scr_animtree["sw_mig"] = #animtree; level.scr_model["sw_mig"] = "vehicle_mig29_desert_skyway"; level.scr_animtree["cage1"] = #animtree; level.scr_animtree["cage2"] = #animtree; level.scr_animtree["cage3"] = #animtree; level.scr_animtree["cage4"] = #animtree; level.scr_animtree["crane_train_sat_1"] = #animtree; level.scr_animtree["crane_train_sat_2"] = #animtree; level.scr_anim["cage1"]["sway"] = %skyway_sat_racks1_01; level.scr_anim["cage2"]["sway"] = %skyway_sat_racks1_01; level.scr_anim["cage3"]["sway"] = %skyway_sat_racks1_01; level.scr_anim["cage4"]["sway"] = %skyway_sat_racks1_01; level.scr_anim["crane_train_sat_1"]["sway"] = %skyway_sat_racks2_01; level.scr_anim["crane_train_sat_2"]["sway"] = %skyway_sat_racks2_02; level.scr_anim["cage1"]["overlay"] = %train_add_anims; level.scr_anim["cage2"]["overlay"] = %train_add_anims; level.scr_anim["cage3"]["overlay"] = %train_add_anims; level.scr_anim["cage4"]["overlay"] = %train_add_anims; level.scr_anim["crane_train_sat_1"]["overlay"] = %train_add_anims; level.scr_anim["crane_train_sat_2"]["overlay"] = %train_add_anims; level.scr_anim["cage1"]["sathit_L"] = %sw_sathitr_cage_l; level.scr_anim["cage2"]["sathit_L"] = %sw_sathitr_cage_r; level.scr_anim["cage3"]["sathit_L"] = %sw_sathitr_cage_r; level.scr_anim["cage4"]["sathit_L"] = %sw_sathitr_cage_l; level.scr_anim["crane_train_sat_1"]["sathit_L"] = %sw_sathitl_crane_1; level.scr_anim["crane_train_sat_2"]["sathit_L"] = %sw_sathitl_crane_2; level.scr_anim["cage1"]["sathit_R"] = %sw_sathitr_cage_r; level.scr_anim["cage2"]["sathit_R"] = %sw_sathitr_cage_l; level.scr_anim["cage3"]["sathit_R"] = %sw_sathitr_cage_l; level.scr_anim["cage4"]["sathit_R"] = %sw_sathitr_cage_r; level.scr_anim["crane_train_sat_1"]["sathit_R"] = %sw_sathitr_crane_1; level.scr_anim["crane_train_sat_2"]["sathit_R"] = %sw_sathitr_crane_2; level.scr_anim["cage1"]["roghit"] = %sw_roghit_cage_r; level.scr_anim["cage2"]["roghit"] = %sw_roghit_cage_l; level.scr_anim["cage3"]["roghit"] = %sw_roghit_cage_l; level.scr_anim["cage4"]["roghit"] = %sw_roghit_cage_r; level.scr_anim["crane_train_sat_1"]["roghit"] = %sw_roghit_crane_1; level.scr_anim["crane_train_sat_2"]["roghit"] = %sw_roghit_crane_2; level.scr_animtree["bridge"] = #animtree; level.scr_anim["bridge"]["bridge_push"] = %sw_bridge_push_bridge; level.scr_anim["bridge"]["bridge_push_player"] = %sw_bridge_push_player_bridge; level.scr_anim["traincar_pass_sus_b"]["wheels"] = %sw_train_wheels; level.scr_animtree["train_hangar_body"] = #animtree; level.scr_animtree["train_hangar_sus_f"] = #animtree; level.scr_animtree["train_hangar_sus_b"] = #animtree; level.scr_anim["train_hangar_body"]["overlay"] = %train_add_anims; level.scr_anim["train_hangar_body"]["intro"] = %sw_intro_hang_body; level.scr_anim["train_hangar_body"]["bb_1"] = %sw_bb_1_hang_body; level.scr_anim["train_hangar_body"]["bb_2"] = %sw_bb_2_hang_body; level.scr_anim["train_hangar_body"]["bc_1"] = %sw_bc_1_hang_body; level.scr_anim["train_hangar_body"]["bc_2"] = %sw_bc_2_hang_body; level.scr_anim["train_hangar_body"]["bc_3"] = %sw_bc_3_hang_body; level.scr_anim["train_hangar_body"]["loop_a1"] = %sw_loopa1_hang_body; level.scr_anim["train_hangar_body"]["loop_a2"] = %sw_loopa2_hang_body; level.scr_anim["train_hangar_body"]["ab_1"] = %sw_ab1_hang_body; level.scr_anim["train_hangar_body"]["ab_2"] = %sw_ab2_hang_body; level.scr_anim["train_hangar_body"]["end_stop"] = %sw_end_stop_generic_body; level.scr_anim["train_hangar_body"]["end_hang"] = %sw_end_hang_generic_body; level.scr_anim["train_hangar_body"]["end_rog"] = %sw_end_hang_generic_body; level.scr_anim["train_hangar_body"]["sathit_L"] = %sw_sathitl_hang_body; level.scr_anim["train_hangar_body"]["sathit_R"] = %sw_sathit_hang_body; level.scr_anim["train_hangar_body"]["roghit"] = %sw_roghit_hang_body; level.scr_anim["train_hangar_body"]["loco_blasthit"] = %sw_enginecar_blasthit_traindummy; level.scr_anim["train_hangar_sus_f"]["overlay"] = %train_add_anims; level.scr_anim["train_hangar_sus_f"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_hangar_sus_f"]["bb_1"] = %sw_bb_1_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["bb_2"] = %sw_bb_2_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["bc_1"] = %sw_bc_1_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["bc_2"] = %sw_bc_2_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["bc_3"] = %sw_bc_3_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["loop_a1"] = %sw_loopa1_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["loop_a2"] = %sw_loopa2_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["ab_1"] = %sw_ab1_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["ab_2"] = %sw_ab2_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_hangar_sus_f"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_hangar_sus_f"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_hangar_sus_f"]["sathit_L"] = %sw_sathitl_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["sathit_R"] = %sw_sathit_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["roghit"] = %sw_roghit_hang_sus_f; level.scr_anim["train_hangar_sus_f"]["wheels"] = %sw_loco_wheels; level.scr_anim["train_hangar_sus_f"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_hangar_sus_b"]["overlay"] = %train_add_anims; level.scr_anim["train_hangar_sus_b"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_hangar_sus_b"]["bb_1"] = %sw_bb_1_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["bb_2"] = %sw_bb_2_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["bc_1"] = %sw_bc_1_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["bc_2"] = %sw_bc_2_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["bc_3"] = %sw_bc_3_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["loop_a1"] = %sw_loopa1_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["loop_a2"] = %sw_loopa2_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["ab_1"] = %sw_ab1_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["ab_2"] = %sw_ab2_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_hangar_sus_b"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_hangar_sus_b"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_hangar_sus_b"]["sathit_L"] = %sw_sathitl_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["sathit_R"] = %sw_sathit_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["roghit"] = %sw_roghit_hang_sus_b; level.scr_anim["train_hangar_sus_b"]["wheels"] = %sw_loco_wheels; level.scr_anim["train_hangar_sus_b"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_animtree["train_sat_1_body"] = #animtree; level.scr_animtree["train_sat_1_sus_f"] = #animtree; level.scr_animtree["train_sat_1_sus_b"] = #animtree; level.scr_anim["train_sat_1_body"]["overlay"] = %train_add_anims; level.scr_anim["train_sat_1_body"]["intro"] = %sw_intro_generic_body; level.scr_anim["train_sat_1_body"]["bb_1"] = %sw_bb_1_satb_body; level.scr_anim["train_sat_1_body"]["bb_2"] = %sw_bb_2_satb_body; level.scr_anim["train_sat_1_body"]["bc_1"] = %sw_bc_1_satb_body; level.scr_anim["train_sat_1_body"]["bc_2"] = %sw_bc_2_satb_body; level.scr_anim["train_sat_1_body"]["bc_3"] = %sw_bc_3_satb_body; level.scr_anim["train_sat_1_body"]["loop_a1"] = %sw_loopa1_satb_body; level.scr_anim["train_sat_1_body"]["loop_a2"] = %sw_loopa2_satb_body; level.scr_anim["train_sat_1_body"]["ab_1"] = %sw_ab1_satb_body; level.scr_anim["train_sat_1_body"]["ab_2"] = %sw_ab2_satb_body; level.scr_anim["train_sat_1_body"]["end_stop"] = %sw_end_stop_generic_body; level.scr_anim["train_sat_1_body"]["end_hang"] = %sw_end_hang_generic_body; level.scr_anim["train_sat_1_body"]["end_rog"] = %sw_end_hang_generic_body; level.scr_anim["train_sat_1_body"]["sathit_L"] = %sw_sathitl_sat_body; level.scr_anim["train_sat_1_body"]["sathit_R"] = %sw_sathit_sat_body; level.scr_anim["train_sat_1_body"]["roghit"] = %sw_roghit_sat_body; level.scr_anim["train_sat_1_body"]["loco_blasthit"] = %sw_enginecar_blasthit_traindummy; level.scr_anim["train_sat_1_sus_f"]["overlay"] = %train_add_anims; level.scr_anim["train_sat_1_sus_f"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_sat_1_sus_f"]["bb_1"] = %sw_bb_1_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["bb_2"] = %sw_bb_2_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["bc_1"] = %sw_bc_1_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["bc_2"] = %sw_bc_2_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["bc_3"] = %sw_bc_3_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["loop_a1"] = %sw_loopa1_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["loop_a2"] = %sw_loopa2_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["ab_1"] = %sw_ab1_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["ab_2"] = %sw_ab2_satb_sus_f; level.scr_anim["train_sat_1_sus_f"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_sat_1_sus_f"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_sat_1_sus_f"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_sat_1_sus_f"]["sathit_L"] = %sw_sathitl_sat_sus_f; level.scr_anim["train_sat_1_sus_f"]["sathit_R"] = %sw_sathit_sat_sus_f; level.scr_anim["train_sat_1_sus_f"]["roghit"] = %sw_roghit_sat_sus_f; level.scr_anim["train_sat_1_sus_f"]["wheels"] = %sw_loco_wheels; level.scr_anim["train_sat_1_sus_f"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_sat_1_sus_b"]["overlay"] = %train_add_anims; level.scr_anim["train_sat_1_sus_b"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_sat_1_sus_b"]["bb_1"] = %sw_bb_1_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["bb_2"] = %sw_bb_2_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["bc_1"] = %sw_bc_1_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["bc_2"] = %sw_bc_2_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["bc_3"] = %sw_bc_3_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["loop_a1"] = %sw_loopa1_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["loop_a2"] = %sw_loopa2_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["ab_1"] = %sw_ab1_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["ab_2"] = %sw_ab2_satb_sus_b; level.scr_anim["train_sat_1_sus_b"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_sat_1_sus_b"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_sat_1_sus_b"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_sat_1_sus_b"]["sathit_L"] = %sw_sathitl_sat_sus_b; level.scr_anim["train_sat_1_sus_b"]["sathit_R"] = %sw_sathit_sat_sus_b; level.scr_anim["train_sat_1_sus_b"]["roghit"] = %sw_roghit_sat_sus_b; level.scr_anim["train_sat_1_sus_b"]["wheels"] = %sw_loco_wheels; level.scr_anim["train_sat_1_sus_b"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_animtree["train_sat_2_body"] = #animtree; level.scr_animtree["train_sat_2_sus_f"] = #animtree; level.scr_animtree["train_sat_2_sus_b"] = #animtree; level.scr_anim["train_sat_2_body"]["overlay"] = %train_add_anims; level.scr_anim["train_sat_2_body"]["intro"] = %sw_intro_generic_body; level.scr_anim["train_sat_2_body"]["bb_1"] = %sw_bb_1_sata_body; level.scr_anim["train_sat_2_body"]["bb_2"] = %sw_bb_2_sata_body; level.scr_anim["train_sat_2_body"]["bc_1"] = %sw_bc_1_sata_body; level.scr_anim["train_sat_2_body"]["bc_2"] = %sw_bc_2_sata_body; level.scr_anim["train_sat_2_body"]["bc_3"] = %sw_bc_3_sata_body; level.scr_anim["train_sat_2_body"]["loop_a1"] = %sw_loopa1_sata_body; level.scr_anim["train_sat_2_body"]["loop_a2"] = %sw_loopa2_sata_body; level.scr_anim["train_sat_2_body"]["ab_1"] = %sw_ab1_sata_body; level.scr_anim["train_sat_2_body"]["ab_2"] = %sw_ab2_sata_body; level.scr_anim["train_sat_2_body"]["end_stop"] = %sw_end_stop_generic_body; level.scr_anim["train_sat_2_body"]["end_hang"] = %sw_end_hang_generic_body; level.scr_anim["train_sat_2_body"]["end_rog"] = %sw_end_hang_generic_body; level.scr_anim["train_sat_2_body"]["sathit_L"] = %sw_sathitl_sat_body; level.scr_anim["train_sat_2_body"]["sathit_R"] = %sw_sathit_sat_body; level.scr_anim["train_sat_2_body"]["roghit"] = %sw_roghit_sat_body; level.scr_anim["train_sat_2_body"]["loco_blasthit"] = %sw_enginecar_blasthit_traindummy; level.scr_anim["train_sat_2_sus_f"]["overlay"] = %train_add_anims; level.scr_anim["train_sat_2_sus_f"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_sat_2_sus_f"]["bb_1"] = %sw_bb_1_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["bb_2"] = %sw_bb_2_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["bc_1"] = %sw_bc_1_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["bc_2"] = %sw_bc_2_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["bc_3"] = %sw_bc_3_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["loop_a1"] = %sw_loopa1_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["loop_a2"] = %sw_loopa2_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["ab_1"] = %sw_ab1_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["ab_2"] = %sw_ab2_sata_sus_f; level.scr_anim["train_sat_2_sus_f"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_sat_2_sus_f"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_sat_2_sus_f"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_sat_2_sus_f"]["sathit_L"] = %sw_sathitl_sat_sus_f; level.scr_anim["train_sat_2_sus_f"]["sathit_R"] = %sw_sathit_sat_sus_f; level.scr_anim["train_sat_2_sus_f"]["roghit"] = %sw_roghit_sat_sus_f; level.scr_anim["train_sat_2_sus_f"]["wheels"] = %sw_loco_wheels; level.scr_anim["train_sat_2_sus_f"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_sat_2_sus_b"]["overlay"] = %train_add_anims; level.scr_anim["train_sat_2_sus_b"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_sat_2_sus_b"]["bb_1"] = %sw_bb_1_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["bb_2"] = %sw_bb_2_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["bc_1"] = %sw_bc_1_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["bc_2"] = %sw_bc_2_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["bc_3"] = %sw_bc_3_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["loop_a1"] = %sw_loopa1_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["loop_a2"] = %sw_loopa2_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["ab_1"] = %sw_ab1_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["ab_2"] = %sw_ab2_sata_sus_b; level.scr_anim["train_sat_2_sus_b"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_sat_2_sus_b"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_sat_2_sus_b"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_sat_2_sus_b"]["sathit_L"] = %sw_sathitl_sat_sus_b; level.scr_anim["train_sat_2_sus_b"]["sathit_R"] = %sw_sathit_sat_sus_b; level.scr_anim["train_sat_2_sus_b"]["roghit"] = %sw_roghit_sat_sus_b; level.scr_anim["train_sat_2_sus_b"]["wheels"] = %sw_loco_wheels; level.scr_anim["train_sat_2_sus_b"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_animtree["train_rt0_body"] = #animtree; level.scr_animtree["train_rt0_sus_f"] = #animtree; level.scr_animtree["train_rt0_sus_b"] = #animtree; level.scr_anim["train_rt0_body"]["overlay"] = %train_add_anims; level.scr_anim["train_rt0_body"]["intro"] = %sw_intro_generic_body; level.scr_anim["train_rt0_body"]["bb_1"] = %sw_bb_1_pass3_body; level.scr_anim["train_rt0_body"]["bb_2"] = %sw_bb_2_pass3_body; level.scr_anim["train_rt0_body"]["bc_1"] = %sw_bc_1_pass3_body; level.scr_anim["train_rt0_body"]["bc_2"] = %sw_bc_2_pass3_body; level.scr_anim["train_rt0_body"]["bc_3"] = %sw_bc_3_pass3_body; level.scr_anim["train_rt0_body"]["loop_a1"] = %sw_loopa1_pass3_body; level.scr_anim["train_rt0_body"]["loop_a2"] = %sw_loopa2_pass3_body; level.scr_anim["train_rt0_body"]["ab_1"] = %sw_ab1_pass3_body; level.scr_anim["train_rt0_body"]["ab_2"] = %sw_ab2_pass3_body; level.scr_anim["train_rt0_body"]["end_stop"] = %sw_end_stop_generic_body; level.scr_anim["train_rt0_body"]["end_hang"] = %sw_end_hang_generic_body; level.scr_anim["train_rt0_body"]["end_rog"] = %sw_end_hang_generic_body; level.scr_anim["train_rt0_body"]["sathit_L"] = %sw_sathitl_pass_body; level.scr_anim["train_rt0_body"]["sathit_R"] = %sw_sathit_pass_body; level.scr_anim["train_rt0_body"]["roghit"] = %sw_roghit_pass_body; level.scr_anim["train_rt0_body"]["loco_blasthit"] = %sw_enginecar_blasthit_traindummy; level.scr_anim["train_rt0_sus_f"]["overlay"] = %train_add_anims; level.scr_anim["train_rt0_sus_f"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_rt0_sus_f"]["bb_1"] = %sw_bb_1_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["bb_2"] = %sw_bb_2_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["bc_1"] = %sw_bc_1_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["bc_2"] = %sw_bc_2_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["bc_3"] = %sw_bc_3_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["loop_a1"] = %sw_loopa1_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["loop_a2"] = %sw_loopa2_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["ab_1"] = %sw_ab1_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["ab_2"] = %sw_ab2_pass3_sus_f; level.scr_anim["train_rt0_sus_f"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_rt0_sus_f"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt0_sus_f"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt0_sus_f"]["sathit_L"] = %sw_sathitl_pass_sus_f; level.scr_anim["train_rt0_sus_f"]["sathit_R"] = %sw_sathit_pass_sus_f; level.scr_anim["train_rt0_sus_f"]["roghit"] = %sw_roghit_pass_sus_f; level.scr_anim["train_rt0_sus_f"]["wheels"] = %sw_train_wheels; level.scr_anim["train_rt0_sus_f"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_rt0_sus_b"]["overlay"] = %train_add_anims; level.scr_anim["train_rt0_sus_b"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_rt0_sus_b"]["bb_1"] = %sw_bb_1_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["bb_2"] = %sw_bb_2_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["bc_1"] = %sw_bc_1_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["bc_2"] = %sw_bc_2_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["bc_3"] = %sw_bc_3_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["loop_a1"] = %sw_loopa1_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["loop_a2"] = %sw_loopa2_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["ab_1"] = %sw_ab1_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["ab_2"] = %sw_ab2_pass3_sus_b; level.scr_anim["train_rt0_sus_b"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_rt0_sus_b"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt0_sus_b"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt0_sus_b"]["sathit_L"] = %sw_sathitl_pass_sus_b; level.scr_anim["train_rt0_sus_b"]["sathit_R"] = %sw_sathit_pass_sus_b; level.scr_anim["train_rt0_sus_b"]["roghit"] = %sw_roghit_pass_sus_b; level.scr_anim["train_rt0_sus_b"]["wheels"] = %sw_train_wheels; level.scr_anim["train_rt0_sus_b"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_animtree["train_rt1_body"] = #animtree; level.scr_animtree["train_rt1_sus_f"] = #animtree; level.scr_animtree["train_rt1_sus_b"] = #animtree; level.scr_anim["train_rt1_body"]["overlay"] = %train_add_anims; level.scr_anim["train_rt1_body"]["intro"] = %sw_intro_generic_body; level.scr_anim["train_rt1_body"]["bb_1"] = %sw_bb_1_pass4_body; level.scr_anim["train_rt1_body"]["bb_2"] = %sw_bb_2_pass4_body; level.scr_anim["train_rt1_body"]["bc_1"] = %sw_bc_1_pass4_body; level.scr_anim["train_rt1_body"]["bc_2"] = %sw_bc_2_pass4_body; level.scr_anim["train_rt1_body"]["bc_3"] = %sw_bc_3_pass4_body; level.scr_anim["train_rt1_body"]["loop_a1"] = %sw_loopa1_pass4_body; level.scr_anim["train_rt1_body"]["loop_a2"] = %sw_loopa2_pass4_body; level.scr_anim["train_rt1_body"]["ab_1"] = %sw_ab1_pass4_body; level.scr_anim["train_rt1_body"]["ab_2"] = %sw_ab2_pass4_body; level.scr_anim["train_rt1_body"]["end_stop"] = %sw_end_stop_generic_body; level.scr_anim["train_rt1_body"]["end_hang"] = %sw_end_hang_generic_body; level.scr_anim["train_rt1_body"]["end_rog"] = %sw_end_hang_generic_body; level.scr_anim["train_rt1_body"]["sathit_L"] = %sw_sathitl_pass_body; level.scr_anim["train_rt1_body"]["sathit_R"] = %sw_sathit_pass_body; level.scr_anim["train_rt1_body"]["roghit"] = %sw_roghit_pass_body; level.scr_anim["train_rt1_body"]["loco_blasthit"] = %sw_enginecar_blasthit_traindummy; level.scr_anim["train_rt1_sus_f"]["overlay"] = %train_add_anims; level.scr_anim["train_rt1_sus_f"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_rt1_sus_f"]["bb_1"] = %sw_bb_1_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["bb_2"] = %sw_bb_2_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["bc_1"] = %sw_bc_1_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["bc_2"] = %sw_bc_2_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["bc_3"] = %sw_bc_3_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["loop_a1"] = %sw_loopa1_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["loop_a2"] = %sw_loopa2_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["ab_1"] = %sw_ab1_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["ab_2"] = %sw_ab2_pass4_sus_f; level.scr_anim["train_rt1_sus_f"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_rt1_sus_f"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt1_sus_f"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt1_sus_f"]["sathit_L"] = %sw_sathitl_pass_sus_f; level.scr_anim["train_rt1_sus_f"]["sathit_R"] = %sw_sathit_pass_sus_f; level.scr_anim["train_rt1_sus_f"]["roghit"] = %sw_roghit_pass_sus_f; level.scr_anim["train_rt1_sus_f"]["wheels"] = %sw_train_wheels; level.scr_anim["train_rt1_sus_f"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_rt1_sus_b"]["overlay"] = %train_add_anims; level.scr_anim["train_rt1_sus_b"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_rt1_sus_b"]["bb_1"] = %sw_bb_1_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["bb_2"] = %sw_bb_2_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["bc_1"] = %sw_bc_1_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["bc_2"] = %sw_bc_2_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["bc_3"] = %sw_bc_3_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["loop_a1"] = %sw_loopa1_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["loop_a2"] = %sw_loopa2_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["ab_1"] = %sw_ab1_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["ab_2"] = %sw_ab2_pass4_sus_b; level.scr_anim["train_rt1_sus_b"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_rt1_sus_b"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt1_sus_b"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt1_sus_b"]["sathit_L"] = %sw_sathitl_pass_sus_b; level.scr_anim["train_rt1_sus_b"]["sathit_R"] = %sw_sathit_pass_sus_b; level.scr_anim["train_rt1_sus_b"]["roghit"] = %sw_roghit_pass_sus_b; level.scr_anim["train_rt1_sus_b"]["wheels"] = %sw_train_wheels; level.scr_anim["train_rt1_sus_b"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_rt1_body"]["rt_helo_crash"] = %sw_rt_body_crash; level.scr_anim["train_rt1_body"]["rt_helo_damaged"] = %sw_rt_body_damaged; level.scr_anim["train_rt1_sus_f"]["rt_helo_crash"] = %sw_rt_sus_f_crash; level.scr_anim["train_rt1_sus_f"]["rt_helo_damaged"] = %sw_rt_sus_f_damaged; level.scr_anim["train_rt1_sus_b"]["rt_helo_crash"] = %sw_rt_sus_b_crash; level.scr_anim["train_rt1_sus_b"]["rt_helo_damaged"] = %sw_rt_sus_b_damaged; level.scr_animtree["train_rt2_body"] = #animtree; level.scr_animtree["train_rt2_sus_f"] = #animtree; level.scr_animtree["train_rt2_sus_b"] = #animtree; level.scr_anim["train_rt2_body"]["overlay"] = %train_add_anims; level.scr_anim["train_rt2_body"]["intro"] = %sw_intro_generic_body; level.scr_anim["train_rt2_body"]["bb_1"] = %sw_bb_1_pass5_body; level.scr_anim["train_rt2_body"]["bb_2"] = %sw_bb_2_pass5_body; level.scr_anim["train_rt2_body"]["bc_1"] = %sw_bc_1_pass5_body; level.scr_anim["train_rt2_body"]["bc_2"] = %sw_bc_2_pass5_body; level.scr_anim["train_rt2_body"]["bc_3"] = %sw_bc_3_pass5_body; level.scr_anim["train_rt2_body"]["loop_a1"] = %sw_loopa1_pass5_body; level.scr_anim["train_rt2_body"]["loop_a2"] = %sw_loopa2_pass5_body; level.scr_anim["train_rt2_body"]["ab_1"] = %sw_ab1_pass5_body; level.scr_anim["train_rt2_body"]["ab_2"] = %sw_ab2_pass5_body; level.scr_anim["train_rt2_body"]["end_stop"] = %sw_end_stop_generic_body; level.scr_anim["train_rt2_body"]["end_hang"] = %sw_end_hang_generic_body; level.scr_anim["train_rt2_body"]["end_rog"] = %sw_end_hang_generic_body; level.scr_anim["train_rt2_body"]["sathit_L"] = %sw_sathitl_pass_body; level.scr_anim["train_rt2_body"]["sathit_R"] = %sw_sathit_pass_body; level.scr_anim["train_rt2_body"]["roghit"] = %sw_roghit_pass_body; level.scr_anim["train_rt2_body"]["loco_blasthit"] = %sw_enginecar_blasthit_traindummy; level.scr_anim["train_rt2_sus_f"]["overlay"] = %train_add_anims; level.scr_anim["train_rt2_sus_f"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_rt2_sus_f"]["bb_1"] = %sw_bb_1_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["bb_2"] = %sw_bb_2_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["bc_1"] = %sw_bc_1_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["bc_2"] = %sw_bc_2_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["bc_3"] = %sw_bc_3_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["loop_a1"] = %sw_loopa1_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["loop_a2"] = %sw_loopa2_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["ab_1"] = %sw_ab1_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["ab_2"] = %sw_ab2_pass5_sus_f; level.scr_anim["train_rt2_sus_f"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_rt2_sus_f"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt2_sus_f"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt2_sus_f"]["sathit_L"] = %sw_sathitl_pass_sus_f; level.scr_anim["train_rt2_sus_f"]["sathit_R"] = %sw_sathit_pass_sus_f; level.scr_anim["train_rt2_sus_f"]["roghit"] = %sw_roghit_pass_sus_f; level.scr_anim["train_rt2_sus_f"]["wheels"] = %sw_train_wheels; level.scr_anim["train_rt2_sus_f"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_rt2_sus_b"]["overlay"] = %train_add_anims; level.scr_anim["train_rt2_sus_b"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_rt2_sus_b"]["bb_1"] = %sw_bb_1_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["bb_2"] = %sw_bb_2_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["bc_1"] = %sw_bc_1_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["bc_2"] = %sw_bc_2_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["bc_3"] = %sw_bc_3_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["loop_a1"] = %sw_loopa1_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["loop_a2"] = %sw_loopa2_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["ab_1"] = %sw_ab1_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["ab_2"] = %sw_ab2_pass5_sus_b; level.scr_anim["train_rt2_sus_b"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_rt2_sus_b"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt2_sus_b"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt2_sus_b"]["sathit_L"] = %sw_sathitl_pass_sus_b; level.scr_anim["train_rt2_sus_b"]["sathit_R"] = %sw_sathit_pass_sus_b; level.scr_anim["train_rt2_sus_b"]["roghit"] = %sw_roghit_pass_sus_b; level.scr_anim["train_rt2_sus_b"]["wheels"] = %sw_train_wheels; level.scr_anim["train_rt2_sus_b"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; maps\_anim::addnotetrack_notify( "train_rt2_body", "allow_teleport", "player_train_new_anim" ); maps\_anim::addnotetrack_notify( "train_rt2_body", "break_sus_l", "notify_break_sus_l", "_a3_1" ); maps\_anim::addnotetrack_notify( "train_rt2_body", "break_sus_r", "notify_break_sus_r", "_a3_1" ); maps\_anim::addnotetrack_notify( "train_rt2_body", "scrape_wall", "notify_train_scrape_Wall", "_a3_1" ); maps\_anim::addnotetrack_notify( "train_rt2_body", "stop_scrape_wall", "notify_train_stop_scrape_Wall", "_a3_1" ); maps\_anim::addnotetrack_notify( "train_rt2_body", "hit_wall", "notify_train_hit_Wall", "_a3_1" ); level.scr_animtree["train_rt3_body"] = #animtree; level.scr_animtree["train_rt3_sus_f"] = #animtree; level.scr_animtree["train_rt3_sus_b"] = #animtree; level.scr_anim["train_rt3_body"]["overlay"] = %train_add_anims; level.scr_anim["train_rt3_body"]["intro"] = %sw_intro_generic_body; level.scr_anim["train_rt3_body"]["bb_1"] = %sw_bb_1_pass6_body; level.scr_anim["train_rt3_body"]["bb_2"] = %sw_bb_2_pass6_body; level.scr_anim["train_rt3_body"]["bc_1"] = %sw_bc_1_pass6_body; level.scr_anim["train_rt3_body"]["bc_2"] = %sw_bc_2_pass6_body; level.scr_anim["train_rt3_body"]["bc_3"] = %sw_bc_3_pass6_body; level.scr_anim["train_rt3_body"]["loop_a1"] = %sw_loopa1_pass6_body; level.scr_anim["train_rt3_body"]["loop_a2"] = %sw_loopa2_pass6_body; level.scr_anim["train_rt3_body"]["ab_1"] = %sw_ab1_pass6_body; level.scr_anim["train_rt3_body"]["ab_2"] = %sw_ab2_pass6_body; level.scr_anim["train_rt3_body"]["end_stop"] = %sw_end_stop_generic_body; level.scr_anim["train_rt3_body"]["end_hang"] = %sw_end_hang_generic_body; level.scr_anim["train_rt3_body"]["end_rog"] = %sw_end_hang_generic_body; level.scr_anim["train_rt3_body"]["sathit_L"] = %sw_sathitl_pass_body; level.scr_anim["train_rt3_body"]["sathit_R"] = %sw_sathit_pass_body; level.scr_anim["train_rt3_body"]["roghit"] = %sw_roghit_pass_body; level.scr_anim["train_rt3_body"]["loco_blasthit"] = %sw_enginecar_blasthit_traindummy; level.scr_anim["train_rt3_sus_f"]["overlay"] = %train_add_anims; level.scr_anim["train_rt3_sus_f"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_rt3_sus_f"]["bb_1"] = %sw_bb_1_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["bb_2"] = %sw_bb_2_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["bc_1"] = %sw_bc_1_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["bc_2"] = %sw_bc_2_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["bc_3"] = %sw_bc_3_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["loop_a1"] = %sw_loopa1_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["loop_a2"] = %sw_loopa2_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["ab_1"] = %sw_ab1_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["ab_2"] = %sw_ab2_pass6_sus_f; level.scr_anim["train_rt3_sus_f"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_rt3_sus_f"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt3_sus_f"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt3_sus_f"]["sathit_L"] = %sw_sathitl_pass_sus_f; level.scr_anim["train_rt3_sus_f"]["sathit_R"] = %sw_sathit_pass_sus_f; level.scr_anim["train_rt3_sus_f"]["roghit"] = %sw_roghit_pass_sus_f; level.scr_anim["train_rt3_sus_f"]["wheels"] = %sw_train_wheels; level.scr_anim["train_rt3_sus_f"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_rt3_sus_b"]["overlay"] = %train_add_anims; level.scr_anim["train_rt3_sus_b"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_rt3_sus_b"]["bb_1"] = %sw_bb_1_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["bb_2"] = %sw_bb_2_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["bc_1"] = %sw_bc_1_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["bc_2"] = %sw_bc_2_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["bc_3"] = %sw_bc_3_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["loop_a1"] = %sw_loopa1_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["loop_a2"] = %sw_loopa2_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["ab_1"] = %sw_ab1_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["ab_2"] = %sw_ab2_pass6_sus_b; level.scr_anim["train_rt3_sus_b"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_rt3_sus_b"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt3_sus_b"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_rt3_sus_b"]["sathit_L"] = %sw_sathitl_pass_sus_b; level.scr_anim["train_rt3_sus_b"]["sathit_R"] = %sw_sathit_pass_sus_b; level.scr_anim["train_rt3_sus_b"]["roghit"] = %sw_roghit_pass_sus_b; level.scr_anim["train_rt3_sus_b"]["wheels"] = %sw_train_wheels; level.scr_anim["train_rt3_sus_b"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_animtree["train_loco_body"] = #animtree; level.scr_animtree["train_loco_sus_f"] = #animtree; level.scr_animtree["train_loco_sus_b"] = #animtree; level.scr_anim["train_loco_body"]["overlay"] = %train_add_anims; level.scr_anim["train_loco_body"]["intro"] = %sw_intro_generic_body; level.scr_anim["train_loco_body"]["bb_1"] = %sw_bb_1_loco_body; level.scr_anim["train_loco_body"]["bb_2"] = %sw_bb_2_loco_body; level.scr_anim["train_loco_body"]["bc_1"] = %sw_bc_1_loco_body; level.scr_anim["train_loco_body"]["bc_2"] = %sw_bc_2_loco_body; level.scr_anim["train_loco_body"]["bc_3"] = %sw_bc_3_loco_body; level.scr_anim["train_loco_body"]["loop_a1"] = %sw_loopa1_loco_body; level.scr_anim["train_loco_body"]["loop_a2"] = %sw_loopa2_loco_body; level.scr_anim["train_loco_body"]["ab_1"] = %sw_ab1_loco_body; level.scr_anim["train_loco_body"]["ab_2"] = %sw_ab2_loco_body; level.scr_anim["train_loco_body"]["end_stop"] = %sw_end_stop_loco_body; level.scr_anim["train_loco_body"]["end_hang"] = %sw_end_hang_loco_body; level.scr_anim["train_loco_body"]["end_rog"] = %sw_end_rog_loco_body; level.scr_anim["train_loco_body"]["sathit_L"] = %sw_sathitl_loco_body; level.scr_anim["train_loco_body"]["sathit_R"] = %sw_sathit_loco_body; level.scr_anim["train_loco_body"]["roghit"] = %sw_roghit_loco_body; level.scr_anim["train_loco_body"]["loco_blasthit"] = %sw_enginecar_blasthit_train; level.scr_anim["train_loco_sus_f"]["overlay"] = %train_add_anims; level.scr_anim["train_loco_sus_f"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_loco_sus_f"]["bb_1"] = %sw_bb_1_loco_sus_f; level.scr_anim["train_loco_sus_f"]["bb_2"] = %sw_bb_2_loco_sus_f; level.scr_anim["train_loco_sus_f"]["bc_1"] = %sw_bc_1_loco_sus_f; level.scr_anim["train_loco_sus_f"]["bc_2"] = %sw_bc_2_loco_sus_f; level.scr_anim["train_loco_sus_f"]["bc_3"] = %sw_bc_3_loco_sus_f; level.scr_anim["train_loco_sus_f"]["loop_a1"] = %sw_loopa1_loco_sus_f; level.scr_anim["train_loco_sus_f"]["loop_a2"] = %sw_loopa2_loco_sus_f; level.scr_anim["train_loco_sus_f"]["ab_1"] = %sw_ab1_loco_sus_f; level.scr_anim["train_loco_sus_f"]["ab_2"] = %sw_ab2_loco_sus_f; level.scr_anim["train_loco_sus_f"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_loco_sus_f"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_loco_sus_f"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_loco_sus_f"]["sathit_L"] = %sw_sathitl_loco_sus_f; level.scr_anim["train_loco_sus_f"]["sathit_R"] = %sw_sathit_loco_sus_f; level.scr_anim["train_loco_sus_f"]["roghit"] = %sw_roghit_loco_sus_f; level.scr_anim["train_loco_sus_f"]["wheels"] = %sw_loco_wheels; level.scr_anim["train_loco_sus_f"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; level.scr_anim["train_loco_sus_b"]["overlay"] = %train_add_anims; level.scr_anim["train_loco_sus_b"]["intro"] = %sw_intro_generic_sus; level.scr_anim["train_loco_sus_b"]["bb_1"] = %sw_bb_1_loco_sus_b; level.scr_anim["train_loco_sus_b"]["bb_2"] = %sw_bb_2_loco_sus_b; level.scr_anim["train_loco_sus_b"]["bc_1"] = %sw_bc_1_loco_sus_b; level.scr_anim["train_loco_sus_b"]["bc_2"] = %sw_bc_2_loco_sus_b; level.scr_anim["train_loco_sus_b"]["bc_3"] = %sw_bc_3_loco_sus_b; level.scr_anim["train_loco_sus_b"]["loop_a1"] = %sw_loopa1_loco_sus_b; level.scr_anim["train_loco_sus_b"]["loop_a2"] = %sw_loopa2_loco_sus_b; level.scr_anim["train_loco_sus_b"]["ab_1"] = %sw_ab1_loco_sus_b; level.scr_anim["train_loco_sus_b"]["ab_2"] = %sw_ab2_loco_sus_b; level.scr_anim["train_loco_sus_b"]["end_stop"] = %sw_end_stop_generic_sus; level.scr_anim["train_loco_sus_b"]["end_hang"] = %sw_end_hang_generic_sus; level.scr_anim["train_loco_sus_b"]["end_rog"] = %sw_end_hang_generic_sus; level.scr_anim["train_loco_sus_b"]["sathit_L"] = %sw_sathitl_loco_sus_b; level.scr_anim["train_loco_sus_b"]["sathit_R"] = %sw_sathit_loco_sus_b; level.scr_anim["train_loco_sus_b"]["roghit"] = %sw_roghit_loco_sus_b; level.scr_anim["train_loco_sus_b"]["wheels"] = %sw_loco_wheels; level.scr_anim["train_loco_sus_b"]["loco_blasthit"] = %sw_enginecar_blasthit_suspensiondummy; maps\_anim::addnotetrack_notify( "train_loco_body", "shockwave_hit", "notify_shockwave_hit", "end_rog" ); maps\_anim::addnotetrack_notify( "train_loco_body", "shockwave_stop_girders", "notify_shockwave_stop_girders", "end_rog" ); maps\_anim::addnotetrack_notify( "train_loco_body", "shockwave_start", "notify_shockwave_start", "end_rog" ); level.scr_animtree["sw_rope_grapple_1"] = #animtree; level.scr_model["sw_rope_grapple_1"] = "sw_rope_grapple"; level.scr_anim["sw_rope_grapple_1"]["sw_grapple_up"] = %sw_rope_grapple_up_1; level.scr_animtree["sw_rope_grapple_2"] = #animtree; level.scr_model["sw_rope_grapple_2"] = "sw_rope_grapple"; level.scr_anim["sw_rope_grapple_2"]["sw_grapple_up"] = %sw_rope_grapple_up_2; level.scr_animtree["sw_rope_grapple_3"] = #animtree; level.scr_model["sw_rope_grapple_3"] = "sw_rope_grapple"; level.scr_anim["sw_rope_grapple_3"]["sw_grapple_up"] = %sw_rope_grapple_up_3; level.scr_animtree["sw_rope_grapple_4"] = #animtree; level.scr_model["sw_rope_grapple_4"] = "sw_rope_grapple"; level.scr_anim["sw_rope_grapple_4"]["sw_grapple_up"] = %sw_rope_grapple_up_4; level.scr_animtree["sw_rope_grapple_5"] = #animtree; level.scr_model["sw_rope_grapple_5"] = "sw_rope_grapple"; level.scr_anim["sw_rope_grapple_5"]["sw_grapple_up"] = %sw_rope_grapple_up_5; level.scr_animtree["sw_rope_grapple_6"] = #animtree; level.scr_model["sw_rope_grapple_6"] = "sw_rope_grapple"; level.scr_anim["sw_rope_grapple_6"]["sw_grapple_up"] = %sw_rope_grapple_up_6; level.scr_animtree["sw_door_r"] = #animtree; level.scr_animtree["sw_door_l"] = #animtree; level.scr_model["sw_door_r"] = "cnd_exit_door_right"; level.scr_model["sw_door_l"] = "cnd_exit_door_right"; level.scr_anim["sw_door_r"]["sw_entry_u"] = %sw_rooftop_ladder_infils_door_dr_s; level.scr_anim["sw_door_l"]["sw_entry_u"] = %sw_rooftop_ladder_infils_door_dl_s; level.scr_animtree["rt_helo_small"] = #animtree; level.scr_model["rt_helo_small"] = "sw_aas_noglass"; level.scr_anim["rt_helo_small"]["blades"] = %sw_rt_helo_blades; level.scr_anim["rt_helo_small"]["blades_top"] = %sw_rt_helo_blades_top; level.scr_anim["rt_helo_small"]["blades_death"] = %sw_rt_helo_blades_death; level.scr_animtree["rt_helo_glass_front"] = #animtree; level.scr_model["rt_helo_glass_front"] = "sw_aas_glass_front"; level.scr_animtree["rt_helo_glass_front_b"] = #animtree; level.scr_model["rt_helo_glass_front_b"] = "sw_aas_glass_front_b"; level.scr_animtree["rt_helo_glass_mid_1"] = #animtree; level.scr_model["rt_helo_glass_mid_1"] = "sw_aas_glass_mid_1"; level.scr_animtree["rt_helo_glass_mid_2"] = #animtree; level.scr_model["rt_helo_glass_mid_2"] = "sw_aas_glass_mid_2"; level.scr_animtree["rt_helo_glass_back"] = #animtree; level.scr_model["rt_helo_glass_back"] = "sw_aas_glass_back"; level.scr_animtree["rt_helo_broken_glass_front"] = #animtree; level.scr_model["rt_helo_broken_glass_front"] = "sw_aas_broken_glass_front"; level.scr_animtree["rt_helo_broken_glass_front_b"] = #animtree; level.scr_model["rt_helo_broken_glass_front_b"] = "sw_aas_broken_glass_front_b"; level.scr_animtree["rt_helo_broken_glass_mid_1"] = #animtree; level.scr_model["rt_helo_broken_glass_mid_1"] = "sw_aas_broken_glass_mid_1"; level.scr_animtree["rt_helo_broken_glass_mid_2"] = #animtree; level.scr_model["rt_helo_broken_glass_mid_2"] = "sw_aas_broken_glass_mid_2"; level.scr_animtree["rt_helo_broken_glass_back"] = #animtree; level.scr_model["rt_helo_broken_glass_back"] = "sw_aas_broken_glass_back"; level.scr_animtree["rt_helo_crashed"] = #animtree; level.scr_model["rt_helo_crashed"] = "sw_aas_crashed"; level.scr_anim["rt_helo_crashed"]["rt_helo_crash"] = %sw_rt_helod_crash; level.scr_anim["rt_helo_crashed"]["rt_helo_damaged"] = %sw_rt_helod_damaged; level.scr_animtree["rt_helo0_mover"] = #animtree; level.scr_animtree["rt_helo1_mover"] = #animtree; level.scr_model["rt_helo0_mover"] = "sw_helo_mover"; level.scr_model["rt_helo1_mover"] = "sw_helo_mover"; level.scr_anim["rt_helo0_mover"]["crash_norm"] = %sw_rt_helo_crash_norm_1; level.scr_anim["rt_helo1_mover"]["crash_norm"] = %sw_rt_helo_crash_norm_1; level.scr_anim["rt_helo0_mover"]["crash_spin"] = %sw_rt_helo_crash_norm_1; level.scr_anim["rt_helo1_mover"]["crash_spin"] = %sw_rt_helo_crash_norm_1; level.scr_anim["rt_helo0_mover"]["death_norm"] = %sw_rt_helo_death_norm_1; level.scr_anim["rt_helo1_mover"]["death_norm"] = %sw_rt_helo_death_norm_2; level.scr_anim["rt_helo0_mover"]["death_spin"] = %sw_rt_helo_death_norm_1; level.scr_anim["rt_helo1_mover"]["death_spin"] = %sw_rt_helo_death_norm_2; level.scr_anim["rt_helo0_mover"]["flyin"] = %sw_rt_helo_flyin_1; level.scr_anim["rt_helo1_mover"]["flyin"] = %sw_rt_helo_flyin_2; level.scr_anim["rt_helo0_mover"]["flyout"] = %sw_rt_helo_flyout_1; level.scr_anim["rt_helo1_mover"]["flyout"] = %sw_rt_helo_flyout_2; level.scr_anim["rt_helo0_mover"]["idle"][0] = %sw_rt_helo_idle_b_1; level.scr_anim["rt_helo1_mover"]["idle"][0] = %sw_rt_helo_idle_b_2; level.scr_anim["rt_helo1_mover"]["idle_inside"] = %sw_rt_helo_idle_b_2_to_1; level.scr_anim["rt_helo0_mover"]["tilt"] = %sw_rt_helo_tilt; level.scr_anim["rt_helo1_mover"]["tilt"] = %sw_rt_helo_tilt; level.scr_anim["rt_helo0_mover"]["tilt_parent"] = %helo_tilt_overlay; level.scr_anim["rt_helo1_mover"]["tilt_parent"] = %helo_tilt_overlay; maps\_anim::addnotetrack_notify( "rt_helo_mover", "helo_hit_train", "notify_helo_hit_train" ); maps\_anim::addnotetrack_notify( "rt_helo_mover", "helo_explode", "notify_helo_explode" ); level.scr_animtree["end_bridge"] = #animtree; level.scr_anim["end_bridge"]["bridge_rog_1"] = %sw_end_rog_bridge_1; level.scr_anim["end_bridge"]["bridge_rog_2"] = %sw_end_rog_bridge_2; level.scr_animtree["breach_knife"] = #animtree; level.scr_model["breach_knife"] = "weapon_bowie_knife"; level.scr_animtree["loco_breach_RPG_model"] = #animtree; level.scr_model["loco_breach_RPG_model"] = "weapon_rpg7"; level.scr_anim["loco_breach_RPG_model"]["loco_breach_death"] = %sw_enginecar_breach_opfor3_death_rpg; level.scr_anim["loco_breach_RPG_model"]["loco_breach"] = %sw_enginecar_breach_opfor3_rpg; level.scr_animtree["loco_breach_RPG_fx"] = #animtree; level.scr_model["loco_breach_RPG_fx"] = "sw_helo_mover"; level.scr_anim["loco_breach_RPG_fx"]["loco_breach_death"] = %sw_enginecar_breach_rpg_fx_miss; level.scr_anim["loco_breach_RPG_fx"]["loco_breach"] = %sw_enginecar_breach_rpg_fx_hit; level.scr_animtree["loco_breach_door"] = #animtree; level.scr_anim["loco_breach_door"]["loco_breach"] = %sw_enginecar_breach_door; level.scr_animtree["loco_control_room_door"] = #animtree; level.scr_anim["loco_control_room_door"]["loco_slide"] = %sw_enginecar_slide_door; level.scr_animtree["loco_control_room_glass"] = #animtree; level.scr_anim["loco_control_room_glass"]["loco_slide"] = %sw_enginecar_slide_glass; level.scr_animtree["bridgepiece7"] = #animtree; level.scr_model["bridgepiece7"] = "sw_vista_broken_bridge_7"; level.scr_anim["bridgepiece7"]["loco_blasthit"] = %sw_bridgepiece7_blasthit_train; maps\_anim::addnotetrack_notify( "bridgepiece7", "splash", "notify_bridgepiece_splash" ); level.scr_animtree["bridgepiece6"] = #animtree; level.scr_model["bridgepiece6"] = "sw_vista_broken_bridge_6"; level.scr_anim["bridgepiece6"]["loco_blasthit"] = %sw_bridgepiece6_blasthit_train; maps\_anim::addnotetrack_notify( "bridgepiece6", "splash", "notify_bridgepiece_splash" ); level.scr_animtree["bridgepieceL_1"] = #animtree; level.scr_model["bridgepieceL_1"] = "sw_fx_bridge_piece_1"; level.scr_anim["bridgepieceL_1"]["loco_blasthit"] = %sw_bridgepiecel_1_blasthit_train; maps\_anim::addnotetrack_customfunction( "bridgepieceL_1", "splash", maps\skyway_fx::fx_bridgefall_large_splash ); level.scr_animtree["bridgepieceL_2"] = #animtree; level.scr_model["bridgepieceL_2"] = "sw_fx_bridge_piece_1"; level.scr_anim["bridgepieceL_2"]["loco_blasthit"] = %sw_bridgepiecel_2_blasthit_train; maps\_anim::addnotetrack_customfunction( "bridgepieceL_2", "splash", maps\skyway_fx::fx_bridgefall_large_splash ); level.scr_animtree["bridgepieceS_1"] = #animtree; level.scr_model["bridgepieceS_1"] = "sw_fx_bridge_piece_2"; level.scr_anim["bridgepieceS_1"]["loco_blasthit"] = %sw_bridgepieces_1_blasthit_train; maps\_anim::addnotetrack_customfunction( "bridgepieceS_1", "splash", maps\skyway_fx::fx_bridgefall_small_splash ); level.scr_animtree["bridgepieceS_2"] = #animtree; level.scr_model["bridgepieceS_2"] = "sw_fx_bridge_piece_2"; level.scr_anim["bridgepieceS_2"]["loco_blasthit"] = %sw_bridgepieces_2_blasthit_train; maps\_anim::addnotetrack_customfunction( "bridgepieceS_2", "splash", maps\skyway_fx::fx_bridgefall_small_splash ); level.scr_animtree["bridgepieceM_1"] = #animtree; level.scr_model["bridgepieceM_1"] = "sw_fx_bridge_piece_3"; level.scr_anim["bridgepieceM_1"]["loco_blasthit"] = %sw_bridgepiecem_1_blasthit_train; maps\_anim::addnotetrack_customfunction( "bridgepieceM_1", "splash", maps\skyway_fx::fx_bridgefall_med_splash ); level.scr_animtree["bridgepieceM_2"] = #animtree; level.scr_model["bridgepieceM_2"] = "sw_fx_bridge_piece_3"; level.scr_anim["bridgepieceM_2"]["loco_blasthit"] = %sw_bridgepiecem_2_blasthit_train; maps\_anim::addnotetrack_customfunction( "bridgepieceM_2", "splash", maps\skyway_fx::fx_bridgefall_med_splash ); level.scr_animtree["bridgepieceM_3"] = #animtree; level.scr_model["bridgepieceM_3"] = "sw_fx_bridge_piece_3"; level.scr_anim["bridgepieceM_3"]["loco_blasthit"] = %sw_bridgepiecem_3_blasthit_train; maps\_anim::addnotetrack_customfunction( "bridgepieceM_3", "splash", maps\skyway_fx::fx_bridgefall_med_splash ); level.scr_animtree["pt2_gun"] = #animtree; level.scr_model["pt2_gun"] = "weapon_magnum_iw6"; level.scr_anim["pt2_gun"]["pt2_crash"] = %sw_end_pt2_start_gun; level.scr_anim["pt2_gun"]["pt2_crawl"] = %sw_end_pt2_crawl_gun; level.scr_animtree["pt2_extinguisher"] = #animtree; level.scr_model["pt2_extinguisher"] = "com_fire_extinguisher_anim"; level.scr_anim["pt2_extinguisher"]["pt2_crash"] = %sw_end_pt2_start_extinguisher; level.scr_anim["pt2_extinguisher"]["pt2_crawl"] = %sw_end_pt2_crawl_extinguisher; level.scr_anim["pt2_extinguisher"]["loco_blasthit"] = %sw_enginecar_blasthit_extinguisher; level.scr_anim["pt2_extinguisher"]["loco_slide"] = %sw_enginecar_slide_extinguisher; level.scr_animtree["pt2_locomotive"] = #animtree; level.scr_model["pt2_locomotive"] = "sw_traincar_loco_ending"; level.scr_anim["pt2_locomotive"]["pt2_crash"] = %sw_end_pt2_locomotive_sinking; level.scr_animtree["pt2_speedloader"] = #animtree; level.scr_model["pt2_speedloader"] = "sw_speedloader"; level.scr_anim["pt2_speedloader"]["pt2_speedloader"] = %sw_end_pt2_speedloader_speedloader; level.scr_anim["pt2_speedloader"]["pt2_load_gun"] = %sw_end_pt2_loadgun_speedloader; level.scr_animtree["pt2_bullet_start"] = #animtree; level.scr_model["pt2_bullet_start"] = "sw_helo_mover"; level.scr_anim["pt2_bullet_start"]["pt2_speedloader"] = %sw_end_pt2_speedloader_bullet_start; level.scr_animtree["pt2_bullet_end"] = #animtree; level.scr_model["pt2_bullet_end"] = "sw_helo_mover"; level.scr_anim["pt2_bullet_end"]["pt2_speedloader"] = %sw_end_pt2_speedloader_bullet_end; level.scr_animtree["pt2_bullet_tumble"] = #animtree; level.scr_model["pt2_bullet_tumble"] = "sw_helo_mover"; level.scr_anim["pt2_bullet_tumble"]["pt2_speedloader"] = %sw_end_pt2_speedloader_bullet_tumble; level.scr_animtree["pt2_bullet"] = #animtree; level.scr_model["pt2_bullet"] = "sw_speedloader_bullet"; level.scr_animtree["seafloor"] = #animtree; level.scr_anim["seafloor"]["pt2_crash"] = %sw_end_pt2_start_seafloor; level.scr_animtree["debris"] = #animtree; level.scr_model["debris"] = "skyway_loco_destroyed_cockpit_debris"; level.scr_anim["debris"]["pt2_crash"] = %sw_end_pt2_start_debris; level.scr_anim["debris"]["pt2_crash_loop"][0] = %sw_end_pt2_loop_debris; maps\_anim::addnotetrack_notify( "seafloor", "hit_seafloor_1", "notify_hit_floor_1", "pt2_crash" ); maps\_anim::addnotetrack_notify( "seafloor", "hit_seafloor_2", "notify_hit_floor_2", "pt2_crash" ); maps\_anim::addnotetrack_notify( "seafloor", "hit_seafloor_3", "notify_hit_floor_3", "pt2_crash" ); maps\_anim::addnotetrack_notify( "seafloor", "hit_seafloor_4", "notify_hit_floor_4", "pt2_crash" ); level.scr_animtree["sw_swim_view_fx"] = #animtree; level.scr_model["sw_swim_view_fx"] = "sw_helo_mover"; level.scr_anim["sw_swim_view_fx"]["swim_fx_base"] = %sw_swim_view_fx_base; level.scr_anim["sw_swim_view_fx"]["swim_drown_overlay"] = %swim_drown_overlay; level.scr_anim["sw_swim_view_fx"]["swim_fx_add"] = %sw_swim_view_fx_add; level.scr_animtree["beach_knife"] = #animtree; level.scr_model["beach_knife"] = "weapon_knife_iw6"; level.scr_animtree["end_dvora1"] = #animtree; level.scr_anim["end_dvora1"]["sink"] = %sw_end_dvora1; level.scr_animtree["end_dvora2"] = #animtree; level.scr_anim["end_dvora2"]["sink"] = %sw_end_dvora2; level.scr_animtree["end_dvora3"] = #animtree; level.scr_anim["end_dvora3"]["sink"] = %sw_end_dvora3; level.scr_animtree["end_dvora4"] = #animtree; level.scr_anim["end_dvora4"]["sink"] = %sw_end_dvora4; level.scr_animtree["end_cruiser1"] = #animtree; level.scr_anim["end_cruiser1"]["sink"] = %sw_end_cruis1; level.scr_animtree["end_cruiser2"] = #animtree; level.scr_anim["end_cruiser2"]["sink"] = %sw_end_cruis2; level.scr_animtree["end_cruiser3"] = #animtree; level.scr_anim["end_cruiser3"]["sink"] = %sw_end_cruis3; level.scr_animtree["end_dest1"] = #animtree; level.scr_anim["end_dest1"]["sink"] = %sw_end_dest1; level.scr_animtree["end_dest2"] = #animtree; level.scr_anim["end_dest2"]["sink"] = %sw_end_dest2; level.scr_animtree["end_dest3"] = #animtree; level.scr_anim["end_dest3"]["sink"] = %sw_end_dest3; level.scr_animtree["end_dest4"] = #animtree; level.scr_anim["end_dest4"]["sink"] = %sw_end_dest4; level.scr_animtree["end_dest5"] = #animtree; level.scr_anim["end_dest5"]["sink"] = %sw_end_dest5; level.scr_animtree["end_dest6"] = #animtree; level.scr_anim["end_dest6"]["sink"] = %sw_end_dest6; level.scr_animtree["end_dest7"] = #animtree; level.scr_anim["end_dest7"]["sink"] = %sw_end_dest7; level.scr_animtree["end_dest8"] = #animtree; level.scr_anim["end_dest8"]["sink"] = %sw_end_dest8; level.scr_animtree["end_dest9"] = #animtree; level.scr_anim["end_dest9"]["sink"] = %sw_end_dest9; level.scr_animtree["end_dest10"] = #animtree; level.scr_anim["end_dest10"]["sink"] = %sw_end_dest10; level.scr_animtree["end_dest11"] = #animtree; level.scr_anim["end_dest11"]["sink"] = %sw_end_dest11; level.scr_animtree["end_dest12"] = #animtree; level.scr_anim["end_dest12"]["sink"] = %sw_end_dest12; level.scr_animtree["sun_pit"] = #animtree; level.scr_model["sun_pit"] = "sw_helo_mover"; level.scr_anim["sun_pit"]["pit_of_despair"] = %sw_sun_pit_of_despair; level.scr_animtree["moon_pit"] = #animtree; level.scr_model["moon_pit"] = "sw_helo_mover"; level.scr_anim["moon_pit"]["pit_of_despair"] = %sw_moon_pit_of_despair; level.scr_animtree["moonlight_pit"] = #animtree; level.scr_model["moonlight_pit"] = "sw_helo_mover"; level.scr_anim["moonlight_pit"]["pit_of_despair"] = %sw_moonlight_pit_of_despair; } update_train_path_anims( var_0 ) { switch ( var_0 ) { case "sus_r_broken": level.scr_anim["train_rt1_sus_f"]["loop_a1"] = %sw_loopa1_pass4_sus_f_broken; level.scr_anim["train_rt1_sus_f"]["loop_a2"] = %sw_loopa2_pass4_sus_f_broken; level.scr_anim["train_rt1_sus_f"]["bb_1"] = %sw_bb_1_pass4_sus_f_broken; level.scr_anim["train_rt1_sus_f"]["bb_2"] = %sw_bb_2_pass4_sus_f_broken; level.scr_anim["train_rt1_sus_f"]["ab_1"] = %sw_ab1_pass4_sus_f_broken; level.scr_anim["train_rt1_sus_f"]["ab_2"] = %sw_ab2_pass4_sus_f_broken; level.scr_anim["train_rt1_sus_f"]["wheels"] = %sw_train_wheels_broken_sus; break; } } vehicle_anims() { } loco_breach_player_shot( var_0 ) { } breach_enemy_player_stab( var_0 ) { level.player dodamage( level.player.health - 1, var_0 geteye(), var_0, var_0 ); level.player disableweapons(); level notify( "failure" ); setdvar( "ui_deadquote", "" ); maps\_utility::missionfailedwrapper(); } notetrack_player_kick_door( var_0 ) { earthquake( 0.4, 0.5, level.player.origin, 3000 ); level.player playrumbleonentity( "damage_heavy" ); } notetrack_player_blast( var_0 ) { } loco_breach_opfor_start( var_0 ) { common_scripts\utility::array_call( level.end_breach_enemies, ::linkto, level.loco_breach_anim_node ); level.loco_breach_anim_node thread maps\_anim::anim_single( level.end_breach_enemies, "loco_breach" ); level waittill( "notify_opfor_knife_show" ); level.end_breach_enemies[1] attach( level.scr_model["breach_knife"], "TAG_INHAND" ); } loco_breach_smokin_mirrors( var_0 ) { level.player.disablereload = 1; level.player disableweapons(); level.player disableoffhandweapons(); level.player disableweaponswitch(); common_scripts\utility::flag_set( "flag_breach_final_tracks" ); } loco_slide_player_view_lerp_down( var_0 ) { level.player lerpviewangleclamp( 1.0, 0, 0, 0, 0, 0, 0 ); } loco_slide_player_view_lerp_up( var_0 ) { level.player lerpviewangleclamp( 0.5, 0, 0, 45, 45, 20, 0 ); wait 1.4; level.player lerpviewangleclamp( 0.6, 0, 0, 0, 0, 0, 0 ); } breach_enemy_death_anim_override() { if ( !isdefined( self.nodeathsound ) ) animscripts\death::playdeathsound(); if ( isdefined( self.deathanim ) ) { self stopanimscripted(); self setflaggedanimknoblimitedrestart( "deathanim", self.deathanim, 1, 0.2 ); wait( getanimlength( self.deathanim ) ); thread end_breach_swap_dead_opfor(); return 1; } return 0; } loco_gunhold_player_drop_weapon( var_0 ) { level.player forcemovingplatformentity( undefined ); level.player.disablereload = 1; level.player disableweapons(); level.player disableoffhandweapons(); level.player disableweaponswitch(); level.player springcamdisabled( 0.5 ); if ( maps\_utility::is_gen4() ) thread maps\_art::dof_enable_script( 0, 2, 1.8, 20, 61, 6, 0.1 ); else thread maps\_art::dof_enable_script( 0, 2, 1.8, 20, 61, 2.2, 0.16 ); thread maps\skyway_loco::handle_revolver_bullet_fiction(); } loco_gunhold_end_slowmo( var_0 ) { level notify( "notify_loco_breach_slowmo_end" ); } end_breach_swap_dead_opfor() { level.loco_breach_anim_node thread maps\_anim::anim_last_frame_solo( self, "loco_breach_death" ); level waittill( "notify_swap_dead_opfor" ); self delete(); } notetrack_headbutt( var_0 ) { level.player playsound( "scn_sw_loco_standoff_02" ); level.player shellshock( "default_nosound", 1.0 ); level.player maps\_hud_util::fade_out( 0, "white" ); level.player playrumbleonentity( "grenade_rumble" ); wait 0.1; level.player maps\_hud_util::fade_in( 0.5, "white" ); if ( isdefined( level.end_control_enemies[2].magic_bullet_shield ) && level.end_control_enemies[2].magic_bullet_shield ) level.end_control_enemies[2] maps\_utility::stop_magic_bullet_shield(); level.end_control_enemies[2] hide(); level.end_control_enemies[2] delete(); } notetrack_in_the_face( var_0 ) { level.player playrumbleonentity( "grenade_rumble" ); level.player shellshock( "default_nosound", 2.5 ); level.player maps\_hud_util::fade_out( 0, "white" ); setblur( 6, 0.05 ); wait 0.1; level.player maps\_hud_util::fade_in( 0.3, "white" ); maps\_utility::vision_set_fog_changes( "skyway_standoff_rocked", 0.1 ); setblur( 0, 1.0 ); wait 0.3; maps\_utility::vision_set_fog_changes( "skyway_standoff", 6.0 ); wait 1; thread maps\_art::dof_enable_script( 0, 5.0, 4, 20, 100, 3, 0.5 ); wait 1.8; thread maps\_art::dof_enable_script( 5, 40, 4, 20, 100, 0, 0.3 ); wait 11; thread maps\_art::dof_enable_script( 0, 12, 4, 1000, 20000, 0.1, 2 ); } notetrack_hit_door( var_0 ) { maps\skyway_util::train_quake( 0.6, 1.0, level.player.origin, 2048 ); level.player playrumbleonentity( "grenade_rumble" ); thread maps\skyway_util::player_rumble_bump( level.player_rumble_ent, 0.8, 0.0, 0.2, 0.0, 0.5 ); thread maps\_art::dof_enable_script( 0, 60, 6.08, 6623.4, 13099.2, 1.8, 3.2 ); level.player shellshock( "default_nosound", 1.5 ); level.player maps\_hud_util::fade_out( 0, "white" ); wait 0.1; level.player maps\_hud_util::fade_in( 0.15, "white" ); } loco_falling_glass( var_0 ) { playfxontag( common_scripts\utility::getfx( "loco_falling_glass" ), level._train.cars["train_loco"].body, "tag_controlroom_glass_lift" ); } standoff_temp_vo_hesh_4( var_0 ) { maps\skyway_util::temp_dialogue_line( "Hesh", "You lost, Rorke", 2.5 ); } standoff_temp_vo_hesh_5( var_0 ) { maps\skyway_util::temp_dialogue_line( "Hesh", "Its over", 2.5 ); }