mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-10 18:27:57 -05:00
405 lines
9.2 KiB
Plaintext
405 lines
9.2 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: maps\mp\mp_zombie_windmill_srv.gsc
|
|
* Game: Call of Duty: WWII
|
|
* Platform: PC
|
|
* Function Count: 16
|
|
* Decompile Time: 286 ms
|
|
* Timestamp: 10/27/2023 3:20:15 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
func_00F9()
|
|
{
|
|
maps/mp/mp_zombie_windmill_srv_precache::func_F9();
|
|
maps/createart/mp_zombie_windmill_srv_art::func_F9();
|
|
maps/mp/mp_zombie_windmill_srv_fx::func_F9();
|
|
maps\mp\_load::func_F9();
|
|
maps/mp/mp_zombie_windmill_lighting::func_F9();
|
|
maps/mp/mp_zombie_windmill_aud::func_F9();
|
|
maps\mp\_compass::func_8A2F("compass_map_mp_zombie_windmill_srv");
|
|
game["attackers"] = "allies";
|
|
game["defenders"] = "axis";
|
|
level.var_AC2E = 5;
|
|
level.var_ABD3 = -3500;
|
|
level.initnewzombietypes = ::init_new_zombie_types;
|
|
level.sg_pack_use_small_radius = 1;
|
|
level.var_AC71 = ::initwindmillweapons;
|
|
level.var_783F = 0;
|
|
level.door_data_out_of_date = 0;
|
|
level.disable_jumpscare_playerdata = 0;
|
|
level.var_6BB0 = ::onwindmillstartgame;
|
|
level.reworkedconsumabledenabled = 1;
|
|
level.loot_pap_camo_ref_override = "zom_amp_05";
|
|
level.pap_camo_ref_override = "zom_frontline_01";
|
|
level.var_ACA3 = 1;
|
|
level.var_C11 = 0;
|
|
common_scripts\utility::func_3C87("power_sz2");
|
|
func_5375();
|
|
maps/mp/zombies/zombie_survival_common::func_D5();
|
|
thread maps/mp/mp_zombie_windmill_util::windmill_think();
|
|
thread windmill_srv_ee();
|
|
level thread add_windmill_ceiling_patch();
|
|
maps/mp/zombies/shotgun/_zombies_shotgun_gamemode_fx::func_D5();
|
|
level.upgrade_machine_upgrade_func = ::maps/mp/zombies/shotgun/_zombies_shotgun_gamemode::collect_souls_to_unlock_pack_a_punch;
|
|
level thread maps/mp/zombies/shotgun/_zombies_shotgun_gamemode::run_pack_a_punch_log();
|
|
}
|
|
|
|
//Function Number: 2
|
|
initwindmillweapons()
|
|
{
|
|
level.sworddelivery_checkradius = 128;
|
|
level thread maps/mp/zombies/zombie_survival_common::initsurvivalweapons();
|
|
}
|
|
|
|
//Function Number: 3
|
|
add_windmill_ceiling_patch()
|
|
{
|
|
var_00 = common_scripts\utility::func_46B7("ceiling_stuff_patches_05","targetname");
|
|
var_01 = common_scripts\utility::func_46B7("ceiling_stuff_patches_04","targetname");
|
|
foreach(var_03 in var_00)
|
|
{
|
|
var_04 = spawn("script_model",var_03.var_116);
|
|
var_04.var_1D = var_03.var_1D;
|
|
var_04 setmodel("cob_floor_dmg_section_wood_05");
|
|
}
|
|
|
|
foreach(var_03 in var_01)
|
|
{
|
|
var_04 = spawn("script_model",var_03.var_116);
|
|
var_04.var_1D = var_03.var_1D;
|
|
var_04 setmodel("cob_floor_dmg_section_wood_04");
|
|
}
|
|
}
|
|
|
|
//Function Number: 4
|
|
func_5375()
|
|
{
|
|
lib_055A::func_D5();
|
|
lib_055A::func_530A("zone_plaza",1);
|
|
lib_055A::func_88A();
|
|
thread house_door_listener();
|
|
}
|
|
|
|
//Function Number: 5
|
|
init_new_zombie_types()
|
|
{
|
|
maps/mp/zombies/zombie_sizzler::func_D5();
|
|
maps/mp/zombies/zombie_survival_common::srv_init_miniboss_rounds();
|
|
}
|
|
|
|
//Function Number: 6
|
|
house_door_listener()
|
|
{
|
|
common_scripts\utility::func_3C87("zone_plaza_to_zone_house");
|
|
common_scripts\utility::func_3C9F("zone_plaza_to_zone_house");
|
|
foreach(var_01 in level.var_AC1D)
|
|
{
|
|
if(isdefined(var_01.var_819A) && var_01.var_819A == "zone_plaza_to_zone_house" && !isdefined(var_01.var_6BE1) || !var_01.var_6BE1)
|
|
{
|
|
var_01 notify("open",undefined);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 7
|
|
onwindmillstartgame()
|
|
{
|
|
level.roundstartfuncgeneric = ::windmill_srv_round_start;
|
|
level.roundendfuncgeneric = ::windmill_srv_round_end;
|
|
}
|
|
|
|
//Function Number: 8
|
|
windmill_srv_round_start()
|
|
{
|
|
level thread maps/mp/zombies/zombie_survival_common::srvroundstart();
|
|
}
|
|
|
|
//Function Number: 9
|
|
windmill_srv_round_end()
|
|
{
|
|
level thread maps/mp/zombies/zombie_survival_common::srvroundend();
|
|
}
|
|
|
|
//Function Number: 10
|
|
windmill_srv_ee()
|
|
{
|
|
level.ducks_per_window = 1;
|
|
var_00 = 5;
|
|
var_01 = getentarray("hunt_ee","targetname");
|
|
var_02 = getent("dog_ee","targetname");
|
|
var_02 setmodel("zmw_tinker_toy_set_02");
|
|
foreach(var_04 in var_01)
|
|
{
|
|
var_04 setmodel("zmw_belongings_toy_duck_01");
|
|
}
|
|
|
|
var_02.target_struct = common_scripts\utility::func_46B5(var_02.var_1A2,"targetname");
|
|
var_02.var_926A = var_02.var_116;
|
|
var_02.raised_position = var_02.target_struct.var_116;
|
|
var_02.is_dog = 1;
|
|
var_06 = getent("srv_pap_fuse_spawn_loc","targetname");
|
|
var_06 linkto(var_02);
|
|
var_07 = getent("srv_pap_fuse_pickup_trig","targetname");
|
|
var_07 common_scripts\utility::func_9D9F();
|
|
foreach(var_04 in var_01)
|
|
{
|
|
var_04.var_926A = var_04.var_116;
|
|
var_04.var_931A = "lowered";
|
|
var_04.target_struct = common_scripts\utility::func_46B5(var_04.var_1A2,"targetname");
|
|
var_04.raised_position = var_04.target_struct.var_116;
|
|
var_04.var_29B5 = ::ee_dmg_listen;
|
|
}
|
|
|
|
var_0A = 0;
|
|
for(;;)
|
|
{
|
|
var_0B = common_scripts\utility::func_7A33(var_01);
|
|
var_0B.is_starter = 1;
|
|
var_0B thread ee_raise();
|
|
level waittill("ee_started",var_0C);
|
|
level.ee_contestant = var_0C;
|
|
level.ducks_per_window = 1;
|
|
var_00 = 5;
|
|
var_0D = 0;
|
|
for(;;)
|
|
{
|
|
var_0D++;
|
|
var_0E = [];
|
|
var_0F = undefined;
|
|
var_10 = var_01;
|
|
if(var_0D == 1)
|
|
{
|
|
var_10 = common_scripts\utility::func_F93(var_10,var_0B);
|
|
}
|
|
|
|
level.ducks_killed_in_window = 0;
|
|
while(var_0E.size < level.ducks_per_window)
|
|
{
|
|
var_0F = common_scripts\utility::func_7A33(var_10);
|
|
if(lib_0547::func_5565(var_0F.var_931A,"lowered"))
|
|
{
|
|
var_10 = common_scripts\utility::func_F93(var_10,var_0F);
|
|
var_0E = common_scripts\utility::func_F6F(var_0E,var_0F);
|
|
continue;
|
|
}
|
|
|
|
wait 0.05;
|
|
}
|
|
|
|
foreach(var_04 in var_0E)
|
|
{
|
|
var_04 thread ee_raise();
|
|
}
|
|
|
|
level common_scripts\utility::func_A74B("all_ducks_in_window_killed",var_00);
|
|
if(level.ducks_killed_in_window >= level.ducks_per_window)
|
|
{
|
|
if(var_0D == 3 || var_0D == 5)
|
|
{
|
|
level.ducks_per_window++;
|
|
var_00 = var_00 + 5;
|
|
wait(3);
|
|
}
|
|
else if(var_0D == 8)
|
|
{
|
|
var_0A = 1;
|
|
break;
|
|
}
|
|
|
|
continue;
|
|
}
|
|
|
|
foreach(var_04 in var_0E)
|
|
{
|
|
var_04 thread ee_lower();
|
|
}
|
|
|
|
var_02 ee_show_dog_fail();
|
|
level waittill("zombie_wave_started");
|
|
var_0A = 0;
|
|
break;
|
|
}
|
|
|
|
if(var_0A)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
|
|
var_02 ee_show_dog_success(var_06);
|
|
}
|
|
|
|
//Function Number: 11
|
|
ee_show_dog_fail()
|
|
{
|
|
self moveto(self.raised_position,1,0.1,0.1);
|
|
wait(1);
|
|
self vibrate(anglestoright(self.var_1D),0.3,0.3,5);
|
|
wait(5);
|
|
self moveto(self.var_926A,3,0.1,0.1);
|
|
wait(3);
|
|
self moveto(self.var_926A + (0,0,15),0.25,0.1,0.1);
|
|
wait(4);
|
|
self moveto(self.var_926A,3,0.1,0.1);
|
|
wait(3);
|
|
}
|
|
|
|
//Function Number: 12
|
|
ee_show_dog_success(param_00)
|
|
{
|
|
self moveto(self.raised_position,1,0.1,0.1);
|
|
wait(2);
|
|
param_00 unlink();
|
|
param_00 thread ee_toss_fuse();
|
|
wait(1);
|
|
self moveto(self.var_926A,1);
|
|
}
|
|
|
|
//Function Number: 13
|
|
ee_toss_fuse()
|
|
{
|
|
var_00 = self;
|
|
var_01 = common_scripts\utility::func_46B5("srv_pap_fuse_land_path","targetname");
|
|
var_00 moveto(var_01.var_116,0.15);
|
|
var_02 = common_scripts\utility::func_46B5(var_01.var_1A2,"targetname");
|
|
wait(0.15);
|
|
while(isdefined(var_02))
|
|
{
|
|
var_00 moveto(var_02.var_116,0.15);
|
|
if(isdefined(var_02.var_1A2))
|
|
{
|
|
var_02 = common_scripts\utility::func_46B5(var_02.var_1A2,"targetname");
|
|
continue;
|
|
}
|
|
|
|
var_02 = undefined;
|
|
wait(0.15);
|
|
}
|
|
|
|
var_03 = getent("srv_pap_fuse_pickup_trig","targetname");
|
|
var_03 common_scripts\utility::func_9DA3();
|
|
var_03 usetriggerrequirelookat(1);
|
|
var_03 waittill("trigger");
|
|
var_00 delete();
|
|
var_03 common_scripts\utility::func_9D9F();
|
|
level thread maps/mp/zombies/zombie_survival_common::srvshowpapfuse();
|
|
}
|
|
|
|
//Function Number: 14
|
|
ee_raise(param_00)
|
|
{
|
|
if(!lib_0547::func_5565(self.var_931A,"lowered"))
|
|
{
|
|
return;
|
|
}
|
|
|
|
self setcandamage(1);
|
|
self setdamagecallbackon(1);
|
|
self.var_552B = 1;
|
|
self.var_931A = "raising";
|
|
if(!isdefined(param_00))
|
|
{
|
|
param_00 = 0.5;
|
|
}
|
|
|
|
if(param_00 <= 0)
|
|
{
|
|
self.var_116 = self.raised_position;
|
|
}
|
|
else
|
|
{
|
|
self moveto(self.raised_position,param_00,0.1,0.1);
|
|
wait(param_00);
|
|
}
|
|
|
|
self.var_931A = "raised";
|
|
}
|
|
|
|
//Function Number: 15
|
|
ee_lower(param_00,param_01)
|
|
{
|
|
if(!lib_0547::func_5565(self.var_931A,"raised"))
|
|
{
|
|
return;
|
|
}
|
|
|
|
self.var_931A = "lowering";
|
|
if(!isdefined(param_01))
|
|
{
|
|
param_01 = 0;
|
|
}
|
|
|
|
if(common_scripts\utility::func_562E(param_01))
|
|
{
|
|
self setcandamage(0);
|
|
self setdamagecallbackon(0);
|
|
self.var_552B = 0;
|
|
}
|
|
|
|
if(!isdefined(param_00))
|
|
{
|
|
param_00 = 0.5;
|
|
}
|
|
|
|
self moveto(self.var_926A,param_00,0.1,0.1);
|
|
wait(param_00);
|
|
if(!common_scripts\utility::func_562E(param_01))
|
|
{
|
|
self setcandamage(0);
|
|
self setdamagecallbackon(0);
|
|
self.var_552B = 0;
|
|
}
|
|
|
|
self.is_starter = 0;
|
|
self.var_931A = "lowered";
|
|
}
|
|
|
|
//Function Number: 16
|
|
ee_dmg_listen(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,param_09,param_0A,param_0B)
|
|
{
|
|
if(lib_0547::func_5565(param_04,"MOD_EXPLOSIVE") || lib_0547::func_5565(param_04,"MOD_EXPLOSIVE_BULLET"))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(!common_scripts\utility::func_562E(self.var_552B))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(!isdefined(param_01))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(!isplayer(param_01))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(isdefined(level.ee_contestant) && param_01 != level.ee_contestant)
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(common_scripts\utility::func_562E(self.is_starter))
|
|
{
|
|
level notify("ee_started",param_01);
|
|
thread ee_lower(undefined,1);
|
|
return;
|
|
}
|
|
|
|
if(common_scripts\utility::func_562E(self.is_dog))
|
|
{
|
|
return;
|
|
}
|
|
|
|
level notify("duck_killed",param_01);
|
|
thread ee_lower(undefined,1);
|
|
level.ducks_killed_in_window++;
|
|
if(level.ducks_killed_in_window >= level.ducks_per_window)
|
|
{
|
|
level notify("all_ducks_in_window_killed");
|
|
}
|
|
} |