diff --git a/zm_ai_pack/clientscripts/mp/zombies/_zm_ai_ghost.csc b/zm_ai_pack/clientscripts/mp/zombies/_zm_ai_ghost.csc index 2645e62..462b1a3 100644 --- a/zm_ai_pack/clientscripts/mp/zombies/_zm_ai_ghost.csc +++ b/zm_ai_pack/clientscripts/mp/zombies/_zm_ai_ghost.csc @@ -12,6 +12,10 @@ precache() init_animtree() { + if ( getDvar( "mapname" ) != "zm_buried" ) + { + wait 0.1; + } scriptmodelsuseanimtree( #animtree ); } @@ -38,6 +42,7 @@ main() { precache_fx(); register_client_fields(); + level thread init_animtree(); } register_client_fields() diff --git a/zm_ai_pack/clientscripts/mp/zombies/_zm_ai_mechz.csc b/zm_ai_pack/clientscripts/mp/zombies/_zm_ai_mechz.csc index 7877657..ad087a8 100644 --- a/zm_ai_pack/clientscripts/mp/zombies/_zm_ai_mechz.csc +++ b/zm_ai_pack/clientscripts/mp/zombies/_zm_ai_mechz.csc @@ -15,6 +15,7 @@ precache() init_animtree() { + wait 0.05; scriptmodelsuseanimtree( #animtree ); } @@ -80,7 +81,7 @@ main() registermechzfootstepcb( "zm_tomb_mech_zombie", ::mechzfootstepcbfunc ); level._effect["mech_footstep_steam"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_foot_step_steam" ); level._effect["mech_exhaust_smoke"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_exhaust_smoke" ); - init_animtree(); + level thread init_animtree(); scripts\zm\zm_ai_pack_mod_main::add_visionset_callback( ::register_burn_overlay ); } 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 0f1d0d9..d4844b5 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc @@ -2459,7 +2459,7 @@ brutus_lockdown_client_effects( delay ) } else { - set_clientfield_alt_allplayers( "actor", "brutus_lock_down", self, self.brutus_lockdown_state ); + set_clientfield_alt_allplayers( "brutus_lock_down", self, self.brutus_lockdown_state ); } } 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 f2a60ef..3f83d81 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc @@ -23,6 +23,10 @@ precache() init_animtree() { + if ( getDvar( "mapname" ) != "zm_buried" ) + { + wait 0.1; + } scriptmodelsuseanimtree( #animtree ); } @@ -93,6 +97,7 @@ main() else level thread ghost_zone_spawning_think(); + level thread init_animtree(); level thread ghost_vox_think(); init_time_bomb_ghost_rounds(); /# 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 1f3bcc1..4d2ee65 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc @@ -81,11 +81,18 @@ main() level._effect["mechz_claw_arm"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_wpn_source" ); level._effect["mech_booster_landing"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_jump_landing" ); precache(); + level thread init_animtree(); scripts\zm\zm_ai_pack_mod_main::add_visionset_callback( ::register_burn_overlay ); } #using_animtree("mechz_claw"); +init_animtree() +{ + wait 0.05; + scriptmodelsuseanimtree( #animtree ); +} + init() { maps\mp\zombies\_zm_ai_mechz_ffotd::mechz_init_start(); @@ -169,7 +176,10 @@ init() else level thread mechz_spawning_logic(); - scriptmodelsuseanimtree( #animtree ); + if ( level.script != "zm_tomb" ) + { + scriptmodelsuseanimtree( #animtree ); + } /# setup_devgui(); #/ diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_booster.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_booster.gsc index 6f24395..424682a 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_booster.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_booster.gsc @@ -280,7 +280,7 @@ mechz_do_jump( wait_for_stationary_tank ) } else { - set_clientfield_alt_allplayers( "actor", "mechz_fx", self, self.fx_field ); + set_clientfield_alt_allplayers( "mechz_fx", self, self.fx_field ); } self thread maps\mp\zombies\_zm_spawner::zombie_eye_glow(); @@ -313,7 +313,7 @@ mechz_jump_cleanup() } else { - set_clientfield_alt_allplayers( "actor", "mechz_fx", self, self.fx_field ); + set_clientfield_alt_allplayers( "mechz_fx", self, self.fx_field ); } self stopanimscripted(); self notify( "jump_complete" ); diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_ft.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_ft.gsc index a552a95..0bfe74f 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_ft.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_ft.gsc @@ -619,7 +619,7 @@ mechz_flamethrower_cleanup() } else { - set_clientfield_alt_allplayers( "actor", "mechz_fx", self, self.fx_field ); + set_clientfield_alt_allplayers( "mechz_fx", self, self.fx_field ); } self.firing = 0; self.doing_tank_sweep = 0; diff --git a/zm_ai_pack/scripts/zm/clientfield_alt_sys.csc b/zm_ai_pack/scripts/zm/clientfield_alt_sys.csc index 78b49ec..85defe5 100644 --- a/zm_ai_pack/scripts/zm/clientfield_alt_sys.csc +++ b/zm_ai_pack/scripts/zm/clientfield_alt_sys.csc @@ -1,5 +1,6 @@ execute_clientfield_alt_callback_internal( data, last_data, field_type, field_name ) { + entnum = data.entnum; ent = undefined; field_data = level.clientfield_alts[ field_type ][ field_name ]; ent = getEntByNum( 0, entnum ); diff --git a/zm_ai_pack/scripts/zm/clientfield_alt_sys.gsc b/zm_ai_pack/scripts/zm/clientfield_alt_sys.gsc index a079bc5..76be85e 100644 --- a/zm_ai_pack/scripts/zm/clientfield_alt_sys.gsc +++ b/zm_ai_pack/scripts/zm/clientfield_alt_sys.gsc @@ -5,7 +5,7 @@ set_clientfield_alt_toplayer( field_name, ent, value ) self setClientDvar( field_name, entnum + " " + value ); } -set_clientfield_alt_allplayers(field_name, ent, value ) +set_clientfield_alt_allplayers( field_name, ent, value ) { foreach ( player in level.players ) { 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 8b6db3b..44cd5ab 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 @@ -300,6 +300,7 @@ can_be_paralyzed_override( zombie ) watch_crash_trigger_override() { + sloth_set_state_func = getFunction( "maps/mp/zombies/_zm_ai_sloth", "sloth_set_state" ); while ( true ) { self waittill( "trigger", who ); @@ -307,7 +308,7 @@ watch_crash_trigger_override() if ( isDefined( who ) && isDefined( level.sloth ) && who == level.sloth && who.state == "berserk" ) { who setclientfield( "sloth_berserk", 0 ); - who sloth_set_state( "crash", 0 ); + who [[ sloth_set_state_func ]]( "crash", 0 ); } } } \ No newline at end of file