- Added MF5_CANTSEEK flag to prevent seeker missiles from homing in on
certain actors and added an option to APowerInvisibility to set this flag when active. - Added map specific automap backgrounds. - Fixed: Voodoo dolls did not play a sound when dying. - Added colorized error messages to DECORATE and made a few more error conditions that do not block further parsing not immediately abort. - Made all errors in CreateNewActor not immediately fatal so that the rest of the DECORATE lump can be parsed normally to look for more errors. - Fixed: Defining classes with the same name as their immediate base class was legal. It should not be allowed that a class has another one with the same name in its ancestry. - Fixed: Formatting of the intermission screen on Heretic, Hexen and Strife was broken. Changed it to use WI_Drawpercent which does it properly and also allows showing percentage in these games now. - Fixed: The MAPINFO parser ignored missing terminating braces of the last block in the file. SVN r1425 (trunk)
This commit is contained in:
parent
0acc6a4ee3
commit
666e40c8bb
23 changed files with 474 additions and 345 deletions
|
|
@ -540,6 +540,22 @@ PalEntry APowerStrength::GetBlend ()
|
|||
|
||||
IMPLEMENT_CLASS (APowerInvisibility)
|
||||
|
||||
//===========================================================================
|
||||
//
|
||||
// APowerInvisibility :: CommonInit
|
||||
//
|
||||
// stuff that's done for all subclasses
|
||||
//
|
||||
//===========================================================================
|
||||
|
||||
void APowerInvisibility::CommonInit()
|
||||
{
|
||||
Owner->flags |= MF_SHADOW;
|
||||
// transfer seeker missile blocking (but only if the owner does not already have this flag
|
||||
if (!(Owner->flags5 & MF5_CANTSEEK) && (flags5 & MF5_CANTSEEK)) Owner->flags5 |= MF5_CANTSEEK;
|
||||
else flags &=~MF5_CANTSEEK;
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
//
|
||||
// APowerInvisibility :: InitEffect
|
||||
|
|
@ -548,11 +564,16 @@ IMPLEMENT_CLASS (APowerInvisibility)
|
|||
|
||||
void APowerInvisibility::InitEffect ()
|
||||
{
|
||||
Owner->flags |= MF_SHADOW;
|
||||
CommonInit();
|
||||
Owner->alpha = FRACUNIT/5;
|
||||
Owner->RenderStyle = STYLE_OptFuzzy;
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
//
|
||||
// APowerInvisibility :: DoEffect
|
||||
//
|
||||
//===========================================================================
|
||||
void APowerInvisibility::DoEffect ()
|
||||
{
|
||||
Super::DoEffect();
|
||||
|
|
@ -571,6 +592,7 @@ void APowerInvisibility::EndEffect ()
|
|||
{
|
||||
if (Owner != NULL)
|
||||
{
|
||||
if (flags5 & MF5_CANTSEEK) Owner->flags5 &= ~MF5_CANTSEEK;
|
||||
Owner->flags &= ~MF_SHADOW;
|
||||
Owner->flags3 &= ~MF3_GHOST;
|
||||
Owner->RenderStyle = STYLE_Normal;
|
||||
|
|
@ -628,7 +650,7 @@ IMPLEMENT_CLASS (APowerGhost)
|
|||
|
||||
void APowerGhost::InitEffect ()
|
||||
{
|
||||
Owner->flags |= MF_SHADOW;
|
||||
CommonInit();
|
||||
Owner->flags3 |= MF3_GHOST;
|
||||
Owner->alpha = HR_SHADOW;
|
||||
Owner->RenderStyle = STYLE_Translucent;
|
||||
|
|
@ -705,7 +727,7 @@ bool APowerShadow::HandlePickup (AInventory *item)
|
|||
|
||||
void APowerShadow::InitEffect ()
|
||||
{
|
||||
Owner->flags |= MF_SHADOW;
|
||||
CommonInit();
|
||||
Owner->alpha = special1 == 0 ? TRANSLUC25 : 0;
|
||||
Owner->RenderStyle = STYLE_Translucent;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue