issues that caused its inclusion. Is an optimized GCC build any faster
for being able to use strict aliasing rules? I dunno. It's still slower
than a VC++ build.
I did run into two cases where TAutoSegIterator caused intractable problems
with breaking strict aliasing rules, so I removed the templating from it,
and the caller is now responsible for casting the probe value from void *.
- Removed #include "autosegs.h" from several files that did not need it
(in particular, dobject.h when not compiling with VC++).
SVN r1743 (trunk)
velocity, and now it's known as such. The actor variables momx/momy/momz
are now known as velx/vely/velz, and the ACS functions GetActorMomX/Y/Z
are now known as GetActorVelX/Y/Z. For compatibility, momx/momy/momz will
continue to work as aliases from DECORATE. The ACS functions, however,
require you to use the new name, since they never saw an official release
yet.
SVN r1689 (trunk)
* BUMPSPECIAL flag: actors with this flag will run their special if collided on by a player
* WEAPON.NOAUTOAIM flag, though it is restricted to attacks that spawn a missile (it will not affect autoaim settings for a hitscan or railgun, and that's deliberate)
* A_FireSTGrenade codepointer, extended to be parameterizable
* The grenade (as the default actor for A_FireSTGrenade)
* Protective armors à la RedArmor: they work with a DamageFactor; for example to recreate the RedArmor from Skulltag, copy its code from skulltag.pk3 but remove the "native" keyword and add DamageFactor "Fire" 0.1 to its properties.
SVN r1661 (trunk)
regardless of pain chance.
- Changed screenblocks CVAR to be settable per game.
- Added SpawnSpotForced and SpawnSpotFacingForced ACS functions.
- Added pushfactor actor property.
SVN r1638 (trunk)
- 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)
- Removed #pragma warnings from cmdlib.h and fixed the places where they were
still triggered.
These #pragmas were responsible for >90% of the GCC warnings that were not
listed in VC++.
- Fixed one bug in the process: DSeqNode::m_Atten was never adjusted when the
parameter handling of the sound functions for attenuation was changed.
Changed m_Atten to a float and fixed the SNDSEQ parser to set proper values.
Also added the option to specify attenuation with direct values in addition
to the predefined names.
SVN r1583 (trunk)
- Fixed: player.crouchsprite had no proper means of unsetting the crouch
sprite which is needed by the ChexPlayer.
- Fixed: A_ChangeFlags must unlink the actor from the world before changing
the NOBLOCKMAP and NOSECTOR flags.
SVN r1514 (trunk)
- Fixed: Gravity application was not correct. For actors with no vertical
momentum the initial pull is supposed to be twice as strong as when
vertical movement already takes place.
- added invquery CCMD like in Strife. Also removed all underscores from the
tag strings so that they can be printed properly.
- Fixed: Skill baby was missing 'autousehealth' for all games.
- Added a new CVAR: sv_disableautohealth
- Autouse of health items is no longer hardwired to the default item classes.
There's a new property HealthPickup.Autouse. 0 means no autouse, 1 a small
Raven health item, 2 a large Raven health item and 3 a Strife item.
SVN r1452 (trunk)
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)
the time freezer and make them behave better.
- Fixed: When sounds are paused not all newly started sounds should actually
be played.
- Fixed: SBARINFO had no means to check if a weapon uses any ammo at all and
as a result the inventory icon was misplaced if a no-ammo weapon was selected.
SVN r1343 (trunk)
- Added a static error counter to FScriptPosition class.
- Changed initialization of actor class type properties: fuglyname is gone as
is the postprocessing in FinishThingdef. Instead an empty placeholder class
is now created when a class is first referenced and this placeholder is later
filled in.
- Added option to replace backslash with '^' in state frame definitions because
the backslash is just causing too many problems because it's also an escape
character.
SVN r1334 (trunk)
which caused roundoff errors that made it less than 1/3 effective.
- Added support for "RRGGBB" strings to V_GetColor.
- Fixed: Desaturation maps for the TEXTURES lump were calculated incorrectly.
- Changed GetSpriteIndex to cache the last used sprite name so that the code
using this function doesn't have to do it itself.
- Moved some more code for the state parser into p_states.cpp.
- Fixed: TDeletingArray should not try to delete NULL pointers.
SVN r1312 (trunk)
failed to start the demo.
- Added a MF5_BRIGHT flag to always render an actor fullbright.
- Fixed: Calling Door_Animated with a non-zero tag created a new thinker
for each two-sided line of the sector.
- Added Karate Chris's submission for making 'spray' a cheat.
- Added CO2's default parameter additions for several Doom code pointers
submission.
- Added CO2's A_RemoveMaster/A_RemoveChildren submission.
- Added Blzut3's SBARINFO replacement for the Doom statusbar.
- Fixed: SBarInfo still displayed the wrong bar for height 0
- Added A_KillSiblings and A_DamageSiblings code pointers.
- added MaxAbsorb and MaxFullAbsorb properties for Armor.
SVN r1304 (trunk)
* This may or may not be a problem, but GCC warned that FStateDefinitions::
AddStateDefines() does not initialize def.FStateDefine::DefineFlags, so
I fixed that.
SVN r1262 (trunk)
- Fixed: S_ChannelEnded didn't check for a NULL SfxInfo.
- Fixed: R_InitTables did a typecast to angle_t instead of fixed_t.
- Fixed: PowerProtection and PowerDamage applied their defaults incorrectly.
- Fixed: The damage type property didn't properly read its factor.
SVN r1257 (trunk)
against decorations without breaking anything newer:
Added a new 'projectilepassheight' property that defines an alternative height
that is only used when checking a projectile's movement against this actor.
If the value is positive it is used regardless of other settings, if it is
negative, its absolute will be used if a new compatibility option is enabled
and if it is 0 the normal height will be used.
SVN r1253 (trunk)
the NextState parameter is. The code did some rather unsafe checks with it
to determine its type.
- moved all state related code into a new file: p_states.cpp.
- merged all FindState functions. All the different variations are now inlined
and call the same function to do the real work.
SVN r1243 (trunk)
some changes to the MAPINFO parser which tried to access the texture manager
to check if the level name patches exist. That check had to be moved to
where the intermission screen is set up.
- Fixed: 'bloodcolor' ignored the first parameter value when given a list
of integers.
Please note that this creates an incompatibility between old and new
versions so if you want to create something that works with both 2.2.0
and current versions better use the string format version for the color
parameter!
- Rewrote the DECORATE property parser so that the parser is completely
separated from the property handlers. This should allow reuse of all
the handler code for a new format if Doomscript requires one.
- Fixed: PClass::InitializeActorInfo copied too many bytes if a subclass's
defaults were larger than the parent's.
- Moved A_ChangeFlag to thingdef_codeptr.cpp.
- Moved translation related code from thingdef_properties.cpp to r_translate.cpp
and rewrote the translation parser to use FScanner instead of strtol.
- replaced DECORATE's 'alpha default' by 'defaultalpha' for consistency.
Since this was never used outside zdoom.pk3 it's not critical.
- Removed support for game specific pickup messages because the only thing
this was ever used for - Raven's invulnerability item - has already been
split up into a Heretic and Hexen version.
SVN r1240 (trunk)
when explicitly giving them.
- Changed 'give weapon' cheat so that in single player it only gives weapons
belonging to the current game or are placed in a weapon slot to avoid
giving the Chex Quest weapons in Doom and vice versa.
- Fixed: The texture manager must be the first thing to be initialized
because MAPINFO and DECORATE both can reference textures and letting them
create their own textures is not safe.
SVN r1230 (trunk)
so that all files are included by a central one instead of compiling
each one separately. This speeds up the compilation process by 25%
when doing a complete rebuild in Visual C.
- Cleaned up more header dependencies.
SVN r1226 (trunk)
disabled for them
- Fixed: Chex Quest doesn't have a HELP2 screen so it must not be used
in the gameinfo.
- Fixed: Default blood color is no longer red so P_DrawSplash2 must
get it from the gameinfo instead.
- Added new French language texts by DoomKn1ght_.
SVN r1186 (trunk)
- Added functions to FActorInfo that can set the damage factors and
pain chances to reduce the chance of new errors when working with
these features.
- Fixed: The handling of the deprecated FIRERESIST flag didn't work.
There were 3 problems:
* Actor defaults have no class information so HandleDeprecatedFlags
needs to be passed a pointer to the ActorInfo.
* The DamageFactors list is only created when needed so the code needs to
check if it already exists.
* damage factors are stored as fixed_t but this set a float.
- Added a traditional Strife color set for the automap.
SVN r1183 (trunk)
the texture manager even if it is from Raven's IWADs.
- Removed code related to internal ActorInfo definitions from dobjtype.cpp.
- removed unneeded file dehackedactions.h
SVN r1162 (trunk)
internal actor classes which no longer exist.
- Changed the state structure so that the Tics value doesn't need to be hacked
into misc1 with SF_BIGTIC anymore.
- Changed sprite processing so that sprite names are converted to indices
during parsing so that an additional postprocessing step is no longer needed.
- Fixed: Sprite names in DECORATE were case sensitive.
- Exported AActor's defaults to DECORATE and removed all code for the
internal property parser which is no longer needed.
SVN r1146 (trunk)
- Made the speed a parameter to A_RaiseMobj and A_SinkMobj and deleted
GetRaiseSpeed and GetSinkSpeed.
- Added some remaining DECORATE conversions for Hexen by Karate Chris.
SVN r1144 (trunk)