swwmgz_m/zscript/dlc/swwm_dlcammo.zsc
Marisa Kirisame 90ca4e4838 Golden shells won't spawn if players have a full supply.
Tweak ammo max amounts.
Embiggener max amount halved back to 8.
Embiggeners now increase ammo capacity by a factor relative to BackpackMaxAmount, rather than a fixed increase.
Credits now show the mod's alt title (UnSX Gaiden: Demolitionist).
Added compatibility tweaks to Okuplok and Holy Hell Revealed.
2020-12-04 13:19:43 +01:00

310 lines
5 KiB
Text

// All DLC weapon ammo pickups
Class SMW05Ammo : Ammo
{
Mixin SWWMShellAmmo;
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Default
{
Tag "$T_SMW05BULLET";
Stamina 300;
Inventory.Icon "graphics/HUD/Icons/A_SMW05Ammo.png";
Inventory.Amount 1;
Inventory.MaxAmount 90;
Ammo.BackpackAmount 6;
Ammo.BackpackMaxAmount 250;
Ammo.DropAmount 6;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class SMW05SmallAmmo : SMW05Ammo
{
Default
{
Inventory.Amount 6;
}
}
Class SMW05BigAmmo : SMW05Ammo
{
Default
{
Inventory.Amount 30;
}
}
Class SheenAmmo : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
override string PickupMessage()
{
String tagstr = "$T_SHEENBULLET";
tagstr.MakeUpper();
if ( Amount > 1 )
{
tagstr = tagstr.."S";
return String.Format("%d %s",Amount,StringTable.Localize(tagstr));
}
return StringTable.Localize(tagstr);
}
Default
{
Tag "$T_SHEENBULLETS";
Stamina 400;
Inventory.Icon "graphics/HUD/Icons/A_SheenAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 300;
Ammo.BackpackAmount 50;
Ammo.BackpackMaxAmount 1500;
Ammo.DropAmount 50;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class SheenSmallAmmo : SheenAmmo
{
Default
{
Inventory.Amount 50;
}
}
Class SheenBigAmmo : SheenAmmo
{
Default
{
Inventory.Amount 100;
}
}
Class QuadravolAmmo : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Default
{
Tag "$T_QUADAMMO";
Inventory.PickupMessage "$T_QUADAMMO";
Stamina 10000;
Inventory.Icon "graphics/HUD/Icons/A_QuadAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 8;
Ammo.BackpackAmount 1;
Ammo.BackpackMaxAmount 24;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class QuadravolAmmoBundleSpawn : Actor
{
override void PostBeginPlay()
{
if ( bCOUNTSECRET ) level.total_secrets--;
int bnd = Random[Bundle](2,3);
for ( int i=0; i<3; i++ )
{
let a = Spawn("QuadravolAmmo",Vec3Angle(6,i*(360/bnd)));
a.special = special;
a.angle = i*(360/bnd);
a.FloatBobPhase = FloatBobPhase;
for ( int j=0; j<5; j++ ) a.args[j] = args[j];
if ( bCOUNTSECRET )
{
a.bCOUNTSECRET = true;
level.total_secrets++;
}
}
Destroy();
}
}
Class DarkCanister : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Default
{
Tag "$T_DARKAMMO";
Inventory.PickupMessage "$T_DARKAMMO";
Stamina 20000;
Inventory.Icon "graphics/HUD/Icons/A_DarkAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 5;
Ammo.BackpackAmount 1;
Ammo.BackpackMaxAmount 13;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class EMPCore : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Default
{
Tag "$T_EMPCORE";
Inventory.PickupMessage "$T_EMPCORE";
Stamina 60000;
Inventory.Icon "graphics/HUD/Icons/A_EMPCore.png";
Inventory.Amount 1;
Inventory.MaxAmount 6;
Ammo.BackpackAmount 0;
Ammo.BackpackMaxAmount 14;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class EMPCoreBundleSpawn : Actor
{
override void PostBeginPlay()
{
if ( bCOUNTSECRET ) level.total_secrets--;
int bnd = Random[Bundle](2,3);
for ( int i=0; i<3; i++ )
{
let a = Spawn("EMPCore",Vec3Angle(6,i*(360/bnd)));
a.special = special;
a.angle = i*(360/bnd);
a.FloatBobPhase = FloatBobPhase;
for ( int j=0; j<5; j++ ) a.args[j] = args[j];
if ( bCOUNTSECRET )
{
a.bCOUNTSECRET = true;
level.total_secrets++;
}
}
Destroy();
}
}
Class RayBolt : MagAmmo
{
Default
{
Tag "$T_RAYBOLT";
Inventory.PickupMessage "$T_RAYBOLT";
Inventory.Icon "graphics/HUD/Icons/A_RayBolt.png";
MagAmmo.ParentAmmo "RayAmmo";
MagAmmo.ClipSize 20;
Inventory.MaxAmount 40;
Inventory.InterHubAmount 40;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class RayAmmo : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Default
{
Tag "$T_RAYAMMO";
Inventory.PickupMessage "$T_RAYAMMO";
Stamina 150000;
Inventory.Icon "graphics/HUD/Icons/A_RayAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 4;
Ammo.BackpackAmount 0;
Ammo.BackpackMaxAmount 8;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class RayBattery : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Default
{
Tag "$T_RAYBATTERY";
Inventory.PickupMessage "$T_RAYBATTERY";
Stamina 320000;
Inventory.Icon "graphics/HUD/Icons/A_RayBattery.png";
Inventory.Amount 1;
Inventory.MaxAmount 2;
Inventory.PickupFlash "SWWMPickupFlash";
Ammo.BackpackAmount 0;
Ammo.BackpackMaxAmount 4;
Ammo.DropAmount 1;
+INVENTORY.IGNORESKILL;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}