Ammo balancing and behind-the-scenes stuff.
This commit is contained in:
parent
24edbb11ec
commit
4677ca7d4f
25 changed files with 147 additions and 183 deletions
|
|
@ -16,8 +16,8 @@ Class RedShell : SWWMAmmo
|
|||
Inventory.Icon "graphics/HUD/Icons/A_ShellsNormal.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 30;
|
||||
Ammo.BackpackAmount 2;
|
||||
Ammo.BackpackMaxAmount 80;
|
||||
Ammo.BackpackAmount 3;
|
||||
Ammo.BackpackMaxAmount 50;
|
||||
Ammo.DropAmount 1;
|
||||
+FLOATBOB;
|
||||
FloatBobStrength 0.25;
|
||||
|
|
@ -72,7 +72,7 @@ Class GreenShell : SWWMAmmo
|
|||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 25;
|
||||
Ammo.BackpackAmount 2;
|
||||
Ammo.BackpackMaxAmount 60;
|
||||
Ammo.BackpackMaxAmount 45;
|
||||
Ammo.DropAmount 1;
|
||||
+FLOATBOB;
|
||||
FloatBobStrength 0.25;
|
||||
|
|
@ -181,7 +181,7 @@ Class BlueShell : SWWMAmmo
|
|||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 15;
|
||||
Ammo.BackpackAmount 1;
|
||||
Ammo.BackpackMaxAmount 40;
|
||||
Ammo.BackpackMaxAmount 35;
|
||||
Ammo.DropAmount 1;
|
||||
+FLOATBOB;
|
||||
FloatBobStrength 0.25;
|
||||
|
|
@ -234,9 +234,9 @@ Class BlackShell : SWWMAmmo
|
|||
Stamina 4000;
|
||||
Inventory.Icon "graphics/HUD/Icons/A_ShellsFuck.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 10;
|
||||
Inventory.MaxAmount 5;
|
||||
Ammo.BackpackAmount 0;
|
||||
Ammo.BackpackMaxAmount 20;
|
||||
Ammo.BackpackMaxAmount 25;
|
||||
Ammo.DropAmount 1;
|
||||
+FLOATBOB;
|
||||
FloatBobStrength 0.25;
|
||||
|
|
@ -291,7 +291,7 @@ Class PurpleShell : SWWMAmmo
|
|||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 20;
|
||||
Ammo.BackpackAmount 1;
|
||||
Ammo.BackpackMaxAmount 60;
|
||||
Ammo.BackpackMaxAmount 40;
|
||||
Ammo.DropAmount 1;
|
||||
+FLOATBOB;
|
||||
FloatBobStrength 0.25;
|
||||
|
|
@ -445,8 +445,8 @@ Class EvisceratorShell : SWWMAmmo
|
|||
Inventory.Icon "graphics/HUD/Icons/A_Eviscerator.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 20;
|
||||
Ammo.BackpackAmount 1;
|
||||
Ammo.BackpackMaxAmount 60;
|
||||
Ammo.BackpackAmount 3;
|
||||
Ammo.BackpackMaxAmount 50;
|
||||
Ammo.DropAmount 1;
|
||||
+FLOATBOB;
|
||||
+SWWMAMMO.USEPICKUPMSG;
|
||||
|
|
@ -526,9 +526,9 @@ Class HellblazerMissiles : SWWMAmmo
|
|||
Stamina 8000;
|
||||
Inventory.Icon "graphics/HUD/Icons/A_HellblazerMissile.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 24;
|
||||
Ammo.BackpackAmount 1;
|
||||
Ammo.BackpackMaxAmount 48;
|
||||
Inventory.MaxAmount 18;
|
||||
Ammo.BackpackAmount 2;
|
||||
Ammo.BackpackMaxAmount 36;
|
||||
Ammo.DropAmount 1;
|
||||
+FLOATBOB;
|
||||
FloatBobStrength 0.25;
|
||||
|
|
@ -599,7 +599,7 @@ Class HellblazerCrackshots : SWWMAmmo
|
|||
Stamina 15000;
|
||||
Inventory.Icon "graphics/HUD/Icons/A_HellblazerCrackshot.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 15;
|
||||
Inventory.MaxAmount 12;
|
||||
Ammo.BackpackAmount 1;
|
||||
Ammo.BackpackMaxAmount 30;
|
||||
Ammo.DropAmount 1;
|
||||
|
|
@ -656,7 +656,7 @@ Class HellblazerRavagers : SWWMAmmo
|
|||
Stamina 25000;
|
||||
Inventory.Icon "graphics/HUD/Icons/A_HellblazerRavager.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 9;
|
||||
Inventory.MaxAmount 6;
|
||||
Ammo.BackpackAmount 0;
|
||||
Ammo.BackpackMaxAmount 18;
|
||||
Ammo.DropAmount 1;
|
||||
|
|
@ -702,7 +702,7 @@ Class HellblazerWarheads : SWWMAmmo
|
|||
Stamina 40000;
|
||||
Inventory.Icon "graphics/HUD/Icons/A_HellblazerWarhead.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 4;
|
||||
Inventory.MaxAmount 2;
|
||||
Ammo.BackpackAmount 0;
|
||||
Ammo.BackpackMaxAmount 8;
|
||||
Ammo.DropAmount 1;
|
||||
|
|
@ -752,9 +752,9 @@ Class SparkUnit : SWWMAmmo
|
|||
Stamina 50000;
|
||||
Inventory.Icon "graphics/HUD/Icons/A_Sparkster.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 10;
|
||||
Inventory.MaxAmount 8;
|
||||
Ammo.BackpackAmount 1;
|
||||
Ammo.BackpackMaxAmount 30;
|
||||
Ammo.BackpackMaxAmount 24;
|
||||
Ammo.DropAmount 1;
|
||||
+FLOATBOB;
|
||||
FloatBobStrength 0.25;
|
||||
|
|
@ -801,7 +801,7 @@ Class SilverBulletAmmo : SWWMAmmo
|
|||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 3;
|
||||
Ammo.BackpackAmount 0;
|
||||
Ammo.BackpackMaxAmount 8;
|
||||
Ammo.BackpackMaxAmount 6;
|
||||
Ammo.DropAmount 1;
|
||||
SWWMAmmo.MagAmmoType "SilverBullets";
|
||||
+FLOATBOB;
|
||||
|
|
@ -972,9 +972,9 @@ Class CandyGunAmmo : SWWMAmmo
|
|||
Stamina 100000;
|
||||
Inventory.Icon "graphics/HUD/Icons/A_CandyGun.png";
|
||||
Inventory.Amount 1;
|
||||
Inventory.MaxAmount 2;
|
||||
Inventory.MaxAmount 1;
|
||||
Ammo.BackpackAmount 0;
|
||||
Ammo.BackpackMaxAmount 6;
|
||||
Ammo.BackpackMaxAmount 4;
|
||||
Ammo.DropAmount 1;
|
||||
SWWMAmmo.MagAmmoType "CandyGunBullets";
|
||||
+FLOATBOB;
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ Class SWWMShellAmmoSmall : SWWMAmmoSpawner
|
|||
{
|
||||
/*if ( Random[Replacements](0,1) && (notondemand || SWWMUtility.ItemExists('PuntzerBeta') || SWWMUtility.ItemExists('PuntzerGamma')) )
|
||||
return Random[Replacements](0,2)?'SMW05SmallAmmo':'SMW05Ammo3';*/
|
||||
switch( Random[Replacements](0,8) )
|
||||
switch( Random[Replacements](0,9) )
|
||||
{
|
||||
case 0:
|
||||
case 1:
|
||||
|
|
@ -32,7 +32,7 @@ Class SWWMShellAmmoSmall : SWWMAmmoSpawner
|
|||
case 7:
|
||||
return 'PurpleShell';
|
||||
}
|
||||
// case 8
|
||||
// case 8-9
|
||||
return 'BlueShell';
|
||||
}
|
||||
}
|
||||
|
|
@ -42,44 +42,54 @@ Class SWWMShellAmmoBig : SWWMAmmoSpawner
|
|||
|
||||
static Class<Actor> PickAmmo( bool notondemand = false )
|
||||
{
|
||||
// shell types (sorted by rarity)
|
||||
static const Class<Actor> redpool[] = {'RedShell','RedShell2'};
|
||||
static const Class<Actor> greenpool[] = {'GreenShell','GreenShell2'};
|
||||
static const Class<Actor> purplepool[] = {'PurpleShell','PurpleShell2'};
|
||||
static const Class<Actor> bluepool[] = {'BlueShell','BlueShell2'};
|
||||
/*if ( Random[Replacements](0,1) && (notondemand || SWWMUtility.ItemExists('PuntzerBeta') || SWWMUtility.ItemExists('PuntzerGamma')) )
|
||||
return Random[Replacements](0,2)?'SMW05SmallAmmo':'SMW05BigAmmo';*/
|
||||
switch( Random[Replacements](0,20) )
|
||||
switch( Random[Replacements](0,17) )
|
||||
{
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
return 'RedShell';
|
||||
case 4:
|
||||
return redpool[Random[Replacements](0,1)];
|
||||
case 5:
|
||||
case 6:
|
||||
case 7:
|
||||
return 'GreenShell';
|
||||
case 8:
|
||||
case 9:
|
||||
return greenpool[Random[Replacements](0,1)];
|
||||
case 10:
|
||||
return 'PurpleShell';
|
||||
case 11:
|
||||
case 12:
|
||||
case 13:
|
||||
return purplepool[Random[Replacements](0,1)];
|
||||
return 'BlueShell';
|
||||
case 14:
|
||||
case 15:
|
||||
case 16:
|
||||
return bluepool[Random[Replacements](0,1)];
|
||||
case 17:
|
||||
case 18:
|
||||
return 'WhiteShell';
|
||||
}
|
||||
// case 19-20
|
||||
// case 16-17
|
||||
return 'BlackShell';
|
||||
}
|
||||
}
|
||||
Class SWWMClipAmmoSmall : SWWMAmmoSpawner
|
||||
{
|
||||
Mixin SWWMOndemandAmmoSpawner;
|
||||
|
||||
static Class<Actor> PickAmmo( bool notondemand = false )
|
||||
{
|
||||
if ( !Random[Replacements](0,4) )
|
||||
{
|
||||
/*if ( Random[Replacements](0,1) && (notondemand || SWWMUtility.ItemExists('HeavyMahsheenGun')) )
|
||||
return Random[Replacements](0,2)?'SheenAmmo3':'SheenTinyAmmo';*/
|
||||
if ( notondemand || SWWMUtility.ItemExists('Eviscerator') )
|
||||
return 'EvisceratorShell';
|
||||
}
|
||||
/*if ( Random[Replacements](0,1) && (notondemand || SWWMUtility.ItemExists('PuntzerBeta') || SWWMUtility.ItemExists('PuntzerGamma')) )
|
||||
return Random[Replacements](0,2)?'SMW05Ammo':'SMW05Ammo2';*/
|
||||
return Random[Replacements](0,1)?'RedShell':'GreenShell';
|
||||
}
|
||||
}
|
||||
Class SWWMClipAmmoBig : SWWMAmmoSpawner
|
||||
{
|
||||
Mixin SWWMOndemandAmmoSpawner;
|
||||
|
|
@ -136,7 +146,7 @@ Class SWWMRocketAmmoBig : SWWMAmmoSpawner
|
|||
return Random[Replacements](0,2)?'SparksterRAmmo2':'SparksterRAmmo3';
|
||||
}*/
|
||||
/*if ( Random[Replacements](0,1) && (notondemand || SWWMUtility.ItemExists('Quadravol')) )
|
||||
return Random[Replacements](0,2)?'QuadravolAmmo':'QuadravolAmmo2';*/
|
||||
return Random[Replacements](0,4)?'QuadravolAmmo2':'QuadravolAmmo3';*/
|
||||
switch ( Random[Replacements](0,11) )
|
||||
{
|
||||
case 0:
|
||||
|
|
@ -144,7 +154,7 @@ Class SWWMRocketAmmoBig : SWWMAmmoSpawner
|
|||
case 2:
|
||||
case 3:
|
||||
case 4:
|
||||
return Random[Replacements](0,4)?'HellblazerMissiles':Random[Replacements](0,2)?'HellblazerMissiles2':'HellblazerMissiles3';
|
||||
return Random[Replacements](0,4)?'HellblazerMissiles':'HellblazerMissiles2';
|
||||
case 5:
|
||||
case 6:
|
||||
case 7:
|
||||
|
|
|
|||
|
|
@ -63,28 +63,6 @@ Class ArmorNuggetItem : SWWMSpareArmor
|
|||
Stop;
|
||||
}
|
||||
}
|
||||
Class ArmorNuggetBundleSpawn : Actor
|
||||
{
|
||||
override void PostBeginPlay()
|
||||
{
|
||||
if ( bCOUNTSECRET ) level.total_secrets--;
|
||||
int bnd = Random[Bundle](2,3);
|
||||
for ( int i=0; i<bnd; i++ )
|
||||
{
|
||||
let a = Spawn("ArmorNuggetItem",Vec3Angle(8,i*(360/bnd)));
|
||||
a.special = special;
|
||||
a.angle = i*(360/bnd);
|
||||
for ( int j=0; j<5; j++ ) a.args[j] = args[j];
|
||||
if ( bCOUNTSECRET )
|
||||
{
|
||||
a.bCOUNTSECRET = true;
|
||||
level.total_secrets++;
|
||||
}
|
||||
a.bDROPPED = bDROPPED;
|
||||
}
|
||||
Destroy();
|
||||
}
|
||||
}
|
||||
|
||||
Class BlastSuit : SWWMArmor
|
||||
{
|
||||
|
|
|
|||
|
|
@ -106,28 +106,6 @@ Class HealthNuggetItem : SWWMHealth
|
|||
Stop;
|
||||
}
|
||||
}
|
||||
Class HealthNuggetBundleSpawn : Actor
|
||||
{
|
||||
override void PostBeginPlay()
|
||||
{
|
||||
if ( bCOUNTSECRET ) level.total_secrets--;
|
||||
int bnd = Random[Bundle](2,3);
|
||||
for ( int i=0; i<bnd; i++ )
|
||||
{
|
||||
let a = Spawn("HealthNuggetItem",Vec3Angle(8,i*(360/bnd)));
|
||||
a.special = special;
|
||||
a.angle = i*(360/bnd);
|
||||
for ( int j=0; j<5; j++ ) a.args[j] = args[j];
|
||||
if ( bCOUNTSECRET )
|
||||
{
|
||||
a.bCOUNTSECRET = true;
|
||||
level.total_secrets++;
|
||||
}
|
||||
a.bDROPPED = bDROPPED;
|
||||
}
|
||||
Destroy();
|
||||
}
|
||||
}
|
||||
|
||||
Class TetraHealthItem : SWWMHealth
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue