- 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
- 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
- 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
- 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
- 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
- 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
* 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
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
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
- 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
- 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
- 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
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
- 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
- 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
- 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
- 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
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
- 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
- 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
- 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
- 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
- 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
- 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