mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-28 23:02:07 +00:00
SVN r25 (trunk)
This commit is contained in:
parent
d1770a7c2e
commit
cd3cebf340
31 changed files with 962 additions and 40 deletions
|
@ -1,3 +1,33 @@
|
||||||
|
April 10, 2006 (Changes by Graf Zahl)
|
||||||
|
- Made the IronLich's projectiles bright. Using them in non-bright state
|
||||||
|
in dark sectors looks truly odd.
|
||||||
|
- Fixed: Using bot_observer cleared the FRIENDLY flag off the player.
|
||||||
|
- Fixed: Changed some decals from DecalScorch to DecalScorchLower.
|
||||||
|
- Fixed: Added the missing intermission lumps and LOCKDEFS to zdoom.wad
|
||||||
|
- Changed the damage formula for Strife's dagger. This change has already
|
||||||
|
been added to the 2.1.0 source but not to the current version.
|
||||||
|
- Added a call to P_HitFriend to A_SentinelRefire to prevent it from shooting
|
||||||
|
at friends.
|
||||||
|
- Fixed: The Inquisitor's grenades should not teleport.
|
||||||
|
- Fixed: The Inquisitor isn't supposed to be thrust by damage so its mass
|
||||||
|
has to be increased.
|
||||||
|
- Fixed: Strife's Inquisitor can be hurt by radius damage as long as this
|
||||||
|
damage comes from a non-Inquisitor.
|
||||||
|
- Fixed: AArtiDarkServant::Use must always report successful use of the item.
|
||||||
|
This function cannot fail. It either spawns a Minotaur or a new artifact
|
||||||
|
but never nothing at all.
|
||||||
|
- Fixed: Hexen's temp flames have two spawn IDs each. Since ZDoom doesn't
|
||||||
|
support multiple spawn IDs per item I added copies of these objects
|
||||||
|
to assign the second set od IDs.
|
||||||
|
- Fixed: Hexen's wall torch was missing the MF4_FIXMAPTHINGPOS flag.
|
||||||
|
- Fixed: A_CStaffCheckBlink must call A_WeaponReady because otherwise the
|
||||||
|
weapon bobbing becomes slightly erratic.
|
||||||
|
- Fixed: AGoldWandPuff2 had incorrect values set for flags2.
|
||||||
|
- Clamped the vertical speed of Heretic's Mace's balls. When shot at a high
|
||||||
|
vertical angle their movement becomes erratic.
|
||||||
|
- Fixed: Doom's corpses must clear the MF3_ISMONSTER flag inherited from
|
||||||
|
their monster parents.
|
||||||
|
|
||||||
April 9, 2006
|
April 9, 2006
|
||||||
- Fixed: The strupr() implementation in w_wad.cpp relied on compiler-dependant
|
- Fixed: The strupr() implementation in w_wad.cpp relied on compiler-dependant
|
||||||
behavior.
|
behavior.
|
||||||
|
|
|
@ -138,7 +138,7 @@ void DCajunMaster::Main (int buf)
|
||||||
Printf ("%s is now observer\n", players[consoleplayer].userinfo.netname);
|
Printf ("%s is now observer\n", players[consoleplayer].userinfo.netname);
|
||||||
observer = true;
|
observer = true;
|
||||||
players[consoleplayer].mo->UnlinkFromWorld ();
|
players[consoleplayer].mo->UnlinkFromWorld ();
|
||||||
players[consoleplayer].mo->flags = MF_DROPOFF|MF_NOBLOCKMAP|MF_NOCLIP|MF_NOTDMATCH|MF_NOGRAVITY;
|
players[consoleplayer].mo->flags = MF_DROPOFF|MF_NOBLOCKMAP|MF_NOCLIP|MF_NOTDMATCH|MF_NOGRAVITY|MF_FRIENDLY;
|
||||||
players[consoleplayer].mo->flags2 |= MF2_FLY;
|
players[consoleplayer].mo->flags2 |= MF2_FLY;
|
||||||
players[consoleplayer].mo->LinkToWorld ();
|
players[consoleplayer].mo->LinkToWorld ();
|
||||||
}
|
}
|
||||||
|
@ -147,7 +147,7 @@ void DCajunMaster::Main (int buf)
|
||||||
Printf ("%s returned to the fray\n", players[consoleplayer].userinfo.netname);
|
Printf ("%s returned to the fray\n", players[consoleplayer].userinfo.netname);
|
||||||
observer = false;
|
observer = false;
|
||||||
players[consoleplayer].mo->UnlinkFromWorld ();
|
players[consoleplayer].mo->UnlinkFromWorld ();
|
||||||
players[consoleplayer].mo->flags = MF_SOLID|MF_SHOOTABLE|MF_DROPOFF|MF_PICKUP|MF_NOTDMATCH;
|
players[consoleplayer].mo->flags = MF_SOLID|MF_SHOOTABLE|MF_DROPOFF|MF_PICKUP|MF_NOTDMATCH|MF_FRIENDLY;
|
||||||
players[consoleplayer].mo->flags2 &= ~MF2_FLY;
|
players[consoleplayer].mo->flags2 &= ~MF2_FLY;
|
||||||
players[consoleplayer].mo->LinkToWorld ();
|
players[consoleplayer].mo->LinkToWorld ();
|
||||||
}
|
}
|
||||||
|
|
|
@ -169,6 +169,7 @@ IMPLEMENT_STATELESS_ACTOR (ADeadCacodemon, Doom, 22, 0)
|
||||||
PROP_PainChance (0)
|
PROP_PainChance (0)
|
||||||
PROP_Flags (0)
|
PROP_Flags (0)
|
||||||
PROP_Flags2 (0)
|
PROP_Flags2 (0)
|
||||||
|
PROP_Flags3 (0)
|
||||||
PROP_SeeState (255)
|
PROP_SeeState (255)
|
||||||
PROP_PainState (255)
|
PROP_PainState (255)
|
||||||
PROP_MissileState (255)
|
PROP_MissileState (255)
|
||||||
|
|
|
@ -175,6 +175,7 @@ IMPLEMENT_STATELESS_ACTOR (ADeadDemon, Doom, 21, 0)
|
||||||
PROP_PainChance (0)
|
PROP_PainChance (0)
|
||||||
PROP_Flags (0)
|
PROP_Flags (0)
|
||||||
PROP_Flags2 (0)
|
PROP_Flags2 (0)
|
||||||
|
PROP_Flags3 (0)
|
||||||
PROP_SeeState (255)
|
PROP_SeeState (255)
|
||||||
PROP_PainState (255)
|
PROP_PainState (255)
|
||||||
PROP_MissileState (255)
|
PROP_MissileState (255)
|
||||||
|
|
|
@ -188,6 +188,7 @@ IMPLEMENT_STATELESS_ACTOR (ADeadDoomImp, Doom, 20, 0)
|
||||||
PROP_PainChance (0)
|
PROP_PainChance (0)
|
||||||
PROP_Flags (0)
|
PROP_Flags (0)
|
||||||
PROP_Flags2 (0)
|
PROP_Flags2 (0)
|
||||||
|
PROP_Flags3 (0)
|
||||||
PROP_SeeState (255)
|
PROP_SeeState (255)
|
||||||
PROP_PainState (255)
|
PROP_PainState (255)
|
||||||
PROP_MissileState (255)
|
PROP_MissileState (255)
|
||||||
|
|
|
@ -130,6 +130,7 @@ IMPLEMENT_STATELESS_ACTOR (ADeadLostSoul, Doom, 23, 0)
|
||||||
PROP_PainChance (0)
|
PROP_PainChance (0)
|
||||||
PROP_Flags (0)
|
PROP_Flags (0)
|
||||||
PROP_Flags2 (0)
|
PROP_Flags2 (0)
|
||||||
|
PROP_Flags3 (0)
|
||||||
PROP_Flags4 (0)
|
PROP_Flags4 (0)
|
||||||
PROP_RenderStyle (STYLE_Normal)
|
PROP_RenderStyle (STYLE_Normal)
|
||||||
PROP_SeeState (255)
|
PROP_SeeState (255)
|
||||||
|
|
|
@ -164,6 +164,7 @@ IMPLEMENT_STATELESS_ACTOR (ADeadZombieMan, Doom, 18, 0)
|
||||||
PROP_PainChance (0)
|
PROP_PainChance (0)
|
||||||
PROP_Flags (0)
|
PROP_Flags (0)
|
||||||
PROP_Flags2 (0)
|
PROP_Flags2 (0)
|
||||||
|
PROP_Flags3 (0)
|
||||||
PROP_SeeState (255)
|
PROP_SeeState (255)
|
||||||
PROP_PainState (255)
|
PROP_PainState (255)
|
||||||
PROP_MissileState (255)
|
PROP_MissileState (255)
|
||||||
|
@ -341,6 +342,7 @@ IMPLEMENT_STATELESS_ACTOR (ADeadShotgunGuy, Doom, 19, 0)
|
||||||
PROP_PainChance (0)
|
PROP_PainChance (0)
|
||||||
PROP_Flags (0)
|
PROP_Flags (0)
|
||||||
PROP_Flags2 (0)
|
PROP_Flags2 (0)
|
||||||
|
PROP_Flags3 (0)
|
||||||
PROP_SeeState (255)
|
PROP_SeeState (255)
|
||||||
PROP_PainState (255)
|
PROP_PainState (255)
|
||||||
PROP_MissileState (255)
|
PROP_MissileState (255)
|
||||||
|
|
|
@ -483,6 +483,7 @@ class AGoldWandPuff2 : public AGoldWandFX1
|
||||||
};
|
};
|
||||||
|
|
||||||
IMPLEMENT_STATELESS_ACTOR (AGoldWandPuff2, Heretic, -1, 0)
|
IMPLEMENT_STATELESS_ACTOR (AGoldWandPuff2, Heretic, -1, 0)
|
||||||
|
PROP_Flags (MF_NOBLOCKMAP|MF_NOGRAVITY)
|
||||||
PROP_SpawnState (S_GWANDFXI1)
|
PROP_SpawnState (S_GWANDFXI1)
|
||||||
END_DEFAULTS
|
END_DEFAULTS
|
||||||
|
|
||||||
|
@ -1527,7 +1528,7 @@ void A_FireMacePL2 (AActor *actor)
|
||||||
mo->momx += player->mo->momx;
|
mo->momx += player->mo->momx;
|
||||||
mo->momy += player->mo->momy;
|
mo->momy += player->mo->momy;
|
||||||
mo->momz = 2*FRACUNIT+
|
mo->momz = 2*FRACUNIT+
|
||||||
finetangent[FINEANGLES/4-(player->mo->pitch>>ANGLETOFINESHIFT)];
|
clamp<fixed_t>(finetangent[FINEANGLES/4-(player->mo->pitch>>ANGLETOFINESHIFT)], -5*FRACUNIT, 5*FRACUNIT);
|
||||||
if (linetarget)
|
if (linetarget)
|
||||||
{
|
{
|
||||||
mo->tracer = linetarget;
|
mo->tracer = linetarget;
|
||||||
|
|
|
@ -104,15 +104,15 @@ class AHeadFX1 : public AActor
|
||||||
FState AHeadFX1::States[] =
|
FState AHeadFX1::States[] =
|
||||||
{
|
{
|
||||||
#define S_HEADFX1 0
|
#define S_HEADFX1 0
|
||||||
S_NORMAL (FX05, 'A', 6, NULL , &States[S_HEADFX1+1]),
|
S_BRIGHT (FX05, 'A', 6, NULL , &States[S_HEADFX1+1]),
|
||||||
S_NORMAL (FX05, 'B', 6, NULL , &States[S_HEADFX1+2]),
|
S_BRIGHT (FX05, 'B', 6, NULL , &States[S_HEADFX1+2]),
|
||||||
S_NORMAL (FX05, 'C', 6, NULL , &States[S_HEADFX1+0]),
|
S_BRIGHT (FX05, 'C', 6, NULL , &States[S_HEADFX1+0]),
|
||||||
|
|
||||||
#define S_HEADFXI1 (S_HEADFX1+3)
|
#define S_HEADFXI1 (S_HEADFX1+3)
|
||||||
S_NORMAL (FX05, 'D', 5, A_LichIceImpact , &States[S_HEADFXI1+1]),
|
S_BRIGHT (FX05, 'D', 5, A_LichIceImpact , &States[S_HEADFXI1+1]),
|
||||||
S_NORMAL (FX05, 'E', 5, NULL , &States[S_HEADFXI1+2]),
|
S_BRIGHT (FX05, 'E', 5, NULL , &States[S_HEADFXI1+2]),
|
||||||
S_NORMAL (FX05, 'F', 5, NULL , &States[S_HEADFXI1+3]),
|
S_BRIGHT (FX05, 'F', 5, NULL , &States[S_HEADFXI1+3]),
|
||||||
S_NORMAL (FX05, 'G', 5, NULL , NULL)
|
S_BRIGHT (FX05, 'G', 5, NULL , NULL)
|
||||||
};
|
};
|
||||||
|
|
||||||
IMPLEMENT_ACTOR (AHeadFX1, Heretic, -1, 164)
|
IMPLEMENT_ACTOR (AHeadFX1, Heretic, -1, 164)
|
||||||
|
@ -142,15 +142,15 @@ class AHeadFX2 : public AActor
|
||||||
FState AHeadFX2::States[] =
|
FState AHeadFX2::States[] =
|
||||||
{
|
{
|
||||||
#define S_HEADFX2 0
|
#define S_HEADFX2 0
|
||||||
S_NORMAL (FX05, 'H', 6, NULL , &States[S_HEADFX2+1]),
|
S_BRIGHT (FX05, 'H', 6, NULL , &States[S_HEADFX2+1]),
|
||||||
S_NORMAL (FX05, 'I', 6, NULL , &States[S_HEADFX2+2]),
|
S_BRIGHT (FX05, 'I', 6, NULL , &States[S_HEADFX2+2]),
|
||||||
S_NORMAL (FX05, 'J', 6, NULL , &States[S_HEADFX2+0]),
|
S_BRIGHT (FX05, 'J', 6, NULL , &States[S_HEADFX2+0]),
|
||||||
|
|
||||||
#define S_HEADFXI2 (S_HEADFX2+3)
|
#define S_HEADFXI2 (S_HEADFX2+3)
|
||||||
S_NORMAL (FX05, 'D', 5, NULL , &States[S_HEADFXI2+1]),
|
S_BRIGHT (FX05, 'D', 5, NULL , &States[S_HEADFXI2+1]),
|
||||||
S_NORMAL (FX05, 'E', 5, NULL , &States[S_HEADFXI2+2]),
|
S_BRIGHT (FX05, 'E', 5, NULL , &States[S_HEADFXI2+2]),
|
||||||
S_NORMAL (FX05, 'F', 5, NULL , &States[S_HEADFXI2+3]),
|
S_BRIGHT (FX05, 'F', 5, NULL , &States[S_HEADFXI2+3]),
|
||||||
S_NORMAL (FX05, 'G', 5, NULL , NULL)
|
S_BRIGHT (FX05, 'G', 5, NULL , NULL)
|
||||||
};
|
};
|
||||||
|
|
||||||
IMPLEMENT_ACTOR (AHeadFX2, Heretic, -1, 0)
|
IMPLEMENT_ACTOR (AHeadFX2, Heretic, -1, 0)
|
||||||
|
@ -175,18 +175,18 @@ class AHeadFX3 : public AActor
|
||||||
FState AHeadFX3::States[] =
|
FState AHeadFX3::States[] =
|
||||||
{
|
{
|
||||||
#define S_HEADFX3 0
|
#define S_HEADFX3 0
|
||||||
S_NORMAL (FX06, 'A', 4, A_LichFireGrow , &States[S_HEADFX3+1]),
|
S_BRIGHT (FX06, 'A', 4, A_LichFireGrow , &States[S_HEADFX3+1]),
|
||||||
S_NORMAL (FX06, 'B', 4, A_LichFireGrow , &States[S_HEADFX3+2]),
|
S_BRIGHT (FX06, 'B', 4, A_LichFireGrow , &States[S_HEADFX3+2]),
|
||||||
S_NORMAL (FX06, 'C', 4, A_LichFireGrow , &States[S_HEADFX3+0]),
|
S_BRIGHT (FX06, 'C', 4, A_LichFireGrow , &States[S_HEADFX3+0]),
|
||||||
S_NORMAL (FX06, 'A', 5, NULL , &States[S_HEADFX3+4]),
|
S_BRIGHT (FX06, 'A', 5, NULL , &States[S_HEADFX3+4]),
|
||||||
S_NORMAL (FX06, 'B', 5, NULL , &States[S_HEADFX3+5]),
|
S_BRIGHT (FX06, 'B', 5, NULL , &States[S_HEADFX3+5]),
|
||||||
S_NORMAL (FX06, 'C', 5, NULL , &States[S_HEADFX3+3]),
|
S_BRIGHT (FX06, 'C', 5, NULL , &States[S_HEADFX3+3]),
|
||||||
|
|
||||||
#define S_HEADFXI3 (S_HEADFX3+6)
|
#define S_HEADFXI3 (S_HEADFX3+6)
|
||||||
S_NORMAL (FX06, 'D', 5, NULL , &States[S_HEADFXI3+1]),
|
S_BRIGHT (FX06, 'D', 5, NULL , &States[S_HEADFXI3+1]),
|
||||||
S_NORMAL (FX06, 'E', 5, NULL , &States[S_HEADFXI3+2]),
|
S_BRIGHT (FX06, 'E', 5, NULL , &States[S_HEADFXI3+2]),
|
||||||
S_NORMAL (FX06, 'F', 5, NULL , &States[S_HEADFXI3+3]),
|
S_BRIGHT (FX06, 'F', 5, NULL , &States[S_HEADFXI3+3]),
|
||||||
S_NORMAL (FX06, 'G', 5, NULL , NULL)
|
S_BRIGHT (FX06, 'G', 5, NULL , NULL)
|
||||||
};
|
};
|
||||||
|
|
||||||
IMPLEMENT_ACTOR (AHeadFX3, Heretic, -1, 0)
|
IMPLEMENT_ACTOR (AHeadFX3, Heretic, -1, 0)
|
||||||
|
|
|
@ -330,4 +330,8 @@ void A_CStaffCheckBlink (AActor *actor)
|
||||||
P_SetPsprite (actor->player, ps_weapon, &ACWeapStaff::States[S_CSTAFFBLINK]);
|
P_SetPsprite (actor->player, ps_weapon, &ACWeapStaff::States[S_CSTAFFBLINK]);
|
||||||
actor->special1 = (pr_blink()+50)>>2;
|
actor->special1 = (pr_blink()+50)>>2;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
A_WeaponReady (actor);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,7 +75,7 @@ IMPLEMENT_ACTOR (ADragon, Hexen, 254, 0)
|
||||||
PROP_MassLong (0x7fffffff)
|
PROP_MassLong (0x7fffffff)
|
||||||
PROP_Flags (MF_SOLID|MF_SHOOTABLE|MF_NOGRAVITY|MF_FLOAT|MF_NOBLOOD|MF_COUNTKILL)
|
PROP_Flags (MF_SOLID|MF_SHOOTABLE|MF_NOGRAVITY|MF_FLOAT|MF_NOBLOOD|MF_COUNTKILL)
|
||||||
PROP_Flags2 (MF2_PASSMOBJ|MF2_BOSS)
|
PROP_Flags2 (MF2_PASSMOBJ|MF2_BOSS)
|
||||||
PROP_Flags3 (MF3_DONTMORPH)
|
PROP_Flags3 (MF3_DONTMORPH|MF3_NOTARGET)
|
||||||
PROP_Flags4 (MF4_NOICEDEATH)
|
PROP_Flags4 (MF4_NOICEDEATH)
|
||||||
|
|
||||||
PROP_SpawnState (S_DRAGON_LOOK1)
|
PROP_SpawnState (S_DRAGON_LOOK1)
|
||||||
|
|
|
@ -181,3 +181,27 @@ void A_FlameCheck (AActor *actor)
|
||||||
actor->Destroy ();
|
actor->Destroy ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//===========================================================================
|
||||||
|
//
|
||||||
|
// Hexen uses 2 different spawn IDs for these actors
|
||||||
|
//
|
||||||
|
//===========================================================================
|
||||||
|
|
||||||
|
class AFlameSmall2 : public AFlameSmall
|
||||||
|
{
|
||||||
|
DECLARE_ACTOR (AFlameSmall2, AFlameSmall)
|
||||||
|
};
|
||||||
|
|
||||||
|
IMPLEMENT_STATELESS_ACTOR (AFlameSmall2, Hexen, -1, 66)
|
||||||
|
END_DEFAULTS
|
||||||
|
|
||||||
|
class AFlameLarge2 : public AFlameLarge
|
||||||
|
{
|
||||||
|
DECLARE_ACTOR (AFlameLarge2, AFlameLarge)
|
||||||
|
};
|
||||||
|
|
||||||
|
IMPLEMENT_STATELESS_ACTOR (AFlameLarge2, Hexen, -1, 67)
|
||||||
|
END_DEFAULTS
|
||||||
|
|
|
@ -132,7 +132,7 @@ IMPLEMENT_ACTOR (AHeresiarch, Hexen, 10080, 0)
|
||||||
PROP_Damage (9)
|
PROP_Damage (9)
|
||||||
PROP_Flags (MF_SOLID|MF_SHOOTABLE|MF_NOBLOOD|MF_COUNTKILL)
|
PROP_Flags (MF_SOLID|MF_SHOOTABLE|MF_NOBLOOD|MF_COUNTKILL)
|
||||||
PROP_Flags2 (MF2_FLOORCLIP|MF2_PASSMOBJ|MF2_BOSS|MF2_PUSHWALL|MF2_MCROSS)
|
PROP_Flags2 (MF2_FLOORCLIP|MF2_PASSMOBJ|MF2_BOSS|MF2_PUSHWALL|MF2_MCROSS)
|
||||||
PROP_Flags3 (MF3_DONTMORPH)
|
PROP_Flags3 (MF3_DONTMORPH|MF3_NOTARGET)
|
||||||
PROP_Flags4 (MF4_NOICEDEATH|MF4_DEFLECT)
|
PROP_Flags4 (MF4_NOICEDEATH|MF4_DEFLECT)
|
||||||
|
|
||||||
PROP_SpawnState (S_SORC_SPAWN1)
|
PROP_SpawnState (S_SORC_SPAWN1)
|
||||||
|
|
|
@ -777,6 +777,7 @@ FState AZWallTorch::States[] =
|
||||||
|
|
||||||
IMPLEMENT_ACTOR (AZWallTorch, Hexen, 54, 0)
|
IMPLEMENT_ACTOR (AZWallTorch, Hexen, 54, 0)
|
||||||
PROP_Flags (MF_NOBLOCKMAP|MF_NOGRAVITY)
|
PROP_Flags (MF_NOBLOCKMAP|MF_NOGRAVITY)
|
||||||
|
PROP_Flags4 (MF4_FIXMAPTHINGPOS)
|
||||||
|
|
||||||
PROP_SpawnState (S_ZWALLTORCH)
|
PROP_SpawnState (S_ZWALLTORCH)
|
||||||
PROP_SeeState (S_ZWALLTORCH)
|
PROP_SeeState (S_ZWALLTORCH)
|
||||||
|
|
|
@ -156,7 +156,7 @@ IMPLEMENT_ACTOR (AKorax, Hexen, 10200, 0)
|
||||||
PROP_Damage (15)
|
PROP_Damage (15)
|
||||||
PROP_Flags (MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL)
|
PROP_Flags (MF_SOLID|MF_SHOOTABLE|MF_COUNTKILL)
|
||||||
PROP_Flags2 (MF2_FLOORCLIP|MF2_BOSS|MF2_TELESTOMP|MF2_PUSHWALL|MF2_MCROSS)
|
PROP_Flags2 (MF2_FLOORCLIP|MF2_BOSS|MF2_TELESTOMP|MF2_PUSHWALL|MF2_MCROSS)
|
||||||
PROP_Flags3 (MF3_DONTMORPH)
|
PROP_Flags3 (MF3_DONTMORPH|MF3_NOTARGET)
|
||||||
PROP_Flags4 (MF4_NOICEDEATH)
|
PROP_Flags4 (MF4_NOICEDEATH)
|
||||||
|
|
||||||
PROP_SpawnState (S_KORAX_LOOK1)
|
PROP_SpawnState (S_KORAX_LOOK1)
|
||||||
|
|
|
@ -120,9 +120,8 @@ bool AArtiDarkServant::Use (bool pickup)
|
||||||
mo->target = Owner;
|
mo->target = Owner;
|
||||||
mo->tracer = Owner;
|
mo->tracer = Owner;
|
||||||
mo->momz = 5*FRACUNIT;
|
mo->momz = 5*FRACUNIT;
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
return false;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
|
@ -97,9 +97,11 @@ IMPLEMENT_ACTOR (AInquisitor, Strife, 16, 0)
|
||||||
PROP_SpeedFixed (12)
|
PROP_SpeedFixed (12)
|
||||||
PROP_RadiusFixed (40)
|
PROP_RadiusFixed (40)
|
||||||
PROP_HeightFixed (110)
|
PROP_HeightFixed (110)
|
||||||
|
PROP_MassLong(0x7fffffff)
|
||||||
PROP_Flags (MF_SOLID|MF_SHOOTABLE|MF_DROPOFF|MF_NOBLOOD|MF_COUNTKILL)
|
PROP_Flags (MF_SOLID|MF_SHOOTABLE|MF_DROPOFF|MF_NOBLOOD|MF_COUNTKILL)
|
||||||
PROP_Flags2 (MF2_BOSS|MF2_FLOORCLIP|MF2_PASSMOBJ|MF2_PUSHWALL|MF2_MCROSS)
|
PROP_Flags2 (MF2_BOSS|MF2_FLOORCLIP|MF2_PASSMOBJ|MF2_PUSHWALL|MF2_MCROSS)
|
||||||
PROP_Flags3 (MF3_NORADIUSDMG|MF3_DONTMORPH)
|
PROP_Flags3 (MF3_DONTMORPH)
|
||||||
|
PROP_Flags4 (MF4_DONTHURTSPECIES)
|
||||||
PROP_MaxDropOffHeight (32)
|
PROP_MaxDropOffHeight (32)
|
||||||
PROP_MinMissileChance (150)
|
PROP_MinMissileChance (150)
|
||||||
PROP_SeeSound ("inquisitor/sight")
|
PROP_SeeSound ("inquisitor/sight")
|
||||||
|
@ -142,6 +144,7 @@ IMPLEMENT_ACTOR (AInquisitorShot, Strife, -1, 0)
|
||||||
PROP_HeightFixed (13)
|
PROP_HeightFixed (13)
|
||||||
PROP_Mass (15)
|
PROP_Mass (15)
|
||||||
PROP_Flags (MF_NOBLOCKMAP|MF_DROPOFF|MF_MISSILE)
|
PROP_Flags (MF_NOBLOCKMAP|MF_DROPOFF|MF_MISSILE)
|
||||||
|
PROP_Flags2 (MF2_NOTELEPORT)
|
||||||
PROP_Flags4 (MF4_STRIFEDAMAGE)
|
PROP_Flags4 (MF4_STRIFEDAMAGE)
|
||||||
PROP_MaxStepHeight (4)
|
PROP_MaxStepHeight (4)
|
||||||
PROP_SeeSound ("inquisitor/attack")
|
PROP_SeeSound ("inquisitor/attack")
|
||||||
|
@ -181,7 +184,7 @@ void A_InquisitorWalk (AActor *self)
|
||||||
A_Chase (self);
|
A_Chase (self);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Sys1ED64 (AActor *self)
|
bool InquisitorCheckDistance (AActor *self)
|
||||||
{
|
{
|
||||||
if (self->reactiontime == 0 && P_CheckSight (self, self->target))
|
if (self->reactiontime == 0 && P_CheckSight (self, self->target))
|
||||||
{
|
{
|
||||||
|
@ -196,7 +199,7 @@ void A_InquisitorDecide (AActor *self)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
A_FaceTarget (self);
|
A_FaceTarget (self);
|
||||||
if (!Sys1ED64 (self))
|
if (!InquisitorCheckDistance (self))
|
||||||
{
|
{
|
||||||
self->SetState (&AInquisitor::States[S_INQ_ATK2]);
|
self->SetState (&AInquisitor::States[S_INQ_ATK2]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -225,6 +225,7 @@ class ATeleporterBeacon : public AInventory
|
||||||
DECLARE_ACTOR (ATeleporterBeacon, AInventory)
|
DECLARE_ACTOR (ATeleporterBeacon, AInventory)
|
||||||
public:
|
public:
|
||||||
bool Use (bool pickup);
|
bool Use (bool pickup);
|
||||||
|
const char *PickupMessage ();
|
||||||
};
|
};
|
||||||
|
|
||||||
FState ATeleporterBeacon::States[] =
|
FState ATeleporterBeacon::States[] =
|
||||||
|
@ -249,6 +250,11 @@ IMPLEMENT_ACTOR (ATeleporterBeacon, Strife, 10, 0)
|
||||||
PROP_Tag ("Teleporter_Beacon")
|
PROP_Tag ("Teleporter_Beacon")
|
||||||
END_DEFAULTS
|
END_DEFAULTS
|
||||||
|
|
||||||
|
const char *ATeleporterBeacon::PickupMessage ()
|
||||||
|
{
|
||||||
|
return "You picked up the Teleporter Beacon.";
|
||||||
|
}
|
||||||
|
|
||||||
bool ATeleporterBeacon::Use (bool pickup)
|
bool ATeleporterBeacon::Use (bool pickup)
|
||||||
{
|
{
|
||||||
AInventory *drop;
|
AInventory *drop;
|
||||||
|
|
|
@ -186,6 +186,7 @@ void A_SentinelRefire (AActor *self)
|
||||||
if (self->target == NULL ||
|
if (self->target == NULL ||
|
||||||
self->target->health <= 0 ||
|
self->target->health <= 0 ||
|
||||||
!P_CheckSight (self, self->target) ||
|
!P_CheckSight (self, self->target) ||
|
||||||
|
P_HitFriend(self) ||
|
||||||
pr_sentinelrefire() < 40)
|
pr_sentinelrefire() < 40)
|
||||||
{
|
{
|
||||||
self->SetState (self->SeeState);
|
self->SetState (self->SeeState);
|
||||||
|
|
|
@ -199,7 +199,7 @@ void A_JabDagger (AActor *actor)
|
||||||
int power;
|
int power;
|
||||||
|
|
||||||
power = actor->player->stamina / 10;
|
power = actor->player->stamina / 10;
|
||||||
damage = (pr_jabdagger() & (power + 7)) * (power + 2);
|
damage = (pr_jabdagger() % (power + 8)) * (power + 2);
|
||||||
|
|
||||||
if (actor->FindInventory<APowerStrength>())
|
if (actor->FindInventory<APowerStrength>())
|
||||||
{
|
{
|
||||||
|
|
89
wadsrc/In_epi1.txt
Normal file
89
wadsrc/In_epi1.txt
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
Background wimap0
|
||||||
|
Splat wisplat
|
||||||
|
Pointer wiurh0 wiurh1
|
||||||
|
|
||||||
|
Animation 224 104 11
|
||||||
|
{
|
||||||
|
WIA00000
|
||||||
|
WIA00001
|
||||||
|
WIA00002
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 184 160 11
|
||||||
|
{
|
||||||
|
WIA00100
|
||||||
|
WIA00101
|
||||||
|
WIA00102
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 112 136 11
|
||||||
|
{
|
||||||
|
WIA00200
|
||||||
|
WIA00201
|
||||||
|
WIA00202
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 72 112 11
|
||||||
|
{
|
||||||
|
WIA00300
|
||||||
|
WIA00301
|
||||||
|
WIA00302
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 88 96 11
|
||||||
|
{
|
||||||
|
WIA00400
|
||||||
|
WIA00401
|
||||||
|
WIA00402
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 64 48 11
|
||||||
|
{
|
||||||
|
WIA00500
|
||||||
|
WIA00501
|
||||||
|
WIA00502
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 192 40 11
|
||||||
|
{
|
||||||
|
WIA00600
|
||||||
|
WIA00601
|
||||||
|
WIA00602
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 136 16 11
|
||||||
|
{
|
||||||
|
WIA00700
|
||||||
|
WIA00701
|
||||||
|
WIA00702
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 80 16 11
|
||||||
|
{
|
||||||
|
WIA00800
|
||||||
|
WIA00801
|
||||||
|
WIA00802
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Animation 64 24 11
|
||||||
|
{
|
||||||
|
WIA00900
|
||||||
|
WIA00901
|
||||||
|
WIA00902
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Spots
|
||||||
|
{
|
||||||
|
E1M1 185 164
|
||||||
|
E1M2 148 143
|
||||||
|
E1M3 69 122
|
||||||
|
E1M4 209 102
|
||||||
|
E1M5 116 89
|
||||||
|
E1M6 166 55
|
||||||
|
E1M7 71 56
|
||||||
|
E1M8 135 29
|
||||||
|
E1M9 71 24
|
||||||
|
}
|
||||||
|
|
46
wadsrc/In_epi2.txt
Normal file
46
wadsrc/In_epi2.txt
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
Background wimap1
|
||||||
|
Splat wisplat
|
||||||
|
Pointer wiurh0 wiurh1
|
||||||
|
|
||||||
|
// IfEntering and IfLeaving are mutually exclusive so these have to be defined twice!
|
||||||
|
|
||||||
|
IfLeaving E2M1 Pic 128 136 WIA10000
|
||||||
|
IfLeaving E2M2 Pic 128 136 WIA10100
|
||||||
|
IfLeaving E2M3 Pic 128 136 WIA10200
|
||||||
|
IfLeaving E2M4 Pic 128 136 WIA10300
|
||||||
|
IfLeaving E2M5 Pic 128 136 WIA10400
|
||||||
|
IfLeaving E2M6 Pic 128 136 WIA10500
|
||||||
|
IfLeaving E2M7 Pic 128 136 WIA10600
|
||||||
|
IfLeaving E2M9 Pic 128 136 WIA10400
|
||||||
|
|
||||||
|
IfEntering E2M2 Pic 128 136 WIA10000
|
||||||
|
IfEntering E2M3 Pic 128 136 WIA10100
|
||||||
|
IfEntering E2M4 Pic 128 136 WIA10200
|
||||||
|
IfEntering E2M5 Pic 128 136 WIA10300
|
||||||
|
IfEntering E2M6 Pic 128 136 WIA10400
|
||||||
|
IfEntering E2M7 Pic 128 136 WIA10500
|
||||||
|
IfEntering E2M8 Pic 128 136 WIA10600
|
||||||
|
IfEntering E2M9 Pic 128 136 WIA10400
|
||||||
|
|
||||||
|
IfVisited E2M9 Pic 192 144 WIA10702
|
||||||
|
|
||||||
|
IfEntering E2M9 Animation 192 144 11 ONCE
|
||||||
|
{
|
||||||
|
WIA10700
|
||||||
|
WIA10701
|
||||||
|
WIA10702
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Spots
|
||||||
|
{
|
||||||
|
E2M1 254 25
|
||||||
|
E2M2 97 50
|
||||||
|
E2M3 188 64
|
||||||
|
E2M4 128 78
|
||||||
|
E2M5 214 92
|
||||||
|
E2M6 133 130
|
||||||
|
E2M7 208 136
|
||||||
|
E2M8 148 140
|
||||||
|
E2M9 235 158
|
||||||
|
}
|
60
wadsrc/In_epi3.txt
Normal file
60
wadsrc/In_epi3.txt
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
Background wimap2
|
||||||
|
Splat wisplat
|
||||||
|
Pointer wiurh0 wiurh1
|
||||||
|
|
||||||
|
|
||||||
|
Animation 104 168 11
|
||||||
|
{
|
||||||
|
WIA20000
|
||||||
|
WIA20001
|
||||||
|
WIA20002
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 40 136 11
|
||||||
|
{
|
||||||
|
WIA20100
|
||||||
|
WIA20101
|
||||||
|
WIA20102
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 160 96 11
|
||||||
|
{
|
||||||
|
WIA20200
|
||||||
|
WIA20201
|
||||||
|
WIA20202
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 104 80 11
|
||||||
|
{
|
||||||
|
WIA30300
|
||||||
|
WIA30301
|
||||||
|
WIA30302
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 120 32 11
|
||||||
|
{
|
||||||
|
WIA40400
|
||||||
|
WIA40401
|
||||||
|
WIA40402
|
||||||
|
}
|
||||||
|
|
||||||
|
Animation 40 0 8
|
||||||
|
{
|
||||||
|
WIA50500
|
||||||
|
WIA50501
|
||||||
|
WIA50502
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Spots
|
||||||
|
{
|
||||||
|
E3M1 156 168
|
||||||
|
E3M2 48 154
|
||||||
|
E3M3 174 95
|
||||||
|
E3M4 265 75
|
||||||
|
E3M5 130 48
|
||||||
|
E3M6 279 23
|
||||||
|
E3M7 198 48
|
||||||
|
E3M8 140 25
|
||||||
|
E3M9 281 136
|
||||||
|
}
|
17
wadsrc/In_htc1.txt
Normal file
17
wadsrc/In_htc1.txt
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
Background mape1
|
||||||
|
Splat in_x
|
||||||
|
Pointer in_yah
|
||||||
|
|
||||||
|
Spots
|
||||||
|
{
|
||||||
|
E1M1 172 78
|
||||||
|
E1M2 86 90
|
||||||
|
E1M3 73 66
|
||||||
|
E1M4 159 95
|
||||||
|
E1M5 148 126
|
||||||
|
E1M6 132 54
|
||||||
|
E1M7 131 74
|
||||||
|
E1M8 208 138
|
||||||
|
E1M9 52 101
|
||||||
|
}
|
||||||
|
|
17
wadsrc/In_htc2.txt
Normal file
17
wadsrc/In_htc2.txt
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
Background mape2
|
||||||
|
Splat in_x
|
||||||
|
Pointer in_yah
|
||||||
|
|
||||||
|
Spots
|
||||||
|
{
|
||||||
|
E2M1 218 57
|
||||||
|
E2M2 137 81
|
||||||
|
E2M3 155 124
|
||||||
|
E2M4 171 68
|
||||||
|
E2M5 250 86
|
||||||
|
E2M6 136 98
|
||||||
|
E2M7 203 90
|
||||||
|
E2M8 220 140
|
||||||
|
E2M9 279 106
|
||||||
|
}
|
||||||
|
|
17
wadsrc/In_htc3.txt
Normal file
17
wadsrc/In_htc3.txt
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
Background mape3
|
||||||
|
Splat in_x
|
||||||
|
Pointer in_yah
|
||||||
|
|
||||||
|
Spots
|
||||||
|
{
|
||||||
|
E3M1 86 99
|
||||||
|
E3M2 124 103
|
||||||
|
E3M3 154 79
|
||||||
|
E3M4 202 83
|
||||||
|
E3M5 178 59
|
||||||
|
E3M6 142 58
|
||||||
|
E3M7 219 66
|
||||||
|
E3M8 247 57
|
||||||
|
E3M9 107 80
|
||||||
|
}
|
||||||
|
|
560
wadsrc/Lockdefs.txt
Normal file
560
wadsrc/Lockdefs.txt
Normal file
|
@ -0,0 +1,560 @@
|
||||||
|
//
|
||||||
|
// Doom Locks - they include Heretic's keys because somebody mentioned that he already used them
|
||||||
|
//
|
||||||
|
ClearLocks
|
||||||
|
|
||||||
|
Lock 1 Doom
|
||||||
|
{
|
||||||
|
RedCard
|
||||||
|
Message "$PD_REDC"
|
||||||
|
RemoteMessage "You need a red card to activate this object"
|
||||||
|
Mapcolor 255 0 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 2 Doom
|
||||||
|
{
|
||||||
|
BlueCard
|
||||||
|
Message "$PD_BLUEC"
|
||||||
|
RemoteMessage "You need a blue card to activate this object"
|
||||||
|
Mapcolor 0 0 255
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 3 Doom
|
||||||
|
{
|
||||||
|
YellowCard
|
||||||
|
Message "$PD_YELLOWC"
|
||||||
|
RemoteMessage "You need a yellow card to activate this object"
|
||||||
|
Mapcolor 255 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 4 Doom
|
||||||
|
{
|
||||||
|
RedSkull
|
||||||
|
Message "$PD_REDS"
|
||||||
|
RemoteMessage "You need a red skull to activate this object"
|
||||||
|
Mapcolor 255 0 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 5 Doom
|
||||||
|
{
|
||||||
|
BlueSkull
|
||||||
|
Message "$PD_BLUES"
|
||||||
|
RemoteMessage "You need a blue skull to activate this object"
|
||||||
|
Mapcolor 0 0 255
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 6 Doom
|
||||||
|
{
|
||||||
|
YellowSkull
|
||||||
|
Message "$PD_YELLOWS"
|
||||||
|
RemoteMessage "You need a yellow skull to activate this object"
|
||||||
|
Mapcolor 255 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 129 Doom
|
||||||
|
{
|
||||||
|
Any { RedCard RedSkull KeyGreen }
|
||||||
|
Message "$PD_REDK"
|
||||||
|
RemoteMessage "$PD_REDO"
|
||||||
|
Mapcolor 255 0 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 130 Doom
|
||||||
|
{
|
||||||
|
Any { BlueCard BlueSkull KeyBlue }
|
||||||
|
Message "$PD_BLUEK"
|
||||||
|
RemoteMessage "$PD_BLUEO"
|
||||||
|
Mapcolor 0 0 255
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 131 Doom
|
||||||
|
{
|
||||||
|
Any { YellowCard YellowSkull KeyYellow }
|
||||||
|
Message "$PD_YELLOWK"
|
||||||
|
RemoteMessage "$PD_YELLOWO"
|
||||||
|
Mapcolor 255 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 132 Doom
|
||||||
|
{
|
||||||
|
Any { RedCard RedSkull }
|
||||||
|
Message "$PD_REDK"
|
||||||
|
RemoteMessage "$PD_REDO"
|
||||||
|
Mapcolor 255 0 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 133 Doom
|
||||||
|
{
|
||||||
|
Any { BlueCard BlueSkull }
|
||||||
|
Message "$PD_BLUEK"
|
||||||
|
RemoteMessage "$PD_BLUEO"
|
||||||
|
Mapcolor 0 0 255
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 134 Doom
|
||||||
|
{
|
||||||
|
Any { YellowCard YellowSkull }
|
||||||
|
Message "$PD_YELLOWK"
|
||||||
|
RemoteMessage "$PD_YELLOWO"
|
||||||
|
Mapcolor 255 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 100
|
||||||
|
{
|
||||||
|
Message "Any key will open this door"
|
||||||
|
RemoteMessage "Any key will activate this object"
|
||||||
|
Mapcolor 128 128 255
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 228
|
||||||
|
{
|
||||||
|
Message "Any key will open this door"
|
||||||
|
RemoteMessage "Any key will activate this object"
|
||||||
|
Mapcolor 128 128 255
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 229 Doom
|
||||||
|
{
|
||||||
|
Any { BlueCard BlueSkull KeyBlue}
|
||||||
|
Any { YellowCard YellowSkull KeyYellow}
|
||||||
|
Any { RedCard RedSkull KeyGreen}
|
||||||
|
Message "$PD_ALL3"
|
||||||
|
RemoteMessage "You need all three keys to activate this object"
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 101 Doom
|
||||||
|
{
|
||||||
|
BlueCard
|
||||||
|
BlueSkull
|
||||||
|
YellowCard
|
||||||
|
YellowSkull
|
||||||
|
RedCard
|
||||||
|
RedSkull
|
||||||
|
Message "$PD_ALL6"
|
||||||
|
RemoteMessage "You need all six keys to activate this object"
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Heretic KeyDefs
|
||||||
|
//
|
||||||
|
|
||||||
|
Lock 1 Heretic
|
||||||
|
{
|
||||||
|
KeyGreen
|
||||||
|
Message "$TXT_NEEDGREENKEY"
|
||||||
|
Mapcolor 0 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 2 Heretic
|
||||||
|
{
|
||||||
|
KeyBlue
|
||||||
|
Message "$TXT_NEEDBLUEKEY"
|
||||||
|
Mapcolor 0 0 255
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 3 Heretic
|
||||||
|
{
|
||||||
|
KeyYellow
|
||||||
|
Message "$TXT_NEEDYELLOWKEY"
|
||||||
|
Mapcolor 255 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 129 Heretic
|
||||||
|
{
|
||||||
|
KeyGreen
|
||||||
|
Message "$TXT_NEEDGREENKEY"
|
||||||
|
Mapcolor 0 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 130 Heretic
|
||||||
|
{
|
||||||
|
KeyBlue
|
||||||
|
Message "$TXT_NEEDBLUEKEY"
|
||||||
|
Mapcolor 0 0 255
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 131 Heretic
|
||||||
|
{
|
||||||
|
KeyYellow
|
||||||
|
Message "$TXT_NEEDYELLOWKEY"
|
||||||
|
Mapcolor 255 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 229 Heretic
|
||||||
|
{
|
||||||
|
KeyGreen
|
||||||
|
KeyYellow
|
||||||
|
KeyBlue
|
||||||
|
Message "$PD_ALL3"
|
||||||
|
RemoteMessage "You need all three keys to activate this object"
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 101 Heretic
|
||||||
|
{
|
||||||
|
KeyGreen
|
||||||
|
KeyYellow
|
||||||
|
KeyBlue
|
||||||
|
Message "$PD_ALL3"
|
||||||
|
RemoteMessage "You need all three keys to activate this object"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Hexen KeyDefs
|
||||||
|
//
|
||||||
|
|
||||||
|
Lock 1 Hexen
|
||||||
|
{
|
||||||
|
KeySteel
|
||||||
|
Message "You need the $TXT_KEY_STEEL"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 2 Hexen
|
||||||
|
{
|
||||||
|
KeyCave
|
||||||
|
Message "You need the $TXT_KEY_CAVE"
|
||||||
|
Mapcolor 255 218 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 3 Hexen
|
||||||
|
{
|
||||||
|
KeyAxe
|
||||||
|
Message "You need the $TXT_KEY_AXE"
|
||||||
|
Mapcolor 64 64 255
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 4 Hexen
|
||||||
|
{
|
||||||
|
KeyFire
|
||||||
|
Message "You need the $TXT_KEY_FIRE"
|
||||||
|
Mapcolor 255 128 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 5 Hexen
|
||||||
|
{
|
||||||
|
KeyEmerald
|
||||||
|
Message "You need the $TXT_KEY_EMERALD"
|
||||||
|
Mapcolor 0 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 6 Hexen
|
||||||
|
{
|
||||||
|
KeyDungeon
|
||||||
|
Message "You need the $TXT_KEY_DUNGEON"
|
||||||
|
Mapcolor 47 151 255
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 7 Hexen
|
||||||
|
{
|
||||||
|
KeySilver
|
||||||
|
Message "You need the $TXT_KEY_SILVER"
|
||||||
|
Mapcolor 154 152 188
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 8 Hexen
|
||||||
|
{
|
||||||
|
KeyRusted
|
||||||
|
Message "You need the $TXT_KEY_RUSTED"
|
||||||
|
Mapcolor 156 76 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 9 Hexen
|
||||||
|
{
|
||||||
|
KeyHorn
|
||||||
|
Message "You need the $TXT_KEY_HORN"
|
||||||
|
Mapcolor 255 218 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 10 Hexen
|
||||||
|
{
|
||||||
|
KeySwamp
|
||||||
|
Message "You need the $TXT_KEY_SWAMP"
|
||||||
|
Mapcolor 64 255 64
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 11 Hexen
|
||||||
|
{
|
||||||
|
KeyCastle
|
||||||
|
Message "You need the $TXT_KEY_CASTLE"
|
||||||
|
Mapcolor 255 64 64
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 101 Hexen
|
||||||
|
{
|
||||||
|
KeySteel
|
||||||
|
KeyCave
|
||||||
|
KeyAxe
|
||||||
|
KeyFire
|
||||||
|
KeyEmerald
|
||||||
|
KeyDungeon
|
||||||
|
KeySilver
|
||||||
|
KeyRusted
|
||||||
|
KeyHorn
|
||||||
|
KeySwamp
|
||||||
|
KeyCastle
|
||||||
|
Message "You need all the keys"
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 229 Hexen
|
||||||
|
{
|
||||||
|
KeySteel
|
||||||
|
KeyCave
|
||||||
|
KeyAxe
|
||||||
|
KeyFire
|
||||||
|
KeyEmerald
|
||||||
|
KeyDungeon
|
||||||
|
KeySilver
|
||||||
|
KeyRusted
|
||||||
|
KeyHorn
|
||||||
|
KeySwamp
|
||||||
|
KeyCastle
|
||||||
|
Message "You need all the keys"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Strife KeyDefs
|
||||||
|
|
||||||
|
Lock 1 Strife
|
||||||
|
{
|
||||||
|
BaseKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 2 Strife
|
||||||
|
{
|
||||||
|
GovsKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 3 Strife
|
||||||
|
{
|
||||||
|
Passcard
|
||||||
|
RemoteMessage "You need a passcard"
|
||||||
|
Message "You need a pass card key to open this door"
|
||||||
|
Mapcolor 128 266 150
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 4 Strife
|
||||||
|
{
|
||||||
|
IDBadge
|
||||||
|
Message "You need an ID card"
|
||||||
|
Mapcolor 255 128 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 5 Strife
|
||||||
|
{
|
||||||
|
PrisonKey
|
||||||
|
Message "You don't have the key to the prison"
|
||||||
|
Mapcolor 0 255 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 6 Strife
|
||||||
|
{
|
||||||
|
SeveredHand
|
||||||
|
Message "Hand print not on file"
|
||||||
|
Mapcolor 255 151 100
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 7 Strife
|
||||||
|
{
|
||||||
|
Power1Key
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 8 Strife
|
||||||
|
{
|
||||||
|
Power2Key
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 9 Strife
|
||||||
|
{
|
||||||
|
Power3Key
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 10 Strife
|
||||||
|
{
|
||||||
|
GoldKey
|
||||||
|
Message "You need the Gold Key"
|
||||||
|
Mapcolor 255 200 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Lock 11 Strife
|
||||||
|
{
|
||||||
|
IDCard
|
||||||
|
RemoteMessage "You need an ID badge"
|
||||||
|
Message "You need an ID badge to open this door"
|
||||||
|
Mapcolor 200 0 0
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 12 Strife
|
||||||
|
{
|
||||||
|
SilverKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 13 Strife
|
||||||
|
{
|
||||||
|
OracleKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 14 Strife
|
||||||
|
{
|
||||||
|
MilitaryID
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 15 Strife
|
||||||
|
{
|
||||||
|
OrderKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 16 Strife
|
||||||
|
{
|
||||||
|
WarehouseKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 17 Strife
|
||||||
|
{
|
||||||
|
BrassKey
|
||||||
|
Message "You need a brass key"
|
||||||
|
Mapcolor 150 75 0
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 18 Strife
|
||||||
|
{
|
||||||
|
RedCrystalKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 19 Strife
|
||||||
|
{
|
||||||
|
BlueCrystalKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 20 Strife
|
||||||
|
{
|
||||||
|
ChapelKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 21 Strife
|
||||||
|
{
|
||||||
|
CatacombKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 22 Strife
|
||||||
|
{
|
||||||
|
SecurityKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 23 Strife
|
||||||
|
{
|
||||||
|
CoreKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 24 Strife
|
||||||
|
{
|
||||||
|
MaulerKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 25 Strife
|
||||||
|
{
|
||||||
|
FactoryKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 26 Strife
|
||||||
|
{
|
||||||
|
MineKey
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 27 Strife
|
||||||
|
{
|
||||||
|
NewKey5
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 50 Strife
|
||||||
|
{
|
||||||
|
PrisonPass
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
||||||
|
Lock 51 Strife
|
||||||
|
{
|
||||||
|
OraclePass
|
||||||
|
Message "You don't have the key"
|
||||||
|
Mapcolor 150 150 150
|
||||||
|
}
|
||||||
|
|
|
@ -282,6 +282,12 @@ decal PlasmaScorch2
|
||||||
lowerdecal PlasmaScorchLower2
|
lowerdecal PlasmaScorchLower2
|
||||||
}
|
}
|
||||||
|
|
||||||
|
decalgroup PlasmaScorchLower
|
||||||
|
{
|
||||||
|
PlasmaScorchLower1 1
|
||||||
|
PlasmaScorchLower2 1
|
||||||
|
}
|
||||||
|
|
||||||
decalgroup PlasmaScorch
|
decalgroup PlasmaScorch
|
||||||
{
|
{
|
||||||
PlasmaScorch1 1
|
PlasmaScorch1 1
|
||||||
|
@ -989,8 +995,8 @@ generator MaceFX1 BaronScorch
|
||||||
generator Blaster RailScorchLower
|
generator Blaster RailScorchLower
|
||||||
generator BlasterFX1 HImpScorch
|
generator BlasterFX1 HImpScorch
|
||||||
generator Ripper HImpScorch
|
generator Ripper HImpScorch
|
||||||
generator HornRodFX1 PlasmaScorch
|
generator HornRodFX1 PlasmaScorchLower
|
||||||
generator HornRodFX2 PlasmaScorch
|
generator HornRodFX2 PlasmaScorchLower
|
||||||
generator PhoenixFX1 Scorch
|
generator PhoenixFX1 Scorch
|
||||||
generator PhoenixFX2 Scorch
|
generator PhoenixFX2 Scorch
|
||||||
|
|
||||||
|
@ -1029,8 +1035,8 @@ generator Rebel4 BulletChip
|
||||||
generator Rebel5 BulletChip
|
generator Rebel5 BulletChip
|
||||||
generator Macil1 BulletChip
|
generator Macil1 BulletChip
|
||||||
generator Macil2 BulletChip
|
generator Macil2 BulletChip
|
||||||
generator SentinelFX1 PlasmaScorch
|
generator SentinelFX1 PlasmaScorchLower
|
||||||
generator SentinelFX2 PlasmaScorch
|
generator SentinelFX2 PlasmaScorchLower
|
||||||
generator Templar RailScorchLower
|
generator Templar RailScorchLower
|
||||||
generator Reaver BulletChip
|
generator Reaver BulletChip
|
||||||
generator FlameMissile CacoScorch
|
generator FlameMissile CacoScorch
|
||||||
|
|
|
@ -39,6 +39,13 @@ zdoom.wad: zdoom.lst \
|
||||||
decals/cbowmark.png \
|
decals/cbowmark.png \
|
||||||
animdefs.txt \
|
animdefs.txt \
|
||||||
terrain.txt \
|
terrain.txt \
|
||||||
|
in_epi1.txt \
|
||||||
|
in_epi2.txt \
|
||||||
|
in_epi3.txt \
|
||||||
|
in_htc1.txt \
|
||||||
|
in_htc2.txt \
|
||||||
|
in_htc3.txt \
|
||||||
|
lockdefs.txt \
|
||||||
dehsupp.lmp \
|
dehsupp.lmp \
|
||||||
xlat/doom.x \
|
xlat/doom.x \
|
||||||
xlat/heretic.x \
|
xlat/heretic.x \
|
||||||
|
|
|
@ -44,6 +44,27 @@
|
||||||
<File
|
<File
|
||||||
RelativePath=".\animdefs.txt">
|
RelativePath=".\animdefs.txt">
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\In_epi1.txt">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\In_epi2.txt">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\In_epi3.txt">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\In_htc1.txt">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\In_htc2.txt">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\In_htc3.txt">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Lockdefs.txt">
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\sndeax.txt">
|
RelativePath=".\sndeax.txt">
|
||||||
</File>
|
</File>
|
||||||
|
|
|
@ -50,6 +50,13 @@ cbowmark decals/cbowmark.png
|
||||||
|
|
||||||
animdefs animdefs.txt
|
animdefs animdefs.txt
|
||||||
terrain terrain.txt
|
terrain terrain.txt
|
||||||
|
in_epi1 in_epi1.txt
|
||||||
|
in_epi2 in_epi2.txt
|
||||||
|
in_epi3 in_epi3.txt
|
||||||
|
in_htc1 in_htc1.txt
|
||||||
|
in_htc2 in_htc2.txt
|
||||||
|
in_htc3 in_htc3.txt
|
||||||
|
lockdefs lockdefs.txt
|
||||||
|
|
||||||
========
|
========
|
||||||
# Support lumps
|
# Support lumps
|
||||||
|
|
Loading…
Reference in a new issue