diff --git a/zm_ai_pack/aitype/zm_alcatraz_basic.gsc b/zm_ai_pack/aitype/zm_alcatraz_basic.gsc index 89a4991..eea4f2a 100644 --- a/zm_ai_pack/aitype/zm_alcatraz_basic.gsc +++ b/zm_ai_pack/aitype/zm_alcatraz_basic.gsc @@ -789,8 +789,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -806,18 +806,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_guard::precache(); character\c_zom_inmate1::precache(); character\c_zom_inmate2::precache(); diff --git a/zm_ai_pack/aitype/zm_alcatraz_brutus.gsc b/zm_ai_pack/aitype/zm_alcatraz_brutus.gsc index 2b5392d..19e41cd 100644 --- a/zm_ai_pack/aitype/zm_alcatraz_brutus.gsc +++ b/zm_ai_pack/aitype/zm_alcatraz_brutus.gsc @@ -64,20 +64,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_cellbreaker::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_alcatraz_brutus" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_alcatraz_brutus" ); character\c_zom_cellbreaker::precache(); } diff --git a/zm_ai_pack/aitype/zm_ally_cdc.gsc b/zm_ai_pack/aitype/zm_ally_cdc.gsc index 476af2a..9cd2c42 100644 --- a/zm_ai_pack/aitype/zm_ally_cdc.gsc +++ b/zm_ai_pack/aitype/zm_ally_cdc.gsc @@ -37,20 +37,20 @@ main() self.team = "allies"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_ally_cdc::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "allies" ); + self sys::setspawnerteam( "allies" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_ally_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_ally_basic" ); character\c_zom_ally_cdc::precache(); } diff --git a/zm_ai_pack/aitype/zm_ally_farmgirl.gsc b/zm_ai_pack/aitype/zm_ally_farmgirl.gsc index d93724d..2ce488e 100644 --- a/zm_ai_pack/aitype/zm_ally_farmgirl.gsc +++ b/zm_ai_pack/aitype/zm_ally_farmgirl.gsc @@ -37,20 +37,20 @@ main() self.team = "allies"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_ally_farmgirl::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "allies" ); + self sys::setspawnerteam( "allies" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_ally_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_ally_basic" ); character\c_zom_ally_farmgirl::precache(); } diff --git a/zm_ai_pack/aitype/zm_buried_basic_01_char_01.gsc b/zm_ai_pack/aitype/zm_buried_basic_01_char_01.gsc index 2fec15c..0eddb15 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_01_char_01.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_01_char_01.gsc @@ -368,20 +368,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_zombie_buried_civilian1::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); character\c_zom_zombie_buried_civilian1::precache(); } diff --git a/zm_ai_pack/aitype/zm_buried_basic_01_char_02.gsc b/zm_ai_pack/aitype/zm_buried_basic_01_char_02.gsc index b533bcc..7deac99 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_01_char_02.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_01_char_02.gsc @@ -370,8 +370,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -387,18 +387,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); character\c_zom_zombie_buried_civilian2::precache(); character\c_zom_zombie_buried_civilian2_nohat::precache(); character\c_zom_zombie_buried_civilian2_nohat::precache(); diff --git a/zm_ai_pack/aitype/zm_buried_basic_01_char_03.gsc b/zm_ai_pack/aitype/zm_buried_basic_01_char_03.gsc index 03f5d32..8fd093b 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_01_char_03.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_01_char_03.gsc @@ -370,8 +370,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -387,18 +387,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); character\c_zom_zombie_buried_civilian3::precache(); character\c_zom_zombie_buried_civilian3_nohat::precache(); character\c_zom_zombie_buried_civilian3_nohat::precache(); diff --git a/zm_ai_pack/aitype/zm_buried_basic_01_char_04.gsc b/zm_ai_pack/aitype/zm_buried_basic_01_char_04.gsc index a764740..8864dba 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_01_char_04.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_01_char_04.gsc @@ -370,8 +370,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -387,18 +387,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); character\c_zom_zombie_buried_civilian4::precache(); character\c_zom_zombie_buried_civilian4_nohat::precache(); character\c_zom_zombie_buried_civilian4_nohat::precache(); diff --git a/zm_ai_pack/aitype/zm_buried_basic_01_char_05.gsc b/zm_ai_pack/aitype/zm_buried_basic_01_char_05.gsc index 0ac6ec8..84682d0 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_01_char_05.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_01_char_05.gsc @@ -370,8 +370,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 4 ); switch ( randchar ) @@ -390,18 +390,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); character\c_zom_zombie_buried_civilian5::precache(); character\c_zom_zombie_buried_civilian5_nohat::precache(); character\c_zom_zombie_buried_civilian5_nohat::precache(); diff --git a/zm_ai_pack/aitype/zm_buried_basic_02_char_01.gsc b/zm_ai_pack/aitype/zm_buried_basic_02_char_01.gsc index 47b4b13..fe3c30c 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_02_char_01.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_02_char_01.gsc @@ -368,20 +368,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_zombie_buried_miner1::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); character\c_zom_zombie_buried_miner1::precache(); } diff --git a/zm_ai_pack/aitype/zm_buried_basic_02_char_02.gsc b/zm_ai_pack/aitype/zm_buried_basic_02_char_02.gsc index 4e5f4bc..6090530 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_02_char_02.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_02_char_02.gsc @@ -370,8 +370,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -387,18 +387,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); character\c_zom_zombie_buried_miner2::precache(); character\c_zom_zombie_buried_miner2_nohat::precache(); character\c_zom_zombie_buried_miner2_nohat::precache(); diff --git a/zm_ai_pack/aitype/zm_buried_basic_02_char_03.gsc b/zm_ai_pack/aitype/zm_buried_basic_02_char_03.gsc index eea048c..6c9071c 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_02_char_03.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_02_char_03.gsc @@ -370,8 +370,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -387,18 +387,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_basic" ); character\c_zom_zombie_buried_miner3::precache(); character\c_zom_zombie_buried_miner3_nohat::precache(); character\c_zom_zombie_buried_miner3_nohat::precache(); diff --git a/zm_ai_pack/aitype/zm_buried_basic_03.gsc b/zm_ai_pack/aitype/zm_buried_basic_03.gsc index 3fcb7bd..654456b 100644 --- a/zm_ai_pack/aitype/zm_buried_basic_03.gsc +++ b/zm_ai_pack/aitype/zm_buried_basic_03.gsc @@ -789,8 +789,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -806,18 +806,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_zombie_buried_saloongirl1::precache(); character\c_zom_zombie_buried_saloongirl2::precache(); character\c_zom_zombie_buried_saloongirl3::precache(); diff --git a/zm_ai_pack/aitype/zm_buried_ghost_female.gsc b/zm_ai_pack/aitype/zm_buried_ghost_female.gsc index 9d6f3ec..5033b67 100644 --- a/zm_ai_pack/aitype/zm_buried_ghost_female.gsc +++ b/zm_ai_pack/aitype/zm_buried_ghost_female.gsc @@ -67,20 +67,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_zombie_buried_ghost_woman::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_ghost" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_ghost" ); character\c_zom_zombie_buried_ghost_woman::precache(); } diff --git a/zm_ai_pack/aitype/zm_buried_sloth.gsc b/zm_ai_pack/aitype/zm_buried_sloth.gsc index b4600ac..a932926 100644 --- a/zm_ai_pack/aitype/zm_buried_sloth.gsc +++ b/zm_ai_pack/aitype/zm_buried_sloth.gsc @@ -159,20 +159,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_buried_sloth::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_buried_sloth" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_buried_sloth" ); character\c_zom_buried_sloth::precache(); } diff --git a/zm_ai_pack/aitype/zm_highrise_basic_01.gsc b/zm_ai_pack/aitype/zm_highrise_basic_01.gsc index 4ddb032..f2d179f 100644 --- a/zm_ai_pack/aitype/zm_highrise_basic_01.gsc +++ b/zm_ai_pack/aitype/zm_highrise_basic_01.gsc @@ -792,8 +792,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 6 ); switch ( randchar ) @@ -818,18 +818,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_zombie_civ_shorts::precache(); character\c_zom_zombie_civ_shorts2::precache(); character\c_zom_zombie_civ_shorts3::precache(); diff --git a/zm_ai_pack/aitype/zm_highrise_basic_02.gsc b/zm_ai_pack/aitype/zm_highrise_basic_02.gsc index 11a631d..0814dbc 100644 --- a/zm_ai_pack/aitype/zm_highrise_basic_02.gsc +++ b/zm_ai_pack/aitype/zm_highrise_basic_02.gsc @@ -386,20 +386,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_zombie_scientist::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_highrise_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_highrise_basic" ); character\c_zom_zombie_scientist::precache(); } diff --git a/zm_ai_pack/aitype/zm_highrise_basic_03.gsc b/zm_ai_pack/aitype/zm_highrise_basic_03.gsc index 2af0445..3fc7e02 100644 --- a/zm_ai_pack/aitype/zm_highrise_basic_03.gsc +++ b/zm_ai_pack/aitype/zm_highrise_basic_03.gsc @@ -386,20 +386,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_zombie_soldier::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_highrise_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_highrise_basic" ); character\c_zom_zombie_soldier::precache(); } diff --git a/zm_ai_pack/aitype/zm_highrise_leaper.gsc b/zm_ai_pack/aitype/zm_highrise_leaper.gsc index 934cc99..7d14c3b 100644 --- a/zm_ai_pack/aitype/zm_highrise_leaper.gsc +++ b/zm_ai_pack/aitype/zm_highrise_leaper.gsc @@ -183,20 +183,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_leaper::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_highrise_leaper" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_highrise_leaper" ); character\c_zom_leaper::precache(); } diff --git a/zm_ai_pack/aitype/zm_nuked_basic_01.gsc b/zm_ai_pack/aitype/zm_nuked_basic_01.gsc index 864e9d2..02a5feb 100644 --- a/zm_ai_pack/aitype/zm_nuked_basic_01.gsc +++ b/zm_ai_pack/aitype/zm_nuked_basic_01.gsc @@ -788,8 +788,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 2 ); switch ( randchar ) @@ -802,18 +802,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_dlc0_zombie_hazmat_1::precache(); character\c_zom_dlc0_zombie_hazmat_2::precache(); } diff --git a/zm_ai_pack/aitype/zm_nuked_basic_01_beyes.gsc b/zm_ai_pack/aitype/zm_nuked_basic_01_beyes.gsc index def8c1b..b6af02d 100644 --- a/zm_ai_pack/aitype/zm_nuked_basic_01_beyes.gsc +++ b/zm_ai_pack/aitype/zm_nuked_basic_01_beyes.gsc @@ -788,8 +788,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 2 ); switch ( randchar ) @@ -802,18 +802,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_dlc0_zombie_hazmat_1_beyes::precache(); character\c_zom_dlc0_zombie_hazmat_2_beyes::precache(); } diff --git a/zm_ai_pack/aitype/zm_nuked_basic_02.gsc b/zm_ai_pack/aitype/zm_nuked_basic_02.gsc index dce075b..5a2157e 100644 --- a/zm_ai_pack/aitype/zm_nuked_basic_02.gsc +++ b/zm_ai_pack/aitype/zm_nuked_basic_02.gsc @@ -788,8 +788,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 2 ); switch ( randchar ) @@ -802,18 +802,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_dlc0_zombie_soldier_1::precache(); character\c_zom_dlc0_zombie_soldier_civ_1::precache(); } diff --git a/zm_ai_pack/aitype/zm_nuked_basic_02_beyes.gsc b/zm_ai_pack/aitype/zm_nuked_basic_02_beyes.gsc index 6881cfe..d4e77dd 100644 --- a/zm_ai_pack/aitype/zm_nuked_basic_02_beyes.gsc +++ b/zm_ai_pack/aitype/zm_nuked_basic_02_beyes.gsc @@ -788,8 +788,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 2 ); switch ( randchar ) @@ -802,18 +802,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_dlc0_zombie_soldier_1_beyes::precache(); character\c_zom_dlc0_zombie_soldier_civ_1_beyes::precache(); } diff --git a/zm_ai_pack/aitype/zm_nuked_dog.gsc b/zm_ai_pack/aitype/zm_nuked_dog.gsc index 17d493d..9d5593c 100644 --- a/zm_ai_pack/aitype/zm_nuked_dog.gsc +++ b/zm_ai_pack/aitype/zm_nuked_dog.gsc @@ -65,8 +65,8 @@ main() self.team = "axis"; self.type = "zombie_dog"; self.weapon = ""; - self setengagementmindist( 256.0, 0.0 ); - self setengagementmaxdist( 768.0, 1024.0 ); + self sys::setengagementmindist( 256.0, 0.0 ); + self sys::setengagementmaxdist( 768.0, 1024.0 ); randchar = codescripts\character::get_random_character( 2 ); switch ( randchar ) @@ -79,18 +79,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_nuked_dog" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_nuked_dog" ); character\character_sp_zombie_dog::precache(); character\character_sp_zombie_dog::precache(); } diff --git a/zm_ai_pack/aitype/zm_tomb_basic_crusader.gsc b/zm_ai_pack/aitype/zm_tomb_basic_crusader.gsc index ce22753..d62b2b3 100644 --- a/zm_ai_pack/aitype/zm_tomb_basic_crusader.gsc +++ b/zm_ai_pack/aitype/zm_tomb_basic_crusader.gsc @@ -376,8 +376,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 6 ); switch ( randchar ) @@ -402,18 +402,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_tomb_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_tomb_basic" ); character\c_zom_tomb_crusader_1a::precache(); character\c_zom_tomb_crusader_1a_nohat::precache(); character\c_zom_tomb_crusader_2b::precache(); diff --git a/zm_ai_pack/aitype/zm_tomb_basic_german.gsc b/zm_ai_pack/aitype/zm_tomb_basic_german.gsc index d2546dd..e3af89c 100644 --- a/zm_ai_pack/aitype/zm_tomb_basic_german.gsc +++ b/zm_ai_pack/aitype/zm_tomb_basic_german.gsc @@ -791,8 +791,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 6 ); switch ( randchar ) @@ -817,18 +817,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_tomb_german_1a::precache(); character\c_zom_tomb_german_1a_nohat::precache(); character\c_zom_tomb_german_2b::precache(); diff --git a/zm_ai_pack/aitype/zm_tomb_basic_german2.gsc b/zm_ai_pack/aitype/zm_tomb_basic_german2.gsc index 8f9ee9b..562fce5 100644 --- a/zm_ai_pack/aitype/zm_tomb_basic_german2.gsc +++ b/zm_ai_pack/aitype/zm_tomb_basic_german2.gsc @@ -375,8 +375,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 6 ); switch ( randchar ) @@ -401,18 +401,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_tomb_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_tomb_basic" ); character\c_zom_tomb_german_2b_nohat::precache(); character\c_zom_tomb_german_3c::precache(); character\c_zom_tomb_german_3c_nohat::precache(); diff --git a/zm_ai_pack/aitype/zm_tomb_basic_zone_capture.gsc b/zm_ai_pack/aitype/zm_tomb_basic_zone_capture.gsc index 8b77208..9bf3761 100644 --- a/zm_ai_pack/aitype/zm_tomb_basic_zone_capture.gsc +++ b/zm_ai_pack/aitype/zm_tomb_basic_zone_capture.gsc @@ -370,20 +370,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_tomb_crusader_zc::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_tomb_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_tomb_basic" ); character\c_zom_tomb_crusader_zc::precache(); } diff --git a/zm_ai_pack/aitype/zm_tomb_giant_robot.gsc b/zm_ai_pack/aitype/zm_tomb_giant_robot.gsc index 985f74c..ad4ee54 100644 --- a/zm_ai_pack/aitype/zm_tomb_giant_robot.gsc +++ b/zm_ai_pack/aitype/zm_tomb_giant_robot.gsc @@ -46,20 +46,20 @@ main() self.team = "neutral"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_giant_robot::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "neutral" ); + self sys::setspawnerteam( "neutral" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_tomb_giant_robot" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_tomb_giant_robot" ); character\c_zom_giant_robot::precache(); } diff --git a/zm_ai_pack/aitype/zm_tomb_giant_robot_0.gsc b/zm_ai_pack/aitype/zm_tomb_giant_robot_0.gsc index c1948ea..5af1d9e 100644 --- a/zm_ai_pack/aitype/zm_tomb_giant_robot_0.gsc +++ b/zm_ai_pack/aitype/zm_tomb_giant_robot_0.gsc @@ -46,20 +46,20 @@ main() self.team = "neutral"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_giant_robot_0::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "neutral" ); + self sys::setspawnerteam( "neutral" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_tomb_giant_robot" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_tomb_giant_robot" ); character\c_zom_giant_robot_0::precache(); } diff --git a/zm_ai_pack/aitype/zm_tomb_giant_robot_1.gsc b/zm_ai_pack/aitype/zm_tomb_giant_robot_1.gsc index 061d823..f1a66f5 100644 --- a/zm_ai_pack/aitype/zm_tomb_giant_robot_1.gsc +++ b/zm_ai_pack/aitype/zm_tomb_giant_robot_1.gsc @@ -46,20 +46,20 @@ main() self.team = "neutral"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_giant_robot_1::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "neutral" ); + self sys::setspawnerteam( "neutral" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_tomb_giant_robot" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_tomb_giant_robot" ); character\c_zom_giant_robot_1::precache(); } diff --git a/zm_ai_pack/aitype/zm_tomb_giant_robot_2.gsc b/zm_ai_pack/aitype/zm_tomb_giant_robot_2.gsc index 9bb5e8f..6654021 100644 --- a/zm_ai_pack/aitype/zm_tomb_giant_robot_2.gsc +++ b/zm_ai_pack/aitype/zm_tomb_giant_robot_2.gsc @@ -46,20 +46,20 @@ main() self.team = "neutral"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_giant_robot_2::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "neutral" ); + self sys::setspawnerteam( "neutral" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_tomb_giant_robot" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_tomb_giant_robot" ); character\c_zom_giant_robot_2::precache(); } diff --git a/zm_ai_pack/aitype/zm_tomb_mech_zombie.gsc b/zm_ai_pack/aitype/zm_tomb_mech_zombie.gsc index 39c78d2..37c2fb5 100644 --- a/zm_ai_pack/aitype/zm_tomb_mech_zombie.gsc +++ b/zm_ai_pack/aitype/zm_tomb_mech_zombie.gsc @@ -106,20 +106,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_dlc_mech::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_tomb_mechz" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_tomb_mechz" ); character\c_zom_dlc_mech::precache(); } diff --git a/zm_ai_pack/aitype/zm_transit_avogadro.gsc b/zm_ai_pack/aitype/zm_transit_avogadro.gsc index bf17c63..7752dd7 100644 --- a/zm_ai_pack/aitype/zm_transit_avogadro.gsc +++ b/zm_ai_pack/aitype/zm_transit_avogadro.gsc @@ -102,20 +102,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_avogadro::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_transit_avogadro" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_transit_avogadro" ); character\c_zom_avogadro::precache(); } diff --git a/zm_ai_pack/aitype/zm_transit_basic_01.gsc b/zm_ai_pack/aitype/zm_transit_basic_01.gsc index b075a1d..98f5f53 100644 --- a/zm_ai_pack/aitype/zm_transit_basic_01.gsc +++ b/zm_ai_pack/aitype/zm_transit_basic_01.gsc @@ -788,8 +788,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 2 ); switch ( randchar ) @@ -802,18 +802,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_all_basic" ); character\c_zom_zombie1_01::precache(); character\c_zom_zombie1_02::precache(); } diff --git a/zm_ai_pack/aitype/zm_transit_basic_02.gsc b/zm_ai_pack/aitype/zm_transit_basic_02.gsc index 508d0da..575fe36 100644 --- a/zm_ai_pack/aitype/zm_transit_basic_02.gsc +++ b/zm_ai_pack/aitype/zm_transit_basic_02.gsc @@ -466,8 +466,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -483,18 +483,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); character\c_zom_zombie2_01::precache(); character\c_zom_zombie2_02::precache(); character\c_zom_zombie2_03::precache(); diff --git a/zm_ai_pack/aitype/zm_transit_basic_03.gsc b/zm_ai_pack/aitype/zm_transit_basic_03.gsc index a93c94c..b79168b 100644 --- a/zm_ai_pack/aitype/zm_transit_basic_03.gsc +++ b/zm_ai_pack/aitype/zm_transit_basic_03.gsc @@ -468,8 +468,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 5 ); switch ( randchar ) @@ -491,18 +491,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); character\c_zom_zombie3_01::precache(); character\c_zom_zombie3_02::precache(); character\c_zom_zombie3_03::precache(); diff --git a/zm_ai_pack/aitype/zm_transit_basic_05.gsc b/zm_ai_pack/aitype/zm_transit_basic_05.gsc index 8973447..914ceb9 100644 --- a/zm_ai_pack/aitype/zm_transit_basic_05.gsc +++ b/zm_ai_pack/aitype/zm_transit_basic_05.gsc @@ -466,8 +466,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -483,18 +483,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); character\c_zom_zombie5_01::precache(); character\c_zom_zombie5_02::precache(); character\c_zom_zombie5_03::precache(); diff --git a/zm_ai_pack/aitype/zm_transit_basic_08.gsc b/zm_ai_pack/aitype/zm_transit_basic_08.gsc index cbc91ae..029a399 100644 --- a/zm_ai_pack/aitype/zm_transit_basic_08.gsc +++ b/zm_ai_pack/aitype/zm_transit_basic_08.gsc @@ -466,8 +466,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -483,18 +483,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); character\c_zom_zombie8_01::precache(); character\c_zom_zombie8_02::precache(); character\c_zom_zombie8_03::precache(); diff --git a/zm_ai_pack/aitype/zm_transit_basic_09.gsc b/zm_ai_pack/aitype/zm_transit_basic_09.gsc index 09da5b6..cc93845 100644 --- a/zm_ai_pack/aitype/zm_transit_basic_09.gsc +++ b/zm_ai_pack/aitype/zm_transit_basic_09.gsc @@ -466,8 +466,8 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); randchar = codescripts\character::get_random_character( 3 ); switch ( randchar ) @@ -483,18 +483,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_transit_basic" ); character\c_zom_zombie9_01::precache(); character\c_zom_zombie9_02::precache(); character\c_zom_zombie9_03::precache(); diff --git a/zm_ai_pack/aitype/zm_transit_screecher.gsc b/zm_ai_pack/aitype/zm_transit_screecher.gsc index 0b764cb..02e2c70 100644 --- a/zm_ai_pack/aitype/zm_transit_screecher.gsc +++ b/zm_ai_pack/aitype/zm_transit_screecher.gsc @@ -59,20 +59,20 @@ main() self.team = "axis"; self.type = "zombie"; self.weapon = ""; - self setengagementmindist( 0.0, 0.0 ); - self setengagementmaxdist( 100.0, 300.0 ); + self sys::setengagementmindist( 0.0, 0.0 ); + self sys::setengagementmaxdist( 100.0, 300.0 ); character\c_zom_screecher::main(); - self setcharacterindex( 0 ); + self sys::setcharacterindex( 0 ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_transit_screecher" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_transit_screecher" ); character\c_zom_screecher::precache(); } diff --git a/zm_ai_pack/aitype/zombie_dog.gsc b/zm_ai_pack/aitype/zombie_dog.gsc index 5acb0a9..223b832 100644 --- a/zm_ai_pack/aitype/zombie_dog.gsc +++ b/zm_ai_pack/aitype/zombie_dog.gsc @@ -68,8 +68,8 @@ main() self.team = "axis"; self.type = "zombie_dog"; self.weapon = ""; - self setengagementmindist( 256.0, 0.0 ); - self setengagementmaxdist( 768.0, 1024.0 ); + self sys::setengagementmindist( 256.0, 0.0 ); + self sys::setengagementmaxdist( 768.0, 1024.0 ); randchar = codescripts\character::get_random_character( 2 ); switch ( randchar ) @@ -82,18 +82,18 @@ main() break; } - self setcharacterindex( randchar ); + self sys::setcharacterindex( randchar ); } spawner() { - self setspawnerteam( "axis" ); + self sys::setspawnerteam( "axis" ); } precache( ai_index ) { level thread reference_anims_from_animtree(); - precacheanimstatedef( ai_index, #animtree, "zm_transit_dog" ); + sys::precacheanimstatedef( ai_index, #animtree, "zm_transit_dog" ); character\character_sp_zombie_dog::precache(); character\character_sp_zombie_dog::precache(); } diff --git a/zm_ai_pack/maps/mp/zm_transit.d3dbsp b/zm_ai_pack/maps/mp/zm_transit.d3dbsp index 5e2b9ea..8353156 100644 --- a/zm_ai_pack/maps/mp/zm_transit.d3dbsp +++ b/zm_ai_pack/maps/mp/zm_transit.d3dbsp @@ -54746,4 +54746,197 @@ "classname" "script_struct" "angles" "0 0 0" "script_string" "zclassic_transit zstandard_farm zgrief_farm" -} \ No newline at end of file +} +{ +"classname" "actor_zm_alcatraz_brutus" +"model" "c_zom_cellbreaker_fb" +"export" "2" +"angles" "0 180 0" +"spawnflags" "3" +"script_noteworthy" "brutus_zombie_spawner" +"origin" "100 100 -500" +} +{ +"targetname" "zone_tow_spawners" +"script_noteworthy" "brutus_location" +"origin" "1382.76 -489.104 -67.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_tow_spawners" +"script_noteworthy" "brutus_location" +"origin" "1126.05 -502.775 -61.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_town_south_spawners" +"script_noteworthy" "brutus_location" +"origin" "1925.02 -1474.78 -56.3992" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_town_south_spawners" +"script_noteworthy" "brutus_location" +"origin" "959.013 -1474.86 -47.088" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_town_barber_spawners" +"script_noteworthy" "brutus_location" +"origin" "968.193 -911.043 120.125" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_town_north_spawners" +"script_noteworthy" "brutus_location" +"origin" "1530.97 750.57 -61.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_ban_spawners" +"script_noteworthy" "brutus_location" +"origin" "982.982 447.794 -39.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_bar_spawners" +"script_noteworthy" "brutus_location" +"origin" "2118.19 343.046 -55.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_bar_spawners" +"script_noteworthy" "brutus_location" +"origin" "2114.55 29.5759 88.125" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_town_east_spawners" +"script_noteworthy" "brutus_location" +"origin" "2333.71 -665.085 -55.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_tow_spawners" +"script_noteworthy" "brutus_location" +"origin" "1332.75 185.541 -69.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_town zstandard_town zgrief_town" +} +{ +"targetname" "zone_pri_spawners" +"script_noteworthy" "brutus_location" +"origin" "-6834.19 5264.24 -58.2852" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_transit zstandard_transit zgrief_transit" +} +{ +"targetname" "zone_station_ext_spawners" +"script_noteworthy" "brutus_location" +"origin" "-6066.56 4846.77 -62.0586" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_transit zstandard_transit zgrief_transit" +} +{ +"targetname" "zone_station_ext_spawners" +"script_noteworthy" "brutus_location" +"origin" "-6231.13 5459.16 -55.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_transit zstandard_transit zgrief_transit" +} +{ +"targetname" "zone_station_ext_spawners" +"script_noteworthy" "brutus_location" +"origin" "-7059.45 4344.02 -63.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_transit zstandard_transit zgrief_transit" +} +{ +"targetname" "zone_station_ext_spawners" +"script_noteworthy" "brutus_location" +"origin" "-7461.69 4402.73 -63.875" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_transit zstandard_transit zgrief_transit" +} +{ +"targetname" "zone_trans_2b_spawners" +"script_noteworthy" "brutus_location" +"origin" "-7767.91 5305.2 -59.47" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_transit zstandard_transit zgrief_transit" +} +{ +"targetname" "zone_far_ext_spawners" +"script_noteworthy" "brutus_location" +"origin" "7143.08 -5728.47 -46.6953" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_farm zstandard_farm zgrief_farm" +} +{ +"targetname" "zone_brn_spawners" +"script_noteworthy" "brutus_location" +"origin" "7783.4 -5056.01 40.387" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_farm zstandard_farm zgrief_farm" +} +{ +"targetname" "zone_brn_spawners" +"script_noteworthy" "brutus_location" +"origin" "8175.57 -5321.69 269.39" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_farm zstandard_farm zgrief_farm" +} +{ +"targetname" "zone_far_ext_spawners" +"script_noteworthy" "brutus_location" +"origin" "8685.24 -5735.16 50.125" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_farm zstandard_farm zgrief_farm" +} +{ +"targetname" "zone_farm_house_spawners" +"script_noteworthy" "brutus_location" +"origin" "8078.18 -6518.55 245.125" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_farm zstandard_farm zgrief_farm" +} +{ +"targetname" "zone_farm_house_spawners" +"script_noteworthy" "brutus_location" +"origin" "7929.28 -6417.91 117.125" +"classname" "script_struct" +"angles" "0 0 0" +"script_string" "zclassic_farm zstandard_farm zgrief_farm" +} 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 7e96000..f40ca88 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_avogadro.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_avogadro.gsc @@ -15,7 +15,7 @@ precache() { - precacheshellshock( "electrocution" ); + sys::precacheshellshock( "electrocution" ); /# precachemodel( "fx_axis_createfx" ); #/ @@ -24,15 +24,15 @@ precache() precache_fx() { - level._effect["avogadro_bolt"] = loadfx( "maps/zombie/fx_zombie_tesla_bolt_secondary" ); - level._effect["avogadro_ascend"] = loadfx( "maps/zombie/fx_zmb_avog_ascend" ); - level._effect["avogadro_ascend_aerial"] = loadfx( "maps/zombie/fx_zmb_avog_ascend_aerial" ); - level._effect["avogadro_descend"] = loadfx( "maps/zombie/fx_zmb_avog_descend" ); - level._effect["avogadro_phase_trail"] = loadfx( "maps/zombie/fx_zmb_avog_phase_trail" ); - level._effect["avogadro_phasing"] = loadfx( "maps/zombie/fx_zmb_avog_phasing" ); - level._effect["avogadro_health_full"] = loadfx( "maps/zombie/fx_zmb_avog_health_full" ); - level._effect["avogadro_health_half"] = loadfx( "maps/zombie/fx_zmb_avog_health_half" ); - level._effect["avogadro_health_low"] = loadfx( "maps/zombie/fx_zmb_avog_health_low" ); + level._effect["avogadro_bolt"] = sys::loadfx( "maps/zombie/fx_zombie_tesla_bolt_secondary" ); + level._effect["avogadro_ascend"] = sys::loadfx( "maps/zombie/fx_zmb_avog_ascend" ); + level._effect["avogadro_ascend_aerial"] = sys::loadfx( "maps/zombie/fx_zmb_avog_ascend_aerial" ); + level._effect["avogadro_descend"] = sys::loadfx( "maps/zombie/fx_zmb_avog_descend" ); + level._effect["avogadro_phase_trail"] = sys::loadfx( "maps/zombie/fx_zmb_avog_phase_trail" ); + level._effect["avogadro_phasing"] = sys::loadfx( "maps/zombie/fx_zmb_avog_phasing" ); + level._effect["avogadro_health_full"] = sys::loadfx( "maps/zombie/fx_zmb_avog_health_full" ); + level._effect["avogadro_health_half"] = sys::loadfx( "maps/zombie/fx_zmb_avog_health_half" ); + level._effect["avogadro_health_low"] = sys::loadfx( "maps/zombie/fx_zmb_avog_health_low" ); } main() @@ -44,7 +44,7 @@ init() { init_phase_anims(); init_regions(); - level.avogadro_spawners = getentarray( "avogadro_zombie_spawner", "script_noteworthy" ); + level.avogadro_spawners = sys::getentarray( "avogadro_zombie_spawner", "script_noteworthy" ); array_thread( level.avogadro_spawners, ::add_spawn_function, maps\mp\zombies\_zm_ai_avogadro::avogadro_prespawn ); level.zombie_ai_limit_avogadro = 1; @@ -59,25 +59,25 @@ init() init_phase_anims() { level.avogadro_phase = []; - level.avogadro_phase[0] = spawnstruct(); + level.avogadro_phase[0] = sys::spawnstruct(); level.avogadro_phase[0].animstate = "zm_teleport_forward"; - level.avogadro_phase[1] = spawnstruct(); + level.avogadro_phase[1] = sys::spawnstruct(); level.avogadro_phase[1].animstate = "zm_teleport_left"; - level.avogadro_phase[2] = spawnstruct(); + level.avogadro_phase[2] = sys::spawnstruct(); level.avogadro_phase[2].animstate = "zm_teleport_right"; - level.avogadro_phase[3] = spawnstruct(); + level.avogadro_phase[3] = sys::spawnstruct(); level.avogadro_phase[3].animstate = "zm_teleport_back"; } init_regions() { level.transit_region = []; - level.transit_region["bus"] = spawnstruct(); - level.transit_region["diner"] = spawnstruct(); - level.transit_region["farm"] = spawnstruct(); - level.transit_region["cornfield"] = spawnstruct(); - level.transit_region["power"] = spawnstruct(); - level.transit_region["town"] = spawnstruct(); + level.transit_region["bus"] = sys::spawnstruct(); + level.transit_region["diner"] = sys::spawnstruct(); + level.transit_region["farm"] = sys::spawnstruct(); + level.transit_region["cornfield"] = sys::spawnstruct(); + level.transit_region["power"] = sys::spawnstruct(); + level.transit_region["town"] = sys::spawnstruct(); level.transit_region["bus"].zones = []; level.transit_region["bus"].zones[0] = "zone_pri"; level.transit_region["bus"].zones[1] = "zone_station_ext"; @@ -148,7 +148,7 @@ avogadro_prespawn() self.ignore_solo_last_stand = 1; self.ignore_riotshield = 1; self.allowpain = 0; - self.core_model = getent( "core_model", "targetname" ); + self.core_model = sys::getent( "core_model", "targetname" ); if ( isdefined( self.core_model ) ) { @@ -159,20 +159,20 @@ avogadro_prespawn() } self set_zombie_run_cycle( "walk" ); - self animmode( "normal" ); - self orientmode( "face enemy" ); + self sys::animmode( "normal" ); + self sys::orientmode( "face enemy" ); self maps\mp\zombies\_zm_spawner::zombie_setup_attack_properties(); self maps\mp\zombies\_zm_spawner::zombie_complete_emerging_into_playable_area(); - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); self.zmb_vocals_attack = "zmb_vocals_zombie_attack"; self.meleedamage = 5; self.actor_damage_func = ::avogadro_damage_func; self.non_attacker_func = ::avogadro_non_attacker; - self.anchor = spawn( "script_origin", self.origin ); + self.anchor = sys::spawn( "script_origin", self.origin ); self.anchor.angles = self.angles; self.phase_time = 0; - self.audio_loop_ent = spawn( "script_origin", self.origin ); - self.audio_loop_ent linkto( self, "tag_origin" ); + self.audio_loop_ent = sys::spawn( "script_origin", self.origin ); + self.audio_loop_ent sys::linkto( self, "tag_origin" ); self.hit_by_melee = 0; self.damage_absorbed = 0; self.ignoreall = 1; @@ -183,7 +183,7 @@ avogadro_prespawn() self.jetgun_drag_func = ::drag_avogadro; self.depot_lava_pit = ::busplowkillzombie; self.busplowkillzombie = ::busplowkillzombie; - self.region_timer = gettime() + 500; + self.region_timer = sys::gettime() + 500; self.shield = 1; } @@ -198,7 +198,7 @@ avogadro_spawning_logic() if ( getdvarint( #"_id_FA81816F" ) == 2 || getdvarint( #"_id_FA81816F" ) >= 4 ) return; #/ - spawner = getent( "avogadro_zombie_spawner", "script_noteworthy" ); + spawner = sys::getent( "avogadro_zombie_spawner", "script_noteworthy" ); if ( !isdefined( spawner ) ) { @@ -219,10 +219,10 @@ avogadro_spawning_logic() } ai waittill( "zombie_init_done" ); - core_mover = getent( "core_mover", "targetname" ); - ai linkto( core_mover, "tag_origin" ); + core_mover = sys::getent( "core_mover", "targetname" ); + ai sys::linkto( core_mover, "tag_origin" ); ai.state = "chamber"; - ai setanimstatefromasd( "zm_chamber_idle" ); + ai sys::setanimstatefromasd( "zm_chamber_idle" ); ai thread avogadro_think(); ai thread avogadro_bus_watcher(); } @@ -268,7 +268,7 @@ avogadro_think() avogadro_bus_watcher() { - plow_trigger = getent( "trigger_plow", "targetname" ); + plow_trigger = sys::getent( "trigger_plow", "targetname" ); while ( true ) { @@ -278,11 +278,11 @@ avogadro_bus_watcher() continue; } - if ( isdefined( level.the_bus ) && ( isdefined( level.the_bus.ismoving ) && level.the_bus.ismoving ) && level.the_bus getspeedmph() > 5 ) + if ( isdefined( level.the_bus ) && ( isdefined( level.the_bus.ismoving ) && level.the_bus.ismoving ) && level.the_bus sys::getspeedmph() > 5 ) { - if ( self istouching( plow_trigger ) ) + if ( self sys::istouching( plow_trigger ) ) { - phase_node = getnode( "back_door_node", "targetname" ); + phase_node = sys::getnode( "back_door_node", "targetname" ); self avogadro_teleport( phase_node.origin, phase_node.angles, 1 ); } } @@ -296,17 +296,17 @@ busplowkillzombie() if ( isdefined( self.is_teleport ) && self.is_teleport ) return; - phase_node = getnode( "back_door_node", "targetname" ); + phase_node = sys::getnode( "back_door_node", "targetname" ); self avogadro_teleport( phase_node.origin, phase_node.angles, 1 ); } phase_from_bus() { - self ghost(); - self notsolid(); + self sys::ghost(); + self sys::notsolid(); wait 3; - self show(); - self solid(); + self sys::show(); + self sys::solid(); self notify( "phase_from_bus_done" ); } @@ -316,28 +316,28 @@ wait_idle() if ( getdvarint( #"_id_CFA4158E" ) ) { self.state = "wait_for_player"; - self unlink(); + self sys::unlink(); } #/ if ( flag( "power_on" ) ) { self.state = "wait_for_player"; - self unlink(); + self sys::unlink(); } } player_look() { - players = get_players(); + players = sys::getplayers(); foreach ( player in players ) { vec_enemy = self.origin - player.origin; vec_facing = anglestoforward( player.angles ); - norm_facing = vectornormalize( vec_facing ); - norm_enemy = vectornormalize( vec_enemy ); - dot = vectordot( norm_facing, norm_enemy ); + norm_facing = sys::vectornormalize( vec_facing ); + norm_enemy = sys::vectornormalize( vec_enemy ); + dot = sys::vectordot( norm_facing, norm_enemy ); if ( dot > 0.707 ) { @@ -397,11 +397,11 @@ chase_bus() if ( !isdefined( self.chase_bus_entry ) ) { self.chase_bus_entry = opening; - dist_curr = distance2dsquared( self.origin, level.the_bus gettagorigin( self.chase_bus_entry.tagname ) ); + dist_curr = sys::distance2dsquared( self.origin, level.the_bus sys::gettagorigin( self.chase_bus_entry.tagname ) ); continue; } - dist_next = distance2dsquared( self.origin, level.the_bus gettagorigin( opening.tagname ) ); + dist_next = sys::distance2dsquared( self.origin, level.the_bus sys::gettagorigin( opening.tagname ) ); if ( dist_next < dist_curr ) { @@ -424,26 +424,26 @@ chase_bus_update() return; } - tag_pos = level.the_bus gettagorigin( self.chase_bus_entry.tagname ); - self setgoalpos( tag_pos ); + tag_pos = level.the_bus sys::gettagorigin( self.chase_bus_entry.tagname ); + self sys::setgoalpos( tag_pos ); - if ( bus getspeedmph() > 5 ) + if ( bus sys::getspeedmph() > 5 ) { self.phase_state = level.avogadro_phase[0].animstate; self.phase_substate = 0; - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); self.ignoreall = 1; self thread phase_failsafe(); - self animcustom( ::play_phase_anim ); + self sys::animcustom( ::play_phase_anim ); /# avogadro_print( "long phase after bus" ); #/ self waittill( "phase_anim_done" ); self.ignoreall = 0; - self setfreecameralockonallowed( 1 ); + self sys::setfreecameralockonallowed( 1 ); } - dist_sq = distancesquared( self.origin, tag_pos ); + dist_sq = sys::distancesquared( self.origin, tag_pos ); if ( dist_sq < 14400 ) self bus_attack(); @@ -454,16 +454,16 @@ bus_attack() self endon( "stunned" ); self endon( "stop_bus_attack" ); bus_attack_struct = []; - bus_attack_struct[0] = spawnstruct(); + bus_attack_struct[0] = sys::spawnstruct(); bus_attack_struct[0].window_tag = "window_left_rear_jnt"; bus_attack_struct[0].substate = "bus_attack_back"; - bus_attack_struct[1] = spawnstruct(); + bus_attack_struct[1] = sys::spawnstruct(); bus_attack_struct[1].window_tag = "window_right_front_jnt"; bus_attack_struct[1].substate = "bus_attack_front"; - bus_attack_struct[2] = spawnstruct(); + bus_attack_struct[2] = sys::spawnstruct(); bus_attack_struct[2].window_tag = "window_left_2_jnt"; bus_attack_struct[2].substate = "bus_attack_left"; - bus_attack_struct[3] = spawnstruct(); + bus_attack_struct[3] = sys::spawnstruct(); bus_attack_struct[3].window_tag = "window_right_3_jnt"; bus_attack_struct[3].substate = "bus_attack_right"; random_attack_struct = array_randomize( bus_attack_struct ); @@ -493,12 +493,12 @@ bus_attack() if ( !self.bus_disabled ) { self.shield = 1; - self unlink(); + self sys::unlink(); self avogadro_exit( "bus" ); } else { - func = getFunction( "maps/mp/zm_transit_bus", "bus_disabled_by_emp" ); + func = pluto_sys::getfunction( "maps/mp/zm_transit_bus", "bus_disabled_by_emp" ); if ( isDefined( func ) ) { level.the_bus thread [[ func ]]( 30 ); @@ -517,11 +517,11 @@ attach_to_bus() /# avogadro_print( "stay_attached " + self.bus_attack_struct.substate ); #/ - origin = level.the_bus gettagorigin( self.bus_attack_struct.window_tag ); - angles = level.the_bus gettagangles( self.bus_attack_struct.window_tag ); - self show(); + origin = level.the_bus sys::gettagorigin( self.bus_attack_struct.window_tag ); + angles = level.the_bus sys::gettagangles( self.bus_attack_struct.window_tag ); + self sys::show(); self.shield = 0; - self animscripted( origin, angles, "zm_bus_attack", self.bus_attack_struct.substate ); + self sys::animscripted( origin, angles, "zm_bus_attack", self.bus_attack_struct.substate ); self.bus_shock_time = 0; self.state = "stay_attached"; return; @@ -540,7 +540,7 @@ attach_update() if ( self.bus_shock_time >= 2 ) { self.bus_shock_time = 0; - players = get_players(); + players = sys::getplayers(); foreach ( player in players ) { @@ -561,11 +561,11 @@ attach_update() detach_from_bus() { - self unlink(); + self sys::unlink(); /# avogadro_print( "unlinking from bus window" ); #/ - bus_forward = vectornormalize( anglestoforward( level.the_bus.angles ) ); + bus_forward = sys::vectornormalize( anglestoforward( level.the_bus.angles ) ); unlink_pos = level.the_bus.origin + vectorscale( bus_forward, -144 ); unlink_pos = groundpos_ignore_water_new( unlink_pos + vectorscale( ( 0, 0, 1 ), 60.0 ) ); self.shield = 1; @@ -579,28 +579,28 @@ bus_disable_show( time ) self endon( "death" ); wait( time ); self.shield = 0; - self show(); + self sys::show(); } bus_disable( bus_attack_struct ) { self endon( "melee_pain" ); self.bus_attack_struct = bus_attack_struct; - origin = level.the_bus gettagorigin( bus_attack_struct.window_tag ); - angles = level.the_bus gettagangles( bus_attack_struct.window_tag ); + origin = level.the_bus sys::gettagorigin( bus_attack_struct.window_tag ); + angles = level.the_bus sys::gettagangles( bus_attack_struct.window_tag ); self avogadro_teleport( origin, angles, 0.5, bus_attack_struct.window_tag ); - self linkto( level.the_bus, bus_attack_struct.window_tag ); + self sys::linkto( level.the_bus, bus_attack_struct.window_tag ); bus_disable_show( 0.1 ); - origin = level.the_bus gettagorigin( bus_attack_struct.window_tag ); - angles = level.the_bus gettagangles( bus_attack_struct.window_tag ); - self animscripted( origin, angles, "zm_bus_attack", bus_attack_struct.substate ); + origin = level.the_bus sys::gettagorigin( bus_attack_struct.window_tag ); + angles = level.the_bus sys::gettagangles( bus_attack_struct.window_tag ); + self sys::animscripted( origin, angles, "zm_bus_attack", bus_attack_struct.substate ); /# avogadro_print( "bus_disable " + bus_attack_struct.substate ); #/ success = 0; self.mod_melee = 0; self.bus_shock_time = 0; - func = getFunction( "maps/mp/zm_transit_bus", "do_player_bus_zombie_vox" ); + func = pluto_sys::getfunction( "maps/mp/zm_transit_bus", "do_player_bus_zombie_vox" ); if ( isDefined( func ) ) { level thread [[ func ]]( "avogadro_onbus", 45 ); @@ -614,7 +614,7 @@ bus_disable( bus_attack_struct ) if ( self.bus_attack_time >= 20 ) { self.bus_disabled = 1; - func = getFunction( "maps/mp/zm_transit_bus", "do_player_bus_zombie_vox" ); + func = pluto_sys::getfunction( "maps/mp/zm_transit_bus", "do_player_bus_zombie_vox" ); level thread [[ func ]]( "avogadro_stopbus", 45 ); break; } @@ -624,7 +624,7 @@ bus_disable( bus_attack_struct ) if ( self.bus_shock_time >= 2 ) { self.bus_shock_time = 0; - players = get_players(); + players = sys::getplayers(); foreach ( player in players ) { @@ -651,13 +651,13 @@ avogadro_exit( from ) self.state = "exiting"; self notify( "stop_find_flesh" ); self notify( "zombie_acquire_enemy" ); - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); self.audio_loop_ent stoploopsound( 0.5 ); self notify( "stop_health" ); if ( isdefined( self.health_fx ) ) { - self.health_fx unlink(); + self.health_fx sys::unlink(); self.health_fx delete(); } @@ -667,23 +667,23 @@ avogadro_exit( from ) { self playsound( "zmb_avogadro_death_short" ); playfx( level._effect["avogadro_ascend_aerial"], self.origin ); - self animscripted( self.origin, self.angles, "zm_bus_win" ); + 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" ); playfx( level._effect["avogadro_ascend"], self.origin ); - self animscripted( self.origin, self.angles, "zm_chamber_out" ); + self sys::animscripted( self.origin, self.angles, "zm_chamber_out" ); wait 0.4; - self ghost(); + self sys::ghost(); stop_exploder( 500 ); } else { self playsound( "zmb_avogadro_death" ); playfx( level._effect["avogadro_ascend"], self.origin ); - self animscripted( self.origin, self.angles, "zm_exit" ); + self sys::animscripted( self.origin, self.angles, "zm_exit" ); maps\mp\animscripts\zm_shared::donotetracks( "exit_anim" ); } } @@ -691,18 +691,18 @@ avogadro_exit( from ) { self playsound( "zmb_avogadro_death" ); playfx( level._effect["avogadro_ascend"], self.origin ); - self animscripted( self.origin, self.angles, "zm_exit" ); + self sys::animscripted( self.origin, self.angles, "zm_exit" ); maps\mp\animscripts\zm_shared::donotetracks( "exit_anim" ); } if ( !isdefined( from ) || from != "chamber" ) level thread do_avogadro_flee_vo( self ); - self ghost(); + self sys::ghost(); self.hit_by_melee = 0; self.anchor.origin = self.origin; self.anchor.angles = self.angles; - self linkto( self.anchor ); + self sys::linkto( self.anchor ); if ( isdefined( from ) && from == "exit_idle" ) self.return_round = level.round_number + 1; @@ -729,15 +729,15 @@ cloud_update_fx() if ( !isdefined( self.sndent ) ) { - self.sndent = spawn( "script_origin", ( 0, 0, 0 ) ); + self.sndent = sys::spawn( "script_origin", ( 0, 0, 0 ) ); self.sndent playloopsound( "zmb_avogadro_thunder_overhead" ); } - cloud_time = gettime(); + cloud_time = sys::gettime(); for ( vo_counter = 0; 1; vo_counter++ ) { - if ( gettime() >= cloud_time ) + if ( sys::gettime() >= cloud_time ) { if ( isdefined( self.current_region ) ) { @@ -763,7 +763,7 @@ cloud_update_fx() exploder_num = level.transit_region[region_str].exploder; exploder( exploder_num ); self.sndent moveto( level.transit_region[region_str].sndorigin, 3 ); - cloud_time = gettime() + 30000; + cloud_time = sys::gettime() + 30000; } if ( vo_counter > 50 ) @@ -824,17 +824,17 @@ cloud_update() self thread avogadro_update_health(); playsoundatposition( "zmb_avogadro_spawn_3d", new_origin ); self.audio_loop_ent playloopsound( "zmb_avogadro_loop", 0.5 ); - self unlink(); + self sys::unlink(); ground_pos = groundpos_ignore_water_new( new_origin + vectorscale( ( 0, 0, 1 ), 60.0 ) ); playfx( level._effect["avogadro_descend"], ground_pos ); - self animscripted( ground_pos, self.anchor.angles, "zm_arrival" ); + self sys::animscripted( ground_pos, self.anchor.angles, "zm_arrival" ); maps\mp\animscripts\zm_shared::donotetracks( "arrival_anim" ); - self setfreecameralockonallowed( 1 ); - time_to_leave = gettime() + 30000; + self sys::setfreecameralockonallowed( 1 ); + time_to_leave = sys::gettime() + 30000; while ( true ) { - if ( gettime() > time_to_leave ) + if ( sys::gettime() > time_to_leave ) { /# avogadro_print( "enemy never showed - leaving" ); @@ -875,7 +875,7 @@ enemy_in_region() get_player_in_region() { - players = get_players(); + players = sys::getplayers(); players = array_randomize( players ); zones = level.transit_region[self.current_region].zones; @@ -936,17 +936,17 @@ cloud_find_spawn() avogadro_reveal( show_time ) { self endon( "death" ); - self show(); + self sys::show(); wait( show_time ); - self ghost(); + self sys::ghost(); } avogadro_teleport( dest_pos, dest_angles, lerp_time, tag_override ) { self.is_teleport = 1; - self.phase_fx = spawn( "script_model", self.origin ); + self.phase_fx = sys::spawn( "script_model", self.origin ); self.phase_fx setmodel( "tag_origin" ); - self.phase_fx linkto( self ); + self.phase_fx sys::linkto( self ); wait 0.1; playfxontag( level._effect["avogadro_phase_trail"], self.phase_fx, "tag_origin" ); playfx( level._effect["avogadro_phasing"], self.origin ); @@ -954,18 +954,18 @@ avogadro_teleport( dest_pos, dest_angles, lerp_time, tag_override ) self playsound( "zmb_avogadro_warp_out" ); self.anchor.origin = self.origin; self.anchor.angles = self.angles; - self linkto( self.anchor ); + self sys::linkto( self.anchor ); self.anchor moveto( dest_pos, lerp_time ); self.anchor waittill( "movedone" ); self.anchor.origin = dest_pos; self.anchor.angles = dest_angles; - self unlink(); + self sys::unlink(); wait 0.1; if ( isdefined( tag_override ) ) { - dest_pos = level.the_bus gettagorigin( tag_override ); - dest_angles = level.the_bus gettagangles( tag_override ); + dest_pos = level.the_bus sys::gettagorigin( tag_override ); + dest_angles = level.the_bus sys::gettagangles( tag_override ); } self forceteleport( dest_pos, dest_angles ); @@ -995,9 +995,9 @@ check_range_attack() if ( dist_sq > 14400 && dist_sq < 360000 ) { vec_facing = anglestoforward( self.angles ); - norm_facing = vectornormalize( vec_facing ); - norm_enemy = vectornormalize( vec_enemy ); - dot = vectordot( norm_facing, norm_enemy ); + norm_facing = sys::vectornormalize( vec_facing ); + norm_enemy = sys::vectornormalize( vec_enemy ); + dot = sys::vectordot( norm_facing, norm_enemy ); if ( dot > 0.99 ) { @@ -1022,16 +1022,16 @@ range_attack() if ( isdefined( enemy ) ) { self thread shoot_bolt_wait( "ranged_attack", enemy ); - self show(); - self animscripted( self.origin, self.angles, "zm_ranged_attack_in" ); + self sys::show(); + self sys::animscripted( self.origin, self.angles, "zm_ranged_attack_in" ); maps\mp\animscripts\zm_shared::donotetracks( "ranged_attack" ); - self animscripted( self.origin, self.angles, "zm_ranged_attack_loop" ); + self sys::animscripted( self.origin, self.angles, "zm_ranged_attack_loop" ); maps\mp\animscripts\zm_shared::donotetracks( "ranged_attack" ); - self animscripted( self.origin, self.angles, "zm_ranged_attack_out" ); + self sys::animscripted( self.origin, self.angles, "zm_ranged_attack_out" ); maps\mp\animscripts\zm_shared::donotetracks( "ranged_attack" ); self.shield = 1; self thread avogadro_update_health(); - self ghost(); + self sys::ghost(); } } @@ -1044,7 +1044,7 @@ shoot_bolt_wait( animname, enemy ) if ( isdefined( self.health_fx ) ) { - self.health_fx unlink(); + self.health_fx sys::unlink(); self.health_fx delete(); } @@ -1053,9 +1053,9 @@ shoot_bolt_wait( animname, enemy ) shoot_bolt( enemy ) { - source_pos = self gettagorigin( "tag_weapon_right" ); + source_pos = self sys::gettagorigin( "tag_weapon_right" ); target_pos = enemy geteye(); - bolt = spawn( "script_model", source_pos ); + bolt = sys::spawn( "script_model", source_pos ); bolt setmodel( "tag_origin" ); wait 0.1; self playsound( "zmb_avogadro_attack" ); @@ -1072,7 +1072,7 @@ check_bolt_impact( enemy ) if ( is_player_valid( enemy ) ) { enemy_eye_pos = enemy geteye(); - dist_sq = distancesquared( self.origin, enemy_eye_pos ); + dist_sq = sys::distancesquared( self.origin, enemy_eye_pos ); if ( dist_sq < 4096 ) { @@ -1092,39 +1092,39 @@ check_bolt_impact( enemy ) region_empty() { - if ( gettime() >= self.region_timer ) + if ( sys::gettime() >= self.region_timer ) { player = self get_player_in_region(); if ( isdefined( player ) ) { - self.region_timer = gettime() + 500; + self.region_timer = sys::gettime() + 500; return false; } /# debug_dist_sq = 0; #/ - players = getplayers(); + players = sys::getplayers(); foreach ( player in players ) { if ( player maps\mp\zombies\_zm_laststand::player_is_in_laststand() ) continue; - dist_sq = distancesquared( self.origin, player.origin ); + dist_sq = sys::distancesquared( self.origin, player.origin ); /# debug_dist_sq = distance( self.origin, player.origin ); #/ if ( dist_sq < 9000000 ) { - self.region_timer = gettime() + 500; + self.region_timer = sys::gettime() + 500; return false; } } - self.region_timer = gettime() + 500; + self.region_timer = sys::gettime() + 500; /# avogadro_print( "no one left to kill " + debug_dist_sq ); #/ @@ -1148,11 +1148,11 @@ check_phase() return false; #/ - if ( gettime() > self.phase_time ) + if ( sys::gettime() > self.phase_time ) { if ( isdefined( self.is_traversing ) && self.is_traversing ) { - self.phase_time = gettime() + 2000; + self.phase_time = sys::gettime() + 2000; return false; } @@ -1173,13 +1173,13 @@ do_phase() self.state = "phasing"; self notify( "stop_find_flesh" ); self notify( "zombie_acquire_enemy" ); - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); self.ignoreall = 1; self thread phase_failsafe(); - self animcustom( ::play_phase_anim ); + self sys::animcustom( ::play_phase_anim ); self waittill( "phase_anim_done" ); self.ignoreall = 0; - self setfreecameralockonallowed( 1 ); + self sys::setfreecameralockonallowed( 1 ); self.state = "idle"; } @@ -1187,23 +1187,23 @@ play_phase_anim() { self endon( "death" ); self endon( "phase_anim_done" ); - self.phase_fx = spawn( "script_model", self.origin ); + self.phase_fx = sys::spawn( "script_model", self.origin ); self.phase_fx setmodel( "tag_origin" ); - self.phase_fx linkto( self ); + self.phase_fx sys::linkto( self ); wait 0.05; 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 orientmode( "face enemy" ); - self setanimstatefromasd( self.phase_state, self.phase_substate ); + self sys::orientmode( "face enemy" ); + self sys::setanimstatefromasd( self.phase_state, self.phase_substate ); maps\mp\animscripts\zm_shared::donotetracks( "teleport_anim" ); self.phase_fx delete(); playfx( level._effect["avogadro_phasing"], self.origin ); self avogadro_reveal( 0.1 ); - self orientmode( "face default" ); + self sys::orientmode( "face default" ); self playsound( "zmb_avogadro_warp_in" ); - self.phase_time = gettime() + 2000; + self.phase_time = sys::gettime() + 2000; self notify( "phase_anim_done" ); } @@ -1223,9 +1223,9 @@ phase_failsafe() playfx( level._effect["avogadro_phasing"], self.origin ); self avogadro_reveal( 0.1 ); - self orientmode( "face default" ); + self sys::orientmode( "face default" ); self playsound( "zmb_avogadro_warp_in" ); - self.phase_time = gettime() + 2000; + self.phase_time = sys::gettime() + 2000; self notify( "phase_anim_done" ); } } @@ -1281,17 +1281,17 @@ avogadro_pain( einflictor ) else animstate = "zm_bus_pain"; - origin = level.the_bus gettagorigin( tag ); - angles = level.the_bus gettagangles( tag ); + origin = level.the_bus sys::gettagorigin( tag ); + angles = level.the_bus sys::gettagangles( tag ); } if ( self.hit_by_melee < 4 ) { self thread avogadro_update_health(); - self animscripted( origin, angles, animstate, substate ); + self sys::animscripted( origin, angles, animstate, substate ); maps\mp\animscripts\zm_shared::donotetracks( "pain_anim" ); - self ghost(); - self.phase_time = gettime() - 1; + self sys::ghost(); + self.phase_time = sys::gettime() - 1; if ( self.state == "stay_attached" ) self attach_to_bus(); @@ -1312,22 +1312,22 @@ avogadro_pain( einflictor ) /# avogadro_print( "come back on power" ); #/ - self show(); + self sys::show(); self.in_pain = 0; /# avogadro_print( "pain cleared from zone_prr" ); #/ self notify( "stop_pain_watcher" ); self avogadro_teleport( self.core_model.origin, self.core_model.angles, 1 ); - core_mover = getent( "core_mover", "targetname" ); - self linkto( core_mover, "tag_origin" ); + core_mover = sys::getent( "core_mover", "targetname" ); + self sys::linkto( core_mover, "tag_origin" ); while ( flag( "power_on" ) ) wait 0.1; - self show(); + self sys::show(); self.state = "chamber"; - self setanimstatefromasd( "zm_chamber_idle" ); + self sys::setanimstatefromasd( "zm_chamber_idle" ); } else { @@ -1341,7 +1341,7 @@ avogadro_pain( einflictor ) if ( !self maps\mp\zombies\_zm_zonemgr::entity_in_zone( "zone_prr" ) ) avogadro_print( "no zone" ); #/ - self show(); + self sys::show(); self avogadro_exit(); } } @@ -1372,12 +1372,12 @@ avogadro_update_health_fx() if ( !isdefined( self.health_fx ) ) { - tag_origin = self gettagorigin( "J_SpineUpper" ); - tag_angles = self gettagangles( "J_SpineUpper" ); - self.health_fx = spawn( "script_model", tag_origin ); + tag_origin = self sys::gettagorigin( "J_SpineUpper" ); + tag_angles = self sys::gettagangles( "J_SpineUpper" ); + self.health_fx = sys::spawn( "script_model", tag_origin ); self.health_fx.angles = tag_angles; self.health_fx setmodel( "tag_origin" ); - self.health_fx linkto( self ); + self.health_fx sys::linkto( self ); wait 0.1; } @@ -1405,7 +1405,7 @@ avogadro_damage_func( einflictor, eattacker, idamage, idflags, smeansofdeath, sw if ( self.shield ) { - einflictor.avogadro_melee_time = gettime(); + einflictor.avogadro_melee_time = sys::gettime(); maps\mp\_visionset_mgr::vsmgr_activate( "overlay", "zm_ai_avogadro_electrified", einflictor, 0.25, 1 ); einflictor shellshock( "electrocution", 0.25 ); einflictor notify( "avogadro_damage_taken" ); @@ -1414,7 +1414,7 @@ avogadro_damage_func( einflictor, eattacker, idamage, idflags, smeansofdeath, sw if ( sweapon == "riotshield_zm" ) { shield_damage = level.zombie_vars["riotshield_fling_damage_shield"]; - func = getFunction( "maps/mp/zombies/_zm_weap_riotshield", "player_damage_shield" ); + func = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_riotshield", "player_damage_shield" ); if ( isDefined( func ) ) { einflictor [[ func ]]( shield_damage, 0 ); @@ -1528,7 +1528,7 @@ avogadro_debug_axis() { if ( !isdefined( self.debug_axis ) ) { - self.debug_axis = spawn( "script_model", self.origin ); + self.debug_axis = sys::spawn( "script_model", self.origin ); self.debug_axis setmodel( "fx_axis_createfx" ); } else @@ -1567,11 +1567,11 @@ avogadro_print( str ) do_avogadro_flee_vo( avogadro ) { - players = get_players(); + players = sys::getplayers(); foreach ( player in players ) { - if ( distancesquared( player.origin, avogadro.origin ) < 250000 ) + if ( sys::distancesquared( player.origin, avogadro.origin ) < 250000 ) { player thread do_player_general_vox( "general", "avogadro_flee", 30, 45 ); return; @@ -1585,7 +1585,7 @@ avogadro_storm_vox() return; level.checking_avogadro_storm_vox = 1; - players = get_players(); + players = sys::getplayers(); players = array_randomize( players ); foreach ( player in players ) 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 a1e000e..ce87b7a 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_brutus.gsc @@ -33,9 +33,9 @@ precache() level._effect["brutus_lockdown_sm"] = sys::loadfx( "maps/zombie_alcatraz/fx_alcatraz_perk_s_lock" ); level._effect["brutus_lockdown_lg"] = sys::loadfx( "maps/zombie_alcatraz/fx_alcatraz_w_bench_lock" ); precachemodel( "c_zom_cellbreaker_helmet" ); - precacheshellshock( "mp_radiation_high" ); - precacheshellshock( "mp_radiation_med" ); - precacheshellshock( "mp_radiation_low" ); + sys::precacheshellshock( "mp_radiation_high" ); + sys::precacheshellshock( "mp_radiation_med" ); + sys::precacheshellshock( "mp_radiation_low" ); precachestring( &"ZOMBIE_LOCKED_COST" ); precachestring( &"ZOMBIE_LOCKED_COST_2000" ); precachestring( &"ZOMBIE_LOCKED_COST_4000" ); @@ -62,9 +62,9 @@ main() level._effect["brutus_lockdown_sm"] = sys::loadfx( "maps/zombie_alcatraz/fx_alcatraz_perk_s_lock" ); level._effect["brutus_lockdown_lg"] = sys::loadfx( "maps/zombie_alcatraz/fx_alcatraz_w_bench_lock" ); precachemodel( "c_zom_cellbreaker_helmet" ); - precacheshellshock( "mp_radiation_high" ); - precacheshellshock( "mp_radiation_med" ); - precacheshellshock( "mp_radiation_low" ); + sys::precacheshellshock( "mp_radiation_high" ); + sys::precacheshellshock( "mp_radiation_med" ); + sys::precacheshellshock( "mp_radiation_low" ); precachestring( &"ZOMBIE_LOCKED_COST" ); precachestring( &"ZOMBIE_LOCKED_COST_2000" ); precachestring( &"ZOMBIE_LOCKED_COST_4000" ); @@ -80,7 +80,7 @@ main() [[ level.custom_brutus_barrier_fx ]](); - level.brutus_spawners = getentarray( "brutus_zombie_spawner", "script_noteworthy" ); + level.brutus_spawners = sys::getentarray( "brutus_zombie_spawner", "script_noteworthy" ); if ( level.brutus_spawners.size == 0 ) return; @@ -156,7 +156,7 @@ main() init() { - level.brutus_spawners = getentarray( "brutus_zombie_spawner", "script_noteworthy" ); + level.brutus_spawners = sys::getentarray( "brutus_zombie_spawner", "script_noteworthy" ); if ( level.brutus_spawners.size == 0 ) return; @@ -233,7 +233,7 @@ init() setup_interaction_matrix() { level.interaction_types = []; - level.interaction_types["magic_box"] = spawnstruct(); + level.interaction_types["magic_box"] = sys::spawnstruct(); level.interaction_types["magic_box"].priority = 0; level.interaction_types["magic_box"].animstate = "zm_lock_magicbox"; level.interaction_types["magic_box"].notify_name = "box_lock_anim"; @@ -246,7 +246,7 @@ setup_interaction_matrix() level.interaction_types["magic_box"].spawn_bias = 1000; level.interaction_types["magic_box"].num_times_to_scale = 1; level.interaction_types["magic_box"].unlock_cost = 2000; - level.interaction_types["perk_machine"] = spawnstruct(); + level.interaction_types["perk_machine"] = sys::spawnstruct(); level.interaction_types["perk_machine"].priority = 1; level.interaction_types["perk_machine"].animstate = "zm_lock_perk_machine"; level.interaction_types["perk_machine"].notify_name = "perk_lock_anim"; @@ -260,7 +260,7 @@ setup_interaction_matrix() level.interaction_types["perk_machine"].unlock_cost = 2000; if ( getDvar( "mapname" ) == "zm_prison" ) { - level.interaction_types["craftable_table"] = spawnstruct(); + level.interaction_types["craftable_table"] = sys::spawnstruct(); level.interaction_types["craftable_table"].priority = 2; level.interaction_types["craftable_table"].animstate = "zm_smash_craftable_table"; level.interaction_types["craftable_table"].notify_name = "table_smash_anim"; @@ -276,7 +276,7 @@ setup_interaction_matrix() level.interaction_types["craftable_table"].interaction_yaw_offset = 270; level.interaction_types["craftable_table"].fx_z_offset = -44; level.interaction_types["craftable_table"].fx_yaw_offset = 270; - level.interaction_types["trap"] = spawnstruct(); + level.interaction_types["trap"] = sys::spawnstruct(); level.interaction_types["trap"].priority = 3; level.interaction_types["trap"].animstate = "zm_smash_trap"; level.interaction_types["trap"].notify_name = "trap_smash_anim"; @@ -287,7 +287,7 @@ setup_interaction_matrix() level.interaction_types["trap"].interact_func = ::trap_smash; level.interaction_types["trap"].spawn_bias = 400; level.interaction_types["trap"].interaction_z_offset = -15; - level.interaction_types["plane_ramp"] = spawnstruct(); + level.interaction_types["plane_ramp"] = sys::spawnstruct(); level.interaction_types["plane_ramp"].priority = 4; level.interaction_types["plane_ramp"].animstate = "zm_lock_plane_ramp"; level.interaction_types["plane_ramp"].notify_name = "plane_lock_anim"; @@ -305,7 +305,7 @@ setup_interaction_matrix() level.interaction_types["plane_ramp"].fx_x_offset = 70; level.interaction_types["plane_ramp"].fx_yaw_offset = 90; } - level.interaction_types["blocker"] = spawnstruct(); + level.interaction_types["blocker"] = sys::spawnstruct(); level.interaction_types["blocker"].priority = 5; level.interaction_types["blocker"].animstate = "zm_smash_blocker"; level.interaction_types["blocker"].notify_name = "board_smash_anim"; @@ -409,10 +409,10 @@ brutus_spawn( starting_health, has_helmet, helmet_hits, explosive_dmg_taken, zon self.zombie_init_done = 1; self notify( "zombie_init_done" ); self.allowpain = 0; - self animmode( "normal" ); - self orientmode( "face enemy" ); + self sys::animmode( "normal" ); + self sys::orientmode( "face enemy" ); self maps\mp\zombies\_zm_spawner::zombie_setup_attack_properties(); - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); level thread maps\mp\zombies\_zm_spawner::zombie_death_event( self ); self thread maps\mp\zombies\_zm_spawner::enemy_death_detection(); @@ -459,7 +459,7 @@ brutus_spawn( starting_health, has_helmet, helmet_hits, explosive_dmg_taken, zon self thread brutus_lockdown_client_effects( 0.5 ); playfx( level._effect["brutus_spawn"], self.origin ); playsoundatposition( "zmb_ai_brutus_spawn", self.origin ); - self animscripted( spawn_pos.origin, spawn_pos.angles, "zm_spawn" ); + self sys::animscripted( spawn_pos.origin, spawn_pos.angles, "zm_spawn" ); self thread maps\mp\animscripts\zm_shared::donotetracks( "spawn_anim" ); self waittillmatch( "spawn_anim", "spawn_complete" ); self.not_interruptable = 0; @@ -473,9 +473,9 @@ brutus_spawn( starting_health, has_helmet, helmet_hits, explosive_dmg_taken, zon brutus_chest_flashlight() { wait 0.1; - self.chest_flashlight = spawn( "script_model", self.origin ); + self.chest_flashlight = sys::spawn( "script_model", self.origin ); self.chest_flashlight setmodel( "tag_origin" ); - self.chest_flashlight linkto( self, "J_spineupper", ( 0, 0, 0 ), ( 0, 0, 0 ) ); + self.chest_flashlight sys::linkto( self, "J_spineupper", ( 0, 0, 0 ), ( 0, 0, 0 ) ); playfxontag( level._effect["brutus_flashlight"], self.chest_flashlight, "tag_origin" ); self waittill( "death" ); @@ -486,23 +486,23 @@ brutus_chest_flashlight() brutus_temp_despawn( brutus, endon_notify, respawn_notify ) { level endon( endon_notify ); - align_struct = spawn( "script_model", brutus.origin ); + align_struct = sys::spawn( "script_model", brutus.origin ); align_struct.angles = brutus.angles; align_struct setmodel( "tag_origin" ); - if ( !level.brutus_in_grief && ( brutus istouching( level.e_gondola.t_ride ) || isdefined( brutus.force_gondola_teleport ) && brutus.force_gondola_teleport ) ) + if ( !level.brutus_in_grief && ( brutus sys::istouching( level.e_gondola.t_ride ) || isdefined( brutus.force_gondola_teleport ) && brutus.force_gondola_teleport ) ) { brutus.force_gondola_teleport = 0; - align_struct linkto( level.e_gondola ); - brutus linkto( align_struct ); + align_struct sys::linkto( level.e_gondola ); + brutus sys::linkto( align_struct ); } brutus.not_interruptable = 1; playfxontag( level._effect["brutus_spawn"], align_struct, "tag_origin" ); - brutus animscripted( brutus.origin, brutus.angles, "zm_taunt" ); + brutus sys::animscripted( brutus.origin, brutus.angles, "zm_taunt" ); brutus maps\mp\animscripts\zm_shared::donotetracks( "taunt_anim" ); brutus.not_interruptable = 0; - brutus ghost(); + brutus sys::ghost(); brutus notify( "brutus_cleanup" ); brutus notify( "brutus_teleporting" ); @@ -564,9 +564,9 @@ snddelayedmusic() if ( !isdefined( self.sndbrutusmusicent ) ) { - sndentorigin = self gettagorigin( "J_spineupper" ); - self.sndbrutusmusicent = spawn( "script_origin", sndentorigin ); - self.sndbrutusmusicent linkto( self, "J_spineupper" ); + sndentorigin = self sys::gettagorigin( "J_spineupper" ); + self.sndbrutusmusicent = sys::spawn( "script_origin", sndentorigin ); + self.sndbrutusmusicent sys::linkto( self, "J_spineupper" ); self.sndbrutusmusicent playloopsound( "mus_event_brutus_loop" ); } @@ -586,7 +586,7 @@ brutus_health_increases() { if ( level.round_number > level.brutus_last_spawn_round ) { - a_players = getplayers(); + a_players = sys::getplayers(); n_player_modifier = 1; if ( a_players.size > 1 ) @@ -804,14 +804,14 @@ brutus_death() { team_points = level.brutus_team_points_for_death; player_points = level.brutus_player_points_for_death; - a_players = getplayers( self.team ); + a_players = sys::getplayers( self.team ); } else { multiplier = maps\mp\zombies\_zm_score::get_points_multiplier( self ); team_points = multiplier * round_up_score( level.brutus_team_points_for_death, 5 ); player_points = multiplier * round_up_score( level.brutus_player_points_for_death, 5 ); - a_players = getplayers(); + a_players = sys::getplayers(); } foreach ( player in a_players ) @@ -880,7 +880,7 @@ brutus_round_tracker() while ( true ) { level waittill( "between_round_over" ); - players = get_players(); + players = sys::getplayers(); if ( level.round_number < 9 && ( isdefined( level.is_forever_solo_game ) && level.is_forever_solo_game ) ) continue; @@ -1061,7 +1061,7 @@ brutus_watch_for_gondola() { level waittill( "gondola_moving" ); - if ( !level.brutus_in_grief && self istouching( level.e_gondola.t_ride ) ) + if ( !level.brutus_in_grief && self sys::istouching( level.e_gondola.t_ride ) ) self.force_gondola_teleport = 1; wait 0.05; @@ -1070,7 +1070,7 @@ brutus_watch_for_gondola() are_all_targets_invalid() { - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { @@ -1103,7 +1103,7 @@ brutus_watch_for_non_afterlife_players() while ( b_all_players_in_afterlife ) { - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { @@ -1120,23 +1120,23 @@ brutus_watch_for_non_afterlife_players() brutus_stuck_teleport() { self endon( "death" ); - align_struct = spawn( "script_model", self.origin ); + align_struct = sys::spawn( "script_model", self.origin ); align_struct.angles = self.angles; align_struct setmodel( "tag_origin" ); - if ( !level.brutus_in_grief && ( self istouching( level.e_gondola.t_ride ) || isdefined( self.force_gondola_teleport ) && self.force_gondola_teleport ) ) + if ( !level.brutus_in_grief && ( self sys::istouching( level.e_gondola.t_ride ) || isdefined( self.force_gondola_teleport ) && self.force_gondola_teleport ) ) { self.force_gondola_teleport = 0; - align_struct linkto( level.e_gondola ); - self linkto( align_struct ); + align_struct sys::linkto( level.e_gondola ); + self sys::linkto( align_struct ); } self.not_interruptable = 1; playfxontag( level._effect["brutus_spawn"], align_struct, "tag_origin" ); - self animscripted( self.origin, self.angles, "zm_taunt" ); + self sys::animscripted( self.origin, self.angles, "zm_taunt" ); self maps\mp\animscripts\zm_shared::donotetracks( "taunt_anim" ); self.not_interruptable = 0; - self ghost(); + self sys::ghost(); self notify( "brutus_cleanup" ); self notify( "brutus_teleporting" ); @@ -1180,7 +1180,7 @@ watch_for_valid_melee() { self waittillmatch( "melee_anim", "end" ); - if ( isdefined( self.favorite_enemy ) && distancesquared( self.origin, self.favorite_enemy.origin ) < 16384 && !( isdefined( self.favorite_enemy.is_on_gondola ) && self.favorite_enemy.is_on_gondola ) ) + if ( isdefined( self.favorite_enemy ) && sys::distancesquared( self.origin, self.favorite_enemy.origin ) < 16384 && !( isdefined( self.favorite_enemy.is_on_gondola ) && self.favorite_enemy.is_on_gondola ) ) self.fail_count = 0; } } @@ -1315,7 +1315,7 @@ brutus_find_flesh() self.priority_item = self get_priority_item_for_brutus( brutus_zone, 1 ); } - if ( isdefined( player ) && distancesquared( self.origin, player.origin ) < level.brutus_aggro_dist_sq && isdefined( player_zone ) && should_brutus_aggro( player_zone, brutus_zone ) ) + if ( isdefined( player ) && sys::distancesquared( self.origin, player.origin ) < level.brutus_aggro_dist_sq && isdefined( player_zone ) && should_brutus_aggro( player_zone, brutus_zone ) ) { self.favorite_enemy = player; self.goal_pos = player.origin; @@ -1327,7 +1327,7 @@ brutus_find_flesh() self.goalradius = 12; self.custom_goalradius_override = 12; self.goal_pos = self get_interact_offset( self.priority_item, self.ai_state ); - self setgoalpos( self.goal_pos ); + self sys::setgoalpos( self.goal_pos ); } else if ( isdefined( player ) ) { @@ -1339,8 +1339,8 @@ brutus_find_flesh() { self.goal_pos = self.origin; self.ai_state = "idle"; - self setanimstatefromasd( "zm_idle" ); - self setgoalpos( self.goal_pos ); + self sys::setanimstatefromasd( "zm_idle" ); + self sys::setgoalpos( self.goal_pos ); } wait 1; @@ -1354,7 +1354,7 @@ trap_damage_callback( trap ) if ( !( isdefined( self.not_interruptable ) && self.not_interruptable ) ) { self.not_interruptable = 1; - self animscripted( self.origin, self.angles, "zm_taunt" ); + self sys::animscripted( self.origin, self.angles, "zm_taunt" ); self maps\mp\animscripts\shared::donotetracks( "taunt_anim" ); if ( trap.targetname == "fan_trap" ) @@ -1458,7 +1458,7 @@ get_priority_item_for_brutus( zone_name, do_secondary_zone_checks ) get_dist_score( object ) { - return distancesquared( self.origin, object.origin ); + return sys::distancesquared( self.origin, object.origin ); } get_trap_score( object ) @@ -1466,7 +1466,7 @@ get_trap_score( object ) if ( sighttracepassed( self.origin + ( 0, 0, 1 ), object.origin, 0, self ) ) return 0; - return distancesquared( self.origin, object.origin ); + return sys::distancesquared( self.origin, object.origin ); } get_magic_boxes( zone_name ) @@ -1486,11 +1486,11 @@ is_magic_box_valid() get_perk_machine_trigger() { if ( self.targetname == "vendingelectric_cherry" ) - perk_machine = getent( "vending_electriccherry", "target" ); + perk_machine = sys::getent( "vending_electriccherry", "target" ); else if ( self.targetname == "vending_deadshot_model" ) - perk_machine = getent( "vending_deadshot", "target" ); + perk_machine = sys::getent( "vending_deadshot", "target" ); else - perk_machine = getent( self.targetname, "target" ); + perk_machine = sys::getent( self.targetname, "target" ); return perk_machine; } @@ -1522,7 +1522,7 @@ get_trigger_for_craftable() return level.a_uts_craftables[i]; } - trig_ent = getent( self.targetname, "target" ); + trig_ent = sys::getent( self.targetname, "target" ); return trig_ent; } @@ -1555,7 +1555,7 @@ get_closest_trap_for_brutus() if ( !level.trap_triggers[i] [[ level.interaction_types["trap"].validity_func ]]() ) continue; - dist = distancesquared( self.origin, level.trap_triggers[i].origin ); + dist = sys::distancesquared( self.origin, level.trap_triggers[i].origin ); if ( dist < best_dist || best_dist < 0 ) { @@ -1621,7 +1621,7 @@ is_blocker_valid() brutus_get_closest_valid_player() { valid_player_found = 0; - players = get_players(); + players = sys::getplayers(); if ( isdefined( level._zombie_using_humangun ) && level._zombie_using_humangun ) players = arraycombine( players, level._zombie_human_array, 0, 0 ); @@ -1663,7 +1663,7 @@ watch_for_player_dist() { player = brutus_get_closest_valid_player(); - if ( !isdefined( player ) || distancesquared( player.origin, self.origin ) > level.brutus_reset_dist_sq ) + if ( !isdefined( player ) || sys::distancesquared( player.origin, self.origin ) > level.brutus_reset_dist_sq ) { self.ai_state = "idle"; self notify( "zombie_acquire_enemy" ); @@ -1699,7 +1699,7 @@ brutus_goal_watcher() angles = angles + ( 0, interaction.interaction_yaw_offset, 0 ); self.not_interruptable = 1; - self animscripted( origin, angles, interaction.animstate ); + self sys::animscripted( origin, angles, interaction.animstate ); self thread maps\mp\animscripts\zm_shared::donotetracks( interaction.notify_name ); self thread snddointeractionvox( interaction.notify_name ); self waittillmatch( interaction.notify_name, interaction.action_notetrack ); @@ -1764,11 +1764,11 @@ brutus_fire_teargas_when_possible() self.not_interruptable = 1; self playsound( "vox_brutus_enraged" ); - self animscripted( self.origin, self.angles, "zm_teargas_attack" ); + 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" ); - v_org_left = self gettagorigin( "TAG_WEAPON_LEFT" ); - v_org_right = self gettagorigin( "TAG_WEAPON_RIGHT" ); + v_org_left = self sys::gettagorigin( "TAG_WEAPON_LEFT" ); + v_org_right = self sys::gettagorigin( "TAG_WEAPON_RIGHT" ); self thread sndplaydelayedsmokeaudio( v_org_left, v_org_right ); self magicgrenadetype( "willy_pete_zm", v_org_left, ( 0, 0, 0 ), 0.4 ); self magicgrenadetype( "willy_pete_zm", v_org_right, ( 0, 0, 0 ), 0.4 ); @@ -1819,7 +1819,7 @@ brutus_remove_helmet( vdir ) self.not_interruptable = 1; self playsound( "vox_brutus_exert" ); - self animscripted( self.origin, self.angles, "zm_pain" ); + self sys::animscripted( self.origin, self.angles, "zm_pain" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim" ); self.not_interruptable = 0; } @@ -1912,7 +1912,7 @@ perk_machine_lock() else lock_fx = level._effect["brutus_lockdown"]; - perk_machine.lock_fx = spawn( "script_model", self.priority_item.origin ); + perk_machine.lock_fx = sys::spawn( "script_model", self.priority_item.origin ); perk_machine.lock_fx.angles = self.priority_item.angles; perk_machine.lock_fx = offset_fx_struct( int_struct, perk_machine.lock_fx ); perk_machine.lock_fx setmodel( "tag_origin" ); @@ -1936,7 +1936,7 @@ craftable_table_lock() craftable_table = table_struct get_trigger_for_craftable(); int_struct = level.interaction_types["craftable_table"]; - craftable_table.lock_fx = spawn( "script_model", table_struct.origin ); + craftable_table.lock_fx = sys::spawn( "script_model", table_struct.origin ); craftable_table.lock_fx.angles = table_struct.angles; craftable_table.lock_fx = offset_fx_struct( int_struct, craftable_table.lock_fx ); craftable_table.lock_fx setmodel( "tag_origin" ); @@ -1987,7 +1987,7 @@ plane_ramp_lock() return; int_struct = level.interaction_types["plane_ramp"]; - plane_ramp.lock_fx = spawn( "script_model", plane_ramp.origin ); + plane_ramp.lock_fx = sys::spawn( "script_model", plane_ramp.origin ); 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" ); @@ -2040,7 +2040,7 @@ blocker_smash() melee_anim_func() { - self.next_leap_time = gettime() + 1500; + self.next_leap_time = sys::gettime() + 1500; } kill_teargas_after_duration( duration ) @@ -2066,7 +2066,7 @@ teargas_player( player ) while ( true ) { - if ( !player istouching( self ) ) + if ( !player sys::istouching( self ) ) clear_timer = clear_timer + 0.1; else clear_timer = 0; @@ -2078,9 +2078,9 @@ teargas_player( player ) } else if ( teargas_timer % 5 == 0 ) { - if ( distancesquared( player.origin, self.origin ) > level.brutus_teargas_radius * 2 / 3 * ( level.brutus_teargas_radius * 2 / 3 ) ) + if ( sys::distancesquared( player.origin, self.origin ) > level.brutus_teargas_radius * 2 / 3 * ( level.brutus_teargas_radius * 2 / 3 ) ) player shellshock( "mp_radiation_low", 1.5 ); - else if ( distancesquared( player.origin, self.origin ) > level.brutus_teargas_radius * 1 / 3 * ( level.brutus_teargas_radius * 1 / 3 ) ) + else if ( sys::distancesquared( player.origin, self.origin ) > level.brutus_teargas_radius * 1 / 3 * ( level.brutus_teargas_radius * 1 / 3 ) ) player shellshock( "mp_radiation_med", 1.5 ); else player shellshock( "mp_radiation_high", 1.5 ); @@ -2096,7 +2096,7 @@ teargas_trigger_think() { self endon( "kill_teargas" ); self thread kill_teargas_after_duration( level.brutus_teargas_duration ); - players = get_players(); + players = sys::getplayers(); for ( i = 0; i < players.size; i++ ) { @@ -2300,10 +2300,10 @@ custom_brutus_flame_death_fx() { if ( !self.isdog ) { - v_origin = self gettagorigin( "J_SpineLower" ); - e_origin = spawn( "script_origin", v_origin ); + v_origin = self sys::gettagorigin( "J_SpineLower" ); + e_origin = sys::spawn( "script_origin", v_origin ); e_origin setmodel( "tag_origin" ); - e_origin linkto( self, "J_SpineLower" ); + e_origin sys::linkto( self, "J_SpineLower" ); playfxontag( level._effect["character_fire_death_torso"], e_origin, "tag_origin" ); a_script_origins[a_script_origins.size] = e_origin; } @@ -2324,10 +2324,10 @@ custom_brutus_flame_death_fx() tagarray[2] = "J_Knee_RI"; tagarray[3] = "J_Knee_LE"; tagarray = maps\mp\animscripts\zm_death::randomize_array( tagarray ); - v_origin = self gettagorigin( tagarray[0] ); - e_origin = spawn( "script_origin", v_origin ); + v_origin = self sys::gettagorigin( tagarray[0] ); + e_origin = sys::spawn( "script_origin", v_origin ); e_origin setmodel( "tag_origin" ); - e_origin linkto( self, tagarray[0] ); + e_origin sys::linkto( self, tagarray[0] ); playfxontag( level._effect["character_fire_death_torso"], e_origin, "tag_origin" ); a_script_origins[a_script_origins.size] = e_origin; wait 1; @@ -2341,14 +2341,14 @@ custom_brutus_flame_death_fx() } tagarray = maps\mp\animscripts\zm_death::randomize_array( tagarray ); - v_origin_0 = self gettagorigin( tagarray[0] ); - v_origin_1 = self gettagorigin( tagarray[1] ); - e_origin_0 = spawn( "script_origin", v_origin_0 ); - e_origin_1 = spawn( "script_origin", v_origin_1 ); + v_origin_0 = self sys::gettagorigin( tagarray[0] ); + v_origin_1 = self sys::gettagorigin( tagarray[1] ); + e_origin_0 = sys::spawn( "script_origin", v_origin_0 ); + e_origin_1 = sys::spawn( "script_origin", v_origin_1 ); e_origin_0 setmodel( "tag_origin" ); e_origin_1 setmodel( "tag_origin" ); - e_origin_0 linkto( self, tagarray[0] ); - e_origin_1 linkto( self, tagarray[1] ); + e_origin_0 sys::linkto( self, tagarray[0] ); + e_origin_1 sys::linkto( self, tagarray[1] ); playfxontag( level._effect["character_fire_death_torso"], e_origin_0, "tag_origin" ); playfxontag( level._effect["character_fire_death_torso"], e_origin_1, "tag_origin" ); a_script_origins[a_script_origins.size] = e_origin_0; @@ -2390,7 +2390,7 @@ brutus_debug() { if ( debug_level == 1 ) { - brutus_array = getentarray( "brutus_zombie_ai" ); + brutus_array = sys::getentarray( "brutus_zombie_ai" ); for ( i = 0; i < brutus_array.size; i++ ) { @@ -2451,7 +2451,7 @@ brutus_watch_enemy() get_favorite_enemy() { - brutus_targets = getplayers(); + brutus_targets = sys::getplayers(); least_hunted = brutus_targets[0]; for ( i = 0; i < brutus_targets.size; i++ ) @@ -2517,14 +2517,14 @@ get_brutus_interest_points() build_trap_array() { - fan_array = getentarray( "acid_trap_trigger", "targetname" ); - acid_array = getentarray( "fan_trap_use_trigger", "targetname" ); + fan_array = sys::getentarray( "acid_trap_trigger", "targetname" ); + acid_array = sys::getentarray( "fan_trap_use_trigger", "targetname" ); level.trap_triggers = arraycombine( fan_array, acid_array, 0, 0 ); } add_machines_in_zone( zone, zone_name, match_string ) { - machine_array = getentarray( match_string, "targetname" ); + machine_array = sys::getentarray( match_string, "targetname" ); for ( i = 0; i < machine_array.size; i++ ) { @@ -2579,7 +2579,7 @@ get_zone_craftable_tables( zone_name ) while ( level.a_uts_craftables.size == 0 ) wait 1; - scr_org = spawn( "script_origin", ( 0, 0, 0 ) ); + scr_org = sys::spawn( "script_origin", ( 0, 0, 0 ) ); craftable_tables = level.a_uts_craftables; for ( i = 0; i < craftable_tables.size; i++ ) @@ -2601,8 +2601,8 @@ get_zone_traps( zone_name ) { zone = level.zones[zone_name]; zone.traps = []; - acid_traps = getentarray( "acid_trap_trigger", "targetname" ); - scr_org = spawn( "script_origin", ( 0, 0, 0 ) ); + acid_traps = sys::getentarray( "acid_trap_trigger", "targetname" ); + scr_org = sys::spawn( "script_origin", ( 0, 0, 0 ) ); for ( i = 0; i < acid_traps.size; i++ ) { @@ -2618,7 +2618,7 @@ get_zone_traps( zone_name ) } } - fan_traps = getentarray( "fan_trap_use_trigger", "targetname" ); + fan_traps = sys::getentarray( "fan_trap_use_trigger", "targetname" ); for ( i = 0; i < fan_traps.size; i++ ) { @@ -2634,7 +2634,7 @@ get_zone_traps( zone_name ) } } - tower_traps = getentarray( "tower_trap_activate_trigger", "targetname" ); + tower_traps = sys::getentarray( "tower_trap_activate_trigger", "targetname" ); for ( i = 0; i < tower_traps.size; i++ ) { @@ -2658,13 +2658,13 @@ get_zone_plane_ramp( zone_name ) flag_wait( "initial_players_connected" ); zone = level.zones[zone_name]; zone.plane_triggers = []; - scr_org = spawn( "script_origin", ( 0, 0, 0 ) ); - fly_trigger = getent( "plane_fly_trigger", "targetname" ); + scr_org = sys::spawn( "script_origin", ( 0, 0, 0 ) ); + fly_trigger = sys::getent( "plane_fly_trigger", "targetname" ); scr_org.origin = fly_trigger.origin; if ( scr_org entity_in_zone( zone_name, 1 ) ) { - fly_trigger_target = spawn( "script_model", ( 0, 0, 0 ) ); + fly_trigger_target = sys::spawn( "script_model", ( 0, 0, 0 ) ); fly_trigger_target.targetname = "fly_target"; fly_trigger.fly_trigger_target = fly_trigger_target; fly_trigger_target.fly_trigger = fly_trigger; @@ -2777,7 +2777,7 @@ check_plane_valid( player ) plane_struct.is_locked = 0; plane_struct.locked_cost = undefined; plane_struct.lock_fx delete(); - func = getFunction( "maps/mp/zm_alcatraz_sq", "reset_plane_hint_string" ); + func = pluto_sys::getfunction( "maps/mp/zm_alcatraz_sq", "reset_plane_hint_string" ); plane_struct [[ func ]]( player ); } @@ -2879,7 +2879,7 @@ transfer_plane_trigger( from, to ) if ( from == "fly" ) { - t_plane_fly = getent( "plane_fly_trigger", "targetname" ); + t_plane_fly = sys::getent( "plane_fly_trigger", "targetname" ); t_plane_fly sethintstring( &"ZM_PRISON_PLANE_BOARD" ); } } 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 f70eef5..22d29b8 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_dogs.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_dogs.gsc @@ -21,7 +21,7 @@ init() level.enemy_dog_locations = []; flag_init( "dog_clips" ); precacherumble( "explosion_generic" ); - precacheshellshock( "dog_bite" ); + sys::precacheshellshock( "dog_bite" ); if ( getdvar( #"zombie_dog_animset" ) == "" ) setdvar( "zombie_dog_animset", "zombie" ); @@ -37,11 +37,11 @@ init() level.melee_height_sav = getdvar( #"ai_meleeHeight" ); setdvar( "dog_MeleeDamage", "100" ); set_zombie_var( "dog_fire_trail_percent", 50 ); - level._effect["lightning_dog_spawn"] = loadfx( "maps/zombie/fx_zombie_dog_lightning_buildup" ); - level._effect["dog_eye_glow"] = loadfx( "maps/zombie/fx_zombie_dog_eyes" ); - level._effect["dog_gib"] = loadfx( "maps/zombie/fx_zombie_dog_explosion" ); - level._effect["dog_trail_fire"] = loadfx( "maps/zombie/fx_zombie_dog_fire_trail" ); - level._effect["dog_trail_ash"] = loadfx( "maps/zombie/fx_zombie_dog_ash_trail" ); + level._effect["lightning_dog_spawn"] = sys::loadfx( "maps/zombie/fx_zombie_dog_lightning_buildup" ); + level._effect["dog_eye_glow"] = sys::loadfx( "maps/zombie/fx_zombie_dog_eyes" ); + level._effect["dog_gib"] = sys::loadfx( "maps/zombie/fx_zombie_dog_explosion" ); + level._effect["dog_trail_fire"] = sys::loadfx( "maps/zombie/fx_zombie_dog_fire_trail" ); + level._effect["dog_trail_ash"] = sys::loadfx( "maps/zombie/fx_zombie_dog_ash_trail" ); dog_spawner_init(); level thread dog_clip_monitor(); } @@ -58,8 +58,8 @@ enable_dog_rounds() dog_spawner_init() { - level.dog_spawners = getentarray( "zombie_dog_spawner", "script_noteworthy" ); - later_dogs = getentarray( "later_round_dog_spawners", "script_noteworthy" ); + level.dog_spawners = sys::getentarray( "zombie_dog_spawner", "script_noteworthy" ); + later_dogs = sys::getentarray( "later_round_dog_spawners", "script_noteworthy" ); level.dog_spawners = arraycombine( level.dog_spawners, later_dogs, 1, 0 ); if ( level.dog_spawners.size == 0 ) @@ -80,13 +80,13 @@ dog_spawner_init() assert( level.dog_spawners.size > 0 ); level.dog_health = 100; array_thread( level.dog_spawners, ::add_spawn_function, ::dog_init ); - level.enemy_dog_spawns = getentarray( "zombie_spawner_dog_init", "targetname" ); + level.enemy_dog_spawns = sys::getentarray( "zombie_spawner_dog_init", "targetname" ); } dog_round_spawning() { level endon( "intermission" ); - level.dog_targets = getplayers(); + level.dog_targets = sys::getplayers(); for ( i = 0; i < level.dog_targets.size; i++ ) level.dog_targets[i].hunted_by = 0; @@ -103,7 +103,7 @@ dog_round_spawning() level.dog_intermission = 1; level thread dog_round_aftermath(); - players = get_players(); + players = sys::getplayers(); array_thread( players, ::play_dog_round ); wait 1; playsoundatposition( "vox_zmba_event_dogstart_0", ( 0, 0, 0 ) ); @@ -127,7 +127,7 @@ dog_round_spawning() for ( num_player_valid = get_number_of_valid_players(); get_current_zombie_count() >= num_player_valid * 2; num_player_valid = get_number_of_valid_players() ) wait 2; - players = get_players(); + players = sys::getplayers(); favorite_enemy = get_favorite_enemy(); if ( isdefined( level.dog_spawn_func ) ) @@ -197,7 +197,7 @@ dog_round_aftermath() dog_spawn_fx( ai, ent ) { ai endon( "death" ); - ai setfreecameralockonallowed( 0 ); + ai sys::setfreecameralockonallowed( 0 ); playfx( level._effect["lightning_dog_spawn"], ent.origin ); playsoundatposition( "zmb_hellhound_prespawn", ent.origin ); wait 1.5; @@ -215,8 +215,8 @@ dog_spawn_fx( ai, ent ) ai zombie_setup_attack_properties_dog(); ai stop_magic_bullet_shield(); wait 0.1; - ai show(); - ai setfreecameralockonallowed( 1 ); + ai sys::show(); + ai sys::setfreecameralockonallowed( 1 ); ai.ignoreme = 0; ai notify( "visible" ); } @@ -231,9 +231,9 @@ dog_spawn_sumpf_logic( dog_array, favorite_enemy ) if ( isdefined( level.old_dog_spawn ) && level.old_dog_spawn == dog_array[i] ) continue; - if ( distancesquared( dog_array[i].origin, favorite_enemy.origin ) > 160000 && distancesquared( dog_array[i].origin, favorite_enemy.origin ) < 640000 ) + if ( sys::distancesquared( dog_array[i].origin, favorite_enemy.origin ) > 160000 && sys::distancesquared( dog_array[i].origin, favorite_enemy.origin ) < 640000 ) { - if ( distancesquared( ( 0, 0, dog_array[i].origin[2] ), ( 0, 0, favorite_enemy.origin[2] ) ) > 10000 ) + if ( sys::distancesquared( ( 0, 0, dog_array[i].origin[2] ), ( 0, 0, favorite_enemy.origin[2] ) ) > 10000 ) continue; else { @@ -255,7 +255,7 @@ dog_spawn_factory_logic( dog_array, favorite_enemy ) if ( isdefined( level.old_dog_spawn ) && level.old_dog_spawn == dog_locs[i] ) continue; - dist_squared = distancesquared( dog_locs[i].origin, favorite_enemy.origin ); + dist_squared = sys::distancesquared( dog_locs[i].origin, favorite_enemy.origin ); if ( dist_squared > 160000 && dist_squared < 1000000 ) { @@ -269,7 +269,7 @@ dog_spawn_factory_logic( dog_array, favorite_enemy ) get_favorite_enemy() { - dog_targets = getplayers(); + dog_targets = sys::getplayers(); least_hunted = dog_targets[0]; for ( i = 0; i < dog_targets.size; i++ ) @@ -293,7 +293,7 @@ get_favorite_enemy() dog_health_increase() { - players = getplayers(); + players = sys::getplayers(); if ( level.dog_round_count == 1 ) level.dog_health = 400; @@ -332,7 +332,7 @@ dog_round_tracker() level.round_spawn_func = ::dog_round_spawning; level.next_dog_round = level.round_number + randomintrange( 4, 6 ); /# - get_players()[0] iprintln( "Next dog round: " + level.next_dog_round ); + sys::getplayers()[0] iprintln( "Next dog round: " + level.next_dog_round ); #/ } else if ( flag( "dog_round" ) ) @@ -386,7 +386,7 @@ play_dog_round() self playlocalsound( "zmb_dog_round_start" ); variation_count = 5; wait 4.5; - players = getplayers(); + players = sys::getplayers(); num = randomintrange( 0, players.size ); players[num] maps\mp\zombies\_zm_audio::create_and_play_dialog( "general", "dog_spawn" ); } @@ -433,7 +433,7 @@ dog_init() self thread dog_run_think(); self thread dog_stalk_audio(); self thread maps\mp\zombies\_zm::round_spawn_failsafe(); - self ghost(); + self sys::ghost(); self thread magic_bullet_shield(); self dog_fx_eye_glow(); self dog_fx_trail(); @@ -455,11 +455,11 @@ dog_init() dog_fx_eye_glow() { - self.fx_dog_eye = spawn( "script_model", self gettagorigin( "J_EyeBall_LE" ) ); + self.fx_dog_eye = sys::spawn( "script_model", self sys::gettagorigin( "J_EyeBall_LE" ) ); assert( isdefined( self.fx_dog_eye ) ); - self.fx_dog_eye.angles = self gettagangles( "J_EyeBall_LE" ); + self.fx_dog_eye.angles = self sys::gettagangles( "J_EyeBall_LE" ); self.fx_dog_eye setmodel( "tag_origin" ); - self.fx_dog_eye linkto( self, "J_EyeBall_LE" ); + self.fx_dog_eye sys::linkto( self, "J_EyeBall_LE" ); } dog_fx_trail() @@ -476,11 +476,11 @@ dog_fx_trail() self.fx_dog_trail_sound = "zmb_hellhound_loop_fire"; } - self.fx_dog_trail = spawn( "script_model", self gettagorigin( "tag_origin" ) ); + self.fx_dog_trail = sys::spawn( "script_model", self sys::gettagorigin( "tag_origin" ) ); assert( isdefined( self.fx_dog_trail ) ); - self.fx_dog_trail.angles = self gettagangles( "tag_origin" ); + self.fx_dog_trail.angles = self sys::gettagangles( "tag_origin" ); self.fx_dog_trail setmodel( "tag_origin" ); - self.fx_dog_trail linkto( self, "tag_origin" ); + self.fx_dog_trail sys::linkto( self, "tag_origin" ); } dog_death() @@ -520,7 +520,7 @@ dog_death() if ( isdefined( self.a.nodeath ) ) { - level thread dog_explode_fx( self.origin ); + dog_explode_fx( self.origin ); self delete(); } else @@ -560,7 +560,7 @@ dog_behind_audio() while ( true ) { - players = get_players(); + players = sys::getplayers(); for ( i = 0; i < players.size; i++ ) { @@ -583,7 +583,7 @@ dog_behind_audio() dog_clip_monitor() { clips_on = 0; - level.dog_clips = getentarray( "dog_clips", "targetname" ); + level.dog_clips = sys::getentarray( "dog_clips", "targetname" ); while ( true ) { @@ -610,7 +610,7 @@ dog_clip_monitor() while ( dog_is_alive || flag( "dog_round" ) ) { dog_is_alive = 0; - dogs = getentarray( "zombie_dog", "targetname" ); + dogs = sys::getentarray( "zombie_dog", "targetname" ); for ( i = 0; i < dogs.size; i++ ) { @@ -641,7 +641,7 @@ special_dog_spawn( spawners, num_to_spawn ) while ( count < num_to_spawn ) { - players = get_players(); + players = sys::getplayers(); favorite_enemy = get_favorite_enemy(); if ( isdefined( spawners ) ) 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 d8e6cb9..3d25e0b 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost.gsc @@ -35,12 +35,12 @@ precache_fx() if ( !isdefined( level.ghost_effects ) ) { level.ghost_effects = []; - level.ghost_effects[1] = loadfx( "maps/zombie_buried/fx_buried_ghost_death" ); - level.ghost_effects[2] = loadfx( "maps/zombie_buried/fx_buried_ghost_drain" ); - level.ghost_effects[3] = loadfx( "maps/zombie_buried/fx_buried_ghost_spawn" ); - level.ghost_effects[4] = loadfx( "maps/zombie_buried/fx_buried_ghost_trail" ); - level.ghost_effects[5] = loadfx( "maps/zombie_buried/fx_buried_ghost_evaporation" ); - level.ghost_impact_effects[1] = loadfx( "maps/zombie_buried/fx_buried_ghost_impact" ); + level.ghost_effects[1] = sys::loadfx( "maps/zombie_buried/fx_buried_ghost_death" ); + level.ghost_effects[2] = sys::loadfx( "maps/zombie_buried/fx_buried_ghost_drain" ); + level.ghost_effects[3] = sys::loadfx( "maps/zombie_buried/fx_buried_ghost_spawn" ); + level.ghost_effects[4] = sys::loadfx( "maps/zombie_buried/fx_buried_ghost_trail" ); + level.ghost_effects[5] = sys::loadfx( "maps/zombie_buried/fx_buried_ghost_evaporation" ); + level.ghost_impact_effects[1] = sys::loadfx( "maps/zombie_buried/fx_buried_ghost_impact" ); } } @@ -54,14 +54,14 @@ main() if ( !init_ghost_spawners() ) return; - level.slowgun_reset_anim_func = getFunction( "maps/mp/zombies/_zm_weap_slowgun", "reset_anim" ); - level.slowgun_set_anim_rate_func = getFunction( "maps/mp/zombies/_zm_weap_slowgun", "set_anim_rate" ); - level.slowgun_zombie_slow_for_time = getFunction( "maps/mp/zombies/_zm_weap_slowgun", "zombie_slow_for_time" ); - level.time_bomb_get_time_bomb_saved_round_type = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "get_time_bomb_saved_round_type" ); - level.time_bomb_time_bomb_add_custom_func_global_save = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "time_bomb_add_custom_func_global_save" ); - level.time_bomb_time_bomb_add_custom_func_global_restore = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "time_bomb_add_custom_func_global_restore" ); - level.time_bomb_register_time_bomb_enemy_save_filter = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "register_time_bomb_enemy_save_filter" ); - level.time_bomb_register_time_bomb_enemy = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "register_time_bomb_enemy" ); + level.slowgun_reset_anim_func = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_slowgun", "reset_anim" ); + level.slowgun_set_anim_rate_func = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_slowgun", "set_anim_rate" ); + level.slowgun_zombie_slow_for_time = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_slowgun", "zombie_slow_for_time" ); + level.time_bomb_get_time_bomb_saved_round_type = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "get_time_bomb_saved_round_type" ); + level.time_bomb_time_bomb_add_custom_func_global_save = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "time_bomb_add_custom_func_global_save" ); + level.time_bomb_time_bomb_add_custom_func_global_restore = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "time_bomb_add_custom_func_global_restore" ); + level.time_bomb_register_time_bomb_enemy_save_filter = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "register_time_bomb_enemy_save_filter" ); + level.time_bomb_register_time_bomb_enemy = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "register_time_bomb_enemy" ); init_ghost_zone(); init_ghost_sounds(); @@ -70,7 +70,7 @@ main() level.zombie_ai_limit_ghost_per_player = 1; level.zombie_ghost_count = 0; level.ghost_health = 100; - level.zombie_ghost_round_states = spawnstruct(); + level.zombie_ghost_round_states = sys::spawnstruct(); level.zombie_ghost_round_states.any_player_in_ghost_zone = 0; level.zombie_ghost_round_states.active_zombie_locations = []; level.is_ghost_round_started = ::is_ghost_round_started; @@ -117,14 +117,14 @@ init() if ( !init_ghost_spawners() ) return; - level.slowgun_reset_anim_func = getFunction( "maps/mp/zombies/_zm_weap_slowgun", "reset_anim" ); - level.slowgun_set_anim_rate_func = getFunction( "maps/mp/zombies/_zm_weap_slowgun", "set_anim_rate" ); - level.slowgun_zombie_slow_for_time = getFunction( "maps/mp/zombies/_zm_weap_slowgun", "zombie_slow_for_time" ); - level.time_bomb_get_time_bomb_saved_round_type = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "get_time_bomb_saved_round_type" ); - level.time_bomb_time_bomb_add_custom_func_global_save = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "time_bomb_add_custom_func_global_save" ); - level.time_bomb_time_bomb_add_custom_func_global_restore = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "time_bomb_add_custom_func_global_restore" ); - level.time_bomb_register_time_bomb_enemy_save_filter = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "register_time_bomb_enemy_save_filter" ); - level.time_bomb_register_time_bomb_enemy = getFunction( "maps/mp/zombies/_zm_weap_time_bomb", "register_time_bomb_enemy" ); + level.slowgun_reset_anim_func = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_slowgun", "reset_anim" ); + level.slowgun_set_anim_rate_func = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_slowgun", "set_anim_rate" ); + level.slowgun_zombie_slow_for_time = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_slowgun", "zombie_slow_for_time" ); + level.time_bomb_get_time_bomb_saved_round_type = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "get_time_bomb_saved_round_type" ); + level.time_bomb_time_bomb_add_custom_func_global_save = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "time_bomb_add_custom_func_global_save" ); + level.time_bomb_time_bomb_add_custom_func_global_restore = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "time_bomb_add_custom_func_global_restore" ); + level.time_bomb_register_time_bomb_enemy_save_filter = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "register_time_bomb_enemy_save_filter" ); + level.time_bomb_register_time_bomb_enemy = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_time_bomb", "register_time_bomb_enemy" ); init_ghost_zone(); init_ghost_sounds(); @@ -133,7 +133,7 @@ init() level.zombie_ai_limit_ghost_per_player = 1; level.zombie_ghost_count = 0; level.ghost_health = 100; - level.zombie_ghost_round_states = spawnstruct(); + level.zombie_ghost_round_states = sys::spawnstruct(); level.zombie_ghost_round_states.any_player_in_ghost_zone = 0; level.zombie_ghost_round_states.active_zombie_locations = []; level.is_ghost_round_started = ::is_ghost_round_started; @@ -172,7 +172,7 @@ init() init_ghost_spawners() { - level.ghost_spawners = getentarray( "ghost_zombie_spawner", "script_noteworthy" ); + level.ghost_spawners = sys::getentarray( "ghost_zombie_spawner", "script_noteworthy" ); if ( level.ghost_spawners.size == 0 ) return false; @@ -223,8 +223,8 @@ init_ghost_sounds() init_ghost_zone() { - level.ghost_start_area = getent( "ghost_start_area", "targetname" ); - level.ghost_zone_door_clips = getentarray( "ghost_zone_door_clip", "targetname" ); + level.ghost_start_area = sys::getent( "ghost_start_area", "targetname" ); + level.ghost_zone_door_clips = sys::getentarray( "ghost_zone_door_clip", "targetname" ); enable_ghost_zone_door_ai_clips(); level.ghost_zone_start_lower_locations = getstructarray( "ghost_zone_start_lower_location", "targetname" ); level.ghost_drop_down_locations = getstructarray( "ghost_start_zone_spawners", "targetname" ); @@ -232,12 +232,12 @@ init_ghost_zone() level.ghost_back_standing_locations = getstructarray( "ghost_back_standing_location", "targetname" ); level.ghost_front_flying_out_path_starts = getstructarray( "ghost_front_flying_out_path_start", "targetname" ); level.ghost_back_flying_out_path_starts = getstructarray( "ghost_back_flying_out_path_start", "targetname" ); - level.ghost_gazebo_pit_volume = getent( "sloth_pack_volume", "targetname" ); + level.ghost_gazebo_pit_volume = sys::getent( "sloth_pack_volume", "targetname" ); level.ghost_gazebo_pit_perk_pos = getstruct( "ghost_gazebo_pit_perk_pos", "targetname" ); level.ghost_entry_room_to_mansion = "ghost_to_maze_zone_1"; level.ghost_entry_room_to_maze = "ghost_to_maze_zone_5"; level.ghost_rooms = []; - a_rooms = getentarray( "ghost_zone", "script_noteworthy" ); + a_rooms = sys::getentarray( "ghost_zone", "script_noteworthy" ); foreach ( room in a_rooms ) { @@ -245,7 +245,7 @@ init_ghost_zone() if ( !isdefined( level.ghost_rooms[str_targetname] ) ) { - level.ghost_rooms[str_targetname] = spawnstruct(); + level.ghost_rooms[str_targetname] = sys::spawnstruct(); level.ghost_rooms[str_targetname].ghost_spawn_locations = []; level.ghost_rooms[str_targetname].volumes = []; level.ghost_rooms[str_targetname].name = str_targetname; @@ -320,7 +320,7 @@ ghost_zone_spawning_think() while ( valid_player_count < 1 ) { - players = getplayers(); + players = sys::getplayers(); valid_player_count = 0; foreach ( player in players ) @@ -394,7 +394,7 @@ is_player_in_ghost_room( player, room ) { foreach ( volume in room.volumes ) { - if ( player istouching( volume ) ) + if ( player sys::istouching( volume ) ) return true; } @@ -434,7 +434,7 @@ player_in_ghost_zone_monitor() { if ( isdefined( level.zombie_ghost_round_states.any_player_in_ghost_zone ) && level.zombie_ghost_round_states.any_player_in_ghost_zone ) { - players = getplayers(); + players = sys::getplayers(); foreach ( player in players ) { @@ -475,13 +475,13 @@ player_in_ghost_zone_monitor() is_any_player_near_point( target, spawn_pos ) { - players = getplayers(); + players = sys::getplayers(); foreach ( player in players ) { if ( target != player && is_player_valid( player ) ) { - dist_squared = distancesquared( player.origin, spawn_pos ); + dist_squared = sys::distancesquared( player.origin, spawn_pos ); if ( dist_squared < 84 * 84 ) return true; @@ -493,7 +493,7 @@ is_any_player_near_point( target, spawn_pos ) is_in_start_area() { - if ( isdefined( level.ghost_start_area ) && self istouching( level.ghost_start_area ) ) + if ( isdefined( level.ghost_start_area ) && self sys::istouching( level.ghost_start_area ) ) return true; return false; @@ -558,7 +558,7 @@ get_best_spawn_point( player ) check_players_in_ghost_zone() { result = 0; - players = getplayers(); + players = sys::getplayers(); foreach ( player in players ) { @@ -640,7 +640,7 @@ prespawn() self.noplayermeleeblood = 1; self.paralyzer_hit_callback = ::paralyzer_callback; self.paralyzer_slowtime = 0; - self.paralyzer_score_time_ms = gettime(); + self.paralyzer_score_time_ms = sys::gettime(); self.ignore_slowgun_anim_rates = undefined; self.reset_anim = ::ghost_reset_anim; self.custom_springpad_fling = ::ghost_springpad_fling; @@ -663,7 +663,7 @@ prespawn() } self set_zombie_run_cycle( "run" ); - self setanimstatefromasd( "zm_move_run" ); + self sys::setanimstatefromasd( "zm_move_run" ); self.actor_damage_func = ::ghost_damage_func; self.deathfunction = ::ghost_death_func; self.maxhealth = level.ghost_health; @@ -672,8 +672,8 @@ prespawn() self notify( "zombie_init_done" ); self.allowpain = 0; self.ignore_nuke = 1; - self animmode( "normal" ); - self orientmode( "face enemy" ); + self sys::animmode( "normal" ); + self sys::orientmode( "face enemy" ); self bloodimpact( "none" ); self disableaimassist(); self.forcemovementscriptstate = 0; @@ -683,7 +683,7 @@ prespawn() self.pathenemyfightdist = 0; self maps\mp\zombies\_zm_spawner::zombie_complete_emerging_into_playable_area(); - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); self.startinglocation = self.origin; if ( isdefined( level.ghost_custom_think_logic ) ) @@ -781,7 +781,7 @@ ghost_reset_anim() substate = self getanimsubstatefromasd(); if ( animstate == "zm_death" ) - self setanimstatefromasd( "zm_death_no_restart", substate ); + self sys::setanimstatefromasd( "zm_death_no_restart", substate ); else if ( isDefined( level.slowgun_reset_anim_func ) ) self [[ level.slowgun_reset_anim_func ]](); } @@ -791,7 +791,7 @@ wait_ghost_ghost( time ) wait( time ); if ( isdefined( self ) ) - self ghost(); + self sys::ghost(); } ghost_death_func() @@ -809,7 +809,7 @@ ghost_death_func() self thread [[ self.extra_custom_death_logic ]](); qrate = self getclientfield( "anim_rate" ); - self setanimstatefromasd( "zm_death" ); + self sys::setanimstatefromasd( "zm_death" ); self thread wait_ghost_ghost( self getanimlengthfromasd( "zm_death", 0 ) ); maps\mp\animscripts\zm_shared::donotetracks( "death_anim" ); @@ -930,7 +930,7 @@ ghost_think() start_spawn() { - self animscripted( self.origin, self.angles, "zm_spawn" ); + self sys::animscripted( self.origin, self.angles, "zm_spawn" ); self maps\mp\animscripts\zm_shared::donotetracks( "spawn_anim" ); self start_chase(); } @@ -972,9 +972,9 @@ find_flesh() else if ( isdefined( self.is_spawned_in_ghost_zone ) && self.is_spawned_in_ghost_zone ) self.find_target = 1; - self.zombie_path_timer = gettime() + randomfloatrange( 1, 3 ) * 1000; + self.zombie_path_timer = sys::gettime() + randomfloatrange( 1, 3 ) * 1000; - while ( gettime() < self.zombie_path_timer ) + while ( sys::gettime() < self.zombie_path_timer ) wait 0.1; self notify( "path_timer_done" ); @@ -987,7 +987,7 @@ find_flesh() get_closest_valid_player( origin ) { valid_player_found = 0; - players = get_players(); + players = sys::getplayers(); while ( !valid_player_found ) { @@ -1055,7 +1055,7 @@ get_closest_player( origin, players ) does_fall_into_pap_hole() { - if ( isDefined( level.ghost_gazebo_pit_volume ) && self istouching( level.ghost_gazebo_pit_volume ) ) + if ( isDefined( level.ghost_gazebo_pit_volume ) && self sys::istouching( level.ghost_gazebo_pit_volume ) ) { self forceteleport( level.ghost_gazebo_pit_perk_pos.origin, ( 0, 0, 0 ) ); wait 0.1; @@ -1067,9 +1067,9 @@ does_fall_into_pap_hole() start_script_move() { - self.script_mover = spawn( "script_origin", self.origin ); + self.script_mover = sys::spawn( "script_origin", self.origin ); self.script_mover.angles = self.angles; - self linkto( self.script_mover ); + self sys::linkto( self.script_mover ); self.state = "script_move_update"; self setclientfield( "ghost_fx", 4 ); player = self.favoriteenemy; @@ -1133,8 +1133,8 @@ script_move_update() if ( is_player_valid( player ) && isdefined( self.script_move_target_node ) ) { - desired_angles = vectortoangles( vectornormalize( player.origin - self.origin ) ); - distance_squared = distancesquared( self.origin, self.script_move_target_node.origin ); + desired_angles = vectortoangles( sys::vectornormalize( player.origin - self.origin ) ); + distance_squared = sys::distancesquared( self.origin, self.script_move_target_node.origin ); if ( distance_squared < 24 ) { @@ -1150,7 +1150,7 @@ script_move_update() draw_debug_star( self.script_move_target_node.origin, ( 0, 0, 1 ), 1 ); target_node_pos = self.script_move_target_node.origin + vectorscale( ( 0, 0, 1 ), 36.0 ); - distance_squared_to_target_node_pos = distancesquared( self.origin, target_node_pos ); + distance_squared_to_target_node_pos = sys::distancesquared( self.origin, target_node_pos ); moved_distance_during_interval = 80.0; if ( distance_squared_to_target_node_pos <= moved_distance_during_interval * moved_distance_during_interval ) @@ -1162,7 +1162,7 @@ script_move_update() } else { - distance_squared_to_player = distancesquared( self.origin, player.origin ); + distance_squared_to_player = sys::distancesquared( self.origin, player.origin ); if ( distance_squared_to_player < 540 && !( isdefined( self.script_mover.search_target_node_again ) && self.script_mover.search_target_node_again ) ) { @@ -1174,7 +1174,7 @@ script_move_update() self.script_move_sin_index = 0; move_dir = target_node_pos - self.origin; - move_dir = vectornormalize( move_dir ); + move_dir = sys::vectornormalize( move_dir ); target_point = self.origin + move_dir * 800 * 0.1; x_offset = level.ghost_script_move_sin[self.script_move_sin_index] * 6; z_offset = level.ghost_script_move_sin[self.script_move_sin_index] * 12; @@ -1197,7 +1197,7 @@ remove_script_mover() if ( isdefined( self.script_mover ) ) { self dontinterpolate(); - self unlink(); + self sys::unlink(); self.script_mover delete(); } } @@ -1205,7 +1205,7 @@ remove_script_mover() start_chase() { self set_zombie_run_cycle( "run" ); - self setanimstatefromasd( "zm_move_run" ); + self sys::setanimstatefromasd( "zm_move_run" ); self.state = "chase_update"; self setclientfield( "ghost_fx", 4 ); } @@ -1247,7 +1247,7 @@ chase_update() return; } - distsquared = distancesquared( self.origin, player.origin ); + distsquared = sys::distancesquared( self.origin, player.origin ); if ( distsquared > 300 * 300 ) { @@ -1281,7 +1281,7 @@ chase_update() self set_zombie_run_cycle( "run" ); if ( self getanimstatefromasd() != "zm_move_run" ) - self setanimstatefromasd( "zm_move_run" ); + self sys::setanimstatefromasd( "zm_move_run" ); self start_runaway(); } @@ -1294,7 +1294,7 @@ need_wait() start_wait() { - self setanimstatefromasd( "zm_idle" ); + self sys::setanimstatefromasd( "zm_idle" ); self setclientfield( "ghost_fx", 4 ); self.state = "wait_update"; } @@ -1326,7 +1326,7 @@ wait_update() self set_zombie_run_cycle( "run" ); if ( self getanimstatefromasd() != "zm_move_run" ) - self setanimstatefromasd( "zm_move_run" ); + self sys::setanimstatefromasd( "zm_move_run" ); self setclientfield( "ghost_fx", 4 ); self start_runaway(); @@ -1353,8 +1353,8 @@ start_evaporate( need_deletion ) else { self.state = "evaporate_update"; - self ghost(); - self notsolid(); + self sys::ghost(); + self sys::notsolid(); } } @@ -1385,19 +1385,19 @@ evaporate_update() } else if ( is_player_valid( player ) ) { - self solid(); - self show(); + self sys::solid(); + self sys::show(); self start_chase(); } } is_within_capsule( point, origin, angles, radius, range ) { - forward_dir = vectornormalize( anglestoforward( angles ) ); + forward_dir = sys::vectornormalize( anglestoforward( angles ) ); start = origin + forward_dir * radius; end = start + forward_dir * range; point_intersect = pointonsegmentnearesttopoint( start, end, point ); - distance_squared = distancesquared( point_intersect, point ); + distance_squared = sys::distancesquared( point_intersect, point ); if ( distance_squared <= radius * radius ) return true; @@ -1419,18 +1419,18 @@ get_dot_production_2d( point, origin, angles ) { forward_dir = anglestoforward( angles ); forward_dir = ( forward_dir[0], forward_dir[1], 0 ); - forward_dir = vectornormalize( forward_dir ); + forward_dir = sys::vectornormalize( forward_dir ); to_point_dir = point - origin; to_point_dir = ( to_point_dir[0], to_point_dir[1], 0 ); - to_point_dir = vectornormalize( to_point_dir ); - return vectordot( forward_dir, to_point_dir ); + to_point_dir = sys::vectornormalize( to_point_dir ); + return sys::vectordot( forward_dir, to_point_dir ); } is_in_room( room ) { foreach ( volume in room.volumes ) { - if ( self istouching( volume ) ) + if ( self sys::istouching( volume ) ) return true; } @@ -1492,7 +1492,7 @@ can_drain_points( self_pos, target_pos ) if ( isdefined( self.force_killable ) && self.force_killable ) return false; - dist = distancesquared( self_pos, target_pos ); + dist = sys::distancesquared( self_pos, target_pos ); if ( dist < 60 * 60 ) return true; @@ -1507,13 +1507,13 @@ set_chase_status( move_speed ) if ( self.zombie_move_speed != move_speed ) { self set_zombie_run_cycle( move_speed ); - self setanimstatefromasd( "zm_move_" + move_speed ); + self sys::setanimstatefromasd( "zm_move_" + move_speed ); } } start_drain() { - self setanimstatefromasd( "zm_drain" ); + self sys::setanimstatefromasd( "zm_drain" ); self setclientfield( "ghost_fx", 2 ); self.state = "drain_update"; } @@ -1530,9 +1530,9 @@ drain_update() if ( can_drain_points( self.origin, player.origin ) ) { if ( self getanimstatefromasd() != "zm_drain" ) - self setanimstatefromasd( "zm_drain" ); + self sys::setanimstatefromasd( "zm_drain" ); - self orientmode( "face enemy" ); + self sys::orientmode( "face enemy" ); if ( !( isdefined( self.is_draining ) && self.is_draining ) ) self thread drain_player( player ); @@ -1545,7 +1545,7 @@ drain_update() self set_zombie_run_cycle( "run" ); if ( self getanimstatefromasd() != "zm_move_run" ) - self setanimstatefromasd( "zm_move_run" ); + self sys::setanimstatefromasd( "zm_move_run" ); self setclientfield( "ghost_fx", 4 ); self start_runaway(); @@ -1611,14 +1611,14 @@ start_runaway() { wait 2; self.state = "runaway_update"; - self setgoalpos( self.startinglocation ); + self sys::setgoalpos( self.startinglocation ); self set_chase_status( "run" ); } does_reach_runaway_goal() { result = 0; - dist_squared = distancesquared( self.origin, self.startinglocation ); + dist_squared = sys::distancesquared( self.origin, self.startinglocation ); if ( dist_squared < 60 * 60 ) result = 1; @@ -1656,7 +1656,7 @@ runaway_update() } else { - self setgoalpos( self.startinglocation ); + self sys::setgoalpos( self.startinglocation ); /# draw_debug_star( self.startinglocation, ( 0, 0, 1 ), 1 ); draw_debug_line( self.origin, self.startinglocation, ( 0, 1, 0 ), 1, 0 ); @@ -1851,7 +1851,7 @@ enable_ghost_zone_door_ai_clips() { foreach ( door_clip in level.ghost_zone_door_clips ) { - door_clip solid(); + door_clip sys::solid(); door_clip disconnectpaths(); } } @@ -1863,7 +1863,7 @@ disable_ghost_zone_door_ai_clips() { foreach ( door_clip in level.ghost_zone_door_clips ) { - door_clip notsolid(); + door_clip sys::notsolid(); door_clip connectpaths(); } } @@ -1881,7 +1881,7 @@ clear_all_active_zombies() { if ( !( isdefined( zombie.is_ghost ) && zombie.is_ghost ) ) { - spawn_point = spawnstruct(); + spawn_point = sys::spawnstruct(); spawn_point.origin = zombie.origin; spawn_point.angles = zombie.angles; @@ -2013,7 +2013,7 @@ should_last_ghost_drop_powerup() sndghostroundmus() { level endon( "ghost_round_end" ); - ent = spawn( "script_origin", ( 0, 0, 0 ) ); + ent = sys::spawn( "script_origin", ( 0, 0, 0 ) ); level.sndroundwait = 1; ent thread sndghostroundmus_end(); ent endon( "sndGhostRoundEnd" ); @@ -2046,7 +2046,7 @@ sndghostroundready() if ( level.zombie_ghost_round_states.next_ghost_round_number == level.round_number ) { playsoundatposition( "zmb_ghost_round_srt", mansion ); - ent = spawn( "script_origin", mansion ); + ent = sys::spawn( "script_origin", mansion ); ent playloopsound( "zmb_ghost_round_lp", 3 ); ent thread sndghostroundready_stoplp(); break; @@ -2070,7 +2070,7 @@ check_sending_away_zombie_followers() if ( flag_exists( "time_bomb_restore_active" ) && flag( "time_bomb_restore_active" ) ) return; - players = getplayers(); + players = sys::getplayers(); valid_player_in_ghost_zone_count = 0; valid_player_count = 0; @@ -2115,14 +2115,14 @@ send_away_zombie_follower( player ) dest = 0; awaydir = self.origin - player.origin; awaydir = ( awaydir[0], awaydir[1], 0 ); - awaydir = vectornormalize( awaydir ); + awaydir = sys::vectornormalize( awaydir ); endpos = self.origin + vectorscale( awaydir, 600 ); locs = array_randomize( level.enemy_dog_locations ); for ( i = 0; i < locs.size; i++ ) { - dist_zombie = distancesquared( locs[i].origin, endpos ); - dist_player = distancesquared( locs[i].origin, player.origin ); + dist_zombie = sys::distancesquared( locs[i].origin, endpos ); + dist_player = sys::distancesquared( locs[i].origin, player.origin ); if ( dist_zombie < dist_player ) { @@ -2135,7 +2135,7 @@ send_away_zombie_follower( player ) self notify( "zombie_acquire_enemy" ); if ( isdefined( locs[dest] ) ) - self setgoalpos( locs[dest].origin ); + self sys::setgoalpos( locs[dest].origin ); wait 5; self thread maps\mp\zombies\_zm_ai_basic::find_flesh(); @@ -2233,7 +2233,7 @@ player_moving_speed_scale_think() while ( true ) { - players = get_players(); + players = sys::getplayers(); foreach ( player in players ) { @@ -2409,7 +2409,7 @@ get_next_spot_during_ghost_round_presentation() spawn_ghost_round_presentation_ghost() { spawn_point = get_next_spot_during_ghost_round_presentation(); - ghost = spawn( "script_model", spawn_point.origin ); + ghost = sys::spawn( "script_model", spawn_point.origin ); ghost.angles = spawn_point.angles; ghost setmodel( "c_zom_zombie_buried_ghost_woman_fb" ); @@ -2430,9 +2430,9 @@ spawn_ghost_round_presentation_ghost() wait 0.5; ghost useanimtree( #animtree ); ghost setanim( %ai_zombie_ghost_idle ); - ghost.script_mover = spawn( "script_origin", ghost.origin ); + ghost.script_mover = sys::spawn( "script_origin", ghost.origin ); ghost.script_mover.angles = ghost.angles; - ghost linkto( ghost.script_mover ); + ghost sys::linkto( ghost.script_mover ); ghost setclientfield( "sndGhostAudio", 1 ); } @@ -2444,7 +2444,7 @@ ghost_round_presentation_think() return; if ( !isdefined( level.sndmansionent ) ) - level.sndmansionent = spawn( "script_origin", ( 2830, 555, 436 ) ); + level.sndmansionent = sys::spawn( "script_origin", ( 2830, 555, 436 ) ); flag_wait( "start_zombie_round_logic" ); @@ -2492,14 +2492,14 @@ ghost_switch_windows() next_spot = get_next_spot_during_ghost_round_presentation(); self setclientfield( "ghost_fx", 5 ); self setclientfield( "sndGhostAudio", 0 ); - self ghost(); + self sys::ghost(); self.script_mover moveto( next_spot.origin, 1 ); self.script_mover waittill( "movedone" ); self.script_mover.origin = next_spot.origin; self.script_mover.angles = next_spot.angles; self setclientfield( "ghost_fx", 3 ); self setclientfield( "sndGhostAudio", 1 ); - self show(); + self sys::show(); wait 6; } } @@ -2511,7 +2511,7 @@ ghost_round_presentation_sound() while ( true ) { - players = getplayers(); + players = sys::getplayers(); foreach ( player in players ) { @@ -2605,7 +2605,7 @@ init_time_bomb_ghost_rounds() } } -is_ghost() +is_sys::ghost() { return !( isdefined( self.is_ghost ) && self.is_ghost ); } @@ -2685,7 +2685,7 @@ time_bomb_custom_get_enemy_func() time_bomb_global_data_save_ghosts() { - s_temp = spawnstruct(); + s_temp = sys::spawnstruct(); s_temp.ghost_count = level.zombie_ghost_count; s_temp.round_started = level.zombie_ghost_round_states.is_started; s_temp.round_first_done = level.zombie_ghost_round_states.is_first_ghost_round_finished; @@ -2702,7 +2702,7 @@ time_bomb_global_data_restore_ghosts() level.zombie_ghost_round_states.next_ghost_round_number = self.ghost_data.round_next; level.zombie_ghost_round_states.round_zombie_total = self.ghost_data.zombie_total; - foreach ( player in get_players() ) + foreach ( player in sys::getplayers() ) player.ghost_count = 0; } @@ -2779,7 +2779,7 @@ _restore_ghost_data( save_struct, n_index ) self.favoriteenemy = s_data.favoriteenemy; self.ignore_timebomb_slowdown = 1; - self setgoalpos( self.origin ); + self sys::setgoalpos( self.origin ); } _respawn_ghost_failsafe() @@ -2812,7 +2812,7 @@ devgui_warp_to_mansion() #/ } -devgui_toggle_no_ghost() +devgui_toggle_no_sys::ghost() { /# level.force_no_ghost = !level.force_no_ghost; diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost_ffotd.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost_ffotd.gsc index ffca2b1..099b387 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost_ffotd.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_ghost_ffotd.gsc @@ -45,7 +45,7 @@ is_player_in_ghost_zone( player ) result = 0; if ( !isdefined( level.ghost_zone_overrides ) ) - level.ghost_zone_overrides = getentarray( "ghost_round_override", "script_noteworthy" ); + level.ghost_zone_overrides = sys::getentarray( "ghost_round_override", "script_noteworthy" ); is_player_in_override_trigger = 0; @@ -53,7 +53,7 @@ is_player_in_ghost_zone( player ) { foreach ( trigger in level.ghost_zone_overrides ) { - if ( player istouching( trigger ) ) + if ( player sys::istouching( trigger ) ) { is_player_in_override_trigger = 1; break; @@ -72,44 +72,44 @@ is_player_in_ghost_zone( player ) ghost_bad_path_init() { level.bad_zones = []; - level.bad_zones[0] = spawnstruct(); + level.bad_zones[0] = sys::spawnstruct(); level.bad_zones[0].name = "zone_underground_courthouse"; level.bad_zones[0].adjacent = []; level.bad_zones[0].adjacent[0] = "zone_underground_courthouse2"; level.bad_zones[0].adjacent[1] = "zone_tunnels_north2"; - level.bad_zones[0].ignore_func = getFunction( "maps/mp/zm_buried", "is_courthouse_open" ); - level.bad_zones[1] = spawnstruct(); + level.bad_zones[0].ignore_func = pluto_sys::getfunction( "maps/mp/zm_buried", "is_courthouse_open" ); + level.bad_zones[1] = sys::spawnstruct(); level.bad_zones[1].name = "zone_underground_courthouse2"; level.bad_zones[1].adjacent = []; level.bad_zones[1].adjacent[0] = "zone_underground_courthouse"; level.bad_zones[1].adjacent[1] = "zone_tunnels_north2"; - level.bad_zones[1].ignore_func = getFunction( "maps/mp/zm_buried", "is_courthouse_open" ); - level.bad_zones[2] = spawnstruct(); + level.bad_zones[1].ignore_func = pluto_sys::getfunction( "maps/mp/zm_buried", "is_courthouse_open" ); + level.bad_zones[2] = sys::spawnstruct(); level.bad_zones[2].name = "zone_tunnels_north2"; level.bad_zones[2].adjacent = []; level.bad_zones[2].adjacent[0] = "zone_underground_courthouse2"; level.bad_zones[2].adjacent[1] = "zone_underground_courthouse"; level.bad_zones[2].flag = "tunnels2courthouse"; level.bad_zones[2].flag_adjacent = "zone_tunnels_north"; - level.bad_zones[2].ignore_func = getFunction( "maps/mp/zm_buried", "is_courthouse_open" ); - level.bad_zones[3] = spawnstruct(); + level.bad_zones[2].ignore_func = pluto_sys::getfunction( "maps/mp/zm_buried", "is_courthouse_open" ); + level.bad_zones[3] = sys::spawnstruct(); level.bad_zones[3].name = "zone_tunnels_north"; level.bad_zones[3].adjacent = []; level.bad_zones[3].adjacent[0] = "zone_tunnels_center"; level.bad_zones[3].flag = "tunnels2courthouse"; level.bad_zones[3].flag_adjacent = "zone_tunnels_north2"; - level.bad_zones[3].ignore_func = getFunction( "maps/mp/zm_buried", "is_tunnel_open" ); - level.bad_zones[4] = spawnstruct(); + level.bad_zones[3].ignore_func = pluto_sys::getfunction( "maps/mp/zm_buried", "is_tunnel_open" ); + level.bad_zones[4] = sys::spawnstruct(); level.bad_zones[4].name = "zone_tunnels_center"; level.bad_zones[4].adjacent = []; level.bad_zones[4].adjacent[0] = "zone_tunnels_north"; level.bad_zones[4].adjacent[1] = "zone_tunnels_south"; - level.bad_zones[4].ignore_func = getFunction( "maps/mp/zm_buried", "is_tunnel_open" ); - level.bad_zones[5] = spawnstruct(); + level.bad_zones[4].ignore_func = pluto_sys::getfunction( "maps/mp/zm_buried", "is_tunnel_open" ); + level.bad_zones[5] = sys::spawnstruct(); level.bad_zones[5].name = "zone_tunnels_south"; level.bad_zones[5].adjacent = []; level.bad_zones[5].adjacent[0] = "zone_tunnels_center"; - level.bad_zones[5].ignore_func = getFunction( "maps/mp/zm_buried", "is_tunnel_open" ); + level.bad_zones[5].ignore_func = pluto_sys::getfunction( "maps/mp/zm_buried", "is_tunnel_open" ); } ghost_bad_path_failsafe() @@ -219,7 +219,7 @@ disable_traversal_clip_around_mansion() if ( isdefined( level.ghost_zone_door_clips ) && level.ghost_zone_door_clips.size > 0 ) { foreach ( door_clip in level.ghost_zone_door_clips ) - door_clip notsolid(); + door_clip sys::notsolid(); } } 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 5e2bc9c..60abe88 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_leaper.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_leaper.gsc @@ -27,11 +27,11 @@ precache() precache_fx() { - level._effect["leaper_death"] = loadfx( "maps/zombie/fx_zmb_leaper_death" ); - level._effect["leaper_spawn"] = loadfx( "maps/zombie/fx_zmb_leaper_spawn" ); - level._effect["leaper_trail"] = loadfx( "maps/zombie/fx_zmb_leaper_trail" ); - level._effect["leaper_walk"] = loadfx( "maps/zombie/fx_zmb_leaper_walk" ); - level._effect["leaper_wall_impact"] = loadfx( "maps/zombie/fx_zmb_leaper_wall_impact" ); + level._effect["leaper_death"] = sys::loadfx( "maps/zombie/fx_zmb_leaper_death" ); + level._effect["leaper_spawn"] = sys::loadfx( "maps/zombie/fx_zmb_leaper_spawn" ); + level._effect["leaper_trail"] = sys::loadfx( "maps/zombie/fx_zmb_leaper_trail" ); + level._effect["leaper_walk"] = sys::loadfx( "maps/zombie/fx_zmb_leaper_walk" ); + level._effect["leaper_wall_impact"] = sys::loadfx( "maps/zombie/fx_zmb_leaper_wall_impact" ); } init() @@ -42,7 +42,7 @@ init() if ( !isdefined( level.leapers_per_player ) ) level.leapers_per_player = 2; - level.no_jump_triggers = getentarray( "leaper_no_jump_trigger", "targetname" ); + level.no_jump_triggers = sys::getentarray( "leaper_no_jump_trigger", "targetname" ); } leaper_calc_anim_offsets() @@ -51,7 +51,7 @@ leaper_calc_anim_offsets() if ( isdefined( leaper ) ) { - level.leaper_anim = spawnstruct(); + level.leaper_anim = sys::spawnstruct(); asd = "zm_wall_up"; anim_id = leaper getanimfromasd( asd, 0 ); level.leaper_anim.up_mid = getmovedelta( anim_id, 0, 0.488 ) + vectorscale( ( 0, 0, 1 ), 6.0 ); @@ -82,7 +82,7 @@ leaper_calc_anim_offsets() leaper_spawner_init() { - level.leaper_spawners = getentarray( "leaper_zombie_spawner", "script_noteworthy" ); + level.leaper_spawners = sys::getentarray( "leaper_zombie_spawner", "script_noteworthy" ); if ( level.leaper_spawners.size == 0 ) return; @@ -167,11 +167,11 @@ leaper_init() self notify( "zombie_init_done" ); self.allowpain = 0; self thread play_ambient_leaper_vocals(); - self animmode( "normal" ); - self orientmode( "face enemy" ); + self sys::animmode( "normal" ); + self sys::orientmode( "face enemy" ); self maps\mp\zombies\_zm_spawner::zombie_setup_attack_properties(); self maps\mp\zombies\_zm_spawner::zombie_complete_emerging_into_playable_area(); - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); if ( isdefined( self.spawn_point.script_parameters ) && ( self.spawn_point.script_parameters == "emerge_bottom" || self.spawn_point.script_parameters == "emerge_top" ) ) self thread do_leaper_emerge( self.spawn_point ); @@ -180,7 +180,7 @@ leaper_init() self thread leaper_check_zone(); self thread leaper_check_no_jump(); self thread leaper_watch_enemy(); - self.combat_animmode = ::leaper_combat_animmode; + self.combat_sys::animmode = ::leaper_combat_sys::animmode; level thread maps\mp\zombies\_zm_spawner::zombie_death_event( self ); self thread maps\mp\zombies\_zm_spawner::enemy_death_detection(); self thread leaper_elevator_failsafe(); @@ -262,7 +262,7 @@ leaper_can_use_anim( local_mid, local_end, dir ) end = self localtoworldcoords( local_end ); real_mid = mid; forward_dist = length( end - start ) * 0.5; - forward_vec = vectornormalize( end - start ); + forward_vec = sys::vectornormalize( end - start ); temp_org = start + vectorscale( forward_vec, forward_dist ); forward_org = ( temp_org[0], temp_org[1], real_mid[2] ); end_top = end + vectorscale( ( 0, 0, 1 ), 24.0 ); @@ -373,7 +373,7 @@ leaper_building_jump() if ( isdefined( self.spawn_point.script_string ) && self.spawn_point.script_string != "find_flesh" ) { - self animscripted( self.spawn_point.origin, self.spawn_point.angles, "zm_building_leap", self.spawn_point.script_string ); + self sys::animscripted( self.spawn_point.origin, self.spawn_point.angles, "zm_building_leap", self.spawn_point.script_string ); self maps\mp\animscripts\zm_shared::donotetracks( "building_leap_anim" ); } @@ -387,12 +387,12 @@ leaper_check_wall() self endon( "death" ); if ( !isdefined( self.next_leap_time ) ) - self.next_leap_time = gettime() + 500; + self.next_leap_time = sys::gettime() + 500; if ( is_true( self.sliding_on_goo ) || is_true( self.is_leaping ) ) return; - if ( gettime() > self.next_leap_time && !is_true( self.no_jump ) ) + if ( sys::gettime() > self.next_leap_time && !is_true( self.no_jump ) ) { wall_anim = []; @@ -420,13 +420,13 @@ leaper_check_wall() self.is_leaping = 1; self notify( "stop_find_flesh" ); self notify( "zombie_acquire_enemy" ); - self animcustom( ::leaper_play_anim ); + self sys::animcustom( ::leaper_play_anim ); self waittill( "leap_anim_done" ); self leaper_stop_trail_fx(); self.ignoreall = 0; self.is_leaping = 0; self thread maps\mp\zombies\_zm_ai_basic::find_flesh(); - self.next_leap_time = gettime() + 500; + self.next_leap_time = sys::gettime() + 500; } } } @@ -471,7 +471,7 @@ leaper_check_no_jump() foreach ( trigger in level.no_jump_triggers ) { - if ( self istouching( trigger ) ) + if ( self sys::istouching( trigger ) ) { self.no_jump = 1; break; @@ -484,17 +484,17 @@ leaper_check_no_jump() melee_anim_func() { - self.next_leap_time = gettime() + 1500; - self animmode( "gravity" ); + self.next_leap_time = sys::gettime() + 1500; + self sys::animmode( "gravity" ); } leaper_start_trail_fx() { self endon( "death" ); self leaper_stop_trail_fx(); - self.trail_fx = spawn( "script_model", self.origin ); + self.trail_fx = sys::spawn( "script_model", self.origin ); self.trail_fx setmodel( "tag_origin" ); - self.trail_fx linkto( self ); + self.trail_fx sys::linkto( self ); wait 0.1; playfxontag( level._effect["leaper_trail"], self.trail_fx, "tag_origin" ); } @@ -508,11 +508,11 @@ leaper_stop_trail_fx() leaper_play_anim() { self endon( "death" ); - self animmode( "nogravity" ); - self setanimstatefromasd( self.leap_anim ); + self sys::animmode( "nogravity" ); + self sys::setanimstatefromasd( self.leap_anim ); self thread leaper_handle_fx_notetracks( "wall_anim" ); maps\mp\animscripts\zm_shared::donotetracks( "wall_anim" ); - self animmode( "normal" ); + self sys::animmode( "normal" ); self notify( "leap_anim_done" ); } @@ -533,7 +533,7 @@ leaper_notetracks( animname ) self endon( "death" ); self endon( "leap_anim_done" ); self waittillmatch( animname, "gravity on" ); - self animmode( "normal" ); + self sys::animmode( "normal" ); } enable_leaper_rounds() @@ -579,7 +579,7 @@ leaper_round_spawning() { level endon( "intermission" ); level endon( "leaper_round_ending" ); - level.leaper_targets = getplayers(); + level.leaper_targets = sys::getplayers(); for ( i = 0; i < level.leaper_targets.size; i++ ) level.leaper_targets[i].hunted_by = 0; @@ -597,7 +597,7 @@ leaper_round_spawning() level.leaper_intermission = 1; level thread leaper_round_accuracy_tracking(); level thread leaper_round_aftermath(); - players = get_players(); + players = sys::getplayers(); wait 1; playsoundatposition( "vox_zmba_event_dogstart_0", ( 0, 0, 0 ) ); wait 1; @@ -648,7 +648,7 @@ leaper_round_spawning() num_player_valid = get_number_of_valid_players(); } - players = get_players(); + players = sys::getplayers(); favorite_enemy = get_favorite_enemy(); spawn_point = leaper_spawn_logic( level.enemy_dog_spawns, favorite_enemy ); ai = spawn_zombie( level.leaper_spawners[0] ); @@ -668,7 +668,7 @@ leaper_round_spawning() leaper_round_accuracy_tracking() { - players = getplayers(); + players = sys::getplayers(); level.leaper_round_accurate_players = 0; for ( i = 0; i < players.size; i++ ) @@ -678,7 +678,7 @@ leaper_round_accuracy_tracking() } level waittill( "last_leaper_down" ); - players = getplayers(); + players = sys::getplayers(); for ( i = 0; i < players.size; i++ ) { @@ -723,7 +723,7 @@ leaper_round_wait() leaper_health_increase() { - players = getplayers(); + players = sys::getplayers(); if ( level.leaper_round_count == 1 ) level.leaper_health = 400; @@ -740,7 +740,7 @@ leaper_health_increase() get_favorite_enemy() { - leaper_targets = getplayers(); + leaper_targets = sys::getplayers(); least_hunted = leaper_targets[0]; for ( i = 0; i < leaper_targets.size; i++ ) @@ -775,9 +775,9 @@ leaper_watch_enemy() } } -leaper_combat_animmode() +leaper_combat_sys::animmode() { - self animmode( "gravity", 0 ); + self sys::animmode( "gravity", 0 ); } leaper_spawn_logic_old( leaper_array, favorite_enemy ) @@ -793,7 +793,7 @@ leaper_spawn_logic_old( leaper_array, favorite_enemy ) continue; } - dist_squared = distancesquared( leaper_locs[i].origin, favorite_enemy.origin ); + dist_squared = sys::distancesquared( leaper_locs[i].origin, favorite_enemy.origin ); if ( dist_squared > 160000 && dist_squared < 1000000 ) { @@ -849,14 +849,14 @@ leaper_spawn_logic( leaper_array, favorite_enemy ) /# if ( getdvarint( #"scr_zombie_spawn_in_view" ) ) { - player = get_players()[0]; + player = sys::getplayers()[0]; a_spawn_points_in_view = []; for ( i = 0; i < a_leaper_spawn_points.size; i++ ) { - player_vec = vectornormalize( anglestoforward( player.angles ) ); - player_spawn = vectornormalize( a_leaper_spawn_points[i].origin - player.origin ); - dot = vectordot( player_vec, player_spawn ); + player_vec = sys::vectornormalize( anglestoforward( player.angles ) ); + player_spawn = sys::vectornormalize( a_leaper_spawn_points[i].origin - player.origin ); + dot = sys::vectordot( player_vec, player_spawn ); if ( dot > 0.707 ) { @@ -931,15 +931,15 @@ get_valid_spawner_array( a_spawn_points ) leaper_spawn_fx( ai, ent ) { - ai setfreecameralockonallowed( 0 ); - ai show(); - ai setfreecameralockonallowed( 1 ); + ai sys::setfreecameralockonallowed( 0 ); + ai sys::show(); + ai sys::setfreecameralockonallowed( 1 ); v_fx_origin = ai.spawn_point.origin; if ( isdefined( ai.spawn_point.script_string ) && ai.spawn_point.script_string != "find_flesh" ) { wait 0.1; - v_fx_origin = ai gettagorigin( "J_SpineLower" ); + v_fx_origin = ai sys::gettagorigin( "J_SpineLower" ); } playfx( level._effect["leaper_spawn"], v_fx_origin ); @@ -1011,7 +1011,7 @@ leaper_traverse_watcher() { self.elevator_parent = undefined; - object_is_on_elevator_func = getFunction( "maps\mp\zm_highrise_elevators", "object_is_on_elevator" ); + object_is_on_elevator_func = pluto_sys::getfunction( "maps\mp\zm_highrise_elevators", "object_is_on_elevator" ); if ( isDefined( object_is_on_elevator_func ) && is_true( self [[ object_is_on_elevator_func ]]() ) ) { if ( isdefined( self.elevator_parent ) ) @@ -1034,8 +1034,8 @@ leaper_traverse_watcher() leaper_playable_area_failsafe() { self endon( "death" ); - self.leaper_failsafe_start_time = gettime(); - playable_area = getentarray( "player_volume", "script_noteworthy" ); + self.leaper_failsafe_start_time = sys::gettime(); + playable_area = sys::getentarray( "player_volume", "script_noteworthy" ); b_outside_playable_space_this_frame = 0; self.leaper_outside_playable_space_time = -2; @@ -1043,7 +1043,7 @@ leaper_playable_area_failsafe() { b_outside_playable_last_check = b_outside_playable_space_this_frame; b_outside_playable_space_this_frame = is_leaper_outside_playable_space( playable_area ); - n_current_time = gettime(); + n_current_time = sys::gettime(); if ( b_outside_playable_space_this_frame && !b_outside_playable_last_check ) self.leaper_outside_playable_space_time = n_current_time; @@ -1081,7 +1081,7 @@ is_leaper_outside_playable_space( playable_area ) foreach ( area in playable_area ) { - if ( self istouching( area ) ) + if ( self sys::istouching( area ) ) b_outside_play_space = 0; } @@ -1112,7 +1112,7 @@ leaper_spawn_failsafe() dist_sq = dist_sq + 576; wait 1; - dist_sq = dist_sq + distancesquared( self.origin, prevorigin ); + dist_sq = dist_sq + sys::distancesquared( self.origin, prevorigin ); prevorigin = self.origin; } @@ -1153,7 +1153,7 @@ do_leaper_emerge( spot ) spot.is_spawning = 1; anim_org = spot.origin; anim_ang = spot.angles; - self ghost(); + self sys::ghost(); self thread maps\mp\zombies\_zm_spawner::hide_pop(); self thread leaper_death_wait( "spawn_anim" ); @@ -1185,9 +1185,9 @@ leaper_emerge() self endon( "death" ); if ( self.spawn_point.script_parameters == "emerge_bottom" ) - self animscripted( self.spawn_point.origin, self.spawn_point.angles, "zm_spawn_elevator_from_floor" ); + self sys::animscripted( self.spawn_point.origin, self.spawn_point.angles, "zm_spawn_elevator_from_floor" ); else - self animscripted( self.spawn_point.origin, self.spawn_point.angles, "zm_spawn_elevator_from_ceiling" ); + self sys::animscripted( self.spawn_point.origin, self.spawn_point.angles, "zm_spawn_elevator_from_ceiling" ); self maps\mp\animscripts\zm_shared::donotetracks( "spawn_anim" ); self.deathfunction = maps\mp\zombies\_zm_spawner::zombie_death_animscript; @@ -1197,7 +1197,7 @@ leaper_emerge() leaper_round_start_audio() { wait 2.5; - players = get_players(); + players = sys::getplayers(); num = randomintrange( 0, players.size ); players[num] maps\mp\zombies\_zm_audio::create_and_play_dialog( "general", "leaper_round" ); array_thread( players, ::wait_for_player_to_see_leaper ); @@ -1215,9 +1215,9 @@ wait_for_player_to_see_leaper() foreach ( leaper in leapers ) { - player_vec = vectornormalize( anglestoforward( self.angles ) ); - player_leaper = vectornormalize( leaper.origin - self.origin ); - dot = vectordot( player_vec, player_leaper ); + player_vec = sys::vectornormalize( anglestoforward( self.angles ) ); + player_leaper = sys::vectornormalize( leaper.origin - self.origin ); + dot = sys::vectordot( player_vec, player_leaper ); if ( dot > 0.707 ) { 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 ef87db6..b3045b9 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz.gsc @@ -30,21 +30,21 @@ precache() precachemodel( "c_zom_mech_claw" ); precachemodel( "c_zom_mech_faceplate" ); precachemodel( "c_zom_mech_powersupply_cap" ); - level._effect["mech_dmg_sparks"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_sparks" ); - level._effect["mech_dmg_steam"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_steam" ); - level._effect["mech_booster"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_jump_booster" ); - level._effect["mech_wpn_source"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_wpn_source" ); - level._effect["mech_wpn_flamethrower"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_wpn_flamethrower" ); - level._effect["mech_booster_landing"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_jump_landing" ); - level._effect["mech_faceplate_dmg"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_armor_face" ); - level._effect["mech_armor_dmg"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_armor" ); - level._effect["mech_exhaust"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_exhaust_smoke" ); - level._effect["mech_booster_feet"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_jump_booster_sm" ); - level._effect["mech_headlamp"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_head_light" ); - level._effect["mech_footstep_steam"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_foot_step_steam" ); + level._effect["mech_dmg_sparks"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_sparks" ); + level._effect["mech_dmg_steam"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_steam" ); + level._effect["mech_booster"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_jump_booster" ); + level._effect["mech_wpn_source"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_wpn_source" ); + level._effect["mech_wpn_flamethrower"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_wpn_flamethrower" ); + level._effect["mech_booster_landing"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_jump_landing" ); + level._effect["mech_faceplate_dmg"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_armor_face" ); + level._effect["mech_armor_dmg"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_armor" ); + level._effect["mech_exhaust"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_exhaust_smoke" ); + level._effect["mech_booster_feet"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_jump_booster_sm" ); + level._effect["mech_headlamp"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_head_light" ); + level._effect["mech_footstep_steam"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_foot_step_steam" ); setdvar( "zombie_double_wide_checks", 1 ); precacherumble( "mechz_footsteps" ); - precacheshellshock( "lava_small" ); + sys::precacheshellshock( "lava_small" ); } register_clientfields() @@ -74,12 +74,12 @@ register_burn_overlay() main() { register_clientfields(); - level._effect["mechz_death"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_death" ); - level._effect["mechz_sparks"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_sparks" ); - level._effect["mechz_steam"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_steam" ); - level._effect["mechz_claw"] = loadfx( "maps/zombie_tomb/fx_tomb_mech_wpn_claw" ); - 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" ); + level._effect["mechz_death"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_death" ); + level._effect["mechz_sparks"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_sparks" ); + level._effect["mechz_steam"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_dmg_steam" ); + level._effect["mechz_claw"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_wpn_claw" ); + level._effect["mechz_claw_arm"] = sys::loadfx( "maps/zombie_tomb/fx_tomb_mech_wpn_source" ); + level._effect["mech_booster_landing"] = sys::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 ); @@ -96,7 +96,7 @@ init_animtree() init() { maps\mp\zombies\_zm_ai_mechz_ffotd::mechz_init_start(); - level.mechz_spawners = getentarray( "mechz_spawner", "script_noteworthy" ); + level.mechz_spawners = sys::getentarray( "mechz_spawner", "script_noteworthy" ); if ( level.mechz_spawners.size == 0 ) return; @@ -189,21 +189,21 @@ init() mechz_setup_armor_pieces() { level.mechz_armor_info = []; - level.mechz_armor_info[0] = spawnstruct(); + level.mechz_armor_info[0] = sys::spawnstruct(); level.mechz_armor_info[0].model = "c_zom_mech_armor_knee_left"; level.mechz_armor_info[0].tag = "J_Knee_Attach_LE"; - level.mechz_armor_info[1] = spawnstruct(); + level.mechz_armor_info[1] = sys::spawnstruct(); level.mechz_armor_info[1].model = "c_zom_mech_armor_knee_right"; level.mechz_armor_info[1].tag = "J_Knee_attach_RI"; - level.mechz_armor_info[2] = spawnstruct(); + level.mechz_armor_info[2] = sys::spawnstruct(); level.mechz_armor_info[2].model = "c_zom_mech_armor_shoulder_left"; level.mechz_armor_info[2].tag = "J_ShoulderArmor_LE"; - level.mechz_armor_info[3] = spawnstruct(); + level.mechz_armor_info[3] = sys::spawnstruct(); level.mechz_armor_info[3].model = "c_zom_mech_armor_shoulder_right"; level.mechz_armor_info[3].tag = "J_ShoulderArmor_RI"; - level.mechz_armor_info[4] = spawnstruct(); + level.mechz_armor_info[4] = sys::spawnstruct(); level.mechz_armor_info[4].tag = "J_Root_Attach_LE"; - level.mechz_armor_info[5] = spawnstruct(); + level.mechz_armor_info[5] = sys::spawnstruct(); level.mechz_armor_info[5].tag = "J_Root_Attach_RI"; for ( i = 0; i < level.mechz_armor_info.size; i++ ) @@ -354,8 +354,8 @@ mechz_setup_snd() if ( !isdefined( self.sndloopent ) ) { - self.sndloopent = spawn( "script_origin", self.origin ); - self.sndloopent linkto( self, "tag_origin" ); + self.sndloopent = sys::spawn( "script_origin", self.origin ); + self.sndloopent sys::linkto( self, "tag_origin" ); self thread snddeleteentondeath( self.sndloopent ); } @@ -528,7 +528,7 @@ mechz_attach_objects() for ( i = 0; i < level.mechz_armor_info.size; i++ ) { - self.armor_state[i] = spawnstruct(); + self.armor_state[i] = sys::spawnstruct(); self.armor_state[i].index = i; self.armor_state[i].tag = level.mechz_armor_info[i].tag; @@ -545,17 +545,17 @@ mechz_attach_objects() self.m_claw = undefined; } - org = self gettagorigin( "tag_claw" ); - ang = self gettagangles( "tag_claw" ); - self.m_claw = spawn( "script_model", org ); + org = self sys::gettagorigin( "tag_claw" ); + ang = self sys::gettagangles( "tag_claw" ); + self.m_claw = sys::spawn( "script_model", org ); self.m_claw setmodel( "c_zom_mech_claw" ); self.m_claw.angles = ang; - self.m_claw linkto( self, "tag_claw" ); + self.m_claw sys::linkto( self, "tag_claw" ); self.m_claw useanimtree( #animtree ); if ( isdefined( self.m_claw_damage_trigger ) ) { - self.m_claw_damage_trigger unlink(); + self.m_claw_damage_trigger sys::unlink(); self.m_claw_damage_trigger delete(); self.m_claw_damage_trigger = undefined; } @@ -563,10 +563,10 @@ mechz_attach_objects() trigger_spawnflags = 0; trigger_radius = 3; trigger_height = 15; - self.m_claw_damage_trigger = spawn( "trigger_damage", org, trigger_spawnflags, trigger_radius, trigger_height ); + self.m_claw_damage_trigger = sys::spawn( "trigger_damage", org, trigger_spawnflags, trigger_radius, trigger_height ); self.m_claw_damage_trigger.angles = ang; - self.m_claw_damage_trigger enablelinkto(); - self.m_claw_damage_trigger linkto( self, "tag_claw" ); + self.m_claw_damage_trigger enablesys::linkto(); + self.m_claw_damage_trigger sys::linkto( self, "tag_claw" ); self thread mechz_claw_damage_trigger_thread(); self attach( "c_zom_mech_faceplate", "J_Helmet", 0 ); self.has_helmet = 1; @@ -643,14 +643,14 @@ mechz_spawn() self.zombie_init_done = 1; self notify( "zombie_init_done" ); self.allowpain = 0; - self animmode( "normal" ); - self orientmode( "face enemy" ); + self sys::animmode( "normal" ); + self sys::orientmode( "face enemy" ); self maps\mp\zombies\_zm_spawner::zombie_setup_attack_properties(); self.completed_emerging_into_playable_area = 1; self notify( "completed_emerging_into_playable_area" ); self.no_powerups = 0; - self setfreecameralockonallowed( 0 ); - self notsolid(); + self sys::setfreecameralockonallowed( 0 ); + self sys::notsolid(); self thread maps\mp\zombies\_zm_spawner::zombie_eye_glow(); level thread maps\mp\zombies\_zm_spawner::zombie_death_event( self ); self thread maps\mp\zombies\_zm_spawner::enemy_death_detection(); @@ -684,10 +684,10 @@ mechz_spawn() if ( !isdefined( spawn_pos.angles ) ) spawn_pos.angles = ( 0, 0, 0 ); - self animscripted( spawn_pos.origin, spawn_pos.angles, "zm_spawn" ); + self sys::animscripted( spawn_pos.origin, spawn_pos.angles, "zm_spawn" ); self maps\mp\animscripts\zm_shared::donotetracks( "jump_anim" ); - self setfreecameralockonallowed( 1 ); - self solid(); + self sys::setfreecameralockonallowed( 1 ); + self sys::solid(); self set_zombie_run_cycle( "walk" ); if ( isdefined( level.mechz_find_flesh_override_func ) ) @@ -705,11 +705,11 @@ get_closest_mechz_spawn_pos( org ) { best_dist = -1; best_pos = undefined; - players = get_players(); + players = sys::getplayers(); for ( i = 0; i < level.zombie_mechz_locations.size; i++ ) { - dist = distancesquared( org, level.zombie_mechz_locations[i].origin ); + dist = sys::distancesquared( org, level.zombie_mechz_locations[i].origin ); if ( dist < best_dist || best_dist < 0 ) { @@ -732,7 +732,7 @@ get_best_mechz_spawn_pos( ignore_used_positions ) best_dist = -1; best_pos = undefined; - players = get_players(); + players = sys::getplayers(); for ( i = 0; i < level.zombie_mechz_locations.size; i++ ) { @@ -746,7 +746,7 @@ get_best_mechz_spawn_pos( ignore_used_positions ) { if ( is_player_valid( players[j], 1, 1 ) ) { - dist = distancesquared( level.zombie_mechz_locations[i].origin, players[j].origin ); + dist = sys::distancesquared( level.zombie_mechz_locations[i].origin, players[j].origin ); if ( dist < best_dist || best_dist < 0 ) { @@ -785,7 +785,7 @@ mechz_health_increases() { if ( !isdefined( level.mechz_last_spawn_round ) || level.round_number > level.mechz_last_spawn_round ) { - a_players = getplayers(); + a_players = sys::getplayers(); n_player_modifier = 1; if ( a_players.size > 1 ) @@ -868,7 +868,7 @@ mechz_death() mechz_explode( str_tag, death_origin ) { wait 2.0; - v_origin = self gettagorigin( str_tag ); + v_origin = self sys::gettagorigin( str_tag ); level notify( "mechz_exploded", v_origin ); playsoundatposition( "zmb_ai_mechz_death_explode", v_origin ); playfx( level._effect["mechz_death"], v_origin ); @@ -924,7 +924,7 @@ mechz_stun( time ) while ( curr_time < time ) { - self animscripted( self.origin, self.angles, "zm_stun" ); + self sys::animscripted( self.origin, self.angles, "zm_stun" ); self maps\mp\animscripts\zm_shared::donotetracks( "stun_anim" ); self clearanim( %root, 0 ); curr_time = curr_time + anim_time; @@ -956,18 +956,18 @@ mechz_tank_hit_callback() v_trace = physicstrace( self.origin, v_trace_end, ( -15, -15, -5 ), ( 15, 15, 5 ), self ); self.origin = v_trace["position"]; timer = 0; - self animscripted( self.origin, self.angles, "zm_tank_hit_in" ); + self sys::animscripted( self.origin, self.angles, "zm_tank_hit_in" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim" ); anim_length = self getanimlengthfromasd( "zm_tank_hit_loop", 0 ); while ( timer < level.mechz_tank_knockdown_time ) { timer = timer + anim_length; - self animscripted( self.origin, self.angles, "zm_tank_hit_loop" ); + self sys::animscripted( self.origin, self.angles, "zm_tank_hit_loop" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim" ); } - self animscripted( self.origin, self.angles, "zm_tank_hit_out" ); + self sys::animscripted( self.origin, self.angles, "zm_tank_hit_out" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim" ); /# if ( getdvarint( #"_id_E7121222" ) > 1 ) @@ -976,20 +976,20 @@ mechz_tank_hit_callback() self.not_interruptable = 0; self.mechz_hit_by_tank = 0; - if ( !level.vh_tank ent_flag( "tank_moving" ) && self istouching( level.vh_tank ) ) + if ( !level.vh_tank ent_flag( "tank_moving" ) && self sys::istouching( level.vh_tank ) ) { - self notsolid(); - self ghost(); + self sys::notsolid(); + self sys::ghost(); self.mechz_hidden = 1; if ( isdefined( self.m_claw ) ) - self.m_claw ghost(); + self.m_claw sys::ghost(); self.fx_field_old = self.fx_field; self thread maps\mp\zombies\_zm_spawner::zombie_eye_glow_stop(); self fx_cleanup(); self mechz_do_jump(); - self solid(); + self sys::solid(); self.mechz_hidden = 0; } } @@ -1014,18 +1014,18 @@ mechz_robot_stomp_callback() v_trace = physicstrace( self.origin, v_trace_end, ( -15, -15, -5 ), ( 15, 15, 5 ), self ); self.origin = v_trace["position"]; timer = 0; - self animscripted( self.origin, self.angles, "zm_robot_hit_in" ); + self sys::animscripted( self.origin, self.angles, "zm_robot_hit_in" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim" ); anim_length = self getanimlengthfromasd( "zm_robot_hit_loop", 0 ); while ( timer < level.mechz_robot_knockdown_time ) { timer = timer + anim_length; - self animscripted( self.origin, self.angles, "zm_robot_hit_loop" ); + self sys::animscripted( self.origin, self.angles, "zm_robot_hit_loop" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim" ); } - self animscripted( self.origin, self.angles, "zm_robot_hit_out" ); + self sys::animscripted( self.origin, self.angles, "zm_robot_hit_out" ); self maps\mp\animscripts\zm_shared::donotetracks( "jump_anim" ); /# if ( getdvarint( #"_id_E7121222" ) > 1 ) @@ -1043,7 +1043,7 @@ mechz_delayed_item_delete() mechz_get_closest_valid_player() { - players = get_players(); + players = sys::getplayers(); if ( isdefined( self.ignore_player ) ) { @@ -1083,7 +1083,7 @@ mechz_get_closest_valid_player() get_favorite_enemy( origin, players ) { - mechz_targets = getplayers(); + mechz_targets = sys::getplayers(); least_hunted = undefined; best_hunted_val = -1; best_dist = -1; @@ -1107,7 +1107,7 @@ get_favorite_enemy( origin, players ) continue; } - distances[i] = distancesquared( self.origin, mechz_targets[i].origin ); + distances[i] = sys::distancesquared( self.origin, mechz_targets[i].origin ); } found_weapon_target = 0; @@ -1138,14 +1138,14 @@ get_favorite_enemy( origin, players ) if ( isdefined( self.favoriteenemy ) && is_player_valid( self.favoriteenemy, 1, 1 ) ) { - if ( distancesquared( self.origin, self.favoriteenemy.origin ) <= level.mechz_sticky_dist_sq ) + if ( sys::distancesquared( self.origin, self.favoriteenemy.origin ) <= level.mechz_sticky_dist_sq ) { self.favoriteenemy.hunted_by++; return self.favoriteenemy; } } - func = getFunction( "maps/mp/zm_tomb_chamber", "is_player_in_chamber" ); + func = pluto_sys::getfunction( "maps/mp/zm_tomb_chamber", "is_player_in_chamber" ); for ( i = 0; i < mechz_targets.size; i++ ) { if ( isdefined( mechz_targets[i].in_giant_robot_head ) ) @@ -1191,9 +1191,9 @@ mechz_check_in_arc( right_offset ) enemy_vec = self.favoriteenemy.origin - origin; enemy_yaw_vec = ( enemy_vec[0], enemy_vec[1], 0 ); facing_yaw_vec = ( facing_vec[0], facing_vec[1], 0 ); - enemy_yaw_vec = vectornormalize( enemy_yaw_vec ); - facing_yaw_vec = vectornormalize( facing_yaw_vec ); - enemy_dot = vectordot( facing_yaw_vec, enemy_yaw_vec ); + enemy_yaw_vec = sys::vectornormalize( enemy_yaw_vec ); + facing_yaw_vec = sys::vectornormalize( facing_yaw_vec ); + enemy_dot = sys::vectordot( facing_yaw_vec, enemy_yaw_vec ); if ( enemy_dot < cos( level.mechz_aim_max_yaw ) ) return false; @@ -1284,7 +1284,7 @@ watch_for_player_dist() else reset_dist = level.mechz_reset_dist_sq; - if ( !isdefined( player ) || distancesquared( player.origin, self.origin ) > reset_dist ) + if ( !isdefined( player ) || sys::distancesquared( player.origin, self.origin ) > reset_dist ) self.disable_complex_behaviors = 0; wait 0.5; @@ -1352,14 +1352,14 @@ mechz_find_flesh() println( "\\n\\tMZ: No Enemy, idling\\n" ); #/ self.goal_pos = self.origin; - self setgoalpos( self.goal_pos ); + self sys::setgoalpos( self.goal_pos ); self.ai_state = "idle"; - self setanimstatefromasd( "zm_idle" ); + self sys::setanimstatefromasd( "zm_idle" ); wait 0.5; continue; } - entity_on_tank_func = getFunction( "maps/mp/zm_tomb_tank", "entity_on_tank" ); + entity_on_tank_func = pluto_sys::getfunction( "maps/mp/zm_tomb_tank", "entity_on_tank" ); if ( isDefined( entity_on_tank_func ) && player [[ entity_on_tank_func ]]() ) { if ( level.vh_tank ent_flag( "tank_moving" ) ) @@ -1385,7 +1385,7 @@ mechz_find_flesh() if ( isdefined( self.jump_pos ) ) { self.goal_pos = self.jump_pos.origin; - self setgoalpos( self.goal_pos ); + self sys::setgoalpos( self.goal_pos ); } wait 0.5; @@ -1403,7 +1403,7 @@ mechz_find_flesh() self.ai_state = "tracking_tank"; self.goalradius = level.mechz_custom_goalradius; self.custom_goalradius_override = level.mechz_custom_goalradius; - func = getFunction( "maps/mp/zm_tomb_tank", "get_closest_mechz_tag_on_tank" ); + func = pluto_sys::getfunction( "maps/mp/zm_tomb_tank", "get_closest_mechz_tag_on_tank" ); closest_tank_tag = undefined; if ( isDefined( func ) ) { @@ -1420,16 +1420,16 @@ mechz_find_flesh() continue; } - closest_tank_tag_pos = level.vh_tank gettagorigin( closest_tank_tag ); + closest_tank_tag_pos = level.vh_tank sys::gettagorigin( closest_tank_tag ); - if ( abs( self.origin[2] - closest_tank_tag_pos[2] ) >= level.mechz_custom_goalradius || distance2dsquared( self.origin, closest_tank_tag_pos ) >= level.mechz_custom_goalradius_sq ) + if ( abs( self.origin[2] - closest_tank_tag_pos[2] ) >= level.mechz_custom_goalradius || sys::distance2dsquared( self.origin, closest_tank_tag_pos ) >= level.mechz_custom_goalradius_sq ) { /# if ( getdvarint( #"_id_E7121222" ) > 1 ) println( "\\n\\tMZ: Enemy on tank, setting tank pos as goal\\n" ); #/ self.goal_pos = closest_tank_tag_pos; - self setgoalpos( self.goal_pos ); + self sys::setgoalpos( self.goal_pos ); self waittill_any_or_timeout( 0.5, "goal", "bad_path" ); if ( isDefined( entity_on_tank_func ) && !player [[ entity_on_tank_func ]]() ) @@ -1442,7 +1442,7 @@ mechz_find_flesh() } } - if ( abs( self.origin[2] - closest_tank_tag_pos[2] ) < level.mechz_custom_goalradius && distance2dsquared( self.origin, closest_tank_tag_pos ) < level.mechz_custom_goalradius_sq ) + if ( abs( self.origin[2] - closest_tank_tag_pos[2] ) < level.mechz_custom_goalradius && sys::distance2dsquared( self.origin, closest_tank_tag_pos ) < level.mechz_custom_goalradius_sq ) { /# if ( getdvarint( #"_id_E7121222" ) > 1 ) @@ -1467,7 +1467,7 @@ mechz_find_flesh() println( "\\n\\tMZ: Jump Requested, going to jump pos\\n" ); #/ self.goal_pos = self.jump_pos.origin; - self setgoalpos( self.goal_pos ); + self sys::setgoalpos( self.goal_pos ); wait 0.5; continue; } @@ -1479,11 +1479,11 @@ mechz_find_flesh() println( "\\n\\tMZ: Sprinting\\n" ); #/ self.goal_pos = player.origin; - self setgoalpos( self.goal_pos ); + self sys::setgoalpos( self.goal_pos ); wait 0.5; continue; } - else if ( distancesquared( self.origin, player.origin ) < level.mechz_aggro_dist_sq ) + else if ( sys::distancesquared( self.origin, player.origin ) < level.mechz_aggro_dist_sq ) { /# if ( getdvarint( #"_id_E7121222" ) > 1 ) @@ -1521,13 +1521,13 @@ mechz_find_flesh() damage_prone_players() { self endon( "death" ); - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { if ( isdefined( self.favoriteenemy ) && self.favoriteenemy == player ) { - n_dist = distance2dsquared( player.origin, self.origin ); + n_dist = sys::distance2dsquared( player.origin, self.origin ); if ( n_dist < 2025 ) { @@ -1550,7 +1550,7 @@ damage_prone_players() melee_anim_func() { - self.next_leap_time = gettime() + 1500; + self.next_leap_time = sys::gettime() + 1500; } mechz_launch_armor_piece() @@ -1719,7 +1719,7 @@ mechz_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon, if ( !( isdefined( self.not_interruptable ) && self.not_interruptable ) && !( isdefined( self.is_traversing ) && self.is_traversing ) ) { self mechz_interrupt(); - self animscripted( self.origin, self.angles, "zm_pain_faceplate" ); + self sys::animscripted( self.origin, self.angles, "zm_pain_faceplate" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim_faceplate" ); } @@ -1730,8 +1730,8 @@ mechz_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon, { self.powerplant_covered = 0; self detach( "c_zom_mech_powersupply_cap", "tag_powersupply" ); - cap_model = spawn( "script_model", self gettagorigin( "tag_powersupply" ) ); - cap_model.angles = self gettagangles( "tag_powersupply" ); + cap_model = sys::spawn( "script_model", self sys::gettagorigin( "tag_powersupply" ) ); + cap_model.angles = self sys::gettagangles( "tag_powersupply" ); cap_model setmodel( "c_zom_mech_powersupply_cap" ); cap_model physicslaunch( cap_model.origin, anglestoforward( cap_model.angles ) ); cap_model thread mechz_delayed_item_delete(); @@ -1742,7 +1742,7 @@ mechz_damage_override( inflictor, attacker, damage, flags, meansofdeath, weapon, if ( !( isdefined( self.not_interruptable ) && self.not_interruptable ) && !( isdefined( self.is_traversing ) && self.is_traversing ) ) { self mechz_interrupt(); - self animscripted( self.origin, self.angles, "zm_pain_powercore" ); + self sys::animscripted( self.origin, self.angles, "zm_pain_powercore" ); self maps\mp\animscripts\zm_shared::donotetracks( "pain_anim_powercore" ); } } @@ -1793,7 +1793,7 @@ mechz_set_locomotion_speed() self endon( "death" ); self.prev_move_speed = self.zombie_move_speed; - entity_on_tank_func = getFunction( "maps/mp/zm_tomb_tank", "entity_on_tank" ); + entity_on_tank_func = pluto_sys::getfunction( "maps/mp/zm_tomb_tank", "entity_on_tank" ); if ( !isdefined( self.favoriteenemy ) ) self.zombie_move_speed = "walk"; else if ( isdefined( self.force_run ) && self.force_run ) @@ -1802,7 +1802,7 @@ mechz_set_locomotion_speed() self.zombie_move_speed = "sprint"; else if ( isDefined( entity_on_tank_func ) && isdefined( self.favoriteenemy ) && self.favoriteenemy [[ entity_on_tank_func ]]() && isdefined( level.vh_tank ) && level.vh_tank ent_flag( "tank_activated" ) ) self.zombie_move_speed = "run"; - else if ( isdefined( self.favoriteenemy ) && distancesquared( self.origin, self.favoriteenemy.origin ) > level.mechz_dist_for_sprint ) + else if ( isdefined( self.favoriteenemy ) && sys::distancesquared( self.origin, self.favoriteenemy.origin ) > level.mechz_dist_for_sprint ) self.zombie_move_speed = "run"; else if ( !( isdefined( self.has_powerplant ) && self.has_powerplant ) ) self.zombie_move_speed = "walk"; @@ -1812,12 +1812,12 @@ mechz_set_locomotion_speed() if ( self.zombie_move_speed == "sprint" && self.prev_move_speed != "sprint" ) { self mechz_interrupt(); - self animscripted( self.origin, self.angles, "zm_sprint_intro" ); + self sys::animscripted( self.origin, self.angles, "zm_sprint_intro" ); self maps\mp\animscripts\zm_shared::donotetracks( "jump_anim" ); } else if ( self.zombie_move_speed != "sprint" && self.prev_move_speed == "sprint" ) { - self animscripted( self.origin, self.angles, "zm_sprint_outro" ); + self sys::animscripted( self.origin, self.angles, "zm_sprint_outro" ); self maps\mp\animscripts\zm_shared::donotetracks( "jump_anim" ); } @@ -1827,7 +1827,7 @@ mechz_set_locomotion_speed() response_to_air_raid_siren_vo() { wait 3.0; - a_players = getplayers(); + a_players = sys::getplayers(); if ( a_players.size == 0 ) return; @@ -1877,7 +1877,7 @@ start_see_mech_zombie_vo() ai_mechz = zombie; } - a_players = getplayers(); + a_players = sys::getplayers(); if ( a_players.size == 0 ) return; @@ -1897,7 +1897,7 @@ player_looking_at_mechz_watcher( ai_mechz ) while ( true ) { - if ( distancesquared( self.origin, ai_mechz.origin ) < 1000000 ) + if ( sys::distancesquared( self.origin, ai_mechz.origin ) < 1000000 ) { if ( self is_player_looking_at( ai_mechz.origin + vectorscale( ( 0, 0, 1 ), 60.0 ), 0.75 ) ) { @@ -1937,14 +1937,14 @@ play_shoot_arm_hint_vo() if ( !isdefined( self.e_grabbed ) ) return; - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { if ( player == self.e_grabbed ) continue; - if ( distancesquared( self.origin, player.origin ) < 1000000 ) + if ( sys::distancesquared( self.origin, player.origin ) < 1000000 ) { if ( player is_player_looking_at( self.origin + vectorscale( ( 0, 0, 1 ), 60.0 ), 0.75 ) ) { @@ -1980,14 +1980,14 @@ mechz_hint_vo() continue; } - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { if ( isdefined( self.e_grabbed ) && self.e_grabbed == player ) continue; - if ( distancesquared( self.origin, player.origin ) < 1000000 ) + if ( sys::distancesquared( self.origin, player.origin ) < 1000000 ) { if ( player is_player_looking_at( self.origin + vectorscale( ( 0, 0, 1 ), 60.0 ), 0.75 ) ) { @@ -2007,14 +2007,14 @@ mechz_hint_vo() shoot_mechz_head_vo() { self endon( "death" ); - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { if ( isdefined( self.e_grabbed ) && self.e_grabbed == player ) continue; - if ( distancesquared( self.origin, player.origin ) < 1000000 ) + if ( sys::distancesquared( self.origin, player.origin ) < 1000000 ) { if ( player is_player_looking_at( self.origin + vectorscale( ( 0, 0, 1 ), 60.0 ), 0.75 ) ) { @@ -2030,11 +2030,11 @@ shoot_mechz_head_vo() mechz_jump_vo() { - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { - if ( distancesquared( self.origin, player.origin ) < 1000000 ) + if ( sys::distancesquared( self.origin, player.origin ) < 1000000 ) { if ( player is_player_looking_at( self.origin + vectorscale( ( 0, 0, 1 ), 60.0 ), 0.5 ) ) { @@ -2052,11 +2052,11 @@ mechz_stomped_by_giant_robot_vo() { self endon( "death" ); wait 5.0; - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { - if ( distancesquared( self.origin, player.origin ) < 1000000 ) + if ( sys::distancesquared( self.origin, player.origin ) < 1000000 ) { if ( player is_player_looking_at( self.origin + vectorscale( ( 0, 0, 1 ), 60.0 ), 0.75 ) ) { 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 424682a..3e145f4 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 @@ -25,7 +25,7 @@ mechz_in_range_for_jump() return false; } - dist = distancesquared( self.origin, self.jump_pos.origin ); + dist = sys::distancesquared( self.origin, self.jump_pos.origin ); if ( dist <= 100 ) return true; @@ -39,7 +39,7 @@ mechz_jump_think( spawn_pos ) self endon( "stop_jump_think" ); self.closest_jump_point = spawn_pos; self.goal_pos = self.origin; - self setgoalpos( self.goal_pos ); + self sys::setgoalpos( self.goal_pos ); self thread mechz_jump_stuck_watcher(); while ( true ) @@ -114,7 +114,7 @@ watch_for_valid_melee() { self waittillmatch( "melee_anim", "end" ); - if ( isdefined( self.favoriteenemy ) && distancesquared( self.origin, self.favoriteenemy.origin ) < 16384 ) + if ( isdefined( self.favoriteenemy ) && sys::distancesquared( self.origin, self.favoriteenemy.origin ) < 16384 ) { /# if ( getdvarint( #"_id_E7121222" ) > 1 ) @@ -202,7 +202,7 @@ mechz_should_jump() return false; } - dist = distancesquared( self.origin, self.favoriteenemy.origin ); + dist = sys::distancesquared( self.origin, self.favoriteenemy.origin ); if ( dist >= level.mechz_jump_dist_threshold ) { @@ -238,28 +238,28 @@ mechz_do_jump( wait_for_stationary_tank ) println( "\\nMZ: Jump setting not interruptable\\n" ); #/ self.not_interruptable = 1; - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); self thread mechz_jump_vo(); - self animscripted( self.origin, self.angles, "zm_fly_out" ); + self sys::animscripted( self.origin, self.angles, "zm_fly_out" ); self maps\mp\animscripts\zm_shared::donotetracks( "jump_anim" ); - self ghost(); + self sys::ghost(); self.mechz_hidden = 1; if ( isdefined( self.m_claw ) ) - self.m_claw ghost(); + self.m_claw sys::ghost(); if ( self.fx_field ) self.fx_field_old = self.fx_field; self thread maps\mp\zombies\_zm_spawner::zombie_eye_glow_stop(); self fx_cleanup(); - self animscripted( self.origin, self.angles, "zm_fly_hover" ); + self sys::animscripted( self.origin, self.angles, "zm_fly_hover" ); wait( level.mechz_jump_delay ); if ( isdefined( wait_for_stationary_tank ) && wait_for_stationary_tank ) level.vh_tank ent_flag_waitopen( "tank_moving" ); - self notsolid(); + self sys::notsolid(); closest_jump_point = get_best_mechz_spawn_pos( 1 ); if ( isdefined( closest_jump_point ) ) @@ -268,10 +268,10 @@ mechz_do_jump( wait_for_stationary_tank ) if ( !isdefined( self.closest_jump_point.angles ) ) self.closest_jump_point.angles = ( 0, 0, 0 ); - self animscripted( self.closest_jump_point.origin, self.closest_jump_point.angles, "zm_fly_in" ); - self solid(); + self sys::animscripted( self.closest_jump_point.origin, self.closest_jump_point.angles, "zm_fly_in" ); + self sys::solid(); self.mechz_hidden = 0; - self show(); + self sys::show(); self.fx_field = self.fx_field_old; self.fx_field_old = undefined; if ( level.script == "zm_tomb" ) @@ -285,11 +285,11 @@ mechz_do_jump( wait_for_stationary_tank ) self thread maps\mp\zombies\_zm_spawner::zombie_eye_glow(); if ( isdefined( self.m_claw ) ) - self.m_claw show(); + self.m_claw sys::show(); self maps\mp\animscripts\zm_shared::donotetracks( "jump_anim" ); self.not_interruptable = 0; - self setfreecameralockonallowed( 1 ); + self sys::setfreecameralockonallowed( 1 ); /# if ( getdvarint( #"_id_E7121222" ) > 1 ) println( "\\nMZ: Jump clearing not interruptable\\n" ); 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 1d30d93..595182e 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 @@ -28,7 +28,7 @@ mechz_claw_detach() if ( isdefined( self.m_claw.fx_ent ) ) self.m_claw.fx_ent delete(); - self.m_claw unlink(); + self.m_claw sys::unlink(); self.m_claw physicslaunch( self.m_claw.origin, ( 0, 0, -1 ) ); self.m_claw thread mechz_delayed_item_delete(); self.m_claw = undefined; @@ -36,7 +36,7 @@ mechz_claw_detach() if ( isdefined( self.m_claw_damage_trigger ) ) { - self.m_claw_damage_trigger unlink(); + self.m_claw_damage_trigger sys::unlink(); self.m_claw_damage_trigger delete(); self.m_claw_damage_trigger = undefined; } @@ -67,7 +67,7 @@ mechz_claw_release( bopenclaw ) trace_start = self.e_grabbed.origin + vectorscale( ( 0, 0, 1 ), 70.0 ); trace_end = self.e_grabbed.origin + vectorscale( ( 0, 0, -1 ), 500.0 ); drop_trace = playerphysicstrace( trace_start, trace_end ) + vectorscale( ( 0, 0, 1 ), 24.0 ); - self.e_grabbed unlink(); + self.e_grabbed sys::unlink(); self.e_grabbed setorigin( drop_trace ); } @@ -81,7 +81,7 @@ mechz_claw_release( bopenclaw ) mechz_claw_shot_pain_reaction() { self mechz_interrupt(); - self animscripted( self.origin, self.angles, "zm_head_pain" ); + self sys::animscripted( self.origin, self.angles, "zm_head_pain" ); self maps\mp\animscripts\zm_shared::donotetracks( "head_pain_anim" ); } @@ -110,13 +110,13 @@ mechz_claw_aim( target_pos ) self endon( "kill_claw" ); self endon( "claw_complete" ); aim_anim = mechz_get_aim_anim( "zm_grapple", target_pos ); - self animscripted( self.origin, self.angles, "zm_grapple_aim_start" ); + self sys::animscripted( self.origin, self.angles, "zm_grapple_aim_start" ); self thread mechz_claw_notetracks(); self maps\mp\animscripts\zm_shared::donotetracks( "grapple_anim" ); while ( flag( "mechz_launching_claw" ) ) { - self animscripted( self.origin, self.angles, aim_anim ); + self sys::animscripted( self.origin, self.angles, aim_anim ); self maps\mp\animscripts\zm_shared::donotetracks( "grapple_anim" ); self clearanim( %root, 0.0 ); } @@ -169,7 +169,7 @@ claw_grapple() if ( !isdefined( self.favoriteenemy ) ) return; - v_claw_origin = self gettagorigin( "tag_claw" ); + v_claw_origin = self sys::gettagorigin( "tag_claw" ); v_claw_angles = vectortoangles( self.origin - self.favoriteenemy.origin ); self.fx_field = self.fx_field | 256; if ( level.script == "zm_tomb" ) @@ -181,11 +181,11 @@ claw_grapple() set_clientfield_alt_allplayers( "mechz_fx", self, self.fx_field ); } self.m_claw setanim( %ai_zombie_mech_grapple_arm_open_idle, 1, 0, 1 ); - self.m_claw unlink(); - self.m_claw.fx_ent = spawn( "script_model", self.m_claw gettagorigin( "tag_claw" ) ); - self.m_claw.fx_ent.angles = self.m_claw gettagangles( "tag_claw" ); + self.m_claw sys::unlink(); + self.m_claw.fx_ent = sys::spawn( "script_model", self.m_claw sys::gettagorigin( "tag_claw" ) ); + self.m_claw.fx_ent.angles = self.m_claw sys::gettagangles( "tag_claw" ); self.m_claw.fx_ent setmodel( "tag_origin" ); - self.m_claw.fx_ent linkto( self.m_claw, "tag_claw" ); + self.m_claw.fx_ent sys::linkto( self.m_claw, "tag_claw" ); network_safe_play_fx_on_tag( "mech_claw", 1, level._effect["mechz_claw"], self.m_claw.fx_ent, "tag_origin" ); v_enemy_origin = self.favoriteenemy.origin + vectorscale( ( 0, 0, 1 ), 36.0 ); n_dist = distance( v_claw_origin, v_enemy_origin ); @@ -198,21 +198,21 @@ claw_grapple() do { - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { if ( !is_player_valid( player, 1, 1 ) || !player player_can_be_grabbed() ) continue; - n_dist_sq = distancesquared( player.origin + vectorscale( ( 0, 0, 1 ), 36.0 ), self.m_claw.origin ); + n_dist_sq = sys::distancesquared( player.origin + vectorscale( ( 0, 0, 1 ), 36.0 ), self.m_claw.origin ); if ( n_dist_sq < 2304 ) { if ( isdefined( player.hasriotshield ) && player.hasriotshield && player getcurrentweapon() == level.riotshield_name ) { shield_dmg = level.zombie_vars["riotshield_hit_points"]; - func = getFunction( "maps/mp/zombies/_zm_weap_riotshield_tomb", "player_damage_shield" ); + func = pluto_sys::getfunction( "maps/mp/zombies/_zm_weap_riotshield_tomb", "player_damage_shield" ); if ( isDefined( func ) ) { player [[ func ]]( shield_dmg - 1, 1 ); @@ -235,7 +235,7 @@ claw_grapple() { self.e_grabbed set_clientfield_alt_toplayer( "mechz_grab", self.e_grabbed, 1 ); } - self.e_grabbed playerlinktodelta( self.m_claw, "tag_attach_player" ); + 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 setstance( "stand" ); @@ -264,14 +264,14 @@ claw_grapple() if ( !isalive( ai_zombie ) || isdefined( ai_zombie.is_giant_robot ) && ai_zombie.is_giant_robot || isdefined( ai_zombie.is_mechz ) && ai_zombie.is_mechz ) continue; - n_dist_sq = distancesquared( ai_zombie.origin + vectorscale( ( 0, 0, 1 ), 36.0 ), self.m_claw.origin ); + n_dist_sq = sys::distancesquared( ai_zombie.origin + vectorscale( ( 0, 0, 1 ), 36.0 ), self.m_claw.origin ); if ( n_dist_sq < 2304 ) { self.e_grabbed = ai_zombie; - self.e_grabbed linkto( self.m_claw, "tag_attach_player", ( 0, 0, 0 ) ); + self.e_grabbed sys::linkto( self.m_claw, "tag_attach_player", ( 0, 0, 0 ) ); self.e_grabbed.mechz_grabbed_by = self; - self.e_grabbed animcustom( ::zombie_grabbed_by_mechz_claw ); + self.e_grabbed sys::animcustom( ::zombie_grabbed_by_mechz_claw ); break; } } @@ -287,13 +287,13 @@ claw_grapple() n_time = n_dist / 1000; self mechz_claw_explosive_watcher(); - v_claw_origin = self gettagorigin( "tag_claw" ); - v_claw_angles = self gettagangles( "tag_claw" ); + v_claw_origin = self sys::gettagorigin( "tag_claw" ); + v_claw_angles = self sys::gettagangles( "tag_claw" ); self.m_claw moveto( v_claw_origin, max( 0.05, n_time ) ); self.m_claw playloopsound( "zmb_ai_mechz_claw_loop_in", 0.1 ); self.m_claw waittill( "movedone" ); - v_claw_origin = self gettagorigin( "tag_claw" ); - v_claw_angles = self gettagangles( "tag_claw" ); + 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 stoploopsound( 1 ); @@ -303,7 +303,7 @@ claw_grapple() self.m_claw.origin = v_claw_origin; self.m_claw.angles = v_claw_angles; self.m_claw clearanim( %root, 0.2 ); - self.m_claw linkto( self, "tag_claw", ( 0, 0, 0 ) ); + self.m_claw sys::linkto( self, "tag_claw", ( 0, 0, 0 ) ); self.m_claw setanim( %ai_zombie_mech_grapple_arm_closed_idle, 1, 0.2, 1 ); self.m_claw.fx_ent delete(); self.m_claw.fx_ent = undefined; @@ -329,7 +329,7 @@ claw_grapple() self.e_grabbed thread mechz_zombie_flamethrower_gib( self ); self thread check_for_claw_damaged( self.e_grabbed ); - self animscripted( self.origin, self.angles, "zm_flamethrower_claw_victim" ); + self sys::animscripted( self.origin, self.angles, "zm_flamethrower_claw_victim" ); self maps\mp\animscripts\zm_shared::donotetracks( "flamethrower_anim" ); } @@ -339,7 +339,7 @@ claw_grapple() zombie_grabbed_by_mechz_claw() { self endon( "death" ); - self setanimstatefromasd( "zm_grabbed_by_mech" ); + self sys::setanimstatefromasd( "zm_grabbed_by_mech" ); self.mechz_grabbed_by waittill_any( "death", "claw_complete", "kill_claw" ); } @@ -397,14 +397,14 @@ check_for_players_mid_grapple() while ( true ) { - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { if ( !is_player_valid( player, 1, 1 ) || !player player_can_be_grabbed() ) continue; - n_dist_sq = distancesquared( player.origin + vectorscale( ( 0, 0, 1 ), 36.0 ), self.origin ); + n_dist_sq = sys::distancesquared( player.origin + vectorscale( ( 0, 0, 1 ), 36.0 ), self.origin ); if ( n_dist_sq < 2304 ) { @@ -436,7 +436,7 @@ zombie_gib_all() a_gib_ref = []; a_gib_ref[0] = level._zombie_gib_piece_index_all; self gib( "normal", a_gib_ref ); - self ghost(); + self sys::ghost(); wait 0.4; if ( isdefined( self ) ) @@ -489,7 +489,7 @@ should_do_claw_attack() return false; } - if ( isdefined( self.last_claw_time ) && gettime() - self.last_claw_time < level.mechz_claw_cooldown_time ) + if ( isdefined( self.last_claw_time ) && sys::gettime() - self.last_claw_time < level.mechz_claw_cooldown_time ) { /# if ( getdvarint( #"_id_E7121222" ) > 1 ) @@ -507,7 +507,7 @@ should_do_claw_attack() return false; } - n_dist_sq = distancesquared( self.origin, self.favoriteenemy.origin ); + n_dist_sq = sys::distancesquared( self.origin, self.favoriteenemy.origin ); if ( n_dist_sq < 90000 || n_dist_sq > 1000000 ) { @@ -565,13 +565,13 @@ mechz_do_claw_grab() #/ assert( isdefined( self.favoriteenemy ) ); self thread mechz_kill_claw_watcher(); - self.last_claw_time = gettime(); + self.last_claw_time = sys::gettime(); target_pos = self.favoriteenemy.origin + vectorscale( ( 0, 0, 1 ), 30.0 ); self thread mechz_stop_basic_find_flesh(); self.ai_state = "grapple_attempt"; flag_set( "mechz_launching_claw" ); self thread mechz_claw_aim( target_pos ); - self orientmode( "face enemy" ); + self sys::orientmode( "face enemy" ); self waittillmatch( "grapple_anim", "muzzleflash" ); self claw_grapple(); self mechz_claw_cleanup(); @@ -617,21 +617,21 @@ mechz_claw_cleanup() { if ( !self.m_claw islinkedto( self ) ) { - v_claw_origin = self gettagorigin( "tag_claw" ); - v_claw_angles = self gettagangles( "tag_claw" ); + v_claw_origin = self sys::gettagorigin( "tag_claw" ); + v_claw_angles = self sys::gettagangles( "tag_claw" ); n_dist = distance( self.m_claw.origin, v_claw_origin ); n_time = n_dist / 1000; self.m_claw moveto( v_claw_origin, max( 0.05, n_time ) ); self.m_claw playloopsound( "zmb_ai_mechz_claw_loop_in", 0.1 ); self.m_claw waittill( "movedone" ); - v_claw_origin = self gettagorigin( "tag_claw" ); - v_claw_angles = self gettagangles( "tag_claw" ); + 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 stoploopsound( 1 ); self.m_claw.origin = v_claw_origin; self.m_claw.angles = v_claw_angles; self.m_claw clearanim( %root, 0.2 ); - self.m_claw linkto( self, "tag_claw", ( 0, 0, 0 ) ); + self.m_claw sys::linkto( self, "tag_claw", ( 0, 0, 0 ) ); } self.m_claw setanim( %ai_zombie_mech_grapple_arm_closed_idle, 1, 0.2, 1 ); diff --git a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_dev.gsc b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_dev.gsc index ce66d78..2f33c50 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_dev.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_mechz_dev.gsc @@ -19,7 +19,7 @@ mechz_debug() { if ( debug_level == 1 ) { - mechz_array = getentarray( "mechz_zombie_ai" ); + mechz_array = sys::getentarray( "mechz_zombie_ai" ); for ( i = 0; i < mechz_array.size; i++ ) { @@ -127,7 +127,7 @@ watch_devgui_mechz() mechz mechz_stop_basic_find_flesh(); mechz.ai_state = "devgui"; mechz.goal_pos = ( 446, -4318, 200 ); - mechz setgoalpos( mechz.goal_pos ); + mechz sys::setgoalpos( mechz.goal_pos ); } if ( getdvar( #"_id_6CF3EB40" ) == "on" ) @@ -149,7 +149,7 @@ watch_devgui_mechz() mechz mechz_stop_basic_find_flesh(); mechz.ai_state = "devgui"; mechz.goal_pos = ( 1657, -336, 92 ); - mechz setgoalpos( mechz.goal_pos ); + mechz sys::setgoalpos( mechz.goal_pos ); } if ( getdvar( #"_id_0DE1409A" ) == "on" ) @@ -233,18 +233,18 @@ setup_force_behavior() /# if ( !isdefined( level.test_align_struct ) ) { - player = get_players()[0]; + player = sys::getplayers()[0]; pos = player.origin; offset = anglestoforward( player.angles ); - offset = vectornormalize( offset ); - level.test_align_struct = spawn( "script_model", pos + 300 * offset ); + offset = sys::vectornormalize( offset ); + level.test_align_struct = sys::spawn( "script_model", pos + 300 * offset ); level.test_align_struct setmodel( "tag_origin" ); level.test_align_struct.angles = player.angles + vectorscale( ( 0, 1, 0 ), 180.0 ); level.test_align_struct thread align_test_struct(); level.test_align_struct.angles = player.angles + vectorscale( ( 0, 1, 0 ), 180.0 ); } - self linkto( level.test_align_struct, "tag_origin", ( 0, 0, 0 ), ( 0, 0, 0 ) ); + self sys::linkto( level.test_align_struct, "tag_origin", ( 0, 0, 0 ), ( 0, 0, 0 ) ); self.fx_field = self.fx_field & ~64; self.fx_field = self.fx_field & ~128; self.fx_field = self.fx_field & ~256; @@ -258,7 +258,7 @@ align_test_struct() { pos = level.players[0].origin; offset = anglestoforward( level.players[0].angles ); - offset = vectornormalize( offset ); + offset = sys::vectornormalize( offset ); dist = getdvarint( #"_id_6DCD047E" ); level.test_align_struct.origin = pos + dist * offset; level.test_align_struct.angles = get_behavior_orient(); @@ -270,7 +270,7 @@ align_test_struct() scripted_behavior( anim_scripted_name, notify_name ) { /# - self animscripted( level.test_align_struct.origin, level.test_align_struct.angles, anim_scripted_name ); + self sys::animscripted( level.test_align_struct.origin, level.test_align_struct.angles, anim_scripted_name ); self maps\mp\animscripts\zm_shared::donotetracks( notify_name ); #/ } @@ -283,7 +283,7 @@ mechz_force_jump_in() while ( true ) { - self animscripted( self.origin, self.angles, "zm_idle" ); + self sys::animscripted( self.origin, self.angles, "zm_idle" ); wait 0.2; self scripted_behavior( "zm_spawn", "jump_anim" ); } @@ -298,13 +298,13 @@ mechz_force_jump_out() while ( true ) { - self animscripted( self.origin, self.angles, "zm_idle" ); + self sys::animscripted( self.origin, self.angles, "zm_idle" ); wait 0.2; self scripted_behavior( "zm_fly_out", "jump_anim" ); - self ghost(); - self animscripted( self.origin, self.angles, "zm_fly_hover" ); + self sys::ghost(); + self sys::animscripted( self.origin, self.angles, "zm_fly_hover" ); wait( level.mechz_jump_delay ); - self show(); + self sys::show(); self scripted_behavior( "zm_fly_in", "jump_anim" ); } #/ @@ -319,7 +319,7 @@ mechz_force_flamethrower() self setup_force_behavior(); curr_aim_anim = 1; curr_timer = 0; - self animscripted( self.origin, self.angles, "zm_idle" ); + self sys::animscripted( self.origin, self.angles, "zm_idle" ); wait 0.2; self scripted_behavior( "zm_flamethrower_aim_start", "flamethrower_anim" ); @@ -357,21 +357,21 @@ fake_launch_claw() { /# self.launching_claw = 1; - v_claw_origin = self gettagorigin( "tag_claw" ); + v_claw_origin = self sys::gettagorigin( "tag_claw" ); v_claw_angles = vectortoangles( self.origin - level.players[0].origin ); self.fx_field = self.fx_field | 256; self setclientfield( "mechz_fx", self.fx_field ); self.m_claw setanim( %ai_zombie_mech_grapple_arm_open_idle, 1, 0, 1 ); - self.m_claw unlink(); - self.m_claw.fx_ent = spawn( "script_model", self.m_claw gettagorigin( "tag_claw" ) ); - self.m_claw.fx_ent.angles = self.m_claw gettagangles( "tag_claw" ); + self.m_claw sys::unlink(); + self.m_claw.fx_ent = sys::spawn( "script_model", self.m_claw sys::gettagorigin( "tag_claw" ) ); + self.m_claw.fx_ent.angles = self.m_claw sys::gettagangles( "tag_claw" ); self.m_claw.fx_ent setmodel( "tag_origin" ); - self.m_claw.fx_ent linkto( self.m_claw, "tag_claw" ); + self.m_claw.fx_ent sys::linkto( self.m_claw, "tag_claw" ); network_safe_play_fx_on_tag( "mech_claw", 1, level._effect["mechz_claw"], self.m_claw.fx_ent, "tag_origin" ); self.m_claw clearanim( %root, 0.2 ); self.m_claw setanim( %ai_zombie_mech_grapple_arm_open_idle, 1, 0.2, 1 ); offset = anglestoforward( self.angles ); - offset = vectornormalize( offset ); + offset = sys::vectornormalize( offset ); target_pos = self.origin + offset * 500 + vectorscale( ( 0, 0, 1 ), 36.0 ); n_time = 0.0833333; self.m_claw moveto( target_pos, n_time ); @@ -384,11 +384,11 @@ fake_launch_claw() self.m_claw.fx_ent delete(); self.fx_field = self.fx_field & ~256; self setclientfield( "mechz_fx", self.fx_field ); - v_claw_origin = self gettagorigin( "tag_claw" ); - v_claw_angles = self gettagangles( "tag_claw" ); + v_claw_origin = self sys::gettagorigin( "tag_claw" ); + v_claw_angles = self sys::gettagangles( "tag_claw" ); self.m_claw.origin = v_claw_origin; self.m_claw.angles = v_claw_angles; - self.m_claw linkto( self, "tag_claw" ); + self.m_claw sys::linkto( self, "tag_claw" ); self.launching_claw = 0; #/ } @@ -401,7 +401,7 @@ mechz_force_claw_attack() while ( true ) { - self animscripted( self.origin, self.angles, "zm_idle" ); + self sys::animscripted( self.origin, self.angles, "zm_idle" ); wait 0.2; self scripted_behavior( "zm_grapple_aim_start", "grapple_anim" ); self thread fake_launch_claw(); @@ -495,7 +495,7 @@ mechz_force_melee() while ( true ) { - self animscripted( self.origin, self.angles, "zm_idle" ); + self sys::animscripted( self.origin, self.angles, "zm_idle" ); wait 0.2; self scripted_behavior( "zm_melee_stand", "melee_anim" ); } 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 0bfe74f..ec0744e 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 @@ -21,11 +21,11 @@ init_flamethrower_triggers() return; } flag_wait( "initial_players_connected" ); - level.flamethrower_trigger_array = getentarray( "flamethrower_trigger", "script_noteworthy" ); + level.flamethrower_trigger_array = sys::getentarray( "flamethrower_trigger", "script_noteworthy" ); assert( isdefined( level.flamethrower_trigger_array ) && level.flamethrower_trigger_array.size >= 4 ); for ( i = 0; i < level.flamethrower_trigger_array.size; i++ ) - level.flamethrower_trigger_array[i] enablelinkto(); + level.flamethrower_trigger_array[i] enablesys::linkto(); } mechz_flamethrower_initial_setup() @@ -47,9 +47,9 @@ mechz_flamethrower_initial_setup() if ( getDvar( "mapname" ) == "zm_tomb" ) { - self.flamethrower_trigger.origin = self gettagorigin( "tag_flamethrower_FX" ); - self.flamethrower_trigger.angles = self gettagangles( "tag_flamethrower_FX" ); - self.flamethrower_trigger linkto( self, "tag_flamethrower_FX" ); + self.flamethrower_trigger.origin = self sys::gettagorigin( "tag_flamethrower_FX" ); + self.flamethrower_trigger.angles = self sys::gettagangles( "tag_flamethrower_FX" ); + self.flamethrower_trigger sys::linkto( self, "tag_flamethrower_FX" ); } self thread mechz_watch_for_flamethrower_damage(); @@ -80,7 +80,7 @@ release_flamethrower_trigger() return; self.flamethrower_trigger.in_use = 0; - self.flamethrower_trigger unlink(); + self.flamethrower_trigger sys::unlink(); self.flamethrower_trigger.origin = self.flamethrower_trigger.original_position; self.flamethrower_linked = 0; self.flamethrower_trigger = undefined; @@ -93,7 +93,7 @@ mechz_flamethrower_dist_watcher() while ( true ) { - if ( !isdefined( self.favoriteenemy ) || !is_player_valid( self.favoriteenemy, 1, 1 ) || distancesquared( self.origin, self.favoriteenemy.origin ) > 50000 ) + if ( !isdefined( self.favoriteenemy ) || !is_player_valid( self.favoriteenemy, 1, 1 ) || sys::distancesquared( self.origin, self.favoriteenemy.origin ) > 50000 ) { self notify( "stop_ft" ); return; @@ -139,7 +139,7 @@ mechz_play_flamethrower_aim() if ( isdefined( self.curr_aim_anim ) ) { self stopanimscripted(); - self animscripted( self.origin, self.angles, self.curr_aim_anim ); + self sys::animscripted( self.origin, self.angles, self.curr_aim_anim ); self maps\mp\animscripts\zm_shared::donotetracks( "flamethrower_anim" ); } else @@ -170,13 +170,13 @@ mechz_flamethrower_tank_sweep() { self stopanimscripted(); self.angles = vectortoangles( level.vh_tank.origin - self.origin ); - self animscripted( self.origin, self.angles, "zm_flamethrower_sweep_up" ); + self sys::animscripted( self.origin, self.angles, "zm_flamethrower_sweep_up" ); self maps\mp\animscripts\zm_shared::donotetracks( "flamethrower_anim" ); if ( level.vh_tank ent_flag( "tank_moving" ) ) break; - func = getFunction( "maps/mp/zm_tomb_tank", "get_players_on_tank" ); + func = pluto_sys::getfunction( "maps/mp/zm_tomb_tank", "get_players_on_tank" ); if ( isDefined( func ) ) { a_players_on_tank = [[ func ]]( 1 ); @@ -207,9 +207,9 @@ hit_by_flamethrower( mechz ) { dist = distance(self.origin, mechz.origin); dirTo = self.origin - mechz.flamethrower_fx.origin; - dirTo = vectornormalize(dirTo); + dirTo = sys::vectornormalize(dirTo); mechDir = anglestoforward(mechz.flamethrower_fx.angles + (180,0,0)); - dot = vectordot(dirTo, mechDir); + dot = sys::vectordot(dirTo, mechDir); if ( isDefined( self.is_zombie ) && self.is_zombie ) { @@ -228,17 +228,17 @@ hit_by_flamethrower( mechz ) mech_flamethrower_fx() { - self.flamethrower_fx = spawn("script_model", self GetTagOrigin("tag_flamethrower_FX")); + self.flamethrower_fx = sys::spawn("script_model", self GetTagOrigin("tag_flamethrower_FX")); self.flamethrower_fx setmodel("tag_origin"); self.flamethrower_fx.angles = self GetTagAngles("tag_flamethrower_FX"); - self.flamethrower_fx linkto(self, "tag_flamethrower_FX"); + self.flamethrower_fx sys::linkto(self, "tag_flamethrower_FX"); ft = self.flamethrower_fx; self waittill( "death" ); if ( isDefined( ft ) ) { - ft unlink(); + ft sys::unlink(); ft delete(); } } @@ -252,7 +252,7 @@ mechz_watch_for_flamethrower_damage() self thread mech_flamethrower_fx(); } - entity_on_tank_func = getFunction( "maps/mp/zm_tomb_tank", "entity_on_tank" ); + entity_on_tank_func = pluto_sys::getfunction( "maps/mp/zm_tomb_tank", "entity_on_tank" ); while ( true ) { @@ -263,14 +263,14 @@ mechz_watch_for_flamethrower_damage() while ( isdefined( self.firing ) && self.firing ) { do_tank_sweep_auto_damage = isdefined( self.doing_tank_sweep ) && self.doing_tank_sweep && !level.vh_tank ent_flag( "tank_moving" ); - players = getplayers(); + players = sys::getplayers(); for ( i = 0; i < players.size; i++ ) { if ( !( isdefined( players[i].is_burning ) && players[i].is_burning ) ) { if ( isDefined( entity_on_tank_func ) && do_tank_sweep_auto_damage && players[i] [[ entity_on_tank_func ]]() - || isDefined( self.flamethrower_trigger ) && players[i] istouching( self.flamethrower_trigger ) || level.script != "zm_tomb" && players[ i ] hit_by_flamethrower( self ) ) + || isDefined( self.flamethrower_trigger ) && players[i] sys::istouching( self.flamethrower_trigger ) || level.script != "zm_tomb" && players[ i ] hit_by_flamethrower( self ) ) { players[i] thread player_flame_damage(); } @@ -288,7 +288,7 @@ mechz_watch_for_flamethrower_damage() continue; if ( isDefined( entity_on_tank_func ) && do_tank_sweep_auto_damage && zombies[i] [[ entity_on_tank_func ]]() - || isDefined( self.flamethrower_trigger ) && zombies[i] istouching( self.flamethrower_trigger ) || level.script != "zm_tomb" && zombies[ i ] hit_by_flamethrower( self ) ) + || isDefined( self.flamethrower_trigger ) && zombies[i] sys::istouching( self.flamethrower_trigger ) || level.script != "zm_tomb" && zombies[ i ] hit_by_flamethrower( self ) ) { zombies[i].on_fire = 1; zombies[i] promote_to_explosive(); @@ -398,7 +398,7 @@ zombie_burning_dmg() while ( true ) { eyeorigin = self geteye(); - players = get_players(); + players = sys::getplayers(); for ( i = 0; i < players.size; i++ ) { @@ -406,7 +406,7 @@ zombie_burning_dmg() { playereye = players[i] geteye(); - if ( distancesquared( eyeorigin, playereye ) < damageradius * damageradius ) + if ( sys::distancesquared( eyeorigin, playereye ) < damageradius * damageradius ) { players[i] dodamage( damage, self.origin, self ); players[i] notify( "burned" ); @@ -444,13 +444,13 @@ explode_on_death() if ( is_mature() ) { if ( isdefined( level._effect["zomb_gib"] ) ) - playfx( level._effect["zomb_gib"], self gettagorigin( tag ) ); + playfx( level._effect["zomb_gib"], self sys::gettagorigin( tag ) ); } else if ( isdefined( level._effect["spawn_cloud"] ) ) - playfx( level._effect["spawn_cloud"], self gettagorigin( tag ) ); + playfx( level._effect["spawn_cloud"], self sys::gettagorigin( tag ) ); self radiusdamage( self.origin, 128, 30, 15, undefined, "MOD_EXPLOSIVE" ); - self ghost(); + self sys::ghost(); if ( isdefined( self.isdog ) && self.isdog ) self hide(); @@ -505,7 +505,7 @@ should_do_flamethrower_attack() return false; } - if ( isdefined( self.last_flamethrower_time ) && gettime() - self.last_flamethrower_time < level.mechz_flamethrower_cooldown_time ) + if ( isdefined( self.last_flamethrower_time ) && sys::gettime() - self.last_flamethrower_time < level.mechz_flamethrower_cooldown_time ) { /# if ( getdvarint( #"_id_E7121222" ) > 1 ) @@ -514,7 +514,7 @@ should_do_flamethrower_attack() return false; } - n_dist_sq = distancesquared( self.origin, self.favoriteenemy.origin ); + n_dist_sq = sys::distancesquared( self.origin, self.favoriteenemy.origin ); if ( n_dist_sq < 10000 || n_dist_sq > 50000 ) { @@ -551,20 +551,20 @@ mechz_do_flamethrower_attack( tank_sweep ) #/ self thread mechz_stop_basic_find_flesh(); self.ai_state = "flamethrower_attack"; - self setgoalpos( self.origin ); + self sys::setgoalpos( self.origin ); self clearanim( %root, 0.2 ); - self.last_flamethrower_time = gettime(); + self.last_flamethrower_time = sys::gettime(); self thread mechz_kill_flamethrower_watcher(); if ( !isdefined( self.flamethrower_trigger ) && !isDefined( self.flamethrower_fx ) ) self mechz_flamethrower_initial_setup(); n_nearby_enemies = 0; - a_players = getplayers(); + a_players = sys::getplayers(); foreach ( player in a_players ) { - if ( distance2dsquared( player.origin, self.favoriteenemy.origin ) < 10000 ) + if ( sys::distance2dsquared( player.origin, self.favoriteenemy.origin ) < 10000 ) n_nearby_enemies++; } @@ -576,17 +576,17 @@ mechz_do_flamethrower_attack( tank_sweep ) else if ( randomint( 100 ) < level.mechz_ft_sweep_chance && n_nearby_enemies > 1 ) { self.doing_ft_sweep = 1; - self animscripted( self.origin, self.angles, "zm_flamethrower_sweep" ); + self sys::animscripted( self.origin, self.angles, "zm_flamethrower_sweep" ); self maps\mp\animscripts\zm_shared::donotetracks( "flamethrower_anim" ); } else { - self animscripted( self.origin, self.angles, "zm_flamethrower_aim_start" ); + self sys::animscripted( self.origin, self.angles, "zm_flamethrower_aim_start" ); self thread mechz_flamethrower_aim(); self maps\mp\animscripts\zm_shared::donotetracks( "flamethrower_anim" ); } - self orientmode( "face default" ); + self sys::orientmode( "face default" ); if ( isdefined( self.doing_ft_sweep ) && self.doing_ft_sweep ) self.doing_ft_sweep = 0; 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 c5f3041..bb7f046 100644 --- a/zm_ai_pack/maps/mp/zombies/_zm_ai_screecher.gsc +++ b/zm_ai_pack/maps/mp/zombies/_zm_ai_screecher.gsc @@ -20,12 +20,12 @@ precache() precachemodel( "fx_axis_createfx" ); include_weapon( "screecher_arms_zm", 0 ); precachestring( &"ZOMBIE_SCREECHER_ATTACH_FIRST" ); - level._effect["screecher_spawn_a"] = loadfx( "maps/zombie/fx_zmb_screech_hand_dirt_burst" ); - level._effect["screecher_spawn_b"] = loadfx( "maps/zombie/fx_zmb_screech_body_dirt_billowing" ); - level._effect["screecher_spawn_c"] = loadfx( "maps/zombie/fx_zmb_screech_body_dirt_falling" ); - level._effect["screecher_hole"] = loadfx( "maps/zombie/fx_zmb_screecher_hole" ); - level._effect["screecher_vortex"] = loadfx( "maps/zombie/fx_zmb_screecher_vortex" ); - level._effect["screecher_death"] = loadfx( "maps/zombie/fx_zmb_screech_death_ash" ); + level._effect["screecher_spawn_a"] = sys::loadfx( "maps/zombie/fx_zmb_screech_hand_dirt_burst" ); + level._effect["screecher_spawn_b"] = sys::loadfx( "maps/zombie/fx_zmb_screech_body_dirt_billowing" ); + level._effect["screecher_spawn_c"] = sys::loadfx( "maps/zombie/fx_zmb_screech_body_dirt_falling" ); + level._effect["screecher_hole"] = sys::loadfx( "maps/zombie/fx_zmb_screecher_hole" ); + level._effect["screecher_vortex"] = sys::loadfx( "maps/zombie/fx_zmb_screecher_vortex" ); + level._effect["screecher_death"] = sys::loadfx( "maps/zombie/fx_zmb_screech_death_ash" ); } register_clientfields() @@ -42,7 +42,7 @@ main() init() { - level.screecher_spawners = getentarray( "screecher_zombie_spawner", "script_noteworthy" ); + level.screecher_spawners = sys::getentarray( "screecher_zombie_spawner", "script_noteworthy" ); array_thread( level.screecher_spawners, ::add_spawn_function, maps\mp\zombies\_zm_ai_screecher::screecher_prespawn ); level.zombie_ai_limit_screecher = 2; level.zombie_screecher_count = 0; @@ -103,7 +103,7 @@ screecher_spawning_logic() while ( valid_players_in_screecher_zone <= 0 ) { - players = getplayers(); + players = sys::getplayers(); valid_players_in_screecher_zone = 0; for ( p = 0; p < players.size; p++ ) @@ -148,14 +148,14 @@ screecher_spawning_logic() if ( isdefined( spawn_point ) ) playsoundatposition( "zmb_vocals_screecher_spawn", spawn_point.origin ); - delay_time = gettime() + 5000; - now_zone = getent( "screecher_spawn_now", "targetname" ); + delay_time = sys::gettime() + 5000; + now_zone = sys::getent( "screecher_spawn_now", "targetname" ); - while ( gettime() < delay_time ) + while ( sys::gettime() < delay_time ) { in_zone = 0; - if ( valid_players[0] istouching( now_zone ) ) + if ( valid_players[0] sys::istouching( now_zone ) ) { /# screecher_print( "in now zone" ); @@ -258,7 +258,7 @@ player_in_screecher_zone( player ) screecher_should_runaway( player ) { - players = get_players(); + players = sys::getplayers(); if ( players.size == 1 ) { @@ -281,7 +281,7 @@ screecher_should_runaway( player ) screecher_get_closest_valid_player( origin, ignore_player ) { valid_player_found = 0; - players = get_players(); + players = sys::getplayers(); if ( isdefined( level._zombie_using_humangun ) && level._zombie_using_humangun ) players = arraycombine( players, level._zombie_human_array, 0, 0 ); @@ -325,12 +325,12 @@ zombie_pathing_home() self endon( "death" ); self endon( "zombie_acquire_enemy" ); level endon( "intermission" ); - self setgoalpos( self.startinglocation ); + self sys::setgoalpos( self.startinglocation ); self waittill( "goal" ); playfx( level._effect["screecher_spawn_b"], self.origin, ( 0, 0, 1 ) ); self.no_powerups = 1; - self setfreecameralockonallowed( 0 ); - self animscripted( self.origin, self.angles, "zm_burrow" ); + self sys::setfreecameralockonallowed( 0 ); + self sys::animscripted( self.origin, self.angles, "zm_burrow" ); self playsound( "zmb_screecher_dig" ); maps\mp\animscripts\zm_shared::donotetracks( "burrow_anim" ); self delete(); @@ -361,9 +361,9 @@ screecher_find_flesh() else self thread screecher_runaway(); - self.zombie_path_timer = gettime() + randomfloatrange( 1, 3 ) * 1000; + self.zombie_path_timer = sys::gettime() + randomfloatrange( 1, 3 ) * 1000; - while ( gettime() < self.zombie_path_timer ) + while ( sys::gettime() < self.zombie_path_timer ) wait 0.1; self notify( "path_timer_done" ); @@ -408,12 +408,12 @@ screecher_prespawn() self.zombie_init_done = 1; self notify( "zombie_init_done" ); self.allowpain = 0; - self animmode( "normal" ); - self orientmode( "face enemy" ); + self sys::animmode( "normal" ); + self sys::orientmode( "face enemy" ); self.forcemovementscriptstate = 0; self maps\mp\zombies\_zm_spawner::zombie_setup_attack_properties(); self maps\mp\zombies\_zm_spawner::zombie_complete_emerging_into_playable_area(); - self setfreecameralockonallowed( 0 ); + self sys::setfreecameralockonallowed( 0 ); self.startinglocation = self.origin; self playsound( "zmb_vocals_screecher_spawn" ); self thread play_screecher_fx(); @@ -421,7 +421,7 @@ screecher_prespawn() self thread screecher_rise(); self thread screecher_cleanup(); self thread screecher_distance_tracking(); - self.anchor = spawn( "script_origin", self.origin ); + self.anchor = sys::spawn( "script_origin", self.origin ); self.attack_time = 0; self.attack_delay = 1000; self.attack_delay_base = 1000; @@ -469,8 +469,8 @@ play_screecher_breathing_audio() if ( !isdefined( self.loopsoundent ) ) { - self.loopsoundent = spawn( "script_origin", self.origin ); - self.loopsoundent linkto( self, "tag_origin" ); + self.loopsoundent = sys::spawn( "script_origin", self.origin ); + self.loopsoundent sys::linkto( self, "tag_origin" ); } self.loopsoundent playloopsound( "zmb_vocals_screecher_breath" ); @@ -479,10 +479,10 @@ play_screecher_breathing_audio() screecher_rise() { self endon( "death" ); - self animscripted( self.origin, self.angles, "zm_rise" ); + self sys::animscripted( self.origin, self.angles, "zm_rise" ); maps\mp\animscripts\zm_shared::donotetracks( "rise_anim" ); self notify( "risen" ); - self setfreecameralockonallowed( 1 ); + self sys::setfreecameralockonallowed( 1 ); self.startinglocation = self.origin; self thread screecher_zombie_think(); self thread play_screecher_breathing_audio(); @@ -499,7 +499,7 @@ screecher_zombie_think() height_tolerance = 32; self.state = "chase_init"; self.isattacking = 0; - self.nextspecial = gettime(); + self.nextspecial = sys::gettime(); for (;;) { @@ -532,7 +532,7 @@ screecher_chase_update() if ( isdefined( player ) ) { - dist = distance2dsquared( self.origin, player.origin ); + dist = sys::distance2dsquared( self.origin, player.origin ); if ( dist < 57600 ) { @@ -560,7 +560,7 @@ screecher_attack() self notify( "stop_find_flesh" ); self notify( "zombie_acquire_enemy" ); - self animmode( "nogravity" ); + self sys::animmode( "nogravity" ); self playsound( "zmb_vocals_screecher_jump" ); if ( isdefined( self.loopsoundent ) ) @@ -569,19 +569,19 @@ screecher_attack() self.loopsoundent = undefined; } - self setanimstatefromasd( "zm_jump_up" ); + self sys::setanimstatefromasd( "zm_jump_up" ); maps\mp\animscripts\zm_shared::donotetracks( "jump_up_anim" ); asd_state = self screecher_fly_to_player( player ); self setplayercollision( 0 ); self setclientfield( "render_third_person", 1 ); - self linkto( self.favoriteenemy, "tag_origin" ); - self animscripted( self.favoriteenemy.origin, self.favoriteenemy.angles, asd_state ); + self sys::linkto( self.favoriteenemy, "tag_origin" ); + self sys::animscripted( self.favoriteenemy.origin, self.favoriteenemy.angles, asd_state ); maps\mp\animscripts\zm_shared::donotetracks( "jump_land_success_anim" ); - org = self.favoriteenemy gettagorigin( "j_head" ); - angles = self.favoriteenemy gettagangles( "j_head" ); + org = self.favoriteenemy sys::gettagorigin( "j_head" ); + angles = self.favoriteenemy sys::gettagangles( "j_head" ); self forceteleport( org, angles ); - self linkto( self.favoriteenemy, "j_head" ); - self animscripted( self.origin, self.angles, "zm_headpull" ); + self sys::linkto( self.favoriteenemy, "j_head" ); + self sys::animscripted( self.origin, self.angles, "zm_headpull" ); self.linked_ent = self.favoriteenemy; self.linked_ent setmovespeedscale( 0.5 ); self thread screecher_melee_button_watcher(); @@ -591,22 +591,22 @@ screecher_attack() screecher_fly_to_player( player ) { self endon( "death" ); - self setanimstatefromasd( "zm_jump_loop" ); + self sys::setanimstatefromasd( "zm_jump_loop" ); self.anchor.origin = self.origin; self.anchor.angles = self.angles; - self linkto( self.anchor ); + self sys::linkto( self.anchor ); anim_id_back = self getanimfromasd( "zm_jump_land_success_fromback", 0 ); anim_id_front = self getanimfromasd( "zm_jump_land_success_fromfront", 0 ); - end_time = gettime() + 2500; + end_time = sys::gettime() + 2500; dist = undefined; dist_update = undefined; - while ( end_time > gettime() ) + while ( end_time > sys::gettime() ) { goal_pos_back = getstartorigin( player.origin, player.angles, anim_id_back ); goal_pos_front = getstartorigin( player.origin, player.angles, anim_id_front ); - dist_back = distancesquared( self.anchor.origin, goal_pos_back ); - dist_front = distancesquared( self.anchor.origin, goal_pos_front ); + dist_back = sys::distancesquared( self.anchor.origin, goal_pos_back ); + dist_front = sys::distancesquared( self.anchor.origin, goal_pos_front ); goal_pos = goal_pos_back; goal_ang = getstartangles( player.origin, player.angles, anim_id_back ); asd_state = "zm_jump_land_success_fromback"; @@ -637,7 +637,7 @@ screecher_fly_to_player( player ) } self.anchor.angles = facing_angles; - unit_facing_vec = vectornormalize( facing_vec ); + unit_facing_vec = sys::vectornormalize( facing_vec ); new_pos = self.anchor.origin + vectorscale( unit_facing_vec, dist_update ); self.anchor moveto( new_pos, 0.1 ); wait 0.1; @@ -699,7 +699,7 @@ screecher_start_attack() } self.state = "attacking"; - self.attack_time = gettime(); + self.attack_time = sys::gettime(); if ( !getdvarint( #"scr_screecher_poison" ) ) player startpoisoning(); @@ -761,22 +761,22 @@ screecher_attacking() return; } - if ( self.attack_time < gettime() ) + if ( self.attack_time < sys::gettime() ) { scratch_score = 5; - players = get_players(); + players = sys::getplayers(); self.screecher_score = self.screecher_score + scratch_score; killed_player = self screecher_check_score(); if ( player.health > 0 && !( isdefined( killed_player ) && killed_player ) ) { self.attack_delay = self.attack_delay_base + randomint( self.attack_delay_offset ); - self.attack_time = gettime() + self.attack_delay; + self.attack_time = sys::gettime() + self.attack_delay; self thread claw_fx( player, self.attack_delay * 0.001 ); self playsound( "zmb_vocals_screecher_attack" ); player playsoundtoplayer( "zmb_screecher_scratch", player ); player thread do_player_general_vox( "general", "screecher_attack" ); - players = get_players(); + players = sys::getplayers(); if ( players.size == 1 ) { @@ -803,12 +803,12 @@ screecher_runaway() self notify( "runaway" ); self.state = "runaway"; self.ignoreall = 1; - self setgoalpos( self.startinglocation ); + self sys::setgoalpos( self.startinglocation ); self waittill( "goal" ); playfx( level._effect["screecher_spawn_b"], self.origin, ( 0, 0, 1 ) ); self.no_powerups = 1; - self setfreecameralockonallowed( 0 ); - self animscripted( self.origin, self.angles, "zm_burrow" ); + self sys::setfreecameralockonallowed( 0 ); + self sys::animscripted( self.origin, self.angles, "zm_burrow" ); self playsound( "zmb_screecher_dig" ); maps\mp\animscripts\zm_shared::donotetracks( "burrow_anim" ); self delete(); @@ -858,7 +858,7 @@ screecher_detach( player ) player.screecher_weapon = undefined; } - self unlink(); + self sys::unlink(); self setclientfield( "render_third_person", 0 ); if ( isdefined( self.linked_ent ) ) @@ -869,10 +869,10 @@ screecher_detach( player ) } self.green_light = player.green_light; - self animcustom( ::screecher_jump_down ); + self sys::animcustom( ::screecher_jump_down ); self waittill( "jump_down_done" ); maps\mp\_visionset_mgr::vsmgr_deactivate( "overlay", "zm_ai_screecher_blur", player ); - self animmode( "normal" ); + self sys::animmode( "normal" ); self.ignoreall = 1; self setplayercollision( 1 ); @@ -893,7 +893,7 @@ screecher_detach( player ) screecher_jump_down() { self endon( "death" ); - self setanimstatefromasd( "zm_headpull_success" ); + self sys::setanimstatefromasd( "zm_headpull_success" ); wait 0.6; self notify( "jump_down_done" ); } @@ -1009,14 +1009,14 @@ screecher_distance_tracking() while ( true ) { can_delete = 1; - players = get_players(); + players = sys::getplayers(); foreach ( player in players ) { if ( player.sessionstate == "spectator" ) continue; - dist_sq = distancesquared( self.origin, player.origin ); + dist_sq = sys::distancesquared( self.origin, player.origin ); if ( dist_sq >= 4000000 ) continue; @@ -1137,9 +1137,9 @@ screecher_damage_func( einflictor, eattacker, idamage, idflags, smeansofdeath, s screecher_death_func() { - self unlink(); + self sys::unlink(); self.noragdoll = 1; - self setanimstatefromasd( "zm_death" ); + self sys::setanimstatefromasd( "zm_death" ); maps\mp\animscripts\zm_shared::donotetracks( "death_anim" ); playfx( level._effect["screecher_death"], self.origin ); @@ -1209,7 +1209,7 @@ screecher_debug_axis() if ( !isdefined( player.bone_fxaxis ) ) { - player.bone_fxaxis = spawn( "script_model", org ); + player.bone_fxaxis = sys::spawn( "script_model", org ); player.bone_fxaxis setmodel( "fx_axis_createfx" ); } diff --git a/zm_ai_pack/pluto_sys.gsc b/zm_ai_pack/pluto_sys.gsc new file mode 100644 index 0000000..52ac81b --- /dev/null +++ b/zm_ai_pack/pluto_sys.gsc @@ -0,0 +1,297 @@ +// Plutonium T6 Exclusive Builtins + +/@ + [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 + 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; + [RETURNS]: or ; +@/ +getfunction( path, func_name ) +{ + return getfunction( path, func_name ); +} + +/@ + [DESCRIPTION]: Used inside a function with a hook applied to it by replacefunc. When called resumes execution of the original function starting at the top. + Unlike removedetour the hook is reenabled automatically when the function exits.; + [CALL_TYPE]: function; + [USAGE]: disabledetouronce(); + [PARAMS]: NONE; + [PARAMS_NOTES]: NONE; + [RETURNS]: NONE; + [ERRORS]: 1. Must be called inside a function that had a hook applied to it by replacefunc.; +@/ +disabledetouronce() +{ + disabledetouronce(); +} + +/@ + [DESCRIPTION]: Takes in and returns the function pointer it was detoured to or returns undefined if was not hooked + at the time of calling getdetour.; + [CALL_TYPE]: function; + [USAGE]: getdetour( ); + [PARAMS]: ARG1:; + [PARAMS_NOTES]: NONE; + [RETURNS]: or ; +@/ +getdetour( func ) +{ + return getdetour( func ); +} + +/@ + [DESCRIPTION]: Returns an array of pathnodes based on the caller node's path links. Returns an empty array if no links exist for caller node; + [CALL_TYPE]: method; + [USAGE]: self getlinkednodes(); + [PARAMS]: ARG0:; + [PARAMS_NOTES]: NONE; + [RETURNS]: ; +@/ +getlinkednodes() +{ + return self getlinkednodes(); +} + +/@ + [DESCRIPTION]: Sends a personal chat message to caller player. Applies ^7 and sv_sayName dvar's value to start of message unless sv_sayName dvar's value is blank + in which case the message is not modified before being sent to the client.; + [CALL_TYPE]: method; + [USAGE]: self tell( ); + [PARAMS]: ARG0: ARG1:; + [PARAMS_NOTES]: NONE; + [RETURNS]: NONE; +@/ +tell( message ) +{ + self tell( message ); +} + +/@ + [DESCRIPTION]: Sends a chat message to all players. Applies ^7 and sv_sayName dvar's value to start of message unless sv_sayName dvar's value is blank + in which case the message is not modified before being sent to the client.; + [CALL_TYPE]: method; + [USAGE]: self tell( ); + [PARAMS]: ARG1:; + [PARAMS_NOTES]: NONE; + [RETURNS]: NONE; +@/ +say( message ) +{ + say( message ); +} + +// The following are bot specifc builtins +/@ + [BOT_BUTTON_TYPES]: + { + "attack", + "sprint", + "melee", + "activate", + "reload", + "usereload", + "gostand", + "frag", + "smoke", + "holdbreath", + "crouch", + "prone", + "leanleft", + "leanright", + "vehicleboost", + "stance", + "switchseat", + "throwback", + "throw", + "handbrake", + "reverse", + "jam", + "vehiclemovedown", + "vehiclemoveup", + "vehicleattacksecond", + "vehicleattack", + "ads", + "actionslot 1", + "actionslot 2", + "actionslot 3", + "actionslot 4" + }; + [BOT_BUTTON_VALUES]: + { + "enable", + "disable" + }; +@/ + +/@ + [DESCRIPTION]: Allows bot to melee lunge at entity with and to control the lunge distance when bot activates melee. + is hard capped to values between 0 and 255.; + [CALL_TYPE]: method; + [USAGE]: self botmeleeparams( , ); + [PARAMS]: ARG0: ARG1: ARG2:; + [PARAMS_NOTES]: NONE; + [RETURNS]: NONE; +@/ +botmeleeparams( ent_num, dist ) +{ + self botmeleeparams( ent_num, dist ); +} + +/@ + [DESCRIPTION]: Toggles off melee lunging for bot and clears the current dist and ent_num set by botmeleeparams.; + [CALL_TYPE]: method; + [USAGE]: self botclearmeleeparams(); + [PARAMS]: ARG0:; + [PARAMS_NOTES]: NONE; + [RETURNS]: NONE; +@/ +botclearmeleeparams() +{ + self botclearmeleeparams(); +} + +/@ + [DESCRIPTION]: Overrides caller bot's forward and right movement until botclearmoveoverride is called on caller bot. Values are between -127 for fully backwards and left, and fully 128 for forwards and right. + Bot effectively simulates analog movement where max absolute values mean maximum speed and 0 no movement in that direction at all.; + [CALL_TYPE]: method; + [USAGE]: self botmovementoverride( , ); + [PARAMS]: ARG0: ARG1: ARG2:; + [PARAMS_NOTES]: NONE; + [RETURNS]: NONE; +@/ +botmovementoverride( forward, right ) +{ + self botmovementoverride( forward, right ); +} + +/@ + [DESCRIPTION]: Toggles off a movement override and resets forward and right values for caller bot.; + [CALL_TYPE]: method; + [USAGE]: self botclearmovementoverride(); + [PARAMS]: ARG0:; + [PARAMS_NOTES]: NONE; + [RETURNS]: NONE; +@/ +botclearmovementoverride() +{ + self botclearmovementoverride(); +} + +/@ + [DESCRIPTION]: Causes caller bot to press and hold