mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-07-03 04:47:52 -05:00
180 lines
4.0 KiB
Plaintext
180 lines
4.0 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: maps\mp\killstreaks\_deployablebox_ammo.gsc
|
|
* Game: Call of Duty: Ghosts
|
|
* Platform: PC
|
|
* Function Count: 9
|
|
* Decompile Time: 166 ms
|
|
* Timestamp: 10/27/2023 1:20:34 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
func_44DF()
|
|
{
|
|
var_00 = spawnstruct();
|
|
var_00.weaponinfo = "deployable_vest_marker_mp";
|
|
var_00.modelbase = "mil_ammo_case_1_open";
|
|
var_00.hintstring = &"KILLSTREAKS_HINTS_DEPLOYABLE_AMMO_USE";
|
|
var_00.capturingstring = &"KILLSTREAKS_DEPLOYABLE_AMMO_TAKING";
|
|
var_00.event = "deployable_ammo_taken";
|
|
var_00.streakname = "deployable_ammo";
|
|
var_00.splashname = "used_deployable_ammo";
|
|
var_00.shadername = "compass_objpoint_deploy_ammo_friendly";
|
|
var_00.headiconoffset = 25;
|
|
var_00.lifespan = 90;
|
|
var_00.usexp = 50;
|
|
var_00.xppopup = "destroyed_vest";
|
|
var_00.vodestroyed = "ballistic_vest_destroyed";
|
|
var_00.deployedsfx = "mp_vest_deployed_ui";
|
|
var_00.onusesfx = "ammo_crate_use";
|
|
var_00.onusecallback = ::func_5987;
|
|
var_00.canusecallback = ::canusedeployable;
|
|
var_00.usetime = 500;
|
|
var_00.maxhealth = 150;
|
|
var_00.damagefeedback = "deployable_bag";
|
|
var_00.deathweaponinfo = "deployable_ammo_mp";
|
|
var_00.deathvfx = loadfx("fx/explosions/clusterbomb_exp_direct_runner");
|
|
var_00.deathdamageradius = 256;
|
|
var_00.deathdamagemax = 130;
|
|
var_00.deathdamagemin = 50;
|
|
var_00.allowmeleedamage = 1;
|
|
var_00.allowgrenadedamage = 1;
|
|
var_00.maxuses = 4;
|
|
level.boxsettings["deployable_ammo"] = var_00;
|
|
level.killstreakfuncs["deployable_ammo"] = ::tryusedeployableammo;
|
|
level.deployable_box["deployable_ammo"] = [];
|
|
}
|
|
|
|
//Function Number: 2
|
|
tryusedeployableammo(param_00,param_01)
|
|
{
|
|
var_02 = maps\mp\killstreaks\_deployablebox::func_13F5(param_00,"deployable_ammo");
|
|
if(!isdefined(var_02) || !var_02)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
if(!maps\mp\_utility::func_47BB())
|
|
{
|
|
maps\mp\_matchdata::func_4F1D("deployable_ammo",self.origin);
|
|
}
|
|
|
|
return 1;
|
|
}
|
|
|
|
//Function Number: 3
|
|
func_5987(param_00)
|
|
{
|
|
if(maps\mp\_utility::func_47BB())
|
|
{
|
|
addalienweaponammo(param_00);
|
|
}
|
|
|
|
addallweaponammo();
|
|
}
|
|
|
|
//Function Number: 4
|
|
addallweaponammo()
|
|
{
|
|
var_00 = self getweaponslistall();
|
|
if(isdefined(var_00))
|
|
{
|
|
foreach(var_02 in var_00)
|
|
{
|
|
if(maps\mp\gametypes\_weapons::isbulletweapon(var_02))
|
|
{
|
|
func_0951(var_02,2);
|
|
continue;
|
|
}
|
|
|
|
if(weaponclass(var_02) == "rocketlauncher")
|
|
{
|
|
func_0951(var_02,1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_0951(param_00,param_01)
|
|
{
|
|
var_02 = weaponclipsize(param_00);
|
|
var_03 = self getweaponammostock(param_00);
|
|
self setweaponammostock(param_00,var_03 + param_01 * var_02);
|
|
}
|
|
|
|
//Function Number: 6
|
|
addratiomaxstocktoallweapons(param_00)
|
|
{
|
|
var_01 = self getweaponslistprimaries();
|
|
foreach(var_03 in var_01)
|
|
{
|
|
if(maps\mp\gametypes\_weapons::isbulletweapon(var_03))
|
|
{
|
|
if(var_03 != "iw6_alienminigun_mp")
|
|
{
|
|
var_04 = self getweaponammostock(var_03);
|
|
var_05 = weaponmaxammo(var_03);
|
|
var_06 = var_04 + var_05 * param_00;
|
|
self setweaponammostock(var_03,int(min(var_06,var_05)));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 7
|
|
addfullcliptoallweapons()
|
|
{
|
|
var_00 = self getweaponslistprimaries();
|
|
foreach(var_02 in var_00)
|
|
{
|
|
var_03 = weaponclipsize(var_02);
|
|
self setweaponammoclip(var_02,var_03);
|
|
}
|
|
}
|
|
|
|
//Function Number: 8
|
|
addalienweaponammo(param_00)
|
|
{
|
|
var_01 = self getweaponslistprimaries();
|
|
switch(param_00.upgrade_rank)
|
|
{
|
|
case 0:
|
|
addratiomaxstocktoallweapons(0.4);
|
|
break;
|
|
|
|
case 1:
|
|
addratiomaxstocktoallweapons(0.7);
|
|
break;
|
|
|
|
case 2:
|
|
addratiomaxstocktoallweapons(1);
|
|
break;
|
|
|
|
case 3:
|
|
addratiomaxstocktoallweapons(1);
|
|
addfullcliptoallweapons();
|
|
break;
|
|
|
|
case 4:
|
|
addratiomaxstocktoallweapons(1);
|
|
addfullcliptoallweapons();
|
|
break;
|
|
}
|
|
}
|
|
|
|
//Function Number: 9
|
|
canusedeployable(param_00)
|
|
{
|
|
if(maps\mp\_utility::func_47BB() && isdefined(param_00) && param_00.owner == self && !isdefined(param_00.air_dropped))
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
if(!maps\mp\_utility::func_47BB())
|
|
{
|
|
return !maps\mp\_utility::isjuggernaut();
|
|
}
|
|
|
|
return 1;
|
|
} |