Commit graph

3500 commits

Author SHA1 Message Date
Christoph Oelckers
c5cba70fc8 - removed obsolete quit message #defines. 2013-08-11 13:36:48 +02:00
Christoph Oelckers
c7a46492eb - fixed bad index variable in R_RenderFakeWallRange. 2013-08-11 12:41:14 +02:00
Christoph Oelckers
3bcc4078b1 Merge branch 'maint' 2013-08-10 10:19:20 +02:00
Christoph Oelckers
1c889dc9fa - let APowerRegeneration use the Strength property to define the amount of regeneration it gives. 2013-08-10 09:51:48 +02:00
Christoph Oelckers
c8f0df44f2 Merge branch 'maint'
Conflicts:
	src/am_map.cpp
2013-08-10 09:41:50 +02:00
Christoph Oelckers
25ec3fb8fe - added MF6_RELATIVETOFLOOR flag. 2013-08-10 09:32:55 +02:00
Christoph Oelckers
211d293002 - added MF6_NOTONAUTOMAP flag to exclude things from being shown with the scanner powerup. The IDDT cheat will not be affected by this. 2013-08-10 08:53:37 +02:00
Christoph Oelckers
55f637c906 - fixed: When creating colormaps for 3D floors the model sector's fade value must be used when defining a fog volume. 2013-08-09 23:40:34 +02:00
Christoph Oelckers
9c12c03684 Merge branch 'maint' 2013-08-09 20:36:08 +02:00
Christoph Oelckers
6a07118ea4 - added ML_BLOCKHITSCAN line flag. 2013-08-09 20:35:10 +02:00
Christoph Oelckers
a78ad3188b - added MF5_NOFORWARDFALL flag to prevent attacks from making its victim fall forward randomly. 2013-08-09 20:20:23 +02:00
Christoph Oelckers
0a258f95ea - added gravity property to UDMF things. Positive values are multiplied with the class's gravity property, negative values are used as their absolute. 2013-08-09 16:25:16 +02:00
Christoph Oelckers
21bce3b0c4 Merge branch 'maint' 2013-08-09 12:51:26 +02:00
Christoph Oelckers
5d0369d4ed - Ability to set A_VileAttack's initial attack's damage type - by BlueShadow. 2013-08-09 12:18:58 +02:00
Christoph Oelckers
b187451a71 - added APROP_ViewHeight and APROP_AttackZOffset submission by TheFortuneTeller. 2013-08-09 12:06:51 +02:00
Christoph Oelckers
34b71baad1 - added Player.Aircapacity property which is used as a multiplier for the level's air supply. 2013-08-09 11:57:14 +02:00
Christoph Oelckers
a0c214104d Merge branch 'maint' of https://github.com/rheit/zdoom into maint 2013-08-09 11:47:33 +02:00
Christoph Oelckers
e6c880c93a - fixed: The sector's 'hidden' UDMF property did not properly clear the corresponding flag if the value was 'false'.
- added UDMF 'waterzone' property for sectors.
2013-08-09 11:47:25 +02:00
Christoph Oelckers
151d54aaf5 - added 3 more modes for am_cheat: 4-6 are the same as 1-3 with the exception that lines not drawn on the regular automap won't be shown. 2013-08-09 11:32:46 +02:00
Christoph Oelckers
9f35788164 - added custom automap overlay colors.
- extended am_drawmapback so that map backgrounds can only be drawn if used with custom colorsets and Raven's, assuming that these sets were specifically made for the accompanying backgrounds.
2013-08-09 11:00:24 +02:00
Braden Obrzut
5b228ae5a7 Merge branch 'maint' 2013-08-09 00:25:51 -04:00
Braden Obrzut
7e76fb0078 - Fixed: Disable ifitem jumping if a link isn't specified since an invalid value can cause a crash. 2013-08-09 00:25:29 -04:00
Braden Obrzut
bb494292c6 - Fixed P_CheckMapData allowed non-map lump names to pass resulting in a crash when actually trying to load the map. 2013-08-08 23:47:58 -04:00
Christoph Oelckers
8f45e906d4 Merge branch 'automap_colors' 2013-08-02 18:16:05 +02:00
Christoph Oelckers
aa72857c72 - implemented automap color parser for MAPINFO (code not tested yet!) 2013-08-02 16:56:42 +02:00
alexey.lysiuk
5c05f1f3cd - Ignored dehacked.exe from *.zip files to enable loading of *.deh files. 2013-08-02 10:17:06 +03:00
Christoph Oelckers
845020c617 - ovthingcolors were not properly set.
- added all the missing color CVARs for the overlays which previously duplicated use of one of the other CVARs.
2013-07-31 23:13:20 +02:00
Christoph Oelckers
d77673d681 - reorganization of automap color handling for easier maintenance
Mostly preparation to implement a per-mod automap option but also fixes a few minor issues with some colors that are not defined in the original game specific colorsets.
2013-07-31 22:59:35 +02:00
Edoardo Prezioso
0dc70f847c - Be more compatible with C++11 narrowing conversions system. 2013-07-31 12:27:54 +02:00
Edoardo Prezioso
8cab8f180b - Be clear about the safe 'memset/memcpy' operations on virtual classes.
Since I remember that 'memset/memcpy' is safe in this code, it should be okay to cast to the generic pointer all the 'virtual class' arguments before calling the above functions. Shuts up Clang warnings.
2013-07-31 12:23:31 +02:00
Christoph Oelckers
4eb6f74e36 Merge branch 'maint' 2013-07-30 16:53:00 +02:00
Christoph Oelckers
3480d40484 - fixed: AActor::Die may only randomize the death state's duration if it is positive. Otherwise -1 (infinite) gets clobbered. 2013-07-30 16:52:36 +02:00
Christoph Oelckers
9c08a029b1 Merge branch 'maint' 2013-07-30 15:14:10 +02:00
Christoph Oelckers
a13af5cc65 Merge branch 'maint' of https://github.com/edward-san/zdoom into maint 2013-07-30 15:08:44 +02:00
Edoardo Prezioso
7e21eafc2f - Fixed mismatched alloc/dealloc in FTextureManager.
The 'TextureFrames', which is attached to all the 'mAnimatedDoors', were deleted with one-pointer 'delete' and they were allocated with 'new[]'.
2013-07-30 13:36:56 +02:00
Christoph Oelckers
e01c4e0201 Merge branch 'maint' 2013-07-30 13:18:08 +02:00
Christoph Oelckers
16456bec56 - added separate colors for the various types of 2-sided walls for the overlay automap. They previously all mapped to the same CVAR. 2013-07-30 13:17:20 +02:00
Edoardo Prezioso
4ce0574b3f - Use a more conformant C++ preprocessor macro identifier for Unix systems.
The 'unix' identifier isn't defined when '-std' is passed to the compiler (tested with gcc and clang), so use '__unix__' which is well enough documented.
2013-07-30 11:46:14 +02:00
Christoph Oelckers
81334809c4 - changed autoloading of *.deh lumps: it is now controlled by a CVAR with 3 options: never load *.deh lumps, load all of them or only load the last one. *.deh loading is disabled by default. 2013-07-30 09:32:33 +02:00
Christoph Oelckers
27de9f45af - commented out autoloading of .DEH lumps for maint branch. 2013-07-30 09:25:07 +02:00
Christoph Oelckers
805de60aa4 - fixed: ChangeSpy didn't check if a player's camera's player pointer was valid before using it to get an index into the players table. 2013-07-30 09:16:27 +02:00
Braden Obrzut
bc71d4537e Merge branch 'maint' 2013-07-29 18:55:29 -04:00
Braden Obrzut
eb5d57be06 - Fixed: crash when closing ZDoom in the save menu and a memory leak. 2013-07-29 18:35:19 -04:00
Christoph Oelckers
c7d167d278 - used TEXTCOLOR_ #defines for colorizing CCMD list, remove use of strbin1. 2013-07-28 17:15:47 +02:00
Christoph Oelckers
6f4b09cc77 Merge branch 'master' of https://github.com/slatenails/zdoom 2013-07-28 16:42:36 +02:00
Christoph Oelckers
c253d40fbb - externalize labels for automap statistics display to the string table. 2013-07-28 16:18:57 +02:00
slatenails
48a29b769f Results for console tab-completion are now color-coded. CCMDs appear blue, CVars green and aliases red. 2013-07-28 14:58:30 +03:00
Christoph Oelckers
775ecdeebb - fall back to drawing triangles on automap when encountering actors with non-displayable sprites 2013-07-28 10:14:46 +02:00
Christoph Oelckers
992ba0bbf4 - added handling of MF3_FOILINVUL for A_BFGSpray. This function needs special treatment because the shooting player is considered the inflictor of the spray damage. 2013-07-26 00:52:12 +02:00
Christoph Oelckers
7006df8d96 - fixed sprite rotation in automap submission 2013-07-25 17:19:36 +02:00
Christoph Oelckers
9ed829c3af Merge branch 'map_sprites' of https://github.com/alexey-lysiuk/gzdoom 2013-07-25 16:39:53 +02:00
alexey.lysiuk
76e1e87456 + things as sprites on map, controlled with am_showthingsprites CVAR
drawing of sprites instead of things/players markers with am_cheat >= 2
possible am_showthingsprites values are:
0 - sprites disabled
1 - static front sprites
2 - animated front sprites
3 - animated sprites with actual things angles
2013-07-25 17:01:07 +03:00
Christoph Oelckers
6dd956c0dc - fixed: Speaker names in dialogues were not able to use the string table. 2013-07-25 15:58:47 +02:00
Christoph Oelckers
cbc0b70e7c - TransferStencilColor A_SpawnItemEx patch / by Ryan Cordell. 2013-07-24 20:15:17 +02:00
Christoph Oelckers
af470b3d56 - fixed: The global variables holding the view's fixed colormap must be preserved when rendering to a camera texture. 2013-07-23 12:32:33 +02:00
Christoph Oelckers
181181a865 - removed player_t destructor call in CopyPlayer. 2013-07-23 12:31:44 +02:00
Christoph Oelckers
f3d8790995 Merge branch 'maint' of https://github.com/rheit/zdoom into maint 2013-07-22 22:54:45 +02:00
Christoph Oelckers
cb3275cb40 - added NORANDOMPUFFZ flag for LineAttack - by Blue Shadow. 2013-07-22 22:47:13 +02:00
Christoph Oelckers
83bd8ba1b8 - added NeuralStunner's player.userange submission, but changed it to use the value directly from the PlayerPawn data.
- bumped savegame version for addition of APlayerPawn::userange.
2013-07-22 22:37:50 +02:00
Christoph Oelckers
db562142f0 - Fix c++11 literal suffix warnings / patch by Edward-san. 2013-07-22 22:25:44 +02:00
Braden Obrzut
7723613293 - Fixed: ACS function pointer instructions were not updated when library tag size changed.
- Fixed: undefined sequence compiler warning.
2013-07-22 02:09:46 -04:00
Christoph Oelckers
a90b49dc72 - added string table replacement for A_Print, A_PrintBold and A_Log. 2013-07-14 14:33:45 +02:00
Christoph Oelckers
0c86650db0 - fixed: The savegame code for player restoration did some undefined things with the userinfo that only worked due to previous memory leaks. It must ensure that the userinfos get properly transferred and not implicitly rely on the copy assignment being used to copy the actual player data. 2013-07-14 14:22:49 +02:00
Christoph Oelckers
a59a886f94 - fixed: The SectorDamage 3D-floor code didn't account for Vavoom-style 3D floors where floor and ceiling plane of the control sector are inverted. 2013-07-14 13:24:00 +02:00
Christoph Oelckers
3e8e587ac7 - fixed another leak with userinfos: Since they are no longer POD they may not be memset to 0 in the player_t constructor. 2013-07-14 12:37:25 +02:00
Christoph Oelckers
2d2498d1e2 - fixed: userinfo_t needs a destructor to delete its CVARs when it is destroyed. 2013-07-14 10:58:53 +02:00
Christoph Oelckers
e9be49f37d - fixed: R_DeinitPlanes did not free all visplanes because it called R_ClearPlanes with 'fullclear' set to false.
- removed some redundancy from R_ClearPlanes.
2013-07-14 09:47:39 +02:00
Christoph Oelckers
10dd75f902 - externalized "New save game" line for save screen. 2013-07-14 09:31:49 +02:00
Braden Obrzut
9dd3c4b2d5 - When erroring due to the lack of iwads, print instructions more relevent to the user's platform. 2013-07-05 00:45:45 -04:00
Braden Obrzut
8afece1b8a Merge branch 'maint' 2013-07-03 01:58:51 -04:00
Braden Obrzut
80a3e4f902 - Fixed: Cocoa IWAD picker needed to be updated to handle git version strings. 2013-07-03 01:58:13 -04:00
Randy Heit
5b17c0779b Version 2.7.1 2013-07-02 15:46:31 -05:00
Christoph Oelckers
44dd79953b Merge branch 'master' of https://github.com/rheit/zdoom 2013-07-02 22:02:20 +02:00
Christoph Oelckers
f1dff6c9d3 - fixed: The new XDeath code forgot to move the assignment of the flags4 variable. Also renamed the variable to avoid conflicts. 2013-07-02 22:01:54 +02:00
Randy Heit
3d61365879 Merge branch 'maint' 2013-07-02 14:51:49 -05:00
Randy Heit
e845b292c2 - Always clear bEvilGrin after checking it in FMugShot::UpdateState(). If
it's not an appropriate time to show the grin when the flag is set, it
  shouldn't be saved until later.
2013-07-02 14:48:03 -05:00
Randy Heit
5af1e6f734 - Added a compatibility option to fix Super Sonic Doom's first bonus
stage leaving you frozen when you finished it.
2013-07-02 14:15:08 -05:00
Randy Heit
d9848a8e26 Merge branch 'maint' 2013-07-01 22:21:37 -05:00
Randy Heit
23e21cc85e - Fixed: S_IsChannelUsed() is declared as static, so it should be defined
as such, too.
2013-07-01 22:02:46 -05:00
Randy Heit
001ed91fd4 - Fixed: ACS's PlaySound should mask off the flag bits from the channel
before passing it to S_IsActorPlayingSomething().
2013-07-01 22:01:26 -05:00
Randy Heit
2717ed703d Shuffle FActionMap for better 64-bit alignment. 2013-07-01 21:51:12 -05:00
Randy Heit
e9425b356b - Fixed: Verbose user info strings were written with an extra backslash
character between the key and value.
2013-07-01 21:40:09 -05:00
Braden Obrzut
cc616a417d Merge branch 'maint' 2013-07-01 16:58:14 -04:00
Braden Obrzut
02ff428d54 - Allow generator expressions to be turned off during pk3 building with CMake.
- On Mac OS X, ensure assembly code is disabled by default (since it won't work).
2013-07-01 16:57:46 -04:00
Christoph Oelckers
7e6a5c1448 - added damage type specific extreme death and extreme crash states. Order of labels is 'Death.extreme.damagetype' ('XDeath.damagetype') and 'Crash.extreme.damagetype'.
- fixed: Damage of type 'extreme' did not get recorded as an extreme death for the mugshot code.
- changed: extreme deaths now only get recorded when an extreme death state was actually used, to ensure that the crash state being used is the correct one associated with the death state.
2013-07-01 11:02:35 +02:00
Christoph Oelckers
f501983d1b Merge branch 'maint' 2013-06-30 18:16:38 +02:00
Christoph Oelckers
310979e9e6 - fixed clang compile error "friend declaration specifying a default argument must be the only declaration". 2013-06-30 18:16:02 +02:00
Christoph Oelckers
f0feee3b4e Merge branch 'maint' 2013-06-26 01:03:19 +02:00
Christoph Oelckers
fb1734ba50 - fix previous commit and add compat option for Cheogh's blue key. 2013-06-26 00:57:26 +02:00
Christoph Oelckers
72e91786e2 - added SetThingZ compatibility option for fixing problems resulting from the changes to spawn position handling. 2013-06-26 00:57:10 +02:00
Randy Heit
fb965c50a1 Merge branch 'maint' 2013-06-24 20:59:12 -05:00
Randy Heit
a5f5d8adcb - Remove the first parameter from updaterevision, since it isn't needed with git. 2013-06-24 20:58:14 -05:00
Christoph Oelckers
4189092db8 - spycancel improvement by Edward-san. 2013-06-24 22:50:24 +02:00
Christoph Oelckers
94a3d92f93 Merge branch 'maint' 2013-06-24 16:49:51 +02:00
Christoph Oelckers
394f21f71e - fixed: Draining health from a victim must check for damage reduction before awarding the health to the player. This affected Heretic's gauntlets, A_Saw and A_CustomPunch.
- added a DONTDRAIN flag that prevents the above attacks from draining any health at all.
2013-06-24 16:42:43 +02:00
Christoph Oelckers
c4ad09fe90 - added new MAPINFO/gameinfo keys for adding entries to some string arrays, most notably the player classes and the F1 info pages. 2013-06-24 15:50:30 +02:00
Christoph Oelckers
9f253ccae3 - fixed: Application of inflictor's death damage type was done too late and missed a few spots where it needed.
- fixed: DamageTypeReceived was not serialized.
- fixed: The check for unhandled damage type was rendered ineffective by the old code handling the DeathType.
2013-06-24 15:40:17 +02:00
Christoph Oelckers
1976f28df9 - merge cheat fix from maint. 2013-06-24 14:32:55 +02:00
Christoph Oelckers
baa82c396c - disabled Heretic's 'joke' cheats and Chex's 'idmus' in 'allcheats' mode because their multiple occurence interfered with how the cheat parser works. 2013-06-24 14:25:48 +02:00
Randy Heit
7531191ffe Get fixed SAVESIG from maint. 2013-06-23 18:14:39 -05:00
Randy Heit
03d2b79bfd - Fixed: SAVEVERSTRINGIFY macros were wrong. 2013-06-23 18:14:29 -05:00
Christoph Oelckers
d1835b2db8 - DavidPH's patch for Linux compilation. 2013-06-23 17:38:51 -05:00
Christoph Oelckers
ef42955053 - added DavidPH's patch for compiling with FModEx 4.44.01. 2013-06-23 17:38:51 -05:00
Christoph Oelckers
054899ea53 - added Edward-san's patch for allowing 'clang' compiler to use the same 'gcc' cmake settings 2013-06-23 17:38:51 -05:00
Christoph Oelckers
099e365a23 - fixed typo in USDF spec.
- comment fixes taken from GZDoom.
- division by zero check in R_SetVisibility from GZDoom.
2013-06-23 17:38:51 -05:00
Christoph Oelckers
3a477f6903 - DavidPH's patch for Linux compilation. 2013-06-23 20:54:21 +02:00
Christoph Oelckers
4286bd68cd - added Edward-san's spycancel submission. 2013-06-23 20:04:06 +02:00
Christoph Oelckers
a6ba2ce8b9 - added DavidPH's patch for compiling with FModEx 4.44.01. 2013-06-23 18:47:39 +02:00
Christoph Oelckers
7d56311152 - added Ryan Cordell's A_CheckRange submission. 2013-06-23 18:45:17 +02:00
Christoph Oelckers
7c81c2f1ee - added Edward-san's patch for allowing 'clang' compiler to use the same 'gcc' cmake settings 2013-06-23 18:37:13 +02:00
Christoph Oelckers
aa5f223051 - added _mental_'s patch for loading .deh/.bex files if no Dehacked lump can be found. 2013-06-23 18:34:57 +02:00
Christoph Oelckers
50c5dc62aa - fixed typo in USDF spec.
- comment fixes taken from GZDoom.
- division by zero check in R_SetVisibility from GZDoom.
2013-06-23 10:28:12 +02:00
Randy Heit
54f06739d0 Set master banch up as 2.8pre and maint branch for 2.7.x 2013-06-22 22:44:48 -05:00
Randy Heit
eb3f243fc8 - Make a copy of the polyobject mirror number instead of relying on being able to read it from the initial linedef. 2013-06-22 22:40:17 -05:00
Randy Heit
98ac224e53 - Use gitinfo.h instead of svnrevision.h for versioning.
- Use functions in gitinfo.cpp to retrieve the strings from gitinfo.h so
  that changes to gitinfo.h only require recompiling one file instead of
  several.
2013-06-22 21:49:51 -05:00
Randy Heit
5916ce087b - Revert r4244. It seems to be working well enough like this, since there have been no complaints.
SVN r4341 (trunk)
2013-06-08 03:24:41 +00:00
Randy Heit
9510525fdf - Bump up to 2.7.0.
SVN r4339 (trunk)
2013-06-08 02:20:37 +00:00
Randy Heit
5b65b3ebdf - Bumped NETGAMEVERSION, which should have been done when I changed the order uservars were sent
during netgame initialization.

SVN r4338 (trunk)
2013-06-08 02:18:23 +00:00
Randy Heit
902f6647b6 - Added ACS function CheckFont.
SVN r4335 (trunk)
2013-06-06 20:48:57 +00:00
Randy Heit
bac66d5b0e - Moved the status bar Tick call after the players have been ticked by P_Ticker(), because
P_PlayerThink() is where the check for unspawned players happens. If the player attached to the
  status bar is one of them, it will crash while ticking.

SVN r4334 (trunk)
2013-06-06 20:34:39 +00:00
Randy Heit
b9e771576f - Fixed: The time freezer power should do nothing while predicting.
SVN r4333 (trunk)
2013-06-06 20:15:04 +00:00
Randy Heit
c6dd658aa8 - Fixed: Polyobjs that rotated faster than their distance would overshoot on their first tic and
continue spinning until the next time around because the check for moving too fast was only
  done after the polyobject had been rotated once.
- Reduced the potential for overflow when setting up the speed of a rotating polyobj.

SVN r4332 (trunk)
2013-06-06 20:08:56 +00:00
Randy Heit
e32e44209e - Added SpawnDecal ACS function:
int SpawnDecal(int tid, str decalname, int flags, fixed angle, int zoffset, int distance)
  Traces a line from tid's actor until hitting a wall, then creates a decal there. Returns the
  number of decals spawned.
  * tid = Which actor(s) to start the trace at.
  * decalname = Which decal to spawn.
  * flags =
    * SDF_ABSANGLE = Angle parameter is an absolute angle. Otherwise, it's relative to the origin actor's angle.
    * SDF_PERMANENT = Decal ignores cl_maxdecals. Otherwise, it will eventually disappear.
  * angle = Direction in which to search for a wall. Defaults to 0.0.
  * zoffset = Offset from the middle of the origin actor for the Z height of the decal. Defaults to 0.
  * distance = Maximum distance to search for a wall. Defaults to 64.

SVN r4330 (trunk)
2013-06-05 02:15:21 +00:00
Randy Heit
5a00f4b59a - Reduce ACS LineAttack's default range to the standard MISSILERANGE, because making it INT_MAX
seems pretty iffy.

SVN r4329 (trunk)
2013-06-04 02:54:57 +00:00
Randy Heit
e2be8b9e7e - When purging ACS strings, free the strings themselves as well as marking them as free.
- Fixed: ACSStringPool::InsertString()'s overflow check was far too low.
- Fixed: When ACSStringPool::InsertString() triggered a garbage collection, it ignored the
  newly freed space and expanded the array anyway.

SVN r4328 (trunk)
2013-06-04 02:49:07 +00:00
Randy Heit
5e7ee8f33e - Addded support for multi-line values in INI files, so you can't maliciously inject stray
newline characters into the config file using ACS's SetCVarString.

SVN r4326 (trunk)
2013-06-04 02:06:40 +00:00
Christoph Oelckers
c4b7335312 - fixed: UDMF's Doom namespace needs to retain Boom's sector special flags.
- fixed: UDMF's ZDoomTranslated namespace needs to set the DUMMYSWITCHES flag so that it remains compatible with Doom-format ZDoom maps.


SVN r4325 (trunk)
2013-06-03 07:14:42 +00:00
Randy Heit
44a9c75b6b - Added ACS function PlayActorSound. It's functionally equivalent to PlaySound, except instead
of taking an actual sound name as its second parameter, it selects the sound to play based on
  the actor playing the sound and the selector passed as the second parameter.

SVN r4323 (trunk)
2013-06-03 00:09:46 +00:00
Randy Heit
aa40801015 - Fixed: When garbage collecting ACS strings, the active values on the ACS stack also need
to be included in the mark phase.

SVN r4322 (trunk)
2013-06-02 23:58:29 +00:00
Randy Heit
45c1787203 - Fixed: Don't transform map variable string initializers into global string table entries if
they don't really exist in the source string table.

SVN r4321 (trunk)
2013-06-02 23:17:46 +00:00
Randy Heit
1b9c71b252 - Added S_ChangeSoundVolume() to change the volume of an already playing sound, accessible
through the new ACS function SoundVolume.

SVN r4318 (trunk)
2013-06-01 17:46:50 +00:00
Randy Heit
19eb09f9f7 - Added GetActorClass and GetWeapon functions to ACS.
SVN r4316 (trunk)
2013-06-01 17:17:15 +00:00
Randy Heit
e9702fc43d - Clean up excess code around a few calls to SingleActorFromTID(), since that function is already
designed specifically to handle the case where tid is 0.

SVN r4315 (trunk)
2013-06-01 17:13:15 +00:00
Randy Heit
037477a20b - Added more string functions to ACS:
* The standard C functions strcmp and stricmp (aka strcasecmp), which double up as strncmp and strnicmp if you pass a third argument.
  * The BASIC-like functions strleft, strright, and strmid, which extract parts of a string to
    create a new string.

SVN r4313 (trunk)
2013-06-01 17:07:24 +00:00
Christoph Oelckers
d40d7f2e77 - fixed signed-ness issue with FloatBobPhase.
SVN r4310 (trunk)
2013-06-01 12:03:15 +00:00
Randy Heit
26d2d74024 - GetActorProperty now works with the string properties that were formerly restricted to
CheckActorProperty.

SVN r4307 (trunk)
2013-06-01 02:51:14 +00:00
Randy Heit
1a67e6fa5d - Added PlaySound and StopSound functions for ACS. They are mostly analogous to their DECORATE
counterparts except that (1) PlaySound requires you to specify a sound instead of defaulting
  to "weapons/pistol", and (2) StopSound defaults to CHAN_BODY instead of CHAN_VOICE.

SVN r4306 (trunk)
2013-06-01 02:43:36 +00:00
Randy Heit
2d13a45773 - Added read access to an actor's melee range from DECORATE and ACS, via Blue Shadow.
SVN r4305 (trunk)
2013-06-01 02:23:27 +00:00
Randy Heit
2191b4bfa6 - Added ACS function LineAttack via Ryan Cordell.
SVN r4304 (trunk)
2013-06-01 02:19:18 +00:00
Randy Heit
53b284fb5d - Added Gez's OverridePalette VOXELDEF flag.
SVN r4303 (trunk)
2013-06-01 02:09:09 +00:00
Randy Heit
8565484e29 - Heretic and Hexen can now have their big fonts overridden by a font named "HBIGFONT". In
addition, a font named "BIGFONT" will override the big font for every game.

SVN r4302 (trunk)
2013-06-01 02:04:44 +00:00
Christoph Oelckers
890dc71e0d . added AFADoomer's patch to set a text highlight color for the list menu.
SVN r4301 (trunk)
2013-05-31 22:10:12 +00:00
Christoph Oelckers
9e3c6a3cc7 - fixed parameter type for Floatbobphase property.
SVN r4300 (trunk)
2013-05-31 18:10:41 +00:00
Christoph Oelckers
ad12be4877 - fixed inappropriate type for FloatBobPhase property.
SVN r4299 (trunk)
2013-05-30 21:10:54 +00:00
Christoph Oelckers
0bca41c202 - replaced unused RNGs with pr_damagemobj for consistency checksum.
SVN r4297 (trunk)
2013-05-30 10:18:46 +00:00
Christoph Oelckers
a7c2346b32 - added a FloatBobPhase property for DECORATE. Now, if FloatBobPhase is anything but -1 it will be used directly as the initial phase, allowing to define actors that bob in sync. The allowed range of phases is 0 - 63. The main reason for this is that each actor spawn called the pr_spawnmobj RNG just to randomize this value which causes problems with non-interactive actors, in particular GZDoom's dynamic lights.
SVN r4296 (trunk)
2013-05-30 08:52:29 +00:00
Randy Heit
0eb72156ed I hope I don't regret doing this so close before I want to do a release, since it's a pretty
major change to ACS's workings. However, I had an epiphany yesterday and just had to do this, since it seems like too big a deal to hold off until a later release:
- Dynamically generated strings returned via strparam and get(user)cvar now last as long as they
  need to. They do not disappear at the end of each tic. You can now safely store them in
  variables and hold on to them indefinitely. In addition, strings from libraries no longer
  require you to load the exact same libraries in the exact same order. You can even store a
  library's string in a world variable and retrieve it on another map that doesn't load the
  library at all, and it will still be the correct string.
- ACS library IDs now only get 12 bits instead of 16 so that each string table can hold up
  to about a million strings instead of just 65536. This shouldn't be a problem, although it
  means that save games that had strings with the larger IDs stored in variables are no
  longer compatible. Since many saves don't involve libraries at all, and even many that do 
  are not actually affected, I'm not bumping the min save version. The worst that can happen
  is that you get no text at all where some was expected.

SVN r4295 (trunk)
2013-05-30 02:22:47 +00:00
Randy Heit
493edd2df0 - Added ACS functions GetCVarString and GetUserCVarString. These act like their non-string
counterparts, except that they return strings. Like strparam, the strings they return are
  only guaranteed to be valid for the tick they are called during. (Note that these work with any
  cvar, not just string ones.)

SVN r4293 (trunk)
2013-05-27 02:41:50 +00:00
Randy Heit
587f1e83ba - Added ACS functions SetCVarString and SetUserCVarString. These work just like their non-string
counterparts except that their value argument is an ACS string. (Note that they work with any
  type of cvar, not just string cvars.)
- Make UCVarValue::String point to a constant string.

SVN r4292 (trunk)
2013-05-27 02:20:32 +00:00
Randy Heit
4a8037d66e - Move bitdepth check outside the loop for grayscale unpacking. Also, don't use a multiply for
1-bit pixels. Use a lookup table for 2-bit pixels, because it's probably faster than a bunch
  of shifts and register juggling.

SVN r4291 (trunk)
2013-05-27 02:04:54 +00:00