Commit graph

127 commits

Author SHA1 Message Date
Christoph Oelckers
af753ebe37 - Update to ZDoom r2613
* addition of textured automap. (not active for GL renderer yet!)



git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@909 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-27 17:42:01 +00:00
gez
2934a611c9 * Updated to ZDoom r2601:
- Added: Let the kill CCMD also kill replacements of the monster that is specified.
- Add a GetReplacement method to PClass to clean up some really ugly code
- Who wrote the 'kill' CCMD? The way it checked if two classes were identical was horrendously overcomplicated.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@908 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-27 08:41:43 +00:00
gez
5c0a0c99d8 * Updated to ZDoom r2579:
- Fixed: The UDMF check for dialogues without owning class needs to be relaxed. A dialogue with an id and no class is a valid construct.
- Fixed: Trying to assign a non-existent dialogue to an actor in UDMF partially overwrote the default dialogue.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@906 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-24 14:22:31 +00:00
gez
d900641e08 * Updated to ZDoom r2569:
- Removed FActorInfo::ConversationID which was development garbage of the USDF branch.
- Fixed: The USDF CheckActorType function did not return the class object for ZDoom namespace.
- Fixed: The binary check for dialogue lumps must only rewind the file by 4 bytes, not completely to the start.
- Added UMDF property to assign conversation dialogues to mapthings.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@903 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-22 21:36:52 +00:00
Christoph Oelckers
da09f94592 - Update to ZDoom r2563: fixed: Blood spawning checked actor flags before performing replacement.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@902 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-22 10:29:33 +00:00
gez
81fa721abc * Updated to ZDoom r2562:
- Merged USDF branch into trunk.
- Added USDF specs.
- Fixed: The check for old incompatible savegames with dialogues was wrong.
* Adjusted the SaveVersion number to its accurate value.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@901 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-21 08:49:56 +00:00
Christoph Oelckers
4c933e66f5 - fixed: Conditions for deciding ehether to rebuild the sidedef loop info before initializing polyobjects was wrong.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@896 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-18 20:59:03 +00:00
gez
2306c9896e - Factorized 3D floor plane code into a new function.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@883 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-11 20:06:29 +00:00
Christoph Oelckers
f474931ea8 - Version bump to 1.5.0.
- Update to ZDoom r2509:
    * Set explicit positioning for the gameplay options menu instead of relying on the automatic positioning.
    * Fix compilation with MinGW + w32api and clean up warnings.
    * Clean up vid_listadapters code.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@880 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-11 06:40:06 +00:00
gez
4a5f749642 * Updated to ZDoom r2501:
- Fixed: Changing APROP_Friendly in ACS did not adjust the monster count.
- Fixed: AActor::CanSeek had the check for the visibility of the target actor's alpha reversed.
- Added an Alt HUD icon for Hexen's fighter's fist.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@878 b0f79afe-0144-0410-b225-9a4edf0717df
2010-08-10 18:11:53 +00:00
Christoph Oelckers
0970747641 - fixed: The checks for doing poison damage were not correct.
- fixed: Poisoner was not declared as pointer.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@860 b0f79afe-0144-0410-b225-9a4edf0717df
2010-07-29 06:57:50 +00:00
gez
5c0247886e * Added missing po_man.h.
* Updated to ZDoom r2450:
- Added DavidPH's Poison damage extension but changed it so that the metadata can be removed.
- Added Firebrand's patch to rename 'swap' due to naming conflicts in newer MSVC compilers.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@848 b0f79afe-0144-0410-b225-9a4edf0717df
2010-07-23 22:01:12 +00:00
gez
46bdcdb47d * Updated to ZDoom r2373:
- Fixed: All melee attack functions only used the target acquired by P_AimLineAttack for all subsequent calculations, not the actual victim of the attack. 
- Set +NEVERRESPAWN flag for several Strife monsters that should not respawn in Bloodbath skill.
- Fixed: Setting +NOCLIP for a player class did not work.
- Fixed: A_Print and related functions should not make a use state chain succeed.
- Fixed: APowerIronFeet must continuously reset the player's air supply.
- Fixed: Stopping music did not clear the variable used to restart the last played song.
- Fixed: Classes inherited from PowerScanner didn't work anymore.
- Added some options to A_CustomPunch, including calling Strife's dagger alert function.
- Added support for Risen3D/PrBoom+'s MUSINFO lump.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@816 b0f79afe-0144-0410-b225-9a4edf0717df
2010-06-13 13:33:27 +00:00
gez
910e9fd447 * Updated to ZDoom r2337:
- Changed AActor::GetTag() to use language lookups for strings that start with $.
- Fixed: Animated doors should only leave ML_BLOCKING set if the door was created with it set. Otherwise, monsters will be unable to open it after it has been used once if it isn't set for push activation.
- Response file improvements:
  * Fixed: Trying to use a response file would result in infinite looping until memory was exhausted.
  * Fixed: Response files were read after coalescing file parameters, which would lead to non-coalesced parameters if the original command line and response file both had them.
  * You can now use more than one response file.
  * Response files can include other response files.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@801 b0f79afe-0144-0410-b225-9a4edf0717df
2010-05-25 07:28:51 +00:00
gez
30a3d16f19 * Updated to ZDoom r2291:
- Merged SetState and SetStateNF into a single function.
- Added new sprite #### and frame character # to specify the behavior of sprite ---- on a per-sprite and per-frame basis respectively.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@775 b0f79afe-0144-0410-b225-9a4edf0717df
2010-04-19 12:19:20 +00:00
gez
8c71705ef7 * Updated to ZDoom r2288:
- UDMF node format specification change for portability reasons.
- Allow loading uncompressed version of compressed nodes.
- Extended FileReader hierarchy so that FileReader, FileReaderZ etc. all inherit from one base class so that the same code can be used to read from both uncompressed and compressed streams.
However, the function P_LoadZNodes() in p_setup.cpp had to be changed from static to non-static or it caused unresolved externals in gl_nodes.cpp. It's strange because it was static as well before the update, with the exact same signature, and compiled just fine anyway.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@774 b0f79afe-0144-0410-b225-9a4edf0717df
2010-04-18 10:41:48 +00:00
gez
e074ec65a0 Update to ZDoom r2284:
- Fixed crash when parsing invalid DECALDEF lumps.
- Added blzut3's morphed status bar patch.
- Reverted accidental change to fmodsound.cpp from revision 2273.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@771 b0f79afe-0144-0410-b225-9a4edf0717df
2010-04-17 08:10:01 +00:00
gez
ed914c8ffe * Updated to ZDoom r2280:
- Added a Sector_CopyScroller special to allow setting scrollers to sectors with special tags.
- Extended compatibility text to allow changing line flags and setting line specials on specific linedefs.
- Removed Strain MAP07 hack and replaced it by a clean 'clearlineflags' option.
- Added Doomo format translations for Sector_CopyScroller because this looks like something that might be useful for making
some Boom maps work without having to resort to compatibility.txt.
- Added a compatibility setting for UAC Ultra MAP07 which exploited some undefined scrolling behavior in Boom.
(What lengths are we going to make sloppily created maps work? This entire commit was just to address this particular problem...)
- Added a few NULL pointer checks to protect against problems caused by actors being spawned during engine shutdown.
- Made the recent change to P_SeekerMissile an option because it affected critical gameplay behavior and may not be used for existing actors.
- Changed P_SeekerMissile() to compute a proper 3D trajectory.
- Fixed: maxitems calculation for MKEY_Up in M_OptButtonHandler() used the unscaled text height instead of the scaled text height to calculate the bottom-most usable row.
- Added MUS header scan to mus2midi.
- Fixed buffer overflow when reading a MUS song from a compressed file.
* Plugged a few memory leaks.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@770 b0f79afe-0144-0410-b225-9a4edf0717df
2010-04-16 15:31:06 +00:00
Christoph Oelckers
298f0d2e80 Update to ZDoom r2249:
- fixed: Explosions directly under a water surface would not hurt any actor directly above this surface.
- cleaned up P_CheckSight flag handling.
- Use normal texture animation for the main menu cursors. This required updating animations
  all the time and not just when inside a level.
- fixed: IDBEHOLD altered the item counter.
- fixed: P_SpawnMapThing always reduced the angular precision to 45 degrees.
- removed AngleIncrements because it's not really useful.
- fixed: Level redirection checked the wrong level.
- Fixed: ClearActorInventory used the wrong stack index to get its parameter.
- P_ZMovement() temporarily disables jumping after a landing. Don't do this if the jump
  timer is already running or for short falls (e.g. along the edges of slopes, since the
  slope floorz calculation is pretty crappy.)
- Keep all damage factors in the table, even those that are 1.0.
- 256 is a valid pain chance, so clamp to that, not 255.
- Fixed: TMap::DelKey failed if the key's main position was nil, because it tried checking
  for it at the "next" position, which is an invalid pointer in that case.
- Changed A_SetUserVar and A_SetUserArray so they affect the actor that called it, which
  is not necessarily "self". The only visible change from this should be that inventory items
  now set their own variables and not their owners'.
- added a CrushPainSound actor property for Strife.
- fixed memory leaks in SBARINFO and WAD loading code.
- added GetBloodColor and GetBloodType inline functions to AActor to wrap the GetMeta calls used for this.



git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@756 b0f79afe-0144-0410-b225-9a4edf0717df
2010-03-27 07:46:42 +00:00
Christoph Oelckers
30c977090c Update to ZDoom r2198:
- let players check MF2_NOTRANSLATE so that mods can create player classes which are not subject to
  default player color handling.
- fixed: The ChexPlayer was missing default colorset definitions.
- Final Doom needs its finale flats changed, too.
- It's "BGCASTCALL", not "BOSSBACK".
- Added BOOM/MBF BEX-style narrative background text substitution. There are two changes because
  of this:
  * A cluster's flat definition can now be preceded by a $ to do a string table lookup.
  * Since the standard flat names are now in the LANGUAGE lump, the normal Dehacked substitution
    for these is no longer handled specially and so will not be automatically disabled merely
    by providing your own MAPINFO.
- Setting a Player.ColorRange now completely disables the translation rather than just
  making it an identity map.
- Added support for the original games' player translations, including Hexen's table-based ones.
- Fixed: CheckActorClass needed a NULL check.
- Fixed: FFont::StringWidth() counted the ']' character of a named color escape sequence in
  its width calculation.
- Fixed: FSinglePicFont should set the character size by the scaled size of the texture.
- Fixed: snd_musicvolume needs to check GSnd for NULL, since somebody might have set an
  atexit for it, which gets executed after the sound system shuts down.
- Fixed: FPlayList::Backup() failed to wrap around below entry 0 because Position is
  unsigned now.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@744 b0f79afe-0144-0410-b225-9a4edf0717df
2010-03-06 11:03:55 +00:00
Christoph Oelckers
3a83e3ed57 - Update to ZDoom r2187:
- Yet another piece of essentially broken code that has to go back in because some people had to abuse it:
  Reinstated Doom's original code that made projectiles with the MF_NOCLIP flag set continue to exist even
  though the movement itself was never properly handled.
  Fortunately the game mode check formerly associated with this can be removed because none of the other games have
  any projectiles using MF_NOCLIP so at least it's no longer restricted to Doom...
- The console separator bars now get converted to something printable in Unicode for the log.
- Fixed: Only the last line of multi-line log output received Unicode treatment.
- Add the game log to the crash report. I don't know why I didn't think to do this sooner.
  Since we're already sending everything to a rich edit control hidden in the background,
  we can just grab its contents for the report.
- Use code page 1252 when previewing text files in the crash dialog.
- Everything on the command line before the first switch with an unrecognized switch is
  now added to -file. This was previously restricted to only .wad, .zip, .pk3, and .txt.
- You can now pass -file/-deh/-bex more than once on the command line, and they will all
  have effect.
- Changed DArgs to use a TArray of FStrings instead of doing its own string vector management
  in preparation for doing GatherFiles the "right" way.
- Fixed: DrawHudText() needs to verify that the character glyph is valid before accessing
  its fields.
- V_GetFont() needs to check the font header.
- Added BMF (ByteMap Font) support. This was complicated somewhat by the fact that BMF can
  specify a character advance separately from the glyph width. GetChar and GetCharWidth now
  return this value in place of the glyph width. (For non-BMF fonts, these should still
  return the same values as before.)
- Added A_CheckSightOrRange, with changes.
- Explicitly setting the charset for the EM_SETCHARFORMAT message seems to do what I want.
- Use the Unicode RichEdit control instead of the MBCS version, so as to enforce the use
  of code page 1252 for output text. This is noticeable, for example, with the FMOD copyright
  notice where the copyright symbol appears as ? (halfwidth katakana small U) with code page 932.
- Change the log window to use DejaVu Sans instead of Bitstream Vera Sans, because
  Silverex's X-Chat comes with the former now. Unfortunately, I can't seem to actually
  set the font when my system default code page is 932, since it wants to use some Kanji-
  compatible font instead. I wonder if I can still use the Unicode RichEdit control with
  Windows 9x. (Does it even matter? Windows 9x users make up less than 0.1% of all visitors
  to zdoom.org these days.)
- Added -nostartup switch to disable the more graphical startup screens of Heretic, Hexen,
  and Strife.
- Pretty sure the minimum FMOD version is 4.22.
- added an option to disable player translations in single player games.
- added a file 'fmod_version.txt' so that the source always comes with the information which FMod version to use.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@743 b0f79afe-0144-0410-b225-9a4edf0717df
2010-03-04 10:16:08 +00:00
Christoph Oelckers
7e63398eb1 Update to ZDoom r2169:
- added 2 DECORATE keywords from Skulltag as dummies.
- fixed some Chex Quest cheat codes.
- added a lock parameter to Door_Animated.
- fixed: The monster pack's Afrit no longer worked.
- Added Boom's stairbuilding fix when one step couldn't be built due to an active thinker in the sector.
  This is compatibility optioned with COMPAT_STAIRINDEX. Also added a compatibility setting for 
  Eternal Doom MAP25 which relies on Doom's original broken behavior.
- added a few sanity checks for duplicate actor names in DECORATE. ZDoom will now print more warnings
  and all crash cases should be properly handled but since this is still an error this will not work
  properly in all circumstances. For example, if you have a duplicate name all classes that inherit
  from the original definition will not survive a savegame if they reference a state belonging to that
  class at the point of saving.
- Print 'tried to register class more than once' in red to highlight it.
- fixed: actors may not replace themselves.
- Added checks for open and closed scripts sharing the same number to ensure that
  FBehavior::FindScript() will always return the closed version. See Hexen MAP30 and MAP33.
- fixed: DefHexenBindings still referred to some of Heretic's items that once were merged with the Hexen variants.
- Fixed: Voodoo dolls must not check reactiontime in P_SlideMove.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@742 b0f79afe-0144-0410-b225-9a4edf0717df
2010-02-19 08:14:40 +00:00
Christoph Oelckers
e96944df13 Update to ZDoom r 2145:
- fixed: Rocket trail particle positioning only worked when the rocket was moving.
- fixed: Sector_SetWind and Sector_SetCurrent were not usable in scripts called from a line.
- added Gez's A_Mushroom extension.
- added a minimum threshold for damage thrust to avoid micro-velocities being set for actors.
- fixed: Strife's Oracle is not a living thing and needs the NOBLOOD flag.
- fixed: Chex Quest's finale pic was wrong.
- fixed: Being resurrected by an Arch Vile did not restore flags5 and flags6 to the defaults.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@738 b0f79afe-0144-0410-b225-9a4edf0717df
2010-01-30 14:54:56 +00:00
Christoph Oelckers
a4647bf7ed - disabled sprite trimming for real on older cards now.
- fixed: P_SpawnPuff must set the puff's owner before doing any state jumps.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@723 b0f79afe-0144-0410-b225-9a4edf0717df
2010-01-24 09:51:11 +00:00
Christoph Oelckers
7346a1f5d0 - better error message.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@717 b0f79afe-0144-0410-b225-9a4edf0717df
2010-01-16 07:45:15 +00:00
Christoph Oelckers
3d55375a01 - fixed: The sound table could not be reallocated because the low level sound data referenced its contents by pointer.
Update to ZDoom r2113:

    * Added full stops to more Strife messages.
    * Change StrifePlayer's RunHealth to 15.
    * Fixed: DORWS04 should not make a sound when it switches off.
    * Fixed copy-paste fail for DoorCloseSmallWood.
    * I guess I can't completely trust Strife1.exe's switch list. Not everything that plays the glass break sound is actually defined with it.
    * Fixed: The MAPINFO keyword resetinventory only worked when traveling to a redirected map.
    * Fixed: Two Strife pickup messages were off by one character each.
    * Fixed: Macil2 and the Oracle need to be immune to SpectralLightningV2 as well as V1, since they are both created by the first-stage Sigil. AlienSpectre3 should have also been immune to them but was not. In addition, Macil1 was erroneously immune to V1, when he should not be immune to any spectral damage. (Though, since he's immortal, all that really amounts to is that he can enter his pain state.)
    * Fixed: Don't color the teleporter beacon's rebels in single player.
    * Fixed: I forgot to reimplement the number keys for Strife's dialogues when I redid the menus to work with controllers.
    * Split conversation initiation out of P_UseTraverse() and into a separate function. It no longer piggy-backs off of Hexen's puzzle item traversal but instead works like Strife, using P_AimLineAttack() to find something to talk to and includes some slight left and right "autoaim". I can think of a few consequences of this:
          o Using puzzle items on actors has been restored to its original range of 64.
          o Since talking now depends on P_AimLineAttack() instead of a line use traversal, you can probably set up situations where you can talk to somebody that you couldn't talk to before because some special line was in the way.
          o You don't need to stick a guard flush against the wall to block players from using a switch behind them, because now the autoaim will get the player.
    * Corrected several Strife switches that had the wrong sounds.
    * Fixed: Action Doom 2 and Harmony IWADs were missing the GI_MAPxx flag.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@716 b0f79afe-0144-0410-b225-9a4edf0717df
2010-01-16 07:38:12 +00:00
Christoph Oelckers
4df6f92af2 - Fixed a design flaw in the thinker system:
Having every single actor default to the highest available statnum means that 
  nothing can be placed in a slot where it is guaranteed to be run after all actors 
  have ticked. But this is required for any thinker that moves an actor 
  (i.e. AActorMover and DSectorEffect.) With DSectorEffect it just went unnoticed 
  because they were added at the end of the list so almost nothing they moved was
  behind them in a thinker list. However, when an actor was spawned on a moving 
  floor it did not move smoothly. The default statnum is now 100 so that there's 
  sufficient slots above where such thinkers can be placed.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@691 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-30 19:02:20 +00:00
Christoph Oelckers
7c30ee567f Update to ZDoom r2059:
- fixed: Movement performed by actor movers was not interpolated because
  it happened outside the moved actor's Tick function. This got particularly
  obvious with moving skybox viewpoints (See Daedalus's MAP21 intro for a good
  example.)


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@689 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-30 12:24:00 +00:00
Christoph Oelckers
7d78ef6a40 - crash fix for real this time.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@676 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-26 07:29:59 +00:00
Christoph Oelckers
c72e4acc23 - ZDoom r2050 MF_CORPSE fix.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@675 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-25 23:32:40 +00:00
Christoph Oelckers
e88a3fc937 - stuff I forgot last commit.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@673 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-25 16:12:57 +00:00
Christoph Oelckers
7d5c48606b Update to ZDoom r2047:
- Fixed: Decals could spread to walls which had a decal-less texture or
  were flagged not to have decals.
- Fixed: DBaseDecal/DImpactDecal::CloneSelf never checked the return value
  from their StickToWall call and left unplaced decals behind if that happened.
- Reintroduced Doom.exe's player_t::usedown variable so that respawning a
  player does not immediately activate switches. oldbuttons was not usable
  for this. This also required that CopyPlayer preserves this info.
- Fixed: When restarting the music there was a NULL pointer check missing
  so it crashed when the game was started wi
- Fixed: If the Use key is used to respawn the player it must be cleared
  so that it doesn't trigger any subsequent actions after respawning.
- Fixed: Resurrecting a monster did not restore flags5 and flags6.
- Fixed: Projectiles which killed a non-monster were unable to determine
  what precisely they hit because MF_CORPSE is only valid for monsters.
  A new flag, MF6_KILLED that gets set for all objects that die, was added
  for this case.
- Added a generic A_Weave function that exposes all possible options of
  A_BishopMissileWeave and A_CStaffMissileSlither. These 2 functions are
  no longer needed from DECORATE and therefore deprecated.
- The options menu no longer scales up so quickly, so it can fit wider text
  onscreen. In addition, it now uses the whole height available to it. Also,
  at lower resolutions, items on the compatibility options menu now cut off
  the beginning of the option label rather than the option setting, making
  this menu useable where previously it was not.
- Added a channel parameter to the sector overload of SN_StopSequence() so
  it can be properly paired with calls to SN_StartSequence().
- Fixed: P_CheckPlayerSprites() ignored the MF4_NOSKIN flag.  It now also sets
  the X scale, so switching skins while morphed does not produce weird
  stretching upon unmorphing.
- Fixed: Calling S_ChangeMusic() with the same song but a different looping
  flag now restarts the song so that the new looping setting can be applied.
  (This was easier than modifying every music handler to support modifying
  loop changes on the fly, which seems like overkill.)
- Fixed: savepatchsize was declared incorrectly in d_dehacked.cpp:DoInclude().
- Changed AFastProjectile::Effect() so that it sets the spawned trail to face
  same direction as the projectile.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@672 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-25 12:10:12 +00:00
Christoph Oelckers
8653592339 Update to ZDoom r2037:
- fixed: The UDMF blockfloaters flag was misnamed. Changed to match the spec.
- made the initial weave index for A_BishopMissileWeave and A_CStaffMissileSlither
  a configurable actor property.
- added a menu item for snd_channels.
- Extended MF3_SKYEXPLODE to apply to horizon walls as well.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@671 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-24 23:34:10 +00:00
Christoph Oelckers
bb432d916c - fixed sprite sorting in GL renderer. It was converting a float to integer
in the compare function without properly taking care of values <1 which 
  got truncated to 0.

- Update to ZDoom r2031:

- added all known maps requiring inverted sprite sorting to compatibility.txt.
- added compatibility option to invert sprite sorting. Apparently Doom.exe
  originally sorted them differently than most source port and on some maps
  which depends on this it doesn't look right (e.g. Strain MAP13)
- Fixed: Using Transfer_Heights with the SECF_UNDERWATER and
  SECF_FAKEFLOORONLY flags applied the water effect to the ceiling and not
  just the floor.
- Replaced sprite sorting with a stable sort. Performance at the start of
  nuts.wad seems the same.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@662 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-18 09:11:54 +00:00
Christoph Oelckers
f531ae17a9 Update to ZDoom r2027:
- Fixed: Morphed players tried endlessly to switch to a weapon they picked up.
- fixed: P_DamageMobj just set an ice corpse's velocity to 0 to make it shatter.
  But that's insufficient because it doesn't factor in any subsequent velocity
  change that happens between the damaging and the next call to A_FreezeDeathChunks.
- fixed: The TimeFreezer did not freeze other players' controls in a
  multiplayer game.
- fixed: DECORATE's 'gravity' property incorrectly messed around with the
  NOGRAVITY flag.
- fixed: Hitscan attacks didn't check the puff's replacement for damage types.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@661 b0f79afe-0144-0410-b225-9a4edf0717df
2009-12-17 14:16:00 +00:00
Christoph Oelckers
964d7d4c8a - Update to ZDoom r2002:
- Make the palette indexes used by FRemapTable subject to the global remap
  table, just as the images they translate are.
- Added MF4_ALLOWPARTICLES checks to blood spawning code.
- Fixed: EV_DoDonut, EV_DoElevator and EV_StartWaggle did not to any 0-tag
  checks.
- Fixed: Doom line type 44 (lower ceiling to 8 above floor) must halt
  movement if blocked which essentially means it acts like a Hexen-style
  crusher.
- Fixed: Not all places checking for player start spots did it correctly.
  The editor number for player start spot 5 is now stored in the game info
  so that there's only one place where this check needs to be done.
- Fixed: WIF_NOAUTOAIM only worked for projectiles.
- Added Windows 7 (aka Windows NT 6.1) and Server 2008 identification to
  I_DetectOS().
- Fixed: ArtiPork did not use all its sprite frames.
- Fixed: FWadCollection::AddFile() did not call FixPathSeperator(), so
  savegames would hold the full file path for wads that had been specified
  with backslash characters, because GetWadName() would not trim off the
  path.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@636 b0f79afe-0144-0410-b225-9a4edf0717df
2009-11-26 23:03:27 +00:00
Christoph Oelckers
16166a8697 - Update to ZDoom r1974:
- Modified the event-driven ticks to use the same code for calculating the
  time as the polled timer so that the timer does not start running until the
  first time it is used.
- Removed the srand() call from D_DoomMain(), because it started the game
  timer running prematurely, and we never call rand() anywhere. (Not to
  mention, even if we did use rand(), always seeding it with 0 is rather
  pointless.)
- Fixed: The framerate was not capped before starting a game.
- Removed the one embedded DeHackEd lump restriction.
- Fixed: nofreeaim in P_SpawnPlayerMissile() was broken.
- Fixed: MBF sky Y offsets were ignored. X offsets should also be applied to
  the sky cylinder, not the screen like Hexen scrolling skies.



git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@620 b0f79afe-0144-0410-b225-9a4edf0717df
2009-11-12 09:57:50 +00:00
Christoph Oelckers
99ad961647 - Update to ZDoom r1954:
- Fixed: Sprites and decals that are drawn with addition must fade to black.
- Make TranslateToStartSpot() set the new sector references for a polyobj's
  walls so that P_CheckSwitchRange() will work with them.
- Fixed: An unspecified save_dir will now save to the program directory on
  Windows. (Other operating systems already use the user's home directory
  instead.)
- Fixed: S_EvictAllChannels() must replace the channel's start time with its
  position when evicting sounds, because restarting the sound system causes
  the DSP clock to restart at 0, so start times that were recorded before
  the reset are no longer applicable after the reset.
- Fixed: S_StopChannel() always set the channel's actor to NULL, eliminating
  origin information when resetting the sound system.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@586 b0f79afe-0144-0410-b225-9a4edf0717df
2009-10-30 11:18:39 +00:00
Christoph Oelckers
0a8ac6a153 - added: DECORATE now allows definitions of dynamic light attachments per state.
These are fully inheritable by subclasses unlike lights defined in GLDEFS.
  The light itself still needs to defined the old way in GLDEFS though. It's only the 
  attachment that can now be done in DECORATE.

Update to ZDoom r1935:

- Removed the Actor uservar array and replaced it with user-defined variables.
  A_SetUserVar/SetUserVariable/GetUserVariable now take a variable name
  instead of an array index. A_SetUserArray/SetUserArray/GetUserArray
  have been added to access elements in user-defined arrays.
- Rewrote wide sky texture scaling again. This time, it should work for any
  size textures at any scale. I also tried doing sky scrolling on the sky
  cylinder, but that didn't look so good, so I left it in screen space.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@577 b0f79afe-0144-0410-b225-9a4edf0717df
2009-10-25 15:31:09 +00:00
Christoph Oelckers
e530a50a29 Update to ZDoom r1927:
- Fixed: 3DMidtex checks were treating the Null texture as a valid texture.
- Fixed: The rail sound's position was not clamped to the actual range between
  the trail's start and end point.
- Fixed: Explosions no longer caused splashes.
- Fixed: Copying translations to lower decals had the shade color check wrong.
- Fixed: Waggling floors did not moved attached geometry.
- Cleaned up p_floor.cpp so that related parts of the code are grouped together.
- fixed: The translation addition broke parsing of palette index based translations.



git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@554 b0f79afe-0144-0410-b225-9a4edf0717df
2009-10-17 16:33:44 +00:00
Christoph Oelckers
daf0e06890 Update to ZDoom r1921:
- added 'defaultterrain' option to terrain parser for mods that want to have
  a different default terrain than a generic solid surface.
- added format char processing to A_Print(Bold) and all printable messages
  that can be defined in DECORATE.
- Fixed: The railgun code ignored MF3_ALWAYSPUFF.
- added desaturated translations.
- added optional state parameters to A_ReFire and A_GunFlash and A_CountdownArg.
- added ACS CheckActorClass function
- fixed: When a blasted actor collided with another one this other actor's
  DONTBLAST flag was not checked.
- added a global DamageFactor actor property. All damage this actor takes is multiplied
  by this factor in addition to damage type specific damage factors.
- added better earthquake functions for ACS and DECORATE.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@549 b0f79afe-0144-0410-b225-9a4edf0717df
2009-10-16 16:17:24 +00:00
Christoph Oelckers
33a4058533 Update to ZDoom r1905:
- Added Gez's seeker missile submission.
- Added Gez's thing activation submission.
- added a NULL pointer check to fog spawning in unmorphing code.
- fixed: frozen corpses need to be treated as solid by z-movement code.
- fixed: AAmbientSound::Serialize was adjusting its timer value for savegames
  even when it was set to a 'don't check' value.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@539 b0f79afe-0144-0410-b225-9a4edf0717df
2009-10-10 11:37:36 +00:00
Christoph Oelckers
cbeab447fd - Added a PainThreshold actor property.
- fixed: Teleport_EndGame did not set the end sequence name properly.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@537 b0f79afe-0144-0410-b225-9a4edf0717df
2009-10-08 20:27:18 +00:00
Christoph Oelckers
947148c6d7 - Update to ZDoom r1991:
- Fixed some GCC warnings.
- fixed: The BossCube could be blocked by floors and ceiling resulting
  in incorrect movement. I changed it so that A_BrainSpit now sets the
  MF5_NOINTERACTION flag for anything it spawns that has the MF_NOCLIP
  flag. For travelling cubes active collision detection makes no sense
  and only causes problems. This should also make the boss brain
  work in the other games which previously were excluded by a game mode
  check in the movement code.
- fixed: ACS's GetUserVariable did not work for the script activator.
- fixed: Moving floors could be blocked by 2 actors without MF2_PASSMOBJ
  overlapping each other (common mapping bug, check Herian 2 MAP30.)



git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@507 b0f79afe-0144-0410-b225-9a4edf0717df
2009-10-01 21:04:23 +00:00
Christoph Oelckers
bfc2102ac7 - Update to ZDoom r1887.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@499 b0f79afe-0144-0410-b225-9a4edf0717df
2009-09-28 22:53:23 +00:00
Christoph Oelckers
fea02ab250 - update to lazest ZDoom code.
- fixed translucency calculations for screen blends.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@495 b0f79afe-0144-0410-b225-9a4edf0717df
2009-09-26 23:38:33 +00:00
Christoph Oelckers
4e442c49d2 - Update to ZDoom r1859 including adjustments for all the changes that were only made for the software renderer.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@467 b0f79afe-0144-0410-b225-9a4edf0717df
2009-09-20 20:51:32 +00:00
Christoph Oelckers
83e866b866 - Update to ZDoom r1855.
git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@463 b0f79afe-0144-0410-b225-9a4edf0717df
2009-09-17 21:51:33 +00:00
Christoph Oelckers
f0d3820dd5 Update to ZDoom r1848:
- Fixed: The deprecated flag handler for the old bounce flags needs to clear
  BOUNCE_MBF and BOUNCE_UseSeeSound, too, when clearing one of these flags.
- Fixed: When adding the AVOIDMELEE code the code was accidentally changed so that
  friendly monsters could no longer acquire targets by themselves.
- Renamed WIF_BOT_MELEE to WIF_MELEEWEAPON because it's no longer a bot only flag.
- Added MBF's monster_backing feature as an actor flag: AVOIDMELEE.
- Gez's misc. bugs patch:
* Moves the dog sound out of the Doom-specific sounds in SNDINFO to address this,
* Renames the dog actor to MBFHelperDog to prevent name conflicts,
* Adds APROP_Score to CheckActorProperty,
* Completes the randomspawner update (the reason I moved the recursion counter out of 
  special1 was that I found some projectiles had this set to them, for example in 
  A_LichAttack, but I forgot to add transfer for them),
* Provides centered sprites for beta plasma balls if this is deemed deserving correction.
- Added some pieces of MBF's friendly AI.
- Cleaned up A_LookEx code and merged most of it with the base functions.
  The major difference was a common piece of code that was repeated 5 times
  throughout the code so I moved it into a subfunction.
- Changed P_BlockmapSearch to pass a user parameter to its callback so that
  A_LookEx does not need to store its info inside the actor itself.
- fixed: The linetarget CCMD duplicated all of the info CCMD. 
- fixed: PrintActorInfo crashed due to some incomplete implementation.

git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@458 b0f79afe-0144-0410-b225-9a4edf0717df
2009-09-16 21:17:17 +00:00
Christoph Oelckers
57ec0763dd - Update to ZDoom r1837:
- added PinkSilver's A_Respawn enhancement patch.
- added RandomSpawner update from Gez's experimental build.
- added thing activation types for BUMPSPECIAL and USESPECIAL. Also added
  a new ClearSpecial flag to the activation type.
- added MBF's code for dogs jumping down, controlled by the MF6_JUMPDOWN
  flag.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@457 b0f79afe-0144-0410-b225-9a4edf0717df
2009-09-15 22:09:18 +00:00