diff --git a/docs/rh-log.txt b/docs/rh-log.txt index e4068fcca..cc064a9d0 100644 --- a/docs/rh-log.txt +++ b/docs/rh-log.txt @@ -1,3 +1,10 @@ +June 28, 2008 (Changes by Graf Zahl) +- Fixed: Dead players didn't get the MF_CORPSE flag set. +- Fixed: The internal definition of Floor_LowerToNearest had incorrect parameter + settings. +- Fixed: Heretic's ActivatedTimeBomb had the same spawn ID as the inventory item. +- fixed: Heretic's mace did not have its spawn ID set. + June 26, 2008 - For controls that are not bound, the customize controls menu now displays a black --- instead of ???. diff --git a/src/actionspecials.h b/src/actionspecials.h index 72792973d..5f0e0ffd6 100644 --- a/src/actionspecials.h +++ b/src/actionspecials.h @@ -19,7 +19,7 @@ DEFINE_SPECIAL(StartConversation, 18, 1, 2) DEFINE_SPECIAL(Thing_Stop, 19, 1, 1) DEFINE_SPECIAL(Floor_LowerByValue, 20, 3, 3) DEFINE_SPECIAL(Floor_LowerToLowest, 21, 2, 2) -DEFINE_SPECIAL(Floor_LowerToNearest, 22, 3, 3) +DEFINE_SPECIAL(Floor_LowerToNearest, 22, 2, 2) DEFINE_SPECIAL(Floor_RaiseByValue, 23, 3, 3) DEFINE_SPECIAL(Floor_RaiseToHighest, 24, 2, 2) DEFINE_SPECIAL(Floor_RaiseToNearest, 25, 2, 2) diff --git a/src/g_heretic/a_hereticartifacts.cpp b/src/g_heretic/a_hereticartifacts.cpp index 9afdcf8bb..8326157b4 100644 --- a/src/g_heretic/a_hereticartifacts.cpp +++ b/src/g_heretic/a_hereticartifacts.cpp @@ -81,7 +81,7 @@ FState AActivatedTimeBomb::States[] = S_BRIGHT (XPL1, 'F', 4, NULL , NULL) }; -IMPLEMENT_ACTOR (AActivatedTimeBomb, Heretic, -1, 72) +IMPLEMENT_ACTOR (AActivatedTimeBomb, Heretic, -1, 0) PROP_Flags (MF_NOGRAVITY) PROP_RenderStyle (STYLE_Translucent) PROP_Alpha (HR_SHADOW) diff --git a/src/g_heretic/a_hereticweaps.cpp b/src/g_heretic/a_hereticweaps.cpp index 969d80a26..fca5d6d5c 100644 --- a/src/g_heretic/a_hereticweaps.cpp +++ b/src/g_heretic/a_hereticweaps.cpp @@ -872,7 +872,7 @@ BEGIN_DEFAULTS (AMace, Heretic, -1, 0) PROP_Inventory_PickupMessage("$TXT_WPNMACE") END_DEFAULTS -IMPLEMENT_STATELESS_ACTOR (AMacePowered, Heretic, -1, 0) +IMPLEMENT_STATELESS_ACTOR (AMacePowered, Heretic, -1, 31) PROP_Weapon_Flags (WIF_POWERED_UP|WIF_BOT_REACTION_SKILL_THING|WIF_BOT_EXPLOSIVE) PROP_Weapon_AmmoUse1 (USE_MACE_AMMO_2) PROP_Weapon_AmmoGive1 (0) diff --git a/src/g_level.h b/src/g_level.h index 5fa1e8c86..1367a660f 100644 --- a/src/g_level.h +++ b/src/g_level.h @@ -147,7 +147,7 @@ struct FOptionalMapinfoData FOptionalMapinfoData *Next; FName identifier; FOptionalMapinfoData() { Next = NULL; identifier = NAME_None; } - virtual ~FOptionalMapinfoData() = 0; + virtual ~FOptionalMapinfoData() {} virtual FOptionalMapinfoData *Clone() const = 0; }; diff --git a/src/p_enemy.cpp b/src/p_enemy.cpp index 548ef10bd..49a953180 100644 --- a/src/p_enemy.cpp +++ b/src/p_enemy.cpp @@ -2122,6 +2122,9 @@ static bool P_CheckForResurrection(AActor *self, bool usevilestates) if (raisestate == NULL) continue; // monster doesn't have a raise state + if (corpsehit->IsKindOf(RUNTIME_CLASS(APlayerPawn))) + continue; // do not resurrect players + // use the current actor's radius instead of the Arch Vile's default. fixed_t maxdist = corpsehit->GetDefault()->radius + self->radius; diff --git a/src/p_interaction.cpp b/src/p_interaction.cpp index f0da1d0e5..0b29ce8de 100644 --- a/src/p_interaction.cpp +++ b/src/p_interaction.cpp @@ -388,7 +388,7 @@ void AActor::Die (AActor *source, AActor *inflictor) flags &= ~(MF_SHOOTABLE|MF_FLOAT|MF_SKULLFLY); if (!(flags4 & MF4_DONTFALL)) flags&=~MF_NOGRAVITY; flags |= MF_DROPOFF; - if ((flags3 & MF3_ISMONSTER) || FindState(NAME_Raise) != NULL) + if ((flags3 & MF3_ISMONSTER) || FindState(NAME_Raise) != NULL || IsKindOf(RUNTIME_CLASS(APlayerPawn))) { // [RH] Only monsters get to be corpses. // Objects with a raise state should get the flag as well so they can // be revived by an Arch-Vile. Batman Doom needs this. diff --git a/src/thingdef/thingdef_properties.cpp b/src/thingdef/thingdef_properties.cpp index d2a581eb3..65499ccfc 100644 --- a/src/thingdef/thingdef_properties.cpp +++ b/src/thingdef/thingdef_properties.cpp @@ -739,7 +739,7 @@ static bool CheckNumParm(FScanner &sc) } else { - return !!sc.CheckNumber(); + return sc.CheckNumber(); } }