From ccf7afa193e695ad9eddeda1d669ec3003ecdc73 Mon Sep 17 00:00:00 2001 From: JezuzLizard Date: Thu, 22 Feb 2024 20:43:44 -0800 Subject: [PATCH] Document more functions. --- mp_player_model_pack/scripts/mp/_pmp_main.gsc | 2 +- .../maps/mp/zombies/_zm_ai_avogadro.gsc | 22 ++++++------ zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc | 34 +++++++++---------- zm_ai_pack/maps/mp/zombies/_zm_ai_dogs.gsc | 8 ++--- zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc | 4 +-- zm_ai_pack/maps/mp/zombies/_zm_ai_leaper.gsc | 6 ++-- zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc | 24 ++++++------- .../maps/mp/zombies/_zm_ai_mechz_claw.gsc | 10 +++--- .../maps/mp/zombies/_zm_ai_screecher.gsc | 16 ++++----- zm_ai_pack/pluto_sys.gsc | 14 ++++---- zm_ai_pack/scripts/zm/zm_ai_pack_mod_main.gsc | 6 ++-- .../zm_ai_pack_mod_zm_highrise_main.gsc | 4 +-- .../zm_ai_pack_mod_zm_transit_main.gsc | 2 +- zm_ai_pack/sys.gsc | 32 ++++++++++++++++- zm_ai_pack/zone_source/mod.zone | 1 + 15 files changed, 108 insertions(+), 77 deletions(-) diff --git a/mp_player_model_pack/scripts/mp/_pmp_main.gsc b/mp_player_model_pack/scripts/mp/_pmp_main.gsc index e50613a..da8b67a 100644 --- a/mp_player_model_pack/scripts/mp/_pmp_main.gsc +++ b/mp_player_model_pack/scripts/mp/_pmp_main.gsc @@ -3,7 +3,7 @@ main() { - replaceFunc( maps\mp\teams\_teams::set_player_model, ::set_player_model_override ); + pluto_sys::replacefunc( maps\mp\teams\_teams::set_player_model, ::set_player_model_override ); } set_player_model_override( team, weapon ) diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_avogadro.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_avogadro.gsc index f40ca88..ef4d5f6 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_avogadro.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_avogadro.gsc @@ -665,14 +665,14 @@ avogadro_exit( from ) { if ( from == "bus" ) { - self playsound( "zmb_avogadro_death_short" ); + self sys::playsound( "zmb_avogadro_death_short" ); playfx( level._effect["avogadro_ascend_aerial"], self.origin ); self sys::animscripted( self.origin, self.angles, "zm_bus_win" ); maps\mp\animscripts\zm_shared::donotetracks( "bus_win_anim" ); } else if ( from == "chamber" ) { - self playsound( "zmb_avogadro_death_short" ); + self sys::playsound( "zmb_avogadro_death_short" ); playfx( level._effect["avogadro_ascend"], self.origin ); self sys::animscripted( self.origin, self.angles, "zm_chamber_out" ); wait 0.4; @@ -681,7 +681,7 @@ avogadro_exit( from ) } else { - self playsound( "zmb_avogadro_death" ); + self sys::playsound( "zmb_avogadro_death" ); playfx( level._effect["avogadro_ascend"], self.origin ); self sys::animscripted( self.origin, self.angles, "zm_exit" ); maps\mp\animscripts\zm_shared::donotetracks( "exit_anim" ); @@ -689,7 +689,7 @@ avogadro_exit( from ) } else { - self playsound( "zmb_avogadro_death" ); + self sys::playsound( "zmb_avogadro_death" ); playfx( level._effect["avogadro_ascend"], self.origin ); self sys::animscripted( self.origin, self.angles, "zm_exit" ); maps\mp\animscripts\zm_shared::donotetracks( "exit_anim" ); @@ -951,7 +951,7 @@ avogadro_teleport( dest_pos, dest_angles, lerp_time, tag_override ) playfxontag( level._effect["avogadro_phase_trail"], self.phase_fx, "tag_origin" ); playfx( level._effect["avogadro_phasing"], self.origin ); self avogadro_reveal( 0.1 ); - self playsound( "zmb_avogadro_warp_out" ); + self sys::playsound( "zmb_avogadro_warp_out" ); self.anchor.origin = self.origin; self.anchor.angles = self.angles; self sys::linkto( self.anchor ); @@ -975,7 +975,7 @@ avogadro_teleport( dest_pos, dest_angles, lerp_time, tag_override ) self.phase_fx delete(); self avogadro_reveal( 0.1 ); - self playsound( "zmb_avogadro_warp_in" ); + self sys::playsound( "zmb_avogadro_warp_in" ); self.is_teleport = 0; } @@ -1058,7 +1058,7 @@ shoot_bolt( enemy ) bolt = sys::spawn( "script_model", source_pos ); bolt setmodel( "tag_origin" ); wait 0.1; - self playsound( "zmb_avogadro_attack" ); + self sys::playsound( "zmb_avogadro_attack" ); fx = playfxontag( level._effect["avogadro_bolt"], bolt, "tag_origin" ); bolt moveto( target_pos, 0.2 ); bolt waittill( "movedone" ); @@ -1194,7 +1194,7 @@ play_phase_anim() playfxontag( level._effect["avogadro_phase_trail"], self.phase_fx, "tag_origin" ); playfx( level._effect["avogadro_phasing"], self.origin ); self avogadro_reveal( 0.1 ); - self playsound( "zmb_avogadro_warp_out" ); + self sys::playsound( "zmb_avogadro_warp_out" ); self sys::orientmode( "face enemy" ); self sys::setanimstatefromasd( self.phase_state, self.phase_substate ); maps\mp\animscripts\zm_shared::donotetracks( "teleport_anim" ); @@ -1202,7 +1202,7 @@ play_phase_anim() playfx( level._effect["avogadro_phasing"], self.origin ); self avogadro_reveal( 0.1 ); self sys::orientmode( "face default" ); - self playsound( "zmb_avogadro_warp_in" ); + self sys::playsound( "zmb_avogadro_warp_in" ); self.phase_time = sys::gettime() + 2000; self notify( "phase_anim_done" ); } @@ -1224,7 +1224,7 @@ phase_failsafe() playfx( level._effect["avogadro_phasing"], self.origin ); self avogadro_reveal( 0.1 ); self sys::orientmode( "face default" ); - self playsound( "zmb_avogadro_warp_in" ); + self sys::playsound( "zmb_avogadro_warp_in" ); self.phase_time = sys::gettime() + 2000; self notify( "phase_anim_done" ); } @@ -1265,7 +1265,7 @@ avogadro_pain( einflictor ) { self endon( "melee_pain" ); self.in_pain = 1; - self playsound( "zmb_avogadro_pain" ); + self sys::playsound( "zmb_avogadro_pain" ); self thread avogadro_pain_watcher(); substate = 0; origin = self.origin; diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc index ce87b7a..f44dd9a 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc @@ -535,7 +535,7 @@ brutus_spawn_zone_locked( zone_name ) if ( isdefined( ai ) ) { - ai playsound( "zmb_ai_brutus_spawn_2d" ); + ai sys::playsound( "zmb_ai_brutus_spawn_2d" ); return ai; } } @@ -551,7 +551,7 @@ brutus_spawn_in_zone( zone_name, zone_locked ) if ( isdefined( ai ) ) { - ai playsound( "zmb_ai_brutus_spawn_2d" ); + ai sys::playsound( "zmb_ai_brutus_spawn_2d" ); return ai; } } @@ -718,7 +718,7 @@ play_ambient_brutus_vocals() } else - self playsound( "zmb_vocals_brutus_ambience" ); + self sys::playsound( "zmb_vocals_brutus_ambience" ); } wait( randomfloatrange( 1, 1.5 ) ); @@ -970,7 +970,7 @@ brutus_spawning_logic() } if ( isdefined( ai ) ) - ai playsound( "zmb_ai_brutus_spawn_2d" ); + ai sys::playsound( "zmb_ai_brutus_spawn_2d" ); } } @@ -1763,7 +1763,7 @@ brutus_fire_teargas_when_possible() wait 0.05; self.not_interruptable = 1; - self playsound( "vox_brutus_enraged" ); + self sys::playsound( "vox_brutus_enraged" ); self sys::animscripted( self.origin, self.angles, "zm_teargas_attack" ); self thread maps\mp\animscripts\zm_shared::donotetracks( "teargas_anim" ); self waittillmatch( "teargas_anim", "grenade_drop" ); @@ -1806,7 +1806,7 @@ brutus_remove_helmet( vdir ) { self.has_helmet = 0; self detach( "c_zom_cellbreaker_helmet" ); - self playsound( "evt_brutus_helmet" ); + self sys::playsound( "evt_brutus_helmet" ); launch_pos = self.origin + vectorscale( ( 0, 0, 1 ), 85.0 ); createdynentandlaunch( "c_zom_cellbreaker_helmet", launch_pos, self.angles, launch_pos, vdir ); @@ -1818,7 +1818,7 @@ brutus_remove_helmet( vdir ) return; self.not_interruptable = 1; - self playsound( "vox_brutus_exert" ); + self sys::playsound( "vox_brutus_exert" ); self sys::animscripted( self.origin, self.angles, "zm_pain" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim" ); self.not_interruptable = 0; @@ -1890,7 +1890,7 @@ magic_box_lock() return; magic_box.zbarrier set_magic_box_zbarrier_state( "locking" ); - self playsound( "zmb_ai_brutus_clang" ); + self sys::playsound( "zmb_ai_brutus_clang" ); magic_box.locked_cost = get_scaling_lock_cost( "magic_box", magic_box ); level.lockdown_track["magic_box"] = 1; level notify( "brutus_locked_object" ); @@ -1917,7 +1917,7 @@ perk_machine_lock() perk_machine.lock_fx = offset_fx_struct( int_struct, perk_machine.lock_fx ); perk_machine.lock_fx setmodel( "tag_origin" ); playfxontag( lock_fx, perk_machine.lock_fx, "tag_origin" ); - perk_machine.lock_fx playsound( "zmb_ai_brutus_clang" ); + perk_machine.lock_fx sys::playsound( "zmb_ai_brutus_clang" ); perk_machine.is_locked = 1; perk_machine.locked_cost = get_scaling_lock_cost( "perk_machine", perk_machine ); perk_machine sethintstring( &"ZOMBIE_LOCKED_COST", perk_machine.locked_cost ); @@ -1941,7 +1941,7 @@ craftable_table_lock() craftable_table.lock_fx = offset_fx_struct( int_struct, craftable_table.lock_fx ); craftable_table.lock_fx setmodel( "tag_origin" ); playfxontag( level._effect["brutus_lockdown_lg"], craftable_table.lock_fx, "tag_origin" ); - craftable_table.lock_fx playsound( "zmb_ai_brutus_clang" ); + craftable_table.lock_fx sys::playsound( "zmb_ai_brutus_clang" ); craftable_table.is_locked = 1; craftable_table.locked_cost = get_scaling_lock_cost( "craftable_table", craftable_table ); craftable_table.hint_string = get_lock_hint_string( craftable_table.locked_cost ); @@ -1974,7 +1974,7 @@ trap_smash() else if ( trap.targetname == "tower_trap_activate_trigger" ) trap notify( "tower_trap_off" ); - trap playsound( "zmb_ai_brutus_clang" ); + trap sys::playsound( "zmb_ai_brutus_clang" ); self.priority_item = undefined; } @@ -1991,7 +1991,7 @@ plane_ramp_lock() plane_ramp.lock_fx.angles = plane_ramp.angles; plane_ramp.lock_fx = offset_fx_struct( int_struct, plane_ramp.lock_fx ); plane_ramp.lock_fx setmodel( "tag_origin" ); - plane_ramp.lock_fx playsound( "zmb_ai_brutus_clang" ); + plane_ramp.lock_fx sys::playsound( "zmb_ai_brutus_clang" ); playfxontag( level._effect["brutus_lockdown"], plane_ramp.lock_fx, "tag_origin" ); plane_ramp.is_locked = 1; plane_ramp.locked_cost = get_scaling_lock_cost( "plane_ramp", plane_ramp ); @@ -2007,10 +2007,10 @@ plane_ramp_lock() blocker_smash() { self endon( "death" ); - self playsound( "vox_brutus_enraged" ); - self playsound( "zmb_ai_brutus_window_teardown" ); + self sys::playsound( "vox_brutus_enraged" ); + self sys::playsound( "zmb_ai_brutus_window_teardown" ); blocker = self.priority_item; - self playsound( "zmb_ai_brutus_clang" ); + self sys::playsound( "zmb_ai_brutus_clang" ); if ( !isdefined( blocker ) ) return; @@ -2181,7 +2181,7 @@ brutus_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon if ( isdefined( weapon ) && weapon == "bouncing_tomahawk_zm" && isdefined( inflictor ) ) { - self playsound( "wpn_tomahawk_imp_zombie" ); + self sys::playsound( "wpn_tomahawk_imp_zombie" ); if ( self.has_helmet ) { @@ -2282,7 +2282,7 @@ brutus_nuke_override() self endon( "death" ); wait( randomfloatrange( 0.1, 0.7 ) ); self thread maps\mp\animscripts\zm_death::flame_death_fx(); - self playsound( "evt_nuked" ); + self sys::playsound( "evt_nuked" ); self dodamage( level.brutus_health * 0.25, self.origin ); } diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_dogs.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_dogs.gsc index 22d29b8..35f4027 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_dogs.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_dogs.gsc @@ -524,7 +524,7 @@ dog_death() self delete(); } else - self playsound( "zmb_hellhound_vocals_death" ); + self sys::playsound( "zmb_hellhound_vocals_death" ); } dog_explode_fx( origin ) @@ -555,7 +555,7 @@ dog_behind_audio() self thread stop_dog_sound_on_death(); self endon( "death" ); self waittill_any( "dog_running", "dog_combat" ); - self playsound( "zmb_hellhound_vocals_close" ); + self sys::playsound( "zmb_hellhound_vocals_close" ); wait 3; while ( true ) @@ -570,7 +570,7 @@ dog_behind_audio() { if ( abs( dogangle ) > 90 && distance2d( self.origin, players[i].origin ) > 100 ) { - self playsound( "zmb_hellhound_vocals_close" ); + self sys::playsound( "zmb_hellhound_vocals_close" ); wait 3; } } @@ -724,7 +724,7 @@ dog_stalk_audio() while ( true ) { - self playsound( "zmb_hellhound_vocals_amb" ); + self sys::playsound( "zmb_hellhound_vocals_amb" ); wait( randomfloatrange( 3, 6 ) ); } } diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc index 3d25e0b..d0d825d 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc @@ -800,7 +800,7 @@ ghost_death_func() level.ghost_round_last_ghost_origin = self.origin; self stoploopsound( 1 ); - self playsound( "zmb_ai_ghost_death" ); + self sys::playsound( "zmb_ai_ghost_death" ); self setclientfield( "ghost_impact_fx", 1 ); self setclientfield( "ghost_fx", 1 ); self thread prepare_to_die(); @@ -2017,7 +2017,7 @@ sndghostroundmus() level.sndroundwait = 1; ent thread sndghostroundmus_end(); ent endon( "sndGhostRoundEnd" ); - ent playsound( "mus_ghost_round_start" ); + ent sys::playsound( "mus_ghost_round_start" ); wait 11; ent playloopsound( "mus_ghost_round_loop", 3 ); } diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_leaper.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_leaper.gsc index 60abe88..ec3e8bc 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_leaper.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_leaper.gsc @@ -154,7 +154,7 @@ leaper_init() self forceteleport( spot.origin, spot.angles ); } - self playsound( "zmb_vocals_leaper_spawn" ); + self sys::playsound( "zmb_vocals_leaper_spawn" ); self set_zombie_run_cycle( "run" ); self.state = "init"; self thread leaper_think(); @@ -200,7 +200,7 @@ play_ambient_leaper_vocals() } else - self playsound( "zmb_vocals_leaper_ambience" ); + self sys::playsound( "zmb_vocals_leaper_ambience" ); } wait( randomfloatrange( 1, 1.5 ) ); @@ -212,7 +212,7 @@ leaper_death() self endon( "leaper_cleanup" ); self waittill( "death" ); self leaper_stop_trail_fx(); - self playsound( "zmb_vocals_leaper_death" ); + self sys::playsound( "zmb_vocals_leaper_death" ); playfx( level._effect["leaper_death"], self.origin ); if ( get_current_zombie_count() == 0 && level.zombie_total == 0 ) diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc index b3045b9..4f4dc41 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc @@ -246,13 +246,13 @@ traversal_booster_fx_watcher() if ( notetrack == "booster_on" ) { self.fx_field = self.fx_field | 128; - self.sndloopent playsound( "zmb_ai_mechz_rocket_start" ); + self.sndloopent sys::playsound( "zmb_ai_mechz_rocket_start" ); self.sndloopent playloopsound( "zmb_ai_mechz_rocket_loop", 0.75 ); } else if ( notetrack == "booster_off" ) { self.fx_field = self.fx_field & ~128; - self.sndloopent playsound( "zmb_ai_mechz_rocket_stop" ); + self.sndloopent sys::playsound( "zmb_ai_mechz_rocket_stop" ); self.sndloopent stoploopsound( 1 ); } if ( level.script == "zm_tomb" ) @@ -281,13 +281,13 @@ booster_fx_watcher() if ( notetrack == "booster_on" ) { self.fx_field = self.fx_field | 128; - self.sndloopent playsound( "zmb_ai_mechz_rocket_start" ); + self.sndloopent sys::playsound( "zmb_ai_mechz_rocket_start" ); self.sndloopent playloopsound( "zmb_ai_mechz_rocket_loop", 0.75 ); } else if ( notetrack == "booster_off" ) { self.fx_field = self.fx_field & ~128; - self.sndloopent playsound( "zmb_ai_mechz_rocket_stop" ); + self.sndloopent sys::playsound( "zmb_ai_mechz_rocket_stop" ); self.sndloopent stoploopsound( 1 ); } else if ( notetrack == "impact" ) @@ -382,7 +382,7 @@ play_ambient_mechz_vocals() } else - self playsound( "zmb_ai_mechz_vox_ambient" ); + self sys::playsound( "zmb_ai_mechz_vox_ambient" ); } wait( randomfloatrange( 3, 6 ) ); @@ -679,7 +679,7 @@ mechz_spawn() self thread mechz_death(); self forceteleport( spawn_pos.origin, spawn_pos.angles ); - self playsound( "zmb_ai_mechz_incoming_alarm" ); + self sys::playsound( "zmb_ai_mechz_incoming_alarm" ); if ( !isdefined( spawn_pos.angles ) ) spawn_pos.angles = ( 0, 0, 0 ); @@ -1580,7 +1580,7 @@ mechz_launch_armor_piece() } if ( sndmechzisnetworksafe( "destruction" ) ) - self playsound( "zmb_ai_mechz_destruction" ); + self sys::playsound( "zmb_ai_mechz_destruction" ); self.next_armor_piece++; } @@ -1700,10 +1700,10 @@ mechz_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon, self detach( "c_zom_mech_faceplate", "J_Helmet" ); if ( sndmechzisnetworksafe( "destruction" ) ) - self playsound( "zmb_ai_mechz_destruction" ); + self sys::playsound( "zmb_ai_mechz_destruction" ); if ( sndmechzisnetworksafe( "angry" ) ) - self playsound( "zmb_ai_mechz_vox_angry" ); + self sys::playsound( "zmb_ai_mechz_vox_angry" ); self.fx_field = self.fx_field | 1024; self.fx_field = self.fx_field & ~2048; @@ -1737,7 +1737,7 @@ mechz_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon, cap_model thread mechz_delayed_item_delete(); if ( sndmechzisnetworksafe( "destruction" ) ) - self playsound( "zmb_ai_mechz_destruction" ); + self sys::playsound( "zmb_ai_mechz_destruction" ); if ( !( isdefined( self.not_interruptable ) && self.not_interruptable ) && !( isdefined( self.is_traversing ) && self.is_traversing ) ) { @@ -1752,7 +1752,7 @@ mechz_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon, self thread mechz_stun( level.mechz_powerplant_stun_time ); if ( sndmechzisnetworksafe( "destruction" ) ) - self playsound( "zmb_ai_mechz_destruction" ); + self sys::playsound( "zmb_ai_mechz_destruction" ); } /# @@ -1784,7 +1784,7 @@ mechz_nuke_override() { self endon( "death" ); wait( randomfloatrange( 0.1, 0.7 ) ); - self playsound( "evt_nuked" ); + self sys::playsound( "evt_nuked" ); self dodamage( self.health * 0.25, self.origin ); } diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_claw.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_claw.gsc index 595182e..952ea7a 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_claw.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_claw.gsc @@ -190,7 +190,7 @@ claw_grapple() v_enemy_origin = self.favoriteenemy.origin + vectorscale( ( 0, 0, 1 ), 36.0 ); n_dist = distance( v_claw_origin, v_enemy_origin ); n_time = n_dist / 1200; - self playsound( "zmb_ai_mechz_claw_fire" ); + self sys::playsound( "zmb_ai_mechz_claw_fire" ); self.m_claw moveto( v_enemy_origin, n_time ); self.m_claw thread check_for_claw_move_complete(); self.m_claw playloopsound( "zmb_ai_mechz_claw_loop_out", 0.1 ); @@ -237,7 +237,7 @@ claw_grapple() } self.e_grabbed playersys::linktodelta( self.m_claw, "tag_attach_player" ); self.e_grabbed setplayerangles( vectortoangles( self.origin - self.e_grabbed.origin ) ); - self.e_grabbed playsound( "zmb_ai_mechz_claw_grab" ); + self.e_grabbed sys::playsound( "zmb_ai_mechz_claw_grab" ); self.e_grabbed setstance( "stand" ); self.e_grabbed allowcrouch( 0 ); self.e_grabbed allowprone( 0 ); @@ -294,11 +294,11 @@ claw_grapple() self.m_claw waittill( "movedone" ); v_claw_origin = self sys::gettagorigin( "tag_claw" ); v_claw_angles = self sys::gettagangles( "tag_claw" ); - self.m_claw playsound( "zmb_ai_mechz_claw_back" ); + self.m_claw sys::playsound( "zmb_ai_mechz_claw_back" ); self.m_claw stoploopsound( 1 ); if ( maps\mp\zombies\_zm_ai_mechz::sndmechzisnetworksafe( "angry" ) ) - self playsound( "zmb_ai_mechz_vox_angry" ); + self sys::playsound( "zmb_ai_mechz_vox_angry" ); self.m_claw.origin = v_claw_origin; self.m_claw.angles = v_claw_angles; @@ -626,7 +626,7 @@ mechz_claw_cleanup() self.m_claw waittill( "movedone" ); v_claw_origin = self sys::gettagorigin( "tag_claw" ); v_claw_angles = self sys::gettagangles( "tag_claw" ); - self.m_claw playsound( "zmb_ai_mechz_claw_back" ); + self.m_claw sys::playsound( "zmb_ai_mechz_claw_back" ); self.m_claw stoploopsound( 1 ); self.m_claw.origin = v_claw_origin; self.m_claw.angles = v_claw_angles; diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_screecher.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_screecher.gsc index bb7f046..ce86775 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_screecher.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_screecher.gsc @@ -331,7 +331,7 @@ zombie_pathing_home() self.no_powerups = 1; self sys::setfreecameralockonallowed( 0 ); self sys::animscripted( self.origin, self.angles, "zm_burrow" ); - self playsound( "zmb_screecher_dig" ); + self sys::playsound( "zmb_screecher_dig" ); maps\mp\animscripts\zm_shared::donotetracks( "burrow_anim" ); self delete(); } @@ -415,7 +415,7 @@ screecher_prespawn() self maps\mp\zombies\_zm_spawner::zombie_complete_emerging_into_playable_area(); self sys::setfreecameralockonallowed( 0 ); self.startinglocation = self.origin; - self playsound( "zmb_vocals_screecher_spawn" ); + self sys::playsound( "zmb_vocals_screecher_spawn" ); self thread play_screecher_fx(); self thread play_screecher_damaged_yelps(); self thread screecher_rise(); @@ -456,7 +456,7 @@ play_screecher_damaged_yelps() self waittill( "damage", damage, attacker, dir, point, mod ); if ( isdefined( attacker ) && isplayer( attacker ) ) - self playsound( "zmb_vocals_screecher_pain" ); + self sys::playsound( "zmb_vocals_screecher_pain" ); } } @@ -561,7 +561,7 @@ screecher_attack() self notify( "stop_find_flesh" ); self notify( "zombie_acquire_enemy" ); self sys::animmode( "nogravity" ); - self playsound( "zmb_vocals_screecher_jump" ); + self sys::playsound( "zmb_vocals_screecher_jump" ); if ( isdefined( self.loopsoundent ) ) { @@ -773,7 +773,7 @@ screecher_attacking() self.attack_delay = self.attack_delay_base + randomint( self.attack_delay_offset ); self.attack_time = sys::gettime() + self.attack_delay; self thread claw_fx( player, self.attack_delay * 0.001 ); - self playsound( "zmb_vocals_screecher_attack" ); + self sys::playsound( "zmb_vocals_screecher_attack" ); player playsoundtoplayer( "zmb_screecher_scratch", player ); player thread do_player_general_vox( "general", "screecher_attack" ); players = sys::getplayers(); @@ -809,7 +809,7 @@ screecher_runaway() self.no_powerups = 1; self sys::setfreecameralockonallowed( 0 ); self sys::animscripted( self.origin, self.angles, "zm_burrow" ); - self playsound( "zmb_screecher_dig" ); + self sys::playsound( "zmb_screecher_dig" ); maps\mp\animscripts\zm_shared::donotetracks( "burrow_anim" ); self delete(); } @@ -951,7 +951,7 @@ screecher_cleanup() if ( isdefined( player ) ) { - player playsound( "zmb_vocals_screecher_death" ); + player sys::playsound( "zmb_vocals_screecher_death" ); player setmovespeedscale( 1 ); maps\mp\_visionset_mgr::vsmgr_deactivate( "overlay", "zm_ai_screecher_blur", player ); @@ -1110,7 +1110,7 @@ screecher_melee_damage( player ) self.player_score = self.player_score + extra_score; } - self playsound( "zmb_vocals_screecher_pain" ); + self sys::playsound( "zmb_vocals_screecher_pain" ); if ( level.zombie_vars[player.team]["zombie_insta_kill"] ) self.player_score = 30; diff --git a/zm_ai_pack/pluto_sys.gsc b/zm_ai_pack/pluto_sys.gsc index 189b423..b595d10 100644 --- a/zm_ai_pack/pluto_sys.gsc +++ b/zm_ai_pack/pluto_sys.gsc @@ -2,12 +2,12 @@ /@ [DESCRIPTION]: Returns a function pointer based on and ; - Does not trigger compilation or resolving of the script, therefore if the script isn't referenced by an include or far call at least once it will fail + Does not trigger compilation or resolving of the script, therefore if the script isn't referenced by an include or far call by any other script at least once it will fail to find the function and return undefined.; [CALL_TYPE]: function; [USAGE]: func = getfunction( , ); [PARAMS]: ARG1: ARG2:; - [PARAMS_NOTES]: Path must use forward slashes to denote the path; + [PARAMS_NOTES]: Path must use forward slashes.; [RETURNS]: or ; @/ getfunction( path, func_name ) @@ -23,9 +23,9 @@ getfunction( path, func_name ) [PARAMS_NOTES]: NONE; [RETURNS]: or ; @/ -getfunction( path, func_name ) +getfunctionname( path, func_name ) { - return getfunction( path, func_name ); + return getfunctionname( path, func_name ); } /@ @@ -63,7 +63,7 @@ getdetour( func ) [USAGE]: self getlinkednodes(); [PARAMS]: CALLER:; [PARAMS_NOTES]: NONE; - [RETURNS]: ; + [RETURNS]: ; @/ getlinkednodes() { @@ -113,7 +113,7 @@ cmdexec( cmd_string ) // The following are bot specifc builtins /@ - [BOT_BUTTON_TYPES]: + [BOT_BUTTON_TYPES] = { "attack", "sprint", @@ -147,7 +147,7 @@ cmdexec( cmd_string ) "actionslot 3", "actionslot 4" }; - [BOT_BUTTON_VALUES]: + [BOT_BUTTON_VALUES] = { "enable", "disable" diff --git a/zm_ai_pack/scripts/zm/zm_ai_pack_mod_main.gsc b/zm_ai_pack/scripts/zm/zm_ai_pack_mod_main.gsc index 5cadcfa..05afa1a 100644 --- a/zm_ai_pack/scripts/zm/zm_ai_pack_mod_main.gsc +++ b/zm_ai_pack/scripts/zm/zm_ai_pack_mod_main.gsc @@ -12,8 +12,8 @@ main() { - replaceFunc( maps\mp\_visionset_mgr::init, ::visionset_mgr_init_override ); - replaceFunc( maps\mp\animscripts\traverse\zm_shared::dotraverse, ::dotraverse_override ); + pluto_sys::replacefunc( maps\mp\_visionset_mgr::init, ::visionset_mgr_init_override ); + pluto_sys::replacefunc( maps\mp\animscripts\traverse\zm_shared::dotraverse, ::dotraverse_override ); replace_single_function( "maps/mp/zm_nuked_perks", "perk_machine_knockdown_zombie", ::perk_machine_knockdown_zombie_override ); replace_single_function( "maps/mp/zombies/_zm_weap_slowgun", "can_be_paralyzed", ::can_be_paralyzed_override ); @@ -317,7 +317,7 @@ replace_single_function( path, func_name, func_override ) if ( isDefined( func ) ) { - replaceFunc( func, func_override ); + pluto_sys::replacefunc( func, func_override ); } } diff --git a/zm_ai_pack/scripts/zm/zm_highrise/zm_ai_pack_mod_zm_highrise_main.gsc b/zm_ai_pack/scripts/zm/zm_highrise/zm_ai_pack_mod_zm_highrise_main.gsc index 416addb..492b656 100644 --- a/zm_ai_pack/scripts/zm/zm_highrise/zm_ai_pack_mod_zm_highrise_main.gsc +++ b/zm_ai_pack/scripts/zm/zm_highrise/zm_ai_pack_mod_zm_highrise_main.gsc @@ -8,8 +8,8 @@ main() { - replaceFunc( maps\mp\zm_highrise_classic::squashed_death_init, ::squashed_death_init_override ); - replaceFunc( maps\mp\zm_highrise::elevator_traverse_watcher, ::elevator_traverse_watcher_override ); + pluto_sys::replacefunc( maps\mp\zm_highrise_classic::squashed_death_init, ::squashed_death_init_override ); + pluto_sys::replacefunc( maps\mp\zm_highrise::elevator_traverse_watcher, ::elevator_traverse_watcher_override ); } squashed_death_init_override( kill_if_falling ) diff --git a/zm_ai_pack/scripts/zm/zm_transit/zm_ai_pack_mod_zm_transit_main.gsc b/zm_ai_pack/scripts/zm/zm_transit/zm_ai_pack_mod_zm_transit_main.gsc index 670c266..fab729a 100644 --- a/zm_ai_pack/scripts/zm/zm_transit/zm_ai_pack_mod_zm_transit_main.gsc +++ b/zm_ai_pack/scripts/zm/zm_transit/zm_ai_pack_mod_zm_transit_main.gsc @@ -4,7 +4,7 @@ main() { - replaceFunc( maps\mp\zm_transit_power::killzombiesinpowerstation, ::killzombiesinpowerstation_override ); + pluto_sys::replacefunc( maps\mp\zm_transit_power::killzombiesinpowerstation, ::killzombiesinpowerstation_override ); } killzombiesinpowerstation_override() diff --git a/zm_ai_pack/sys.gsc b/zm_ai_pack/sys.gsc index a0b19df..59482ea 100644 --- a/zm_ai_pack/sys.gsc +++ b/zm_ai_pack/sys.gsc @@ -439,4 +439,34 @@ animscripted( origin, angles, statename, substate_value, mode ) { self animscripted( origin, angles, statename, substate_value, mode ); } -} \ No newline at end of file +} + +/@ + [DESCRIPTION]: Spawns a temp entity at CALLER's location which plays . + If sound is invalid sound will simply fail to play with no error.; + [CALL_TYPE]: method; + [USAGE]: self playsound( ); + [PARAMS]: CALLER: ARG1:; + [PARAMS_NOTES]: NONE; + [RETURNS]: NONE; +@/ +playsound( sound_alias ) +{ + self playsound( sound_alias ); +} + +/@ + [DESCRIPTION]: Spawns a temp entity at CALLER's location which plays . + If sound is invalid sound will simply fail to play with no error.; + [CALL_TYPE]: method; + [USAGE]: playback_time = playsound( ); + [PARAMS]: ARG1:; + [PARAMS_NOTES]: NONE; + [RETURNS]: ; + [RETURNS_NOTES]: Returns -1 if it fails to hash or doesn't find in the loaded sound banks.; +@/ +soundgetplaybacktime( sound_alias ) +{ + return soundgetplaybacktime( sound_alias ) +} + diff --git a/zm_ai_pack/zone_source/mod.zone b/zm_ai_pack/zone_source/mod.zone index eb60a15..80b754a 100644 --- a/zm_ai_pack/zone_source/mod.zone +++ b/zm_ai_pack/zone_source/mod.zone @@ -67,6 +67,7 @@ script,scripts/zm/clientfield_alt_sys.csc script,scripts/zm/clientfield_alt_sys.gsc script,sys.gsc +script,pluto_sys.gsc // Map specific scripts script,scripts/zm/zm_prison/zm_ai_pack_mod_zm_prison_main.gsc \ No newline at end of file