mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-10 02:17:56 -05:00
402 lines
7.3 KiB
Plaintext
402 lines
7.3 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: scripts\mp\_shellshock.gsc
|
|
* Game: Call of Duty: Infinite Warfare
|
|
* Platform: PC
|
|
* Function Count: 19
|
|
* Decompile Time: 859 ms
|
|
* Timestamp: 10/27/2023 12:21:30 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
init()
|
|
{
|
|
level._effect["slide_dust"] = loadfx("vfx/core/screen/vfx_scrnfx_tocam_slidedust_m");
|
|
level._effect["hit_left"] = loadfx("vfx/core/screen/vfx_blood_hit_left");
|
|
level._effect["hit_right"] = loadfx("vfx/core/screen/vfx_blood_hit_right");
|
|
level._effect["melee_spray"] = loadfx("vfx/core/screen/vfx_melee_blood_spray");
|
|
}
|
|
|
|
//Function Number: 2
|
|
func_FC6A(param_00,param_01)
|
|
{
|
|
if(isdefined(self.var_6ECA) && gettime() < self.var_6ECA)
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(param_00 == "MOD_EXPLOSIVE" || param_00 == "MOD_GRENADE" || param_00 == "MOD_GRENADE_SPLASH" || param_00 == "MOD_PROJECTILE" || param_00 == "MOD_PROJECTILE_SPLASH")
|
|
{
|
|
if(param_01 > 10)
|
|
{
|
|
if(isplayer(self) && self method_84CA())
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(isdefined(self.var_FC6B) && self.var_FC6B)
|
|
{
|
|
self shellshock("frag_grenade_mp",self.var_FC6B);
|
|
return;
|
|
}
|
|
|
|
self shellshock("frag_grenade_mp",0.5);
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 3
|
|
func_636E()
|
|
{
|
|
self waittill("death");
|
|
waittillframeend;
|
|
self notify("end_explode");
|
|
}
|
|
|
|
//Function Number: 4
|
|
func_858A(param_00,param_01)
|
|
{
|
|
self notify("grenade_earthQuake");
|
|
self endon("grenade_earthQuake");
|
|
thread func_636E();
|
|
self endon("end_explode");
|
|
var_02 = undefined;
|
|
if(!isdefined(param_01) || param_01)
|
|
{
|
|
self waittill("explode",var_02);
|
|
}
|
|
else
|
|
{
|
|
var_02 = self.origin;
|
|
}
|
|
|
|
func_858C(var_02,param_00);
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_858B(param_00,param_01,param_02)
|
|
{
|
|
func_858C(param_00,param_01,param_02);
|
|
}
|
|
|
|
//Function Number: 6
|
|
func_858C(param_00,param_01,param_02)
|
|
{
|
|
if(!isdefined(param_01))
|
|
{
|
|
param_01 = 1;
|
|
}
|
|
|
|
func_13B9("grenade_rumble",param_00,param_02);
|
|
var_03 = 0.45 * param_01;
|
|
var_04 = 0.7;
|
|
var_05 = 800;
|
|
func_1245(var_03,var_04,param_00,var_05,param_02);
|
|
func_13BE(param_00,600,param_02);
|
|
}
|
|
|
|
//Function Number: 7
|
|
func_2BC2(param_00)
|
|
{
|
|
self endon("disconnect");
|
|
if(!scripts\mp\_utility::func_9F19(self))
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_01 = vectornormalize(anglestoforward(self.angles));
|
|
var_02 = vectornormalize(anglestoright(self.angles));
|
|
var_03 = vectornormalize(param_00 - self.origin);
|
|
var_04 = vectordot(var_03,var_01);
|
|
var_05 = vectordot(var_03,var_02);
|
|
if(var_04 > 0 && var_04 > 0.5)
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(abs(var_04) < 0.866)
|
|
{
|
|
var_06 = level._effect["hit_left"];
|
|
if(var_05 > 0)
|
|
{
|
|
var_06 = level._effect["hit_right"];
|
|
}
|
|
|
|
var_07 = ["death","damage"];
|
|
thread func_CD1D(var_06,var_07,7);
|
|
}
|
|
}
|
|
|
|
//Function Number: 8
|
|
func_2BC3(param_00)
|
|
{
|
|
self endon("disconnect");
|
|
if(isdefined(param_00) && scripts\mp\_utility::func_8234(param_00) == "iw7_axe" && self getweaponammoclip(param_00) > 0)
|
|
{
|
|
if(!isdefined(self.axeswingnum))
|
|
{
|
|
self.axeswingnum = 1;
|
|
}
|
|
|
|
var_01 = "axe_blood_" + self.axeswingnum;
|
|
thread activateaxeblood(var_01);
|
|
self.axeswingnum++;
|
|
if(self.axeswingnum > 5)
|
|
{
|
|
self.axeswingnum = 1;
|
|
return;
|
|
}
|
|
|
|
return;
|
|
}
|
|
|
|
wait(0.5);
|
|
var_02 = ["death"];
|
|
thread func_CD1D(level._effect["melee_spray"],var_02,1.5);
|
|
}
|
|
|
|
//Function Number: 9
|
|
activateaxeblood(param_00)
|
|
{
|
|
self endon("disconnect");
|
|
self setscriptablepartstate(param_00,"blood");
|
|
wait(5);
|
|
self setscriptablepartstate(param_00,"neutral");
|
|
}
|
|
|
|
//Function Number: 10
|
|
func_CD1D(param_00,param_01,param_02)
|
|
{
|
|
self endon("disconnect");
|
|
var_03 = function_01E1(param_00,self geteye(),self);
|
|
triggerfx(var_03);
|
|
var_03 method_82EC();
|
|
scripts\common\utility::func_1372E(param_01,param_02);
|
|
var_03 delete();
|
|
}
|
|
|
|
//Function Number: 11
|
|
func_3337()
|
|
{
|
|
thread func_636E();
|
|
self endon("end_explode");
|
|
self waittill("explode",var_00);
|
|
playrumbleonposition("grenade_rumble",var_00);
|
|
earthquake(0.4,0.75,var_00,512);
|
|
foreach(var_02 in level.players)
|
|
{
|
|
if(var_02 scripts\mp\_utility::func_9FC6())
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(distance(var_00,var_02.origin) > 512)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_02 setclientomnvar("ui_hud_shake",1);
|
|
}
|
|
}
|
|
|
|
//Function Number: 12
|
|
func_22FF(param_00,param_01,param_02)
|
|
{
|
|
var_03 = self.origin;
|
|
func_13B9("artillery_rumble",var_03);
|
|
if(!isdefined(param_00))
|
|
{
|
|
param_00 = 0.7;
|
|
}
|
|
|
|
if(!isdefined(param_01))
|
|
{
|
|
param_01 = 0.5;
|
|
}
|
|
|
|
if(!isdefined(param_02))
|
|
{
|
|
param_02 = 800;
|
|
}
|
|
|
|
func_1245(param_00,param_01,var_03,param_02);
|
|
func_13BE(var_03,param_02);
|
|
}
|
|
|
|
//Function Number: 13
|
|
func_10F44(param_00)
|
|
{
|
|
playrumbleonposition("grenade_rumble",param_00);
|
|
earthquake(1,0.6,param_00,2000);
|
|
foreach(var_02 in level.players)
|
|
{
|
|
if(var_02 scripts\mp\_utility::func_9FC6())
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(distance(param_00,var_02.origin) > 1000)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_02 setclientomnvar("ui_hud_shake",1);
|
|
}
|
|
}
|
|
|
|
//Function Number: 14
|
|
func_1AF0(param_00)
|
|
{
|
|
func_13B9("artillery_rumble",param_00);
|
|
func_1245(0.5,0.65,param_00,1000);
|
|
func_13BE(param_00,900);
|
|
}
|
|
|
|
//Function Number: 15
|
|
func_DAF3(param_00)
|
|
{
|
|
self notify("pulseGrenade_earthQuake");
|
|
self endon("pulseGrenade_earthQuake");
|
|
thread func_636E();
|
|
self endon("end_explode");
|
|
var_01 = undefined;
|
|
if(!isdefined(param_00) || param_00)
|
|
{
|
|
self waittill("explode",var_01);
|
|
}
|
|
else
|
|
{
|
|
var_01 = self.origin;
|
|
}
|
|
|
|
playrumbleonposition("grenade_rumble",var_01);
|
|
earthquake(0.3,0.35,var_01,800);
|
|
foreach(var_03 in level.players)
|
|
{
|
|
if(var_03 scripts\mp\_utility::func_9FC6())
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(distancesquared(var_01,var_03.origin) > 90000)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_03 setclientomnvar("ui_hud_shake",1);
|
|
}
|
|
}
|
|
|
|
//Function Number: 16
|
|
func_65C4(param_00)
|
|
{
|
|
self notify("pulseGrenade_earthQuake");
|
|
self endon("pulseGrenade_earthQuake");
|
|
thread func_636E();
|
|
self endon("end_explode");
|
|
var_01 = undefined;
|
|
if(!isdefined(param_00) || param_00)
|
|
{
|
|
self waittill("explode",var_01);
|
|
}
|
|
else
|
|
{
|
|
var_01 = self.origin;
|
|
}
|
|
|
|
playrumbleonposition("grenade_rumble",var_01);
|
|
earthquake(0.3,0.35,var_01,800);
|
|
foreach(var_03 in level.players)
|
|
{
|
|
if(var_03 scripts\mp\_utility::func_9FC6())
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(distancesquared(var_01,var_03.origin) > 90000)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_03 setclientomnvar("ui_hud_shake",1);
|
|
}
|
|
}
|
|
|
|
//Function Number: 17
|
|
func_1245(param_00,param_01,param_02,param_03,param_04)
|
|
{
|
|
if(!isdefined(param_04))
|
|
{
|
|
param_04 = 0;
|
|
}
|
|
|
|
foreach(var_06 in level.players)
|
|
{
|
|
if(!isdefined(var_06))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_07 = lib_0DF8::func_9DDF(var_06);
|
|
if((var_07 && param_04) || !var_07 && !param_04)
|
|
{
|
|
var_06 earthquakeforplayer(param_00,param_01,param_02,param_03);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 18
|
|
func_13B9(param_00,param_01,param_02)
|
|
{
|
|
if(!isdefined(param_02))
|
|
{
|
|
param_02 = 0;
|
|
}
|
|
|
|
foreach(var_04 in level.players)
|
|
{
|
|
if(!isdefined(var_04))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_05 = lib_0DF8::func_9DDF(var_04);
|
|
if((var_05 && param_02) || !var_05 && !param_02)
|
|
{
|
|
var_04 method_8246(param_00,param_01);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 19
|
|
func_13BE(param_00,param_01,param_02)
|
|
{
|
|
if(!isdefined(param_02))
|
|
{
|
|
param_02 = 0;
|
|
}
|
|
|
|
var_03 = param_01 * param_01;
|
|
foreach(var_05 in level.players)
|
|
{
|
|
if(!isdefined(var_05))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(var_05 scripts\mp\_utility::func_9FC6())
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_06 = lib_0DF8::func_9DDF(var_05);
|
|
if((var_06 && param_02) || !var_06 && !param_02)
|
|
{
|
|
if(distancesquared(param_00,var_05.origin) <= var_03)
|
|
{
|
|
var_05 setclientomnvar("ui_hud_shake",1);
|
|
}
|
|
}
|
|
}
|
|
} |