Release Candidate 3 Hotfix 2:
- Corrections on Power Shield behaviour, added option to make it absorb damage normally like in Unreal instead of individual hits, although this will make it less viable as an Invulnerability replacement.
This commit is contained in:
parent
0bb3e463cc
commit
a06ab42a4a
4 changed files with 27 additions and 18 deletions
|
|
@ -143,12 +143,8 @@ Generates a protective barrier around you that can completely block out up to
|
|||
|
||||
## Power Shield
|
||||
|
||||
A much more potent version of the Shield Belt. This one, rather than degrade
|
||||
with damage taken, wears down based on the NUMBER of hits it takes. So ideally
|
||||
it can eat up 200 attacks from anywhere.
|
||||
|
||||
By default, it also drains slowly over time for balance reasons, but this can
|
||||
be disabled for the original behaviour.
|
||||
A much more potent version of the Shield Belt, which can absorb up to 200
|
||||
individual hits, but loses charge over time.
|
||||
|
||||
## Dispersion Pistol Powerups
|
||||
|
||||
|
|
|
|||
11
cvarinfo.txt
11
cvarinfo.txt
|
|
@ -51,12 +51,11 @@ server bool sting_dpistol = false; // d.pistol altfire always level 0
|
|||
// the weapon, but it's very likely
|
||||
// that this was kept like this for
|
||||
// the sake of balance
|
||||
server bool sting_pshield = false; // p.shield does not drain over time
|
||||
// this is unbalanced as all hell and
|
||||
// it's not recommended to enable the
|
||||
// compatibility option unless you are
|
||||
// a die-hard purist who despises the
|
||||
// change
|
||||
server bool sting_pshield = false; // p.shield absorbs damage instead of
|
||||
// individual hits, like in vanilla.
|
||||
// note that this will make it less
|
||||
// useful as an invulnerability
|
||||
// replacement
|
||||
server bool sting_nopstart = false; // players start only with the
|
||||
// dispersion pistol, otherwise they
|
||||
// also get an automag for the sake
|
||||
|
|
|
|||
|
|
@ -242,7 +242,7 @@ STING_AUTODUAL = "Automags";
|
|||
STING_PROTODUAL = "Protomags";
|
||||
STING_UOPTS = "Compatibility options";
|
||||
STING_DPISTOL = "Dispersion Pistol altfire isn't upgraded";
|
||||
STING_PSHIELD = "Power Shield does not drain over time";
|
||||
STING_PSHIELD = "Power Shield works like in Unreal";
|
||||
STING_NOPSTART = "Players don't start up with an Automag";
|
||||
STING_OLSMP = "Enable SMP 7243 from Oldskool Amp'd";
|
||||
STING_MSENTRY = "Enable new Minigun Sentry";
|
||||
|
|
@ -488,7 +488,7 @@ STING_AUTODUAL = "Autoarmas";
|
|||
STING_PROTODUAL = "Protoarmas";
|
||||
STING_UOPTS = "Opciones de compatibilidad";
|
||||
STING_DPISTOL = "El fuego alternativo de la Pistola de Dispersión no es mejorado";
|
||||
STING_PSHIELD = "El Escudo de Fuerza no pierde carga con el tiempo";
|
||||
STING_PSHIELD = "El Escudo de Fuerza funciona como en Unreal";
|
||||
STING_NOPSTART = "Los jugadores no empiezan la partida con un Automag";
|
||||
STING_OLSMP = "Habilitar SMP 7243 de Oldskool Amp'd";
|
||||
STING_MSENTRY = "Habilitar nueva Torreta";
|
||||
|
|
|
|||
|
|
@ -201,6 +201,7 @@ Class ShieldBelt : UnrealArmor
|
|||
Class PowerShield : UnrealArmor
|
||||
{
|
||||
bool gothit;
|
||||
int draintimer;
|
||||
|
||||
override void AbsorbDamage( int damage, Name damageType, out int newdamage )
|
||||
{
|
||||
|
|
@ -208,10 +209,18 @@ Class PowerShield : UnrealArmor
|
|||
{
|
||||
Owner.A_PlaySound("belt/absorb",CHAN_7);
|
||||
UTMainHandler.DoFlash(Owner,Color(80,224,0,255),5);
|
||||
if ( !sting_pshield )
|
||||
{
|
||||
gothit = true;
|
||||
damage = 0;
|
||||
newdamage = 0;
|
||||
}
|
||||
}
|
||||
if ( sting_pshield )
|
||||
{
|
||||
Super.AbsorbDamage(damage,damageType,newdamage);
|
||||
return;
|
||||
}
|
||||
if ( damage > 0 ) newdamage = ApplyDamageFactors(GetClass(),damageType,damage,damage);
|
||||
}
|
||||
override void DepleteOrDestroy()
|
||||
|
|
@ -229,7 +238,12 @@ Class PowerShield : UnrealArmor
|
|||
amount--;
|
||||
gothit = false;
|
||||
}
|
||||
if ( !(level.maptime%15) && !sting_pshield ) amount--;
|
||||
draintimer++;
|
||||
if ( draintimer > 35 )
|
||||
{
|
||||
amount--;
|
||||
draintimer = 0;
|
||||
}
|
||||
if ( amount <= 0 ) DepleteOrDestroy();
|
||||
}
|
||||
Default
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue