swwmgz_m/zscript/dlc1/swwm_ammoitems_dlc.zsc
Marisa Kirisame cdd65f11a3 Safety Tether implemented.
VIP items cannot be bought.
VIP items have a special color in the inventory/store.
Boost Devastation Sigil sounds.
Fix Teleport() calls using A_Teleport() flags (oops).
Give cheat tweaks.
2021-09-04 21:18:37 +02:00

479 lines
8.4 KiB
Text

// All DLC weapon ammo pickups
Class SMW05Ammo : Ammo
{
Mixin SWWMShellAmmo;
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Mixin SWWMRespawn;
Default
{
//$Title 1x SMW.05 Bullets
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_SMW05Ammo.png
//$Icon ammo
Tag "$T_SMW05BULLET";
Stamina 300;
Inventory.Icon "graphics/HUD/Icons/A_SMW05Ammo.png";
Inventory.Amount 1;
Inventory.MaxAmount 60;
Ammo.BackpackAmount 3;
Ammo.BackpackMaxAmount 150;
Ammo.DropAmount 3;
+FLOATBOB;
FloatBobStrength 0.25;
Accuracy 20;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class SMW05BundleSpawn : SWWMAmmoSpawner
{
override void SpawnAmmo()
{
int bnd = Random[Bundle](2,3);
for ( int i=0; i<bnd; i++ )
{
let a = Spawn("SMW05Ammo",Vec3Angle(4,i*(360/bnd)));
a.angle = i*(360/bnd);
SWWMUtility.TransferItemProp(self,a,true);
}
}
}
Class SMW05SmallAmmo : SMW05Ammo
{
Default
{
//$Title 6x SMW.05 Bullets
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_SMW05Ammo.png
//$Icon ammo
Inventory.Amount 6;
}
}
Class SMW05BigAmmo : SMW05Ammo
{
Default
{
//$Title 30x SMW.05 Bullets
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_SMW05Ammo.png
//$Icon ammo
Inventory.Amount 30;
}
}
Class SheenAmmo : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Mixin SWWMRespawn;
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
{
//$Title 1x Sheen Bullets
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_SheenAmmo.png
//$Icon ammo
Tag "$T_SHEENBULLETS";
Stamina 400;
Inventory.Icon "graphics/HUD/Icons/A_SheenAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 600;
Ammo.BackpackAmount 50;
Ammo.BackpackMaxAmount 1200;
Ammo.DropAmount 10;
+FLOATBOB;
FloatBobStrength 0.25;
Accuracy 35;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class SheenTinyAmmo : SheenAmmo
{
Default
{
//$Title 10x Sheen Bullets
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_SheenAmmo.png
//$Icon ammo
Inventory.Amount 10;
}
}
Class SheenSmallAmmo : SheenAmmo
{
Default
{
//$Title 50x Sheen Bullets
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_SheenAmmo.png
//$Icon ammo
Inventory.Amount 50;
}
}
Class SheenBigAmmo : SheenAmmo
{
Default
{
//$Title 100x Sheen Bullets
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_SheenAmmo.png
//$Icon ammo
Inventory.Amount 100;
}
}
Class QuadravolAmmo : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Mixin SWWMRespawn;
Default
{
//$Title Quadravol Ammo
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_QuadAmmo.png
//$Icon ammo
Tag "$T_QUADAMMO";
Inventory.PickupMessage "$T_QUADAMMO";
Stamina 10000;
Inventory.Icon "graphics/HUD/Icons/A_QuadAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 4;
Ammo.BackpackAmount 1;
Ammo.BackpackMaxAmount 12;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
Accuracy 45;
}
override void ModifyDropAmount( int dropamount )
{
Super.ModifyDropAmount(dropamount);
Amount = min(Amount,1);
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class QuadravolAmmoBundleSpawn : SWWMAmmoSpawner
{
override void SpawnAmmo()
{
int bnd = Random[Bundle](2,3);
for ( int i=0; i<bnd; i++ )
{
let a = Spawn("QuadravolAmmo",Vec3Angle(6,i*(360/bnd)));
a.angle = i*(360/bnd);
SWWMUtility.TransferItemProp(self,a,true);
}
}
}
Class DarkCanister : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Mixin SWWMRespawn;
Default
{
//$Title Dark Canister
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_DarkAmmo.png
//$Icon ammo
Tag "$T_DARKAMMO";
Inventory.PickupMessage "$T_DARKAMMO";
Stamina 20000;
Inventory.Icon "graphics/HUD/Icons/A_DarkAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 3;
Ammo.BackpackAmount 1;
Ammo.BackpackMaxAmount 6;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
Accuracy 60;
}
override void ModifyDropAmount( int dropamount )
{
Super.ModifyDropAmount(dropamount);
Amount = min(Amount,1);
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class EMPCore : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Default
{
//$Title EMP Core
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_EMPCore.png
//$Icon ammo
Tag "$T_EMPCORE";
Inventory.PickupMessage "$T_EMPCORE";
Stamina 60000;
Inventory.Icon "graphics/HUD/Icons/A_EMPCore.png";
Inventory.Amount 1;
Inventory.MaxAmount 4;
Ammo.BackpackAmount 0;
Ammo.BackpackMaxAmount 10;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
Accuracy 80;
}
override void ModifyDropAmount( int dropamount )
{
Super.ModifyDropAmount(dropamount);
Amount = min(Amount,1);
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class EMPCoreBundleSpawn : SWWMAmmoSpawner
{
override void SpawnAmmo()
{
int bnd = Random[Bundle](2,3);
for ( int i=0; i<3; i++ )
{
let a = Spawn("EMPCore",Vec3Angle(6,i*(360/bnd)));
a.angle = i*(360/bnd);
SWWMUtility.TransferItemProp(self,a,true);
}
}
}
Class RayBolt : MagAmmo
{
Default
{
//$Title Ray-Khom Bolt
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_RayBolt.png
//$Icon ammo
Tag "$T_RAYBOLT";
Inventory.PickupMessage "$T_RAYBOLT";
Inventory.Icon "graphics/HUD/Icons/A_RayBolt.png";
MagAmmo.ParentAmmo "RayAmmo";
MagAmmo.ClipSize 10;
Inventory.MaxAmount 15;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class RayBoltBundleSpawn : SWWMAmmoSpawner
{
override void SpawnAmmo()
{
int bnd = Random[Bundle](2,5);
for ( int i=0; i<bnd; i++ )
{
let a = Spawn("RayBolt",Vec3Angle(6,i*(360/bnd)));
a.angle = i*(360/bnd);
SWWMUtility.TransferItemProp(self,a,true);
}
}
}
Class RayAmmo : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Mixin SWWMRespawn;
Default
{
//$Title Ray-Khom Mag
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_RayAmmo.png
//$Icon ammo
Tag "$T_RAYAMMO";
Inventory.PickupMessage "$T_RAYAMMO";
Stamina 150000;
Inventory.Icon "graphics/HUD/Icons/A_RayAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 5;
Ammo.BackpackAmount 0;
Ammo.BackpackMaxAmount 9;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
Accuracy 90;
}
override void ModifyDropAmount( int dropamount )
{
Super.ModifyDropAmount(dropamount);
Amount = min(Amount,1);
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class RayBattery : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Mixin SWWMRespawn;
Default
{
//$Title Ray-Khom Battery
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_RayBattery.png
//$Icon ammo
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;
+FLOATBOB;
FloatBobStrength 0.25;
Accuracy 90;
}
override void ModifyDropAmount( int dropamount )
{
Super.ModifyDropAmount(dropamount);
Amount = min(Amount,1);
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class GrandSpear : MagAmmo
{
Default
{
//$Title Grand Lance Spear
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_GrandSpear.png
//$Icon ammo
Tag "$T_GRANDSPEAR";
Inventory.PickupMessage "$T_GRANDSPEAR";
Inventory.Icon "graphics/HUD/Icons/A_GrandSpear.png";
MagAmmo.ParentAmmo "GrandAmmo";
MagAmmo.ClipSize 5;
Inventory.MaxAmount 8;
+FLOATBOB;
FloatBobStrength 0.25;
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}
Class GrandAmmo : Ammo
{
Mixin SWWMAmmo;
Mixin SWWMOverlapPickupSound;
Mixin SWWMUseToPickup;
Mixin SWWMRespawn;
Default
{
//$Title Grand Lance Mag
//$Group Ammo
//$Sprite graphics/HUD/Icons/A_GrandAmmo.png
//$Icon ammo
Tag "$T_GRANDAMMO";
Inventory.PickupMessage "$T_GRANDAMMO";
Stamina -1200000;
Inventory.Icon "graphics/HUD/Icons/A_GrandAmmo.png";
Inventory.Amount 1;
Inventory.MaxAmount 1;
Ammo.BackpackAmount 0;
Ammo.BackpackMaxAmount 4;
Ammo.DropAmount 1;
+FLOATBOB;
FloatBobStrength 0.25;
}
override void ModifyDropAmount( int dropamount )
{
Super.ModifyDropAmount(dropamount);
Amount = min(Amount,1);
}
States
{
Spawn:
XZW1 A -1;
Stop;
}
}