Commit graph

23 commits

Author SHA1 Message Date
Christoph Oelckers
3ab370b6ee - added a compatibility option to restore the original Heretic bug where
a Minotaur couldn't spawn floor flames when standing in water having its
  feet clipped.
- added vid_vsync to display options.
- fixed: Animations of type 'Range' must be disabled if the textures don't
  come from the same definition unit (i.e both containing file and use type
  are identical.)
- changed: Item pushing is now only done once per P_XYMovement call.
- Increased the push factor of Heretic's pod to 0.5 so that its behavior
  more closely matches the original which depended on several bugs in the engine.
- Removed damage thrust clamping in P_DamageMobj and changed the thrust calculation
  to use floats to prevent overflows. The prevention of the overflows was the
  only reason the clamping was done.
- Added Raven's dagger-like vector sprite for the player to the automap code.


SVN r1668 (trunk)
2009-06-14 13:47:38 +00:00
Christoph Oelckers
e61b4b3c76 - Fixed: A_CountdownArg and A_Die must ensure a certain kill.
- Changed bounce flags into a property and added real bouncing sound properties.
  Compatibility modes to preserve use of the SeeSound are present and the old
  flags map to these.


SVN r1599 (trunk)
2009-05-23 08:30:36 +00:00
Christoph Oelckers
6fd62b68a8 - fixed a few Heretic actors:
* The pod generator's attacksound was wrong
  * The teleglitter generators need different flags if they are supposed to work 
    with z-aware spawning of the glitter.
  * The knight's axes need the THRUGHOST flag.


SVN r1582 (trunk)
2009-05-15 07:05:25 +00:00
Christoph Oelckers
571d28281b - Added handling for UDMF user keys.
- Added support for ACS functions that can be defined without recompiling ACC.
- Fixed: The short lump name for embedded files must be cleared so that they
  are not found by a normal lump search.
- Added AProp_Notarget actor property.
- Fixed: TraceBleed was missing a NULL pointer check,
- Fixed: P_RandomChaseDir could crash for friendly monsters that belong to
  a player which left the game.
- Changed A_PodGrow so that it plays the generator's attack sound instead of
  "misc/podgrow".


SVN r1575 (trunk)
2009-05-11 21:05:40 +00:00
Randy Heit
41a416f068 This commit is 90% contributed content:
- Added transference of a select few flags from PowerProtection to its owner.
- Added actor type parameters to A_PodPain() and A_MakePod().
- The savegame path is now passed through NicePath(), since it's user-
  specifiable.
- Added save_dir cvar. When non-empty, it controls where savegames go.
- SBARINFO update:
  * Added the ability to center things with fullscreenoffsets enabled.  Due
    to some limitations the syntax is [-]<integer> [+ center].
  * Fixed: the translucent flag on drawinventorybar didn't work quite right.
  * Fixed: Extremely minor inaccuracy in the Doom SBarInfo code.  The
    fullscreen inventory bar wasn't scaled correctly.


SVN r1571 (trunk)
2009-05-09 02:31:49 +00:00
Christoph Oelckers
be9a05e32b - Added NOBLOCKMAP/MOVEWITHSECTOR combination to a few items that had their
NOBLOCKMAP flag taken away previously to make them move with a sector.
  This should fix the performance problem Claustrophobia had with recent
  ZDoom versions.


SVN r1537 (trunk)
2009-04-09 06:58:28 +00:00
Christoph Oelckers
3b36334704 - changed: If a monster with the BOSSDEATH flag is crushed A_BossDeath will
be called now.
- fixed: D'Sparil's second form was missing the BOSSDEATH flag.
- fixed: D'Sparil's first form requires the DONTGIB flag.
- fixed: Heretic doesn't crush monsters. To handle this in a more generic
  fashion this depends on the presence of a gib sprite now.


SVN r1459 (trunk)
2009-03-03 21:17:00 +00:00
Randy Heit
a7e40b56f6 - Fixed: Player names and chat macros that end with incomplete \c escapes now
have those escapes stripped before printing so that they do not merge with
  subsequent text.
- Moved default weapon slot assignments into the player classes.
  Weapon.SlotNumber is now used solely for mods that want to add new weapons
  without completely redoing the player's arsenal. Restored some config-based
  weapon slot customization, though slots are no longer automatically saved
  to the config and section names have changed slightly. However, unlike
  before, config slots are now the definitive word on slot assignments and
  cannot be overridden by any other files loaded.
- Fixed: Several weapons were missing a game filter from their definitions.
- Removed storage of weapon slots in the config so that weapon slots can
  be setup in the weapons themselves. Slots are still configurable, since
  they need to be for KEYCONF to work; any changes simply won't be saved
  when you quit.
- Removed limit on weapon slot sizes.


SVN r1428 (trunk)
2009-02-20 00:53:25 +00:00
Christoph Oelckers
4d991de92d - moved common code of Raven's fast projectiles into a base class
called FastProjectile. This base class doesn't have any effects attached
  so that it can be used for user defined fast projectiles.


SVN r1290 (trunk)
2008-11-15 09:57:18 +00:00
Christoph Oelckers
909656c7c5 - DECORATE fixes.
SVN r1172 (trunk)
2008-08-15 23:11:04 +00:00
Christoph Oelckers
c02253eef2 - Removed 'eval' modifier from DECORATE. All int, float and bool parameters are
'eval' now by default.


SVN r1155 (trunk)
2008-08-11 22:28:14 +00:00
Christoph Oelckers
1521f2faf3 - Heretic DECORATE fixes.
SVN r1150 (trunk)
2008-08-11 08:58:55 +00:00
Christoph Oelckers
c8538efda9 - Fixed a few minor DECORATE bugs.
- Changed coordinate storage for EntityBoss so that it works properly even
  when the pod is not used to spawn it.
- Converted Strife's Spectres and Entity to DECORATE.


SVN r1117 (trunk)
2008-08-06 17:49:22 +00:00
Christoph Oelckers
fe2e64aa40 - Converted Strife's Acolytes, Rebels, Sentinel, Reaver and Templar to
DECORATE.


SVN r1113 (trunk)
2008-08-05 17:58:38 +00:00
Christoph Oelckers
d5cc9e01d0 - Converted the PhoenixRod and associated classes to DECORATE to make
the Heretic conversion complete.


SVN r1110 (trunk)
2008-08-04 22:30:45 +00:00
Christoph Oelckers
b2a6bed19f - Converted the Minotaur's projectiles to DECORATE so that I can get
rid of the AT_SPEED_SET code.
- Converted Heretic's Blaster and SkullRod to DECORATE.


SVN r1109 (trunk)
2008-08-04 19:25:13 +00:00
Christoph Oelckers
affd0e5034 - Converted the mace and all related actors to DECORATE and generalized
the spawn function that only spawns one mace per level.
- Moved Mace respawning code into AInventory so that it works properly
  for replacement actors.


SVN r1107 (trunk)
2008-08-03 19:10:48 +00:00
Randy Heit
21a7564c98 - Fixed: Mace SpawnID was assigned to the MacePowered actor instead.
- Fixed: Sorcerer2FX1's SpawnID was not restricted to Heretic.


SVN r1097 (trunk)
2008-07-31 18:08:30 +00:00
Randy Heit
c42bc6af58 - More Heretic DECORATE fixes.
SVN r1094 (trunk)
2008-07-25 02:26:25 +00:00
Christoph Oelckers
a65f5c67a3 - fixed Chicken spawn ID
SVN r1089 (trunk)
2008-07-24 07:27:39 +00:00
Christoph Oelckers
c7b4fc6270 - fixed HereticImpLeader's health.
SVN r1087 (trunk)
2008-07-23 23:11:29 +00:00
Christoph Oelckers
61b6c519dd - fixed some incorrect file names in the new WADSRC directory and deleted obsolete makefiles.
SVN r1083 (trunk)
2008-07-23 15:32:18 +00:00
Randy Heit
fb50df2c63 About a week's worth of changes here. As a heads-up, I wouldn't be
surprised if this doesn't build in Linux right now. The CMakeLists.txt
were checked with MinGW and NMake, but how they fair under Linux is an
unknown to me at this time.

- Converted most sprintf (and all wsprintf) calls to either mysnprintf or
  FStrings, depending on the situation.
- Changed the strings in the wbstartstruct to be FStrings.
- Changed myvsnprintf() to output nothing if count is greater than INT_MAX.
  This is so that I can use a series of mysnprintf() calls and advance the
  pointer for each one. Once the pointer goes beyond the end of the buffer,
  the count will go negative, but since it's an unsigned type it will be
  seen as excessively huge instead. This should not be a problem, as there's
  no reason for ZDoom to be using text buffers larger than 2 GB anywhere.
- Ripped out the disabled bit from FGameConfigFile::MigrateOldConfig().
- Changed CalcMapName() to return an FString instead of a pointer to a static
  buffer.
- Changed startmap in d_main.cpp into an FString.
- Changed CheckWarpTransMap() to take an FString& as the first argument.
- Changed d_mapname in g_level.cpp into an FString.
- Changed DoSubstitution() in ct_chat.cpp to place the substitutions in an
  FString.
- Fixed: The MAPINFO parser wrote into the string buffer to construct a map
  name when given a Hexen map number. This was fine with the old scanner
  code, but only a happy coincidence prevents it from crashing with the new
  code
- Added the 'B' conversion specifier to StringFormat::VWorker() for printing
  binary numbers.
- Added CMake support for building with MinGW, MSYS, and NMake. Linux support
  is probably broken until I get around to booting into Linux again. Niceties
  provided over the existing Makefiles they're replacing:
  * All command-line builds can use the same build system, rather than having
    a separate one for MinGW and another for Linux.
  * Microsoft's NMake tool is supported as a target.
  * Progress meters.
  * Parallel makes work from a fresh checkout without needing to be primed
    first with a single-threaded make.
  * Porting to other architectures should be simplified, whenever that day
    comes.
- Replaced the makewad tool with zipdir. This handles the dependency tracking
  itself instead of generating an external makefile to do it, since I couldn't
  figure out how to generate a makefile with an external tool and include it
  with a CMake-generated makefile. Where makewad used a master list of files
  to generate the package file, zipdir just zips the entire contents of one or
  more directories.
- Added the gdtoa package from netlib's fp library so that ZDoom's printf-style
  formatting can be entirely independant of the CRT.

SVN r1082 (trunk)
2008-07-23 04:57:26 +00:00