mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-20 15:07:51 -05:00
121 lines
3.2 KiB
Plaintext
121 lines
3.2 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: scripts\cp\zombies\interaction_logswing.gsc
|
|
* Game: Call of Duty: Infinite Warfare
|
|
* Platform: PC
|
|
* Function Count: 5
|
|
* Decompile Time: 283 ms
|
|
* Timestamp: 10/27/2023 12:09:02 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
init_logswing_trap()
|
|
{
|
|
wait(1);
|
|
var_00 = getent("logswing_trap","targetname");
|
|
var_01 = getent("logswing_trig","targetname");
|
|
if(!isdefined(var_00) || !isdefined(var_01))
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_01 enablelinkto();
|
|
var_01 linkto(var_00,"tag_trigger");
|
|
var_02 = getentarray("swing_trap_pole","targetname");
|
|
foreach(var_04 in var_02)
|
|
{
|
|
var_04 setscriptablepartstate("light","on");
|
|
}
|
|
}
|
|
|
|
//Function Number: 2
|
|
use_logswing_trap(param_00,param_01)
|
|
{
|
|
param_01 playlocalsound("purchase_generic");
|
|
scripts\cp\_interaction::func_554F(param_00);
|
|
var_02 = getent("logswing_trig","targetname");
|
|
var_03 = getentarray("swing_trap_pole","targetname");
|
|
foreach(var_05 in var_03)
|
|
{
|
|
var_05 setscriptablepartstate("light","off");
|
|
}
|
|
|
|
var_07 = getent("logswing_trap","targetname");
|
|
var_07 thread log_swing_trap_sfx();
|
|
var_08 = getanimlength(%iw7_cp_log_swing);
|
|
var_07 scriptmodelplayanimdeltamotion("IW7_cp_log_swing",1);
|
|
param_00.var_126A4 = 0;
|
|
var_07 thread func_A631(var_02,param_01,param_00);
|
|
wait(var_08);
|
|
var_07 scriptmodelplayanimdeltamotion("IW7_cp_log_swing",1);
|
|
wait(var_08);
|
|
var_02 notify("stop_trap");
|
|
level notify("logswing_trap_kills",param_00.var_126A4);
|
|
scripts\cp\_interaction::func_6214(param_00);
|
|
scripts\cp\_interaction::func_9A0D(param_00,45);
|
|
foreach(var_05 in var_03)
|
|
{
|
|
var_05 setscriptablepartstate("light","on");
|
|
}
|
|
}
|
|
|
|
//Function Number: 3
|
|
log_swing_trap_sfx()
|
|
{
|
|
var_00 = spawn("script_model",self.origin);
|
|
wait(0.05);
|
|
var_00 linkto(self,"tag_trigger");
|
|
wait(0.05);
|
|
var_00 playsoundonmovingent("rave_log_swing_trap_sfx");
|
|
wait(9);
|
|
var_00 delete();
|
|
}
|
|
|
|
//Function Number: 4
|
|
func_A631(param_00,param_01,param_02)
|
|
{
|
|
param_00 endon("stop_trap");
|
|
for(;;)
|
|
{
|
|
param_00 waittill("trigger",var_03);
|
|
if(isplayer(var_03) && !scripts\cp\_laststand::player_in_laststand(var_03))
|
|
{
|
|
var_03 dodamage(var_03.health + 100,var_03.origin);
|
|
continue;
|
|
}
|
|
|
|
if(isdefined(var_03.flung))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(isdefined(var_03.agent_type) && var_03.agent_type == "slasher")
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_03.flung = 1;
|
|
param_02.var_126A4++;
|
|
level thread func_6F32(var_03,self,param_01);
|
|
}
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_6F32(param_00,param_01,param_02)
|
|
{
|
|
param_00 endon("death");
|
|
param_00.do_immediate_ragdoll = 1;
|
|
param_00.var_4C87 = 1;
|
|
param_00.disable_armor = 1;
|
|
param_00.nocorpse = 1;
|
|
param_00.full_gib = 1;
|
|
var_03 = ["kill_trap_generic","kill_trap_1","kill_trap_2","kill_trap_3","kill_trap_4","kill_trap_5","kill_trap_6","trap_kill_7"];
|
|
param_02 thread scripts\cp\_vo::try_to_play_vo(scripts\common\utility::random(var_03),"zmb_comment_vo","highest",10,0,0,1,25);
|
|
if(param_02 scripts\cp\_utility::is_valid_player())
|
|
{
|
|
param_00 dodamage(param_00.health + 1000,param_00.origin,param_02,param_02,"MOD_UNKNOWN","iw7_discotrap_zm");
|
|
return;
|
|
}
|
|
|
|
param_00 dodamage(param_00.health + 1000,param_00.origin,undefined,undefined,"MOD_UNKNOWN","iw7_discotrap_zm");
|
|
} |