Shawn Walker
6164807e97
- fix x64 visual studio linking for common controls
2014-06-21 22:49:42 -07:00
Edward Richardson
2d896d2b47
Added wi_autoadvance
...
- Prevents an absent player from stopping the intermission
2014-06-17 20:26:49 +12:00
Edward Richardson
a3a7ee569f
Multi-intermission waits for all players + changes
...
- Added a segment of code that now makes the intermission wait for all
players before advancing, instead of continuing on any player. A "ready
icon" shows to reflect this.
- The Deathmatch intermisson couldn't show the ready icon (because it
just used the ingame scoreboard), so a proper intermission was added,
which reflects the same design as the coop scoreboard.
- The colour column wasted more space then it should have needed, so it
was replaced with player colour backgrounds.
- Slight y offset adjustments to make everything fit in 320x200
properly.
2014-06-17 19:46:10 +12:00
Edward Richardson
2838c4b25b
Prediction was rebuilding too much thinglist data
...
- Stopped player prediction from rebuilding more sector list data then
the player originally had.
2014-06-16 03:34:33 +12:00
WChrisK
67c6690689
Added a check that doesn't print empty obituary strings, as wad's that hide obituary strings in multiplayer games end up spamming a lot of empty lines.
2014-06-11 23:30:25 -04:00
Edward Richardson
842ef86e73
Don't reset the inventory of dead players
2014-06-09 19:54:40 +12:00
alexey.lysiuk
20adcecb1d
Remove redundant saving of GL nodes if they were loaded from cache
2014-06-02 10:54:52 +02:00
alexey.lysiuk
3e7b0c2916
Fix crash when GL nodes file cannot be opened for writing
...
Report errors to console if nodes file cannot be opened or written
2014-06-02 10:53:29 +02:00
Christoph Oelckers
9cd074ddf3
- fixed: plane equation vectors must be normalized when being loaded from UDMF.
2014-06-02 10:51:17 +02:00
alexey.lysiuk
96e4cb90b7
Fix crash on attempt to save cached OpenGL nodes on OS X
...
Root permissions are required to be able to create directories inside /Library/Application Support
So user's ~/Library/Application Support is used to store cached nodes
2014-06-01 15:12:41 +03:00
Edward Richardson
3817bed0b3
Weap scroll could sometimes miss sameslot weapons
...
In rear cases, when using next/prevweap, defined weapons in the same
slot couldn't cycle when looping to another when you only had weapons in
1 slot.
2014-06-01 18:13:47 +12:00
Christoph Oelckers
8f5683e23d
- moved secret found message to string table and removed the CVAR crutch that dates from a time when modifying string table content wasn't as easy as it is now.
...
- added 'showsecretsector' CVAR to show the sector number with the secret found message.
2014-05-29 17:50:14 +02:00
Christoph Oelckers
75cde0b221
- allow locks to check for a key's species so that newly defined keys can open previously defined locks without the need to redefine them.
2014-05-29 17:30:01 +02:00
Edoardo Prezioso
72bbb19cc7
- Shut up GCC aggressive optimizer warnings.
...
From what I can see, GCC would miscompile the involved loops, because the index variable is 'signed int' and the multiplication with an unsigned would cause signed overflow (undefined behavior). Change the index variable type to 'unsigned int' to expect unsigned overflow (conformant to standard).
2014-05-25 10:11:09 +02:00
Edoardo Prezioso
b285cbebe4
- Fixed compiler errors in latest TEXTURES code.
2014-05-25 01:12:16 +02:00
Christoph Oelckers
9d846395bc
- replaced console buffer with a significantly more efficient new version that also can hold a lot more data.
2014-05-24 21:05:00 +02:00
Shawn Walker
01e909070a
Merge branch 'master' of https://github.com/rheit/zdoom
2014-05-23 19:08:56 -07:00
Christoph Oelckers
261bc77846
- fixed: when bringing up a new weapon the current flash state needs to be removed.
...
Especially when dropping the current weapon it can still be active, this is most easily observed with Strife's crossbow which loops the flash state, but it also can happen with other weapons, right after shooting.
2014-05-20 10:29:27 +02:00
Christoph Oelckers
8ec95dc58e
- fixed a few places in the savegame code where map names were still truncated to 8 characters.
2014-05-20 10:14:44 +02:00
Shawn Walker
582b1990b7
- restore original line endings
2014-05-18 16:00:31 -07:00
Shawn Walker
d2b0596cd4
Merge branch 'master' of https://github.com/rheit/zdoom
2014-05-18 15:39:41 -07:00
Shawn Walker
59885b856d
- remove texture name length limits for udmf maps
2014-05-18 15:38:46 -07:00
Christoph Oelckers
4acc04ce68
- don't truncate map names stored in demos.
2014-05-18 10:05:35 +02:00
Christoph Oelckers
cfef894867
This can be done better...
2014-05-18 09:41:13 +02:00
Edward Richardson
26b1abe3da
Fix netgame arbitration with long map lump names
2014-05-18 18:38:54 +12:00
Christoph Oelckers
ff7913ace8
- fixed: When a level gets loaded the renderer's sky variables need to be set.
2014-05-17 09:46:58 +02:00
Shawn Walker
ae8995e65b
Merge branch 'master' of https://github.com/rheit/zdoom
...
# By Christoph Oelckers (2) and Edward Richardson (1)
# Via Christoph Oelckers
* 'master' of https://github.com/rheit/zdoom :
- fixed: The map setup code was still truncating texture names in several places.
Fix nettic run-out at end of demo playback
- fixed: ACS's check...Texture functions must use the same search flags as the texture initialization code in p_setup.cpp and p_udmf.cpp. It also should not create textures that don't exist yet. We are only doing a comparison so it's not relevant if the texture exists or not.
2014-05-16 20:27:57 -07:00
Christoph Oelckers
e92032e8ff
- fixed: The map setup code was still truncating texture names in several places.
2014-05-16 22:48:37 +02:00
Christoph Oelckers
76b4ff143f
Merge branch 'upstream' of https://github.com/Edward850/zdoom
2014-05-16 15:56:32 +02:00
Edward Richardson
d3dcc04666
Fix nettic run-out at end of demo playback
2014-05-17 00:36:43 +12:00
Christoph Oelckers
25f4af734f
- fixed: ACS's check...Texture functions must use the same search flags as the texture initialization code in p_setup.cpp and p_udmf.cpp. It also should not create textures that don't exist yet. We are only doing a comparison so it's not relevant if the texture exists or not.
2014-05-16 10:56:23 +02:00
Shawn Walker
49e0eb03cc
Merge branch 'master' of https://github.com/rheit/zdoom
2014-05-15 22:55:35 -07:00
Christoph Oelckers
bf6a193e5b
- fixed: The episode parser was still truncating its map names to 8 characters.
2014-05-15 20:29:36 +02:00
Shawn Walker
bfb5944517
Merge branch 'master' of https://github.com/rheit/zdoom
2014-05-15 00:11:52 -07:00
Christoph Oelckers
e3cd144af9
- one last GCC compile problem.
2014-05-14 17:27:22 +02:00
Christoph Oelckers
adcdc11360
- GCC compile fix.
2014-05-14 15:44:05 +02:00
Christoph Oelckers
2944e4f6ae
- fixed some Linux issues with recent changes.
2014-05-14 14:08:14 +02:00
Christoph Oelckers
85fb8c4326
- fixed: _M_X64 macro was misnamed _M_IX64.
2014-05-14 13:04:47 +02:00
Christoph Oelckers
388f09f786
- fixed: In Heretic corpses do not get crunched to gibs, they just get their size reduced to 0. Handled by a new gameinfo flag. This also gets set for Chex quest which has the gib sprite replaced by something different. Using a Crush state will override this global flag.
2014-05-14 12:54:03 +02:00
Christoph Oelckers
47a9dab56d
- allow setting sector planes' plane equations directly from UDMF.
2014-05-14 12:16:33 +02:00
Christoph Oelckers
8c052818b7
- fixed: long texture name lookup did not work with TEXMAN_TryAny.
2014-05-14 10:27:40 +02:00
Shawn Walker
fdfcb728a9
- make it easier to spot patch definition errors in console log
2014-05-13 22:50:39 -07:00
Christoph Oelckers
a375454474
- removed 8 character limit for map names.
2014-05-14 00:52:16 +02:00
Christoph Oelckers
24886b6734
- removed the last static character arrays from FLevelLocals.
2014-05-13 23:16:13 +02:00
Christoph Oelckers
e49e926bd9
- added option to ASectorAction to remove itself upon triggering by setting the STANDSTILL flag on the map thing.
2014-05-13 21:26:51 +02:00
Christoph Oelckers
30f57c0b8e
- added new renderstyles AddStencil and AddShaded.
2014-05-13 21:16:06 +02:00
Christoph Oelckers
ca4179caa3
- allow texture lookup by full path names. Due to technical limitations this may result in double textures if the same graphics lump is also referenced by its short texture name.
2014-05-13 20:51:16 +02:00
Christoph Oelckers
ebd6c18bef
- missed one texture name field in level_info_t.
2014-05-13 15:32:54 +02:00
Christoph Oelckers
a22670626c
- expanded names for view border elements. Also fixed the horribly bad implementation of custom borders which modified the DoomBorder elements without ever checking the game being used.
2014-05-13 13:40:02 +02:00
Christoph Oelckers
a05e62f3f7
- changed storage of lump and texture names in gameinfo to allow long names (with the exception of view border elements.)
2014-05-13 12:44:17 +02:00
Christoph Oelckers
e718a72b4d
fixed: skies should be loaded into the FLevelLocals struct not into the global variables of the renderer.
2014-05-13 11:53:08 +02:00
Christoph Oelckers
fedf9c6a5b
fixed: if we allow long names for the fade table we must also check for them when the colormap gets loaded.
2014-05-13 11:39:25 +02:00
Christoph Oelckers
65e8563cf4
replaced all character arrays for lump/texture names in the level_info_t and FLevelLocals structures with FStrings as first preparation for allowing long texture names.
2014-05-13 11:33:59 +02:00
Christoph Oelckers
458e1b1be2
- changed sound lookup for ZSDF dialogues so that it first checks the svox/ namespace before using the global one.
2014-05-08 11:29:45 +02:00
Christoph Oelckers
ea7fb936a8
- fixed: memory allocation for file names in 7z archives was broken. Changing it to use TArray instead of alloca makes it work.
2014-05-08 10:33:32 +02:00
Christoph Oelckers
2223c12938
- added new ChangeActorAngle/ChangeActorPitch ACS functions because the new required 'interpolate' parameter cannot be added to the existing SetActorAngle/SetActorPitch functions without breaking old scripts.
2014-05-08 09:43:58 +02:00
Christoph Oelckers
63a0e01c6a
Merge branch 'interpview_optin'
2014-05-08 09:17:00 +02:00
Christoph Oelckers
67ebbe3ed4
made some changes to turn the CF_INTERPVIEW flag when changing angles into an op-in feature instead of making it automatic.
2014-05-08 09:15:56 +02:00
Christoph Oelckers
890e9ecddd
- typo in resurrection code.
2014-05-07 17:18:44 +02:00
Christoph Oelckers
fcbb72a4d4
- removed redundant variable.
2014-05-06 09:59:56 +02:00
Edward Richardson
90e9937b71
Stop NetUpdate from corrupting demo playback
2014-05-05 22:47:48 +12:00
Christoph Oelckers
93aa1ea2c4
fixed some issues with reviving monsters
...
- fixed: Thing_Raise didn't properly set the spawn health.
- fixed: Thing_Raise did not the CanRaise state flag.
- fixed: Reviving a monster must also reset the damage type.
- fixed: Thing_Raise reset the actor after calling the raise state, but it should be before, just as the Archvile code is doing.
- consolidated some common code of Thing_Raise and Archvile resurrection into AActor methods.
2014-05-05 11:24:20 +02:00
Christoph Oelckers
a9f1b54d2d
- fixed: since A_LightGoesOut alters a sector's floor plane it must also alter the TexZ for that sector's floor.
2014-05-03 10:12:25 +02:00
Christoph Oelckers
34360e7975
Merge branch 'upstream' of https://github.com/Edward850/zdoom
2014-05-02 17:31:02 +02:00
Edward Richardson
104a07d461
Make sure use_staticrng is false if not needed
2014-05-03 03:27:14 +12:00
Edward Richardson
6183f8125f
Don't change RNG in demos incase they are static
2014-05-03 03:01:49 +12:00
Edward Richardson
d6af8dc352
Added static RNGseed control
2014-05-03 03:01:40 +12:00
alexey.lysiuk
3af7d8a245
Added support for LZMA2 compression method in .7z archives
...
Updated LZMA SDK to version 9.20
http://www.7-zip.org/sdk.html
http://downloads.sourceforge.net/sevenzip/lzma920.tar.bz2
2014-04-27 13:05:40 +03:00
alexey.lysiuk
6b26b710b8
Added simple check for unsupported compression method in .7z files
2014-04-27 10:23:20 +03:00
alexey.lysiuk
3fa89b4e9f
Fixed crash on attempt to load corrupted data file
...
Instance of FileReader is no longer destructed when header of data file is valid but complete loading of file fails
Loading of truncated .zip file is the simplest test case
2014-04-27 10:18:50 +03:00
Christoph Oelckers
3f8c7239af
Merge branch 'master' of https://github.com/Gaerzi/zdoom
2014-04-24 09:41:54 +02:00
Gaerzi
7c3660087e
Restore shadow renderstyle.
...
It was accidentally lost in r3085.
2014-04-22 13:32:33 +02:00
Gaerzi
265917c923
Add shadow and subtract styles to ACS.
...
There is a matching pull request for rheit/acs.
2014-04-22 13:31:55 +02:00
alexey.lysiuk
1c50b5dd6f
Fixed initialization of Hexen-style things
...
Recently added pitch and roll members were not initialized with zeroes when loading Hexen-style maps
At least, hitscan attack can be fired in random direction because of this
2014-04-20 13:37:59 +03:00
Christoph Oelckers
7cb828d763
Merge branch 'slowstate' of https://github.com/Gaerzi/zdoom
2014-04-18 09:46:23 +02:00
Christoph Oelckers
584dd78ba9
Merge branch 'master' of https://github.com/Edward850/zdoom
2014-04-16 16:42:43 +02:00
Edward Richardson
897d87a6a3
Invisibility would could P_LookForPlayers early
2014-04-17 01:13:18 +12:00
Edward Richardson
d855bd66b3
Fixed P_LookForPlayers scanning redundancies
...
- Players could be scanned multiple times, repeating expensive tests
- Players could be skipped completely and become invisible as a result
2014-04-17 00:46:33 +12:00
Christoph Oelckers
48b926e5b4
- check +logfile explicitly at the start of execution. Due to the custom CVAR rewrite it would get called so late that it'd miss half of the log.
...
- added version check for Windows 8. I also would have liked to add 8.1 but due to some incredibly stupid changes in the version API it's no longer possible to reliably retrieve the correct Windows version for later builds.
2014-04-16 09:53:07 +02:00
Gaerzi
83182b703d
Added slow monsters, the inverse of fast monsters
...
This is a skill setting only, no "always slow" or "never slow" actor
flags, and no DM flags.
2014-04-15 21:01:49 +02:00
Gaerzi
c54f5571ea
Typo.
2014-04-15 17:24:01 +02:00
Gaerzi
6f2fd8edbf
Hexen also needs to init 0 fields.
2014-04-15 17:22:56 +02:00
Gaerzi
8e3360453f
Hexen too.
2014-04-15 17:18:55 +02:00
Gaerzi
e5578934ad
Init new non-0 fields for non-UDMF maps.
2014-04-15 17:16:33 +02:00
Christoph Oelckers
4e683d360d
Merge branch 'master' of https://github.com/Edward850/zdoom
2014-04-15 09:22:50 +02:00
Edward Richardson
4270838613
CANRAISE state definition
...
CANRAISE state for allowing a monster to be resurrected without an
infinite frame
2014-04-12 22:02:19 +12:00
Gaerzi
101107b1e5
Updated documentation
2014-04-12 10:55:10 +02:00
Gaerzi
4cac599b88
Less flags, more generic properties
2014-04-11 00:58:59 +02:00
Gaerzi
580094a792
More editing flags
...
PSX-inspired flags to change the render styles of monsters (and other
things).
2014-04-10 12:32:23 +02:00
Christoph Oelckers
bbb41e869c
Merge branch 'master' of https://github.com/Edward850/zdoom
2014-04-07 19:54:30 +02:00
Edward Richardson
ca93e04de3
Added GetActorPowerupTics ACS function
2014-04-07 23:23:55 +12:00
alexey.lysiuk
878dcdc0a4
Fix loading of lumps from directory on OS X
...
Use POSIX-compliant opendir() / readdir() functions instead fts_open() / fts_read()
Unlike Linux version, on OS X fts_read() inserts extra slash character between source directory and traversed entry paths
2014-04-06 12:56:51 +03:00
Randy Heit
940794929c
Remove more VC++ warnings
2014-04-03 17:51:15 -05:00
Randy Heit
fc97584c69
Disable warning C4200 on VC++
...
- This warning is about using zero-sized arrays in structs (aka flexible
member arrays). It's standard-enough for our purposes, so don't warn
about it, since neither GCC nor Clang do.
2014-04-03 16:50:20 -05:00
Randy Heit
43fe317dbe
Use flexible array members for structs that end with var-sized arrays
...
- Since Clang++, G++, and VC++ all support this extension (even though it's
technically officially only part of C99), use it. It lets Clang's array-
bounds checker know that these are meant to be accessed out of their so-called
"bounds".
2014-04-03 16:33:33 -05:00
Edward Richardson
546ae759fd
Cleanup old prediction fix development code
2014-04-02 21:25:45 +13:00
Edward Richardson
be33d2894a
Fixed prediction thinglist order restoration
...
Prediction didn't take sector_thinglist and thinglist order into
account.
This notably broke the order in which things were damaged.
2014-04-02 21:25:12 +13:00
Christoph Oelckers
a9bea7d774
Merge branch 'getsectorz_take2' of https://github.com/crimsondusk/zdoom
2014-03-31 19:12:47 +02:00
Christoph Oelckers
edcc257667
fixed: APROP_StencilColor was not implemented for CheckActorProperty.
2014-03-31 16:39:34 +02:00
Christoph Oelckers
bd3bd0ed22
Merge branch 'upstream' of https://github.com/Edward850/zdoom
2014-03-31 16:36:54 +02:00
Edward Richardson
016cc7ba96
Missed space in flags7 line.
2014-03-31 23:57:43 +13:00
Edward Richardson
79f6e77e2b
Remove garbage characters from info CCMD
2014-03-31 23:51:18 +13:00
crimsondusk
d7a2435703
- the ACS functions GetSectorFloorZ and GetSectorCeilingZ now interpret tag=0 as 'any sector' and return the z height of whatever sector is at those coordinates.
2014-03-27 16:34:32 +02:00
Edward Richardson
697ef02871
Added StencilColor to Set/GetActorProperty
2014-03-28 00:23:12 +13:00
Edoardo Prezioso
5789ac6245
- Fixed new[]/delete mismatch in FNodeBuilder
...
Found with address sanitizer.
2014-03-16 13:21:08 +01:00
alexey.lysiuk
6aa56202b6
Fix two issues with GL nodes handling
...
Fix inability to load GL nodes for maps with names longer than 5 characters.
Fix inability to load GL nodes from external GWA files.
2014-03-15 13:17:22 +02:00
Edward Richardson
40771d22a5
Player prediction fixes in PIT_CheckThing
...
Player prediction could end up executing functions for TOUCHY things or
modify velocities when BLASTED, among other things.
2014-03-15 04:15:30 +13:00
Edward Richardson
55362d2296
Merge remote-tracking branch 'upstream/master'
2014-03-14 20:59:24 +13:00
Edward Richardson
9dad8bdbbe
Clear old camera from previous level
...
The sound code could accidentally reference an old invalid camera during
level spawn
2014-03-13 18:27:39 +13:00
Christoph Oelckers
f44dc926e6
- fixed uniqueTid logic - patch by Edward-San.
2014-03-09 10:02:07 +01:00
Edward Richardson
79abe2d4e9
Made onground a player property
...
"onground" was a global, despite being treated as a player property and
crossed with instances from other players or prediction.
2014-03-03 01:00:47 +13:00
Edoardo Prezioso
1fb757f6f1
- Fixed useless 'array != NULL' check.
...
- 'notranslate != NULL' is completely useless, because 'notranslate' is an array, hence removed.
- I interpreted 'SbarInfoScript != NULL' as a typo, since 1)in the next expression inside the condition there's a dereference to 'SBarInfoScript[SCRIPT_CUSTOM]' and 2)'SBarInfoScript[SCRIPT_CUSTOM]' is checked against 'NULL', in line 352, and then dereferenced when introducing 'cstype'.
2014-03-01 22:27:40 +01:00
Randy Heit
e7f427aa60
Merge branch 'maint'
2014-02-24 19:26:50 -06:00
Randy Heit
1d4f4b25d7
Don't free replaced textures that are used as patches.
...
- Fixed: If a part of a multipatch texture is replaced by a HIRESTEX
version, the original patch must not be deleted, since the multipatch
texture still needs it for compositing.
2014-02-24 19:01:36 -06:00
Randy Heit
5a5fb9b3d1
Clamp xy angle range in P_SetSlope()
...
- This function just assumed that every xy angle passed to it was within
the range [0,360). This is obviously bad, since anything outside that
range can result in accessing data outside the range of the finecosine
and finesine tables.
2014-02-24 18:16:18 -06:00
Randy Heit
a60918f601
Add NoPushWindowCheck compatibility flag
...
- For maps like xtheateriii that expect non-blocking push lines to
activate when you are standing on them and run into a completely different
line, there is now this compatiblity.txt-only flag.
2014-02-24 17:43:28 -06:00
Randy Heit
db4763b14a
Delay skin setting on save load until player class is known.
...
- Fixed: Loading players from savegames set the skin before their current
class was retrieved, so they could not validate their skins with the
correct class.
2014-02-24 16:27:57 -06:00
Randy Heit
7052d4e14e
Fixed: userinfo_t::SkinChanged() was unaware of player classes
2014-02-24 16:18:10 -06:00
Randy Heit
0f7ad00d9a
Ignore the minor version number when checking for DRO v1 files
...
- There exist files where the first word of the version number for DRO v1
files is not 0 but something else completely. (Maybe it's not actually a
version number?) Assume they are valid v1 files as long as the second
word is a 1.
2014-02-24 15:48:41 -06:00
Gaerzi
d430c18574
The wrong value was used here.
...
This caused crashes on some files (notably MBELLS from Cosmo and NUBC
from Body Count) in my port of this code to SLADE 3.
2014-02-24 15:37:59 -06:00
Gaerzi
c7301a0fbb
Some DOSBox Raw OPL v2 indices were off by one.
...
This caused access violation errors on perfectly fine DRO files. For
reference, scoredata[20] is the hardware type (OPL2, dual OPL2, or
OPL3).
2014-02-24 15:37:42 -06:00
rheit
3437b08c1a
Merge pull request #27 from Gaerzi/master
...
Some DOSBox Raw OPL v2 indices were off by one.
2014-02-24 15:22:20 -06:00
rheit
d0782d779d
Merge pull request #22 from edward-san/cmake_uninitialized_fix
...
- Fixed some cmake --warn-uninitialized messages
2014-02-24 15:20:56 -06:00
rheit
78f85340d8
Merge pull request #20 from edward-san/cmake_clang_flags_fix
...
- Remove clang check from GCC-related workaround
2014-02-24 15:19:35 -06:00
rheit
3111f8f93d
Merge pull request #19 from edward-san/unix_no_gtk_iwadpicker_fix
...
- Fixed scanf in IWAD picker without GTK
2014-02-24 15:18:24 -06:00
Gaerzi
9dacc9cc8d
The wrong value was used here.
...
This caused crashes on some files (notably MBELLS from Cosmo and NUBC
from Body Count) in my port of this code to SLADE 3.
2014-02-24 05:07:37 +01:00
Gaerzi
732ee11da1
Some DOSBox Raw OPL v2 indices were off by one.
...
This caused access violation errors on perfectly fine DRO files. For
reference, scoredata[20] is the hardware type (OPL2, dual OPL2, or
OPL3).
2014-02-23 23:07:10 +01:00
Christoph Oelckers
861a0f0f09
Merge branch 'master' of https://github.com/Gaerzi/zdoom
2014-02-16 18:59:02 +01:00
Gaerzi
02cd6eebf4
A_Log formatted text
...
Make DECORATE version of Log consistent with ACS version.
2014-02-16 18:29:01 +01:00
Alex Qyoun-ae
dd5f273128
Added possibly missing brackets
2014-02-14 05:10:48 +04:00
Edward Richardson
0db82f02cf
P_HitWater ignore extra floors below real floor
...
P_HitWater incorrectly assumed extra floors were always above the real
floor.
2014-02-12 20:30:37 +13:00
Randy Heit
3cff307e77
Add Get/SetLineActivation ACS functions
2014-02-04 19:53:10 -06:00
Randy Heit
8b02bb55aa
Fix compiling with FMOD 4.36
...
- That stuff I thought that went poof in FMOD Ex 4.37 was apparently
already gone in 4.36.
2014-01-30 20:30:40 -06:00
Christoph Oelckers
4e53df8bca
- fixed: The 'load' command in GAMEINFO only worked if the filename contained a slash.
2014-01-26 14:32:44 +01:00
Braden Obrzut
efa9e0c3ee
Merge branch 'maint'
2014-01-18 18:10:48 -05:00
Braden Obrzut
811a75ebf6
- Minor adjustments to SDL joystick code so that all axes have at least a small deadzone so that button mapping works properly.
2014-01-18 17:54:46 -05:00
Braden Obrzut
27f6b3c9f3
Merge branch 'maint' of github.com:rheit/zdoom into maint
2014-01-18 16:23:06 -05:00
Braden Obrzut
75fd674d31
- If the player doesn't have ` bound to open the console, don't close it with that key.
2014-01-18 16:20:52 -05:00
Braden Obrzut
919b928300
- Fixed: Taking an item in a Strife dialog didn't account for items that have the keep depleted flag set.
2014-01-18 15:45:11 -05:00
Braden Obrzut
ebcd0e9c49
- Removed redundant expression in R_FindPlane.
2014-01-18 15:40:48 -05:00
Braden Obrzut
7af8b78b9f
- Applied Chilly's patch to fix excessive name change notifications.
2014-01-18 15:18:35 -05:00
Braden Obrzut
e5d7077d74
- Fixed: Shareware games couldn't bother with the actor has no frames errors since we don't load mods.
...
- Fixed: Heretic shareware used a different border for the statusbar.
2014-01-18 15:09:12 -05:00
Braden Obrzut
6f7885210b
- Fixed: Some setups require the dynamic linking library to be linked explicitly, so specify it when using DYN_FLUIDSYNTH
2014-01-18 14:58:39 -05:00
Edoardo Prezioso
70717cd2fa
- Cover the ASM_SOURCES fix for NO_ASM users too
2014-01-18 02:21:49 +01:00
Christoph Oelckers
6824e8c931
Merge branch 'maint'
2014-01-18 01:12:06 +01:00
Christoph Oelckers
1fd1ac9bab
Merge branch 'cmake_uninitialized_fix' of https://github.com/edward-san/zdoom into maint
2014-01-18 01:10:33 +01:00
Edoardo Prezioso
b329a34a58
- Fixed some cmake --warn-uninitialized messages
2014-01-17 23:36:59 +01:00
Christoph Oelckers
e126c3ec2f
Merge branch 'maint'
2014-01-17 20:45:20 +01:00
Christoph Oelckers
9a74f96702
Merge branch 'viewpitch_overflow_fix' of https://github.com/edward-san/zdoom into maint
2014-01-17 20:43:03 +01:00
Christoph Oelckers
2d3a80fbd9
Merge branch 'cmake_clang_flags_fix' of https://github.com/edward-san/zdoom into maint
2014-01-17 20:43:00 +01:00
Edoardo Prezioso
884928687d
- Fixed overflow checking in some viewpitch code
2014-01-17 19:27:12 +01:00
Edoardo Prezioso
aafea851f0
- Remove clang check from GCC-related workaround
...
It caused a clang warning/error regarding the non-existing flags '-fno-tree-dominator-opts' and '-fno-tree-fre'.
2014-01-17 19:11:29 +01:00
Edoardo Prezioso
f51fcd90b3
- Fixed scanf in IWAD picker without GTK
...
If you try to kill the program with Ctrl-C, it would run the first IWAD available in the list instead of closing it.
2014-01-17 18:57:52 +01:00
Christoph Oelckers
af3e619232
Merge branch 'uniquetid_overflow_fix' of https://github.com/edward-san/zdoom
2014-01-16 11:38:53 +01:00
Edoardo Prezioso
2501dc6df6
Fixed signed overflow issue, which caused a non-intended aggressive optimization by GCC 4.8. Also, negative values of the 'limit' parameter in both ACS UniqueTID() and in 'utid' CCMD are ignored and replaced by 0.
2014-01-13 01:48:31 +01:00
Christoph Oelckers
725d3e3f53
Merge branch 'master' of https://github.com/Edward850/zdoom
2014-01-12 10:53:34 +01:00
Edward Richardson
6db974918a
Treat packets from unknown nodes differently
...
Instead of trying to decompress packets from unknown connections (and
failing them anyway), they are now reported and discarded without doing
anything else.
2014-01-12 18:39:19 +13:00
Braden Obrzut
db4a23e3c4
Merge branch 'origin/maint'
2014-01-10 02:19:14 -05:00
Braden Obrzut
44c4736de3
- Ignore unknown properties in the GAMEINFO lump instead of throwing an error.
2014-01-10 02:16:41 -05:00
Braden Obrzut
fa516c5ee6
- For some reason __MAC_10_6 is defined in the 10.5 SDK so use MAC_OS_X_VERSION_MAX to check SDK version instead.
2014-01-07 00:55:32 -05:00
Braden Obrzut
bbd3106cbb
Merge commit 'b3f5de356f14e2026cc9e5738e8b58e22e7daa44'
2014-01-06 04:04:51 -05:00
Braden Obrzut
d8ff4ec281
- Fixed: All clang 5.0 warnings.
...
- Renamed autostart/autozend since Xcode’s build process links in strictly alphabetical order.
2014-01-05 19:50:09 -05:00
Braden Obrzut
b3f5de356f
- Fixed: SBarInfo's gamemode command used to ignore unknowns (for cross compatibility). On top of restoring the old behavior, generate a warning for only the first ignored instance.
2014-01-05 15:46:11 -05:00
Braden Obrzut
b0f40c0733
- So we did end up restoring the variable that the last commit was compensating for.
2014-01-04 00:37:15 -05:00
Braden Obrzut
4770b9b27b
- Fixed: Rampage timer should only reset when the weapon is ready to be fired.
2014-01-03 01:21:21 -05:00
Braden Obrzut
511bdc7208
- Work around GCC 4.8 bug 54570
2014-01-02 19:41:53 -05:00
Braden Obrzut
50cec119a0
- Work around GCC 4.8 bug 54570
2014-01-02 19:12:03 -05:00
Christoph Oelckers
853c1c4f1e
Merge branch 'master' of https://github.com/Edward850/zdoom
2014-01-01 16:51:27 +01:00
Edward Richardson
455145d611
Stall testing for interpolation
...
Uncapped framerate never triggered the stall detection code, as it never
tried to process a frame to start with.
2014-01-02 00:04:32 +13:00
Christoph Oelckers
6e0f885135
- fixed: The 3D floor setup code treated alphas larger than 255 as translucent. This was causing problems with ZDCMP2 in GZDoom
2013-12-25 22:30:47 +01:00
Christoph Oelckers
ae49044f96
- let 'showloadtimes' measure UDMF parsing.
2013-12-19 17:59:58 +01:00
Christoph Oelckers
3e0325c8b0
Merge branch 'master' of https://github.com/rheit/zdoom
2013-12-17 17:24:43 +01:00
Christoph Oelckers
9a927c2030
Merge branch 'master' of https://github.com/Edward850/zdoom
2013-12-16 11:56:58 +01:00
Edward Richardson
a993b0288a
Stop prediction from playing and stopping sounds
...
Player prediction would play *jump and stop falling sounds, creating odd
cases of sound repetition before the gametic caught up.
2013-12-16 23:02:27 +13:00
Braden Obrzut
5904df7f56
Merge branch 'maint'
2013-12-13 03:05:06 -05:00
Braden Obrzut
12d45bbc33
- Use setenv for LC_NUMERIC since setlocale gets reset by the libraries on some systems.
2013-12-13 03:00:35 -05:00
Braden Obrzut
10c312f55c
- Silence GCC PCD_PRINTBINARY warning since we've been able to since GCC 4.6.
2013-12-13 02:51:15 -05:00
Christoph Oelckers
74dee4cd63
- removed ddraw.lib from CMake files because that library is not used anymore.
2013-12-09 11:24:58 +01:00
Christoph Oelckers
31c9a0b0e8
- Subtract should respect alpha.
2013-12-05 15:36:20 +01:00
Christoph Oelckers
c959b3f250
- added 'subtract' render style to DECORATE parser. This is actually 'reverse subtract'
2013-12-05 15:28:09 +01:00
Christoph Oelckers
86d7a326be
- allowdecals logic was nonfunctional.
2013-12-01 21:11:33 +01:00
Christoph Oelckers
25f60779fd
- fixed: The 'allowdecals' check in animated doors was wrong.
2013-12-01 20:20:26 +01:00
Christoph Oelckers
8b92597508
Merge branch 'master' of https://github.com/Edward850/zdoom
2013-12-01 18:29:46 +01:00
Edward Richardson
7045f195f3
Removed excess value from stall debug output
...
The debug output for a stalled Arbitrator had an excess Net_Arbitrator
value, bumping the gametic+counts value off the output.
2013-12-02 06:23:22 +13:00
Christoph Oelckers
c5b2c95572
- fixed placement and handling of 'allowdecals' for animated doors.
2013-12-01 15:11:41 +01:00
Christoph Oelckers
a89ecdad50
Merge branch 'master' of https://github.com/Edward850/zdoom
2013-12-01 10:27:40 +01:00
Edward Richardson
662bc7a3ac
cl_bloodtype could break playsim sync
...
Corrected entries were blood would spawn inconsistently because of
cl_bloodtype. Blood now always spawns but is marked invisible according
to cl_bloodtype.
2013-12-01 22:06:48 +13:00
Christoph Oelckers
7e062f394b
- fixed: animated door textures defined by index were not added to the sequence.
...
- fixed: animated doors should set 'no decals' for the texture.
- added 'allowdecals' option to override the above.
2013-12-01 01:26:30 +01:00
Christoph Oelckers
698495efc5
- fixed: missing return in playerinfo CCMD added.
2013-12-01 01:21:43 +01:00
Christoph Oelckers
e7225bced6
- check negative XScale on sprites to allow mirroring.
2013-12-01 01:15:10 +01:00
Braden Obrzut
c04a800e2b
- When doing OLDSTYLE builds we can use the RUNTIME_OUTPUT_DIRECTORY_<CONFIG> properties to force the output location properly.
2013-11-29 17:10:29 -05:00
Christoph Oelckers
cbed4624fa
- added a user-settable factor for earthquake intensity. Value can be between 0 (no shaking) and 1 (normal shaking.)
2013-11-29 13:24:38 +01:00
Christoph Oelckers
b9c032461e
- add a CMake option to enable/disable SSE2 with Visual C++. This is necessary because since VC 2012 SSE2 is the default instruction set.
2013-11-29 12:35:45 +01:00
Braden Obrzut
a8090dc22c
- Remove a hardcoded "zdoom" so that the name passed into the copy operation should always match that passed to /MAP.
2013-11-29 02:09:27 -05:00
Braden Obrzut
c21beb0b6c
- Fixed: Some versions of Visual Studio put the map file in a different location.
2013-11-29 01:54:46 -05:00
Christoph Oelckers
7cb70f60b3
- removed duplicate #define warning in fmodsound.cpp.
...
- commented out output of Cr0NpxState for floating point state because this variable was renamed in most recent Windows headers.
- added CMAKE option to generate assembly output for release builds.
- added my CMake-based project directory to .gitignore.
2013-11-28 11:03:19 +01:00
Braden Obrzut
0c1d92834a
- Fixed: Some setups require the dynamic linking library to be linked explicitly, so specify it when using DYN_FLUIDSYNTH
2013-11-26 17:58:55 -05:00
Braden Obrzut
c7632174d8
- Fixed error in manifest embedding that stopped the binary from working on Windows XP.
...
- Tweaked PK3 copying commands so that it shouldn't be possible to end up with files named Debug/Release.
2013-11-26 12:49:23 -05:00
Christoph Oelckers
8bf5872fc0
- always add DelayImp.lib for MSVC.
2013-11-24 10:27:08 +01:00
Randy Heit
fe67ae5e54
Merge branch 'maint'
2013-11-19 21:01:15 -06:00
Randy Heit
f4e9edccb9
Don't display the cost in dialogues twice
...
- Fixed: Commit 75dd5503
, which was to enable the use of LANGUAGE
substitutions for conversation items with a cost attached, neglected to
remove the original code that attached the cost to the end of the item,
so the cost got added twice.
2013-11-19 19:55:57 -06:00
Randy Heit
d4304c3bde
Change tspeed += 2 to *= 2
...
- Fixed: The initial keyboard turn rate used the running initial rate whether
+speed was down or not.
2013-11-19 19:49:17 -06:00
Braden Obrzut
c7099744bd
- Minor changes to the CMake since it looks like VS2005 doesn't support a few things that were added.
2013-11-11 23:56:58 -05:00
Edward Richardson
a967b05290
Improvements to restoring stalled netgames
...
- The waiting message is now always cleared, regardless if it needed to
be in the first place. It's a rather simple for-loop so I doubt it
matters.
- Nodes are also cleared from the list if they catch up while other
nodes are still behind.
- "lastglobalrecvtime" is now bumped after the waiting loop if a tic was
successful, rather then bumping it every time a packet was received. It
appears that you can receive a packet before the game knows it stalled,
thus stalling it anyway.
- Instead of comparing the nettics to the local node, all nodes are
tested against gametic+counts (the real reason why the game has
stopped).
- More then one node can be marked as late at any one time.
- In a packet-server game, the arbitrator is now assumed slow, rather
then testing it. There is no point, seeing as we already know the game
has stalled because of it.
2013-11-11 20:42:54 +13:00
Braden Obrzut
34457ce737
- Applied VoidMage's patch to strip color codes from system console on SDL platforms.
2013-11-06 13:42:05 -05:00
Braden Obrzut
f0b946c3cf
- Allow use of system GME library. It defaults to forcing the use of the internal library at least for now though.
2013-11-06 13:37:34 -05:00
Randy Heit
ec6624dfc7
Prioritize single->double conversions for FindBestProto()
...
- The binary form of ZCC_OpInfoType::FindBestProto() needs special
handling for conversion from single to double precision floating point
so that it doesn't choose an integer form over a floating point form
when picking the best prototype.
2013-11-01 22:05:49 -05:00
Randy Heit
3063df4f74
Add single <-> double conversions.
...
- With explicit casting now possible, converting from double to single
precision floating point and back again needs to be possible, too.
2013-11-01 21:45:02 -05:00
Randy Heit
b66de4116d
Remove IsUnary() and IsBinary()
...
- This information is already stored in the node's NodeType field, so
there's no reason to go do a table lookup for it elsewhere. Must have
been a brain fart when I wrote them in the first place.
2013-11-01 21:28:00 -05:00
Randy Heit
16fc9be411
Interpret function calls to type refs as type casts
2013-10-30 20:53:02 -05:00
Randy Heit
2adf5782b9
Return propertype conversion routes larger than 1
...
- Fixed: PType::FindConversion() gave all but the source type a distance of
0, so it only ever returned just one step of a route that requires more
than one step.
2013-10-30 20:52:46 -05:00
Randy Heit
39d7fa0605
Allow access to the numeric properties.
...
- Identifiers can now evaluate to type references.
- The dot operator can now find symbols in type references.
2013-10-29 22:06:14 -05:00
Randy Heit
e7616ec0bd
Add D-style properties to the numeric types
...
- This is stuff like min and max for integral types and infinity and nan
for floating point types.
2013-10-29 22:06:03 -05:00
Randy Heit
fe21ceec56
Add a constructor to PSymbolTable that takes a parent table as input
2013-10-29 22:05:56 -05:00
Randy Heit
e696fff0be
Capitalize some names that weren't before.
...
- Since this caused several duplicate names to creep in, try to be more
consistant abount name capitalization.
2013-10-29 22:05:49 -05:00
Randy Heit
6c7788d2ad
Make global symbols survive GC runs
...
- The global symbol table was never marked by the GC, so anything pointed
only by it was fair game to disappear.
- Don't clear the global symbol table during DECORATE parsing. Junk in
there should be considered constant after initialization.
2013-10-29 22:05:43 -05:00
Randy Heit
61b419c187
Remove duplicated names from namedef.h
...
- Added an assertion in FName::NameManager::InitBuckets() that makes these
errors easier to spot in the future.
2013-10-29 22:05:32 -05:00
Randy Heit
82c22459dc
Give all types a symbol table, not just structs and derivatives
2013-10-29 22:05:25 -05:00
Randy Heit
b227a2f508
Add the basic types to the global symbol table
2013-10-29 22:05:16 -05:00
Randy Heit
03c4244fd8
Accept only one identifier for class names.
2013-10-29 22:05:09 -05:00
Randy Heit
2b96db5fac
Do not share constant 1 for enum autoincrements.
...
- AST nodes cannot be shared, because type conversion changes them in
place, and what's appropriate for one use is by no means appropriate for
all uses.
2013-10-25 22:30:25 -05:00
Randy Heit
6384613487
Allow using constants in other constants before their definitions.
...
- Something like this is now valid:
const foo = bar + 10;
const bar = 1000;
2013-10-25 22:30:25 -05:00
Randy Heit
76d2e8cfc4
Set node type when nil-ing an id node.
...
- Nodes can't stay as type AST_ExprID if they don't also have the
operation PEX_ID.
2013-10-25 22:30:25 -05:00
Randy Heit
850055a766
Add evaluation of constant unary and binary expressions
...
- Added ZCCCompiler class as a place to generate IR and symbols from an
AST. Right now, all it does is simplify constant expressions into
constant values.
- Do type promotion on the AST where appropriate.
- Added true and false tokens to the parser driver.
2013-10-25 22:30:24 -05:00
Randy Heit
d0968af9a6
Separate the AST from the parser state.
2013-10-25 22:30:24 -05:00
Randy Heit
dbc9fd6c0e
Pad PSymbolConstNumeric to ensure it's the same size as PSymbolConstString
2013-10-25 22:30:12 -05:00
Randy Heit
c7e817dfb9
Added type conversion search routines
...
- PType::FindConversion() can find a path to convert one type to another.
This is completely generic and can handle any number of conversion
functions.
2013-10-23 22:39:51 -05:00
Braden Obrzut
7dbf4ec38f
- Slight cleanup and I accidentally inverted the map generation flag.
2013-10-12 01:58:39 -04:00
Braden Obrzut
0759a4b438
- Actually, lets not use /Gm since it's incompatible with /MP which will be much faster on multi-core machines.
...
- Added ZDOOM_GENERATE_MAPFILE which enables linker map file generation.
2013-10-12 01:44:57 -04:00
Braden Obrzut
03b75ae7c1
- Fixed a few flags for Visual Studio compilation.
2013-10-12 00:56:49 -04:00
Braden Obrzut
b9a1528747
- DYN_FLUIDSYNTH now defaults to ON.
...
- Added ZDOOM_OUTPUT_OLDSTYLE (could probably use a more descriptive name) which causes CMake to vary the executable name by build type and place the exes and pk3s into the directory specified in ZDOOM_OUTPUT_DIR.
- ALL_BUILD will now launch ZDoom.
2013-10-10 17:40:15 -07:00
Randy Heit
d76dbcaa9d
Merge branch 'maint'
2013-10-09 22:33:58 -05:00
Randy Heit
02514dc9b2
- Fixed: AFSwordMissile::DoSpecialDamage had a unique prototype
...
so it would never actually be called.
2013-10-09 22:32:52 -05:00
Randy Heit
637798c1b5
Add handling for +warp at the command line.
...
- Command-line console commands are executed before a level is entered, so
trying to use +warp to position yourself at a specific location will not
work. We now specially handle this command so that it does work.
2013-10-09 22:15:11 -05:00
Randy Heit
1f723c10ae
Add CF_INTERPVIEW for players.
...
- Added CF_INTERPVIEW flag for players. A_SetPitch/A_SetAngle and the
similar ACS APROPs set this when changing an angle. This forces the
renderer to interpolate the view angles instead of updating with the
latest mouse positions. The effect lasts one tick.
2013-10-09 21:50:24 -05:00
Randy Heit
c2bac9d2df
Add WorldPanning flag for camera texture definitions.
...
- To make camera textures pan in world units instead of texture units, you
can now add "WorldPanning" at the end of the cameratexture definition in
ANIMDEFS, after the "fit" specification. e.g.
cameratexture CAMTEX 128 128 fit 64 64 worldpanning
2013-10-09 21:29:28 -05:00
Christoph Oelckers
03f19a12fa
Merge branch 'maint'
2013-10-09 12:52:33 +02:00
Christoph Oelckers
8170cfbf98
- added my own FMOD path to CMakeLists.txt so that I can use it to create VC++ 2010 files with it.
2013-10-09 12:52:07 +02:00
Randy Heit
242f2ab7b0
Merge branch 'maint'
2013-10-08 21:51:51 -05:00
Randy Heit
0c9c624e8c
Do not follow NextThinker links in DestroyThinkersInList
...
- Fixed: DThinker::Destroy(Most)ThinkersInList() were unreliable when
destroyed thinkers destroyed more thinkers in the same list.
Specifically, if the thinker it destroyed caused the very next thinker
in the list to also be destroyed, it would get lost in the thinker list
and end up with a NULL node. So just keep iterating through the first
thinker in the list until there are none left. Since destroying a
thinker causes it to remove itself from its list, the first thinker will
always be changing as long as there's something to destroy.
2013-10-08 21:32:26 -05:00
Randy Heit
3c376aa342
Move C_ExecCmdLineParams() call slightly later in the startup process.
...
- Fixed: You could not set any CVARINFO-defined cvars from the command line
because command line console commands were executed before wads were
even loaded. Off the top of my head, I can't think of anything that would\
break by having them get executed after wads are loaded.
2013-10-08 20:18:35 -05:00
Randy Heit
d558cf51a9
- Fixed: ABackpackItem::CreateTossable did not check for failure from the supermethod.
2013-10-08 19:59:46 -05:00
Braden Obrzut
4ced90756a
- Let CMake know about noncompiled cpp files so they can appear in project files.
...
- Fixed: Somehow when I added a way to disable generator expressions I inverted the meaning of NO_GENERATOR_EXPRESSIONS.
2013-10-08 15:35:50 -04:00
Christoph Oelckers
eb186a5b92
Merge branch 'maint'
2013-10-07 11:58:53 +02:00
Christoph Oelckers
c4d2a021b0
- fixed: AInventory::BecomePickup must not restore the MF_COUNTITEM flag when transforming the inventory item into a pickup again.
2013-10-07 11:53:58 +02:00
Braden Obrzut
f386d6b1e3
- Embed the proper manifest file and group soure files when building Visual Studio projects with CMake. (The groups probably also apply to other project types as well.)
2013-10-06 14:37:51 -04:00
Randy Heit
4bd5bf310b
Do not use GT, GTEQ, or NEQ operators in the AST.
...
- Since the VM doesn't directly support the GT, GTEQ, and NEQ comparisons,
don't use them in the trees either. Instead, wrap them as LTEQ, LT, and
EQEQ inside a BoolNot operator.
2013-10-02 23:28:06 -05:00
Braden Obrzut
ffae34c5fd
- Changed the new default alignment keyword for drawimage from topleft to none in order to allow a potential topleft without image offsets.
2013-09-30 20:02:05 -04:00
Randy Heit
a0dbcb5d5b
Add TRUE and FALSE terminals to the zcc grammar
...
- I can't believe I completely forgot to let the parser handle true and
false literals.
- Consolidate all the %include blocks in zcc-parse.lemon into a single
one, because Lemon all of a sudden decided it didn't like me having more
than one in the grammar file.
- Added a PBool type to represent boolean values with.
2013-09-28 21:16:44 -05:00
Randy Heit
1948642758
Add Printf extension %H
...
- This conversion has behavior similar to %g: It automatically behaves like
%f or %e based on the number of output characters. However, unlike %g,
this decision is also based on what will produce the smallest string
without truncating the output. The precision field (the * in %.*f) is
ignored. Converting a double to text with %H and then back to a double
should be lossless.
2013-09-25 20:46:45 -05:00
Braden Obrzut
658b4f7e0f
- For some reason git decided not to include the actual changes for the last commit.
2013-09-21 15:30:32 -04:00
Braden Obrzut
e8bcbd14fb
- Added vid_asyncblit for Linux and OS X. It defaults to true and sets SDL_AYNCBLIT on the frame buffer. This allows for ZDoom to obtain ~100% CPU usage with an uncapped frame rate on Linux like it should. (Not sure if it does anything for OS X yet.) It also makes uncapped play smoothly for me (as long as the frame rate is >= 2*refresh rate), but I'm not sure if capped feels more jittery or not. I could use some feedback here. Do note that vid_asyncblit requires a restart after the value is changed.
2013-09-21 13:20:36 -04:00
Braden Obrzut
f73275ad88
- Applied Tesseract's patch for drawimage extensions. (Extended icon support and maximum width/height.)
2013-09-21 12:46:19 -04:00
Randy Heit
0fb9f98a96
Add void and error types; rejigger pointer types
...
- Added TypeVoid for statements, which produce no type.
- Added TypeError for expressions whose arguments are incompatible.
- Pointers now derive from PBasicType instead of PInt. Since they have their own register sets in the VM, this seems to make more sense than treating them as integers.
2013-09-20 21:10:20 -05:00
Randy Heit
fc843c28ba
Merge branch 'maint'
2013-09-18 22:06:31 -05:00
Randy Heit
5850279090
- Fixed: Thing_SetGoal could put an actor's target and goal out of sync.
...
If an actor is already targeting a goal, and Thing_SetGoal is used on
it, it would still be left targeting the old goal instead of the new
one. This messed up checks in A_Chase for walking towards a goal vs a
real target.
2013-09-18 22:03:59 -05:00
Randy Heit
ad7aefff20
- Fixed: Do not apply AVOIDMELEE logic when moving toward a goal
2013-09-18 21:52:29 -05:00
Randy Heit
75535fba72
Do not enter testing mode if a valid mode is not selected.
...
- It doesn't make much sense to "test" the current mode if a non-video
mode is selected in the menu, so don't.
2013-09-18 21:32:46 -05:00
Randy Heit
e3741c8097
GetSelectedSize() needs to check for a valid selection.
...
- With mouse navigation, there's no guarantee that there even is a
selected item.
2013-09-18 21:29:19 -05:00
Randy Heit
a7a7d5d6b3
Add missing prantheses for A_CustomPunch's puffFlags calculation
...
- Fixed: Need parentheses for precedence when setting puffFlags in
A_CustomPunch. Otherwise, it's completely broken.
2013-09-18 21:25:00 -05:00
Randy Heit
d05cdb79ef
Switch true to LAF_ISMELEEATTACK inside A_Punch's call to P_LineAttack()
2013-09-18 21:22:21 -05:00
Randy Heit
0cf68af7d2
Overload operator = for player_t
...
- This fixes crashes when quitting multiplayer games because the default
byte-for-byte copy caused PredictionPlayerBackup and the console player
to point to the exact same userinfo data and to both try and free it
when they are deleted.
2013-09-18 21:14:44 -05:00
Randy Heit
285be8db92
Fixed: wi_noautostartmap was not sync safe
...
- Make wi_noautostartmap a userinfo cvar. This allows it to be
communicated across the network and saved in demos. If any player has it
set, then the intermission screen will not automatically advance to the
next level.
2013-09-18 20:45:39 -05:00
Randy Heit
e748c49dd0
- Fixed: m_specialpaths.cpp did not compile under Linux.
2013-09-18 17:29:42 -05:00
Christoph Oelckers
8ef130c376
Merge branch 'master' of https://github.com/rheit/zdoom
2013-09-18 09:40:48 +02:00
Christoph Oelckers
f591c5df5e
- fixed: saving the config to the user's known folders should use the GAME_DIR #define, not 'zdoom' so that child ports can have their own.
2013-09-18 09:40:40 +02:00
Randy Heit
e021fba5e1
Improve NoDelay reliability.
...
- Instead of tying NoDelay behavior to OF_JustSpawned, use a new actor
flag, MF7_HANDLENODELAY. This only gets cleared once it has actually
been checked by Tick(). This is necessary because freeze mode delays the
initial run of Tick() past the initial spawn, so OF_JustSpawned will no
longer be set when it does the initial tick.
- Delay NoDelay processing if an actor is spawned dormant. Actors spawned
dormant have Deactivate() called before they tick, so MF7_HANDLENODELAY
will remain set as long as an actor is dormant. This allows the NoDelay
handling to occur as expected once it is activated.
2013-09-17 20:44:13 -05:00
Randy Heit
a3e74bb39f
Merge branch 'master' of github.com:rheit/zdoom
2013-09-17 17:32:04 -05:00
Randy Heit
88b05fe2a1
Fixed: SHGetKnownFolderPath needs to be declared as WINAPI.
2013-09-17 17:31:29 -05:00
Christoph Oelckers
c1aac878b0
Merge branch 'maint'
2013-09-15 23:12:21 +02:00
Christoph Oelckers
8847d5649a
- fixed: Bridge needs to call Super::Destroy.
2013-09-15 23:11:55 +02:00
Christoph Oelckers
d36afb975c
- fixed the Linux portion of m_specialpaths.cpp which had a section of GetUserFile duplicated.
2013-09-15 08:57:22 +02:00
Randy Heit
0645053431
Add support for standard file paths on Windows.
...
- If the current user does not have write permissions for the directory
zdoom.exe is located in, use standard folder paths located in their home
directory instead. This is a common scenario when people put ZDoom into
Program Files. (Ironically, zdoom.ini used to be in AppData, buth then
people complained when it wasn't in the same directory as zdoom.exe, so
it got turned into zdoom-<user>.ini so at least it could retain some
multi-user support. I'm not sure when the AppData support was removed,
though, since it should have still been kept around for migrating
configs to the new name.)
2013-09-14 23:07:59 -05:00
Randy Heit
da02a44126
Consolidate special path functions into m_specialpaths.cpp
...
- Also remove CDROM_DIR while I'm at it.
2013-09-14 21:04:00 -05:00
Christoph Oelckers
e4e26e7aa7
Merge branch 'maint'
2013-09-13 10:17:38 +02:00
Christoph Oelckers
ea0e4ed344
- fixed: The Hexen bridge must make its balls disappear when it gets destroyed.
...
Hexen did this with a call to A_BridgeRemove in Thing_Destroy which merely set a flag in the bridge object, which cannot be done safely in ZDoom because it's not guaranteed that the ball object calls A_BridgeOrbit and the garbage collector may delete the bridge actor before it can be checked so now the Bridge's Destroy method deletes all balls attached to the bridge object itself.
2013-09-13 10:07:43 +02:00
Randy Heit
743b05189e
Give the parser knowledge of constants for unary - and +
...
- Since the tokenizer never gives the parser negative numbers but always a
unary minus followed by a positive number, it seems reasonable to make
the parser smart enough to turn these into negative constants without
generating extra tree nodes.
- And since we're doing it for unary -, we might as well do it for unary +
as well and avoid extra nodes when we know we don't need them.
2013-09-12 22:22:43 -05:00
Randy Heit
2a1414ad66
Use labels in autogenerated enum value expressions
...
- For an enum like this:
enum { value1 = SOME_NUM*2, value2 };
Generate an increment expression for value2 of the form
(add (id value1) 1)
and not
(add (* SOME_NUM 2) 1)
2013-09-12 22:06:57 -05:00
Randy Heit
af8e0f2ba6
Represent enumerations as constant definitions
...
- Instead of representating enumeration values with a special node type,
use the same ZCC_ConstantDef nodes that const_def produces. These are
created at the same scope as the ZCC_Enum, rather than being contained
entirely within it. To mark the end of enums for a single instance of
ZCC_Enum, a ZCC_EnumTerminator node is now appended to the chain of
ZCC_ConstantDefs.
2013-09-12 22:00:49 -05:00
Randy Heit
d5fa550118
Make ZCC_TreeNode::AppendSibling() work with lists
...
- Previously, you could only append lone nodes to ZCC_TreeNode lists.
Now you can append one list to another.
2013-09-12 22:00:49 -05:00
Randy Heit
2ab3974752
Add a PSymbolConstString class
...
- Constants can be strings, but the existing PSymbolConst couldn't handle
them. The old PSymbolConst is now PSymbolConstNumeric, and the new
PSymbolConst is a now a baseclass for it and PSymbolConstString.
2013-09-10 22:01:00 -05:00
Randy Heit
33e835b58d
Accept name constants in the grammar
2013-09-10 21:56:13 -05:00
Randy Heit
b6e525d935
Add missing closing " for string constants in AST dumps
2013-09-10 21:50:27 -05:00
Randy Heit
52d5e74e7e
Mark unsigned constants in AST dumps.
...
- Add the u suffix to unsigned integer constants printed in AST dumps.
2013-09-10 21:48:15 -05:00
Randy Heit
1b4851224e
Let the grammar accept unsigned integer constants
2013-09-10 21:44:32 -05:00
Randy Heit
33344201fa
Let the scanner returned unsigned integers
...
- The scanner already recognized the u suffix for unsigned integers, but
otherwise ignored it. Return it as a proper token.
2013-09-10 21:40:05 -05:00
Randy Heit
aec6aff7a8
Don't accept l as a suffix for floating point numbers in the scanner
...
- We're never going to support long doubles, so don't pretend.
2013-09-10 21:30:33 -05:00
Randy Heit
6545c48e07
Accept constant definitions at global scope
2013-09-10 21:25:50 -05:00
Randy Heit
3044fdd0a9
Use %f instead of %g in AST dumps
...
- To ensure that floating point constants are identifiable as floating
point, FLispString::AddFloat() now prints them with %f.
2013-09-10 21:24:32 -05:00
Randy Heit
61666e1515
Consolidate constant expression nodes into a single type
...
- Instead of having ZCC_ExprString, ZCC_ExprInt, and ZCC_ExprFloat,
just use a single ZCC_ExprConstant. It should simplify type
promotion and constant folding in the future.
2013-09-10 21:10:48 -05:00
Randy Heit
f9f8d1e79b
Add a type field for ZCC expressions.
...
- Constants can fill out the type field right away. Other expressions will need
to wait until a later pass, after names have been resolved, so they get
initialized to NULL.
2013-09-10 20:50:21 -05:00
Randy Heit
6584819d01
Use PType for typing things in PSymbolConst.
2013-09-07 20:35:46 -05:00
Christoph Oelckers
251cdacf26
Merge branch 'master' into scripting
...
Conflicts:
src/g_shared/a_randomspawner.cpp
src/g_strife/a_strifeweapons.cpp
src/thingdef/thingdef_parse.cpp
wadsrc/static/actors/constants.txt
2013-09-03 09:01:28 +02:00
Christoph Oelckers
18386e4b23
Merge branch 'maint'
2013-09-03 08:44:52 +02:00
Christoph Oelckers
11c026ee84
- fixed: displaying sprites on the automap ignored both the actor's scale and translation.
2013-09-03 08:34:55 +02:00
Christoph Oelckers
75dd5503cf
- fixed: Cost strings for dialogues must not be added in the dialogue parser but while displaying the message to properly handle stringtable entries.
2013-09-03 08:24:47 +02:00
Christoph Oelckers
4ed27c22fd
Merge branch 'master' of https://github.com/MazterQyou/zdoom
2013-09-03 07:59:37 +02:00
Alex Qyoun-ae
b6baeecd9a
Fixed compilation with LLVM compilers
2013-09-03 03:49:39 +04:00
Christoph Oelckers
ba2a07fb26
- removed all uses of single precision floats from FraggleScript code.
2013-09-02 09:08:47 +02:00
Randy Heit
267030c759
Merge branch 'maint'
2013-08-30 23:13:32 -05:00
Randy Heit
260ce62175
Don't abort for TEXTUREx lumps that define textures with no patches
...
- A texture defined in TEXTUREx without any patches isn't necessarily an
error, so accept. This also means they shouldn't be used for determining
if a TEXTURE directory belongs to Strife instead of Doom.
2013-08-30 23:10:20 -05:00
Randy Heit
b0371e1804
Don't abort when merely checking if a non-map is a map
...
- When P_OpenMapData() is called by P_CheckMapData(), we don't actually
care if any required lumps are missing. This just means it isn't a valid
map, so don't abort with I_Error().
2013-08-30 22:38:57 -05:00
Randy Heit
33ee8f9fef
Merge branch 'maint'
2013-08-29 22:27:49 -05:00
Randy Heit
0f0d9da839
Reset FirstFreeEntry in ACSStringPool::ReadStrings()
...
- Fixed: When an ACS string pool was read from a savegame, FirstFreeEntry
would not be updatedt, except by the Clear() function. This left FirstFreeEntry
at 0, which meant the next string added to the pool would always go in
slot 0, whether it was free or not.
2013-08-29 22:22:30 -05:00
Randy Heit
7143ae49e1
Fixed: CheckPlayerCamera not sync safe
...
- If a player is spying through another player, CheckPlayerCamera will
return the TID of the player you are "spying", but as coopspy isn't a
net command, this wont be reflected by all nodes. So to fix this,
CheckPlayerCamera now returns -1 if a player's camera is that of any
player at all. (thanks edward850)
2013-08-29 21:45:37 -05:00
Randy Heit
aac0de3e48
Fixed: Make A_SetTics work with weapons.
...
- When A_SetTics is called from a weapon, we need to set the tics for the
psprite instead of the actor itself.
2013-08-29 21:40:01 -05:00
Randy Heit
28e5cc536a
Add some awareness of short file names
...
- Added I_GetLongPathName(). It wraps the Win32 API's GetLongPathName().
DArgs::CollectFiles() now calls this for every argument it processes, so
any arguments passed using short file names will be converted to long
file names. This is mainly of interest so that savegames will never
record the short file name, which can change based on what else is in
the directory.
2013-08-29 21:24:05 -05:00
Randy Heit
2823ea5de3
Annote AST nodes with source information
2013-08-28 22:59:03 -05:00
Randy Heit
5e0e74a47d
Fix incorrect comment
2013-08-28 22:35:29 -05:00
Christoph Oelckers
9c2454eacc
Merge branch 'maint'
2013-08-28 11:20:53 +02:00
Christoph Oelckers
26c381224c
- removed unused constants in p_map.cpp.
2013-08-28 11:16:30 +02:00
Christoph Oelckers
f8899f98fc
- fixed: The secret counter was not incremented for items that had the UDMF COUNTSECRET flag set.
2013-08-28 11:14:48 +02:00
Braden Obrzut
0a16e9a256
- Fixed uninitialized variable in A_AlertMonsters.
2013-08-27 20:42:35 -04:00
Braden Obrzut
0fb37ca5f1
Merge branch 'maint'
2013-08-27 20:41:10 -04:00
Braden Obrzut
5079d6c505
- Fixed: clang 32-bit compile (I hear it still doesn't run though).
...
- Applied edward's patch to remove boolean increment.
2013-08-27 20:28:38 -04:00
Randy Heit
064710422b
Accept empty struct and enum definitions (useless as they may be)
2013-08-24 20:32:59 -05:00
Randy Heit
80daf736ec
Accept enums and structs defined at global scope
2013-08-24 20:28:26 -05:00
Randy Heit
956d754804
DECORATE cleanup
...
- Remove some ExpVal stuff that wasn't used.
2013-08-23 22:17:08 -05:00
Randy Heit
2f7183b937
Use PField instead of PSymbolVariable for DECORATE expressions
...
- The type systems used by PField and FxExpression are completely
incompatible, but I think I got the differences taken care of as far
as ParseNativeVariable(), ParseUserVariable(), and FxClassMember are
concerned.
- Support for declaring native bool variables has been removed for the time
being. It wasn't used anyway.
- Removed PSymbolVariable.
2013-08-23 22:02:51 -05:00
Randy Heit
0d1973a659
Make PStruct::AddField() check for duplicates
...
- PStruct::AddField() now checks the symbol table for a symbol of the same
name before adding a new field. If the name is in use, it returns NULL.
2013-08-23 21:56:18 -05:00
Randy Heit
27ddaad7ca
Set PStatePointer's TypeTableType in PType::StaticInit()
...
- It was forgotten about earlier.
2013-08-23 21:54:35 -05:00
Randy Heit
263b160905
Add PFixed and PArray types
...
- These are types that are stored as integers but otherwise handled as floating point values.
2013-08-23 21:53:54 -05:00
Randy Heit
b5d37348f6
Add code generation simplification methods to PType
...
- To assist with using PType with DECORATE expression code generation,
added GetStoreOp(), GetLoadOp(), and GetRegType() to PType.
2013-08-23 21:52:04 -05:00
Randy Heit
2ec3cbddb9
Mark PType's GetValueInt method as const
2013-08-23 21:50:33 -05:00
Randy Heit
3ea0d1b444
Add VM opcodes NOP, LANG, and SANG
...
- To simplify code generation genericizing, add three new opcodes
* NOP: No-Operation
* LANG: Load Angle - load a BAM angle into a float reg as degrees
* SANG: Save Angle - store a float reg into a BEM angle, converting from degrees
2013-08-23 21:46:40 -05:00
Randy Heit
a69089ffd7
Change disassembly dumps to be controlled from one spot
...
- Instead of changing three places to turn disassembly dumps on and off,
do it with just one place. As a side effect, this now handles the case
where the dump file can't be opened.
2013-08-23 21:43:56 -05:00
Randy Heit
3f6c3fa927
Remove unused GetVariableValue()
2013-08-21 23:19:46 -05:00
Randy Heit
d798c7896c
Remove FxGlobalVariable class
2013-08-21 23:01:41 -05:00
Randy Heit
01822c002f
Use PField instead of PSymbolVariable for A_SetUserVar/Array
2013-08-21 22:58:12 -05:00
Randy Heit
6aee7833d0
Use PField instead of PSymbolVariable for SetMapThingUserData()
2013-08-21 22:51:12 -05:00
Randy Heit
5aff8156ba
Use PField and not PSymbolVariable for ACS's Get/SetUserVariable
2013-08-21 22:39:28 -05:00
Randy Heit
4cf0ef7e3f
Minor PField changes.
...
- Rename FieldOffset and FieldType so they no longer have the "Field" prefix
- Add a Flags field.
2013-08-21 22:38:05 -05:00
Randy Heit
e50c00c856
Add generic integer setters and getters for PInt and PFloat types
2013-08-21 22:36:46 -05:00
Randy Heit
6198c000af
Fix A_DropItem from merge
2013-08-21 22:31:40 -05:00
Randy Heit
fd9c450c6e
Fix merge for ACS's DropItem
2013-08-21 22:28:53 -05:00
Christoph Oelckers
8e8f6cf5a6
- A_AlertMonsters flags submission by NeuralStunner.
2013-08-20 20:33:03 +02:00
Christoph Oelckers
3e4678765b
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/thingdef/thingdef_codeptr.cpp
2013-08-18 12:18:59 +02:00
Christoph Oelckers
116defbb35
- fixed: LookForEnemiesInBlock needs to check for MF7_NEVERTARGET.
2013-08-18 09:11:40 +02:00
Randy Heit
5fe5fe7c51
Merge branch 'scripting' of github.com:rheit/zdoom into scripting
2013-08-14 22:15:28 -05:00
Randy Heit
cf87d0f1e9
Use PFunction instead of PSymbolActionFunction in DECORATE parser
2013-08-14 22:00:16 -05:00
Randy Heit
aba691ad72
Implement NewClassPointer()
2013-08-14 21:59:10 -05:00
Randy Heit
8fbb4b90fb
Add some flags for PFunction
2013-08-14 21:56:21 -05:00
Randy Heit
ed1c22186f
Add PStatePointer type
2013-08-14 21:53:03 -05:00
Christoph Oelckers
62830f7927
- added separate automap color for non-counting monsters.
...
- fixed: using a nonexistent CVAR in a ColorPicker menu item caused a crash.
2013-08-14 00:32:05 +02:00
Christoph Oelckers
c8b4fb0d3d
- added a 'closemenu' CCMD so that menu options that close the menu can be added.
2013-08-13 21:09:46 +02:00
Christoph Oelckers
7a87e08107
- added MF7_ALWAYSTELEFRAG flag that causes an actor to be telefragged by everything that teleports into the same place.
2013-08-13 21:01:14 +02:00
Christoph Oelckers
9ebf345fec
Merge branch 'maint'
2013-08-13 08:53:23 +02:00
Christoph Oelckers
1b79f7d956
- fixed chance default for ACS's DropItem.
2013-08-13 08:52:53 +02:00
Christoph Oelckers
3518b4dd28
- allow menu's back button and the pause sign to be animated.
2013-08-12 22:46:45 +02:00
Christoph Oelckers
61c94648dc
- added ACS CheckFlag function.
2013-08-12 22:38:52 +02:00
Christoph Oelckers
ba3e57281a
Merge branch 'maint'
2013-08-12 21:12:20 +02:00
Christoph Oelckers
072b66fb9f
- fixed: The music that's defined in the Gameinfo section of MAPINFO could not set the order for multitrack music lumps.
2013-08-12 21:11:53 +02:00
Christoph Oelckers
aa03609b69
- added IF_TOSSED inventory flag.
2013-08-12 21:00:23 +02:00
Christoph Oelckers
be1a00c537
Merge branch 'maint'
2013-08-12 20:42:21 +02:00
Christoph Oelckers
e14590d8ce
- moved NOTELESTOMP to flags7. When committing I was accidentally on maint instead of master and in master flags6 was already full.
2013-08-12 20:41:33 +02:00
Christoph Oelckers
44a1b94ad9
- added MF6_NOTELESTOMP flag that prevents an actor from telefragging under all possible circumstances.
2013-08-12 20:23:54 +02:00
Christoph Oelckers
f2c250d35d
- flags7 variable added to AActor.
2013-08-12 20:09:21 +02:00
Christoph Oelckers
2bcc5cd7cc
Merge branch 'maint'
2013-08-12 09:14:18 +02:00
Christoph Oelckers
ecfe67dd78
- removed weirdness from Powerup.Strength property that was specifically tailored to its use on PowerInvisibility and made its use problematic elsewhere.
2013-08-12 09:13:55 +02:00
Christoph Oelckers
fabf8272e6
Merge branch 'maint'
2013-08-11 21:04:17 +02:00
Christoph Oelckers
1b2d8420bb
- DropItem for ACS.
2013-08-11 20:57:53 +02:00
Christoph Oelckers
c0174ea7cd
- Added A_DropItem for DECORATE.
2013-08-11 20:48:08 +02:00
Christoph Oelckers
35764ff3b2
- fixed: Powerup.Strength is a fixed point value, so using it as health amount for PowerRegeneration requires division by FRACUNIT.
2013-08-11 20:39:53 +02:00
Christoph Oelckers
5bb4b558a4
Merge branch 'maint'
2013-08-11 13:37:36 +02:00
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
Randy Heit
55bec365e8
Added a way to specify paramater flags for PFunction
...
- And right now, the only flag is "Optional".
2013-08-10 20:24:12 -05:00
Randy Heit
973b0f5c56
Change PFunction's superclass from PNamedType to PSymbol
2013-08-10 20:17:55 -05:00
Randy Heit
6575499f37
Added basic implementation for PField.
...
- I don't know why this didn't give me trouble before, but I needed to add IMPLEMENT_CLASS for PField.
2013-08-10 20:17:29 -05:00
Randy Heit
3e46e6376c
Added NewPrototype() function
2013-08-10 20:06:54 -05:00
Randy Heit
f18c7b8959
Make FType::Hash work for PPrototype
...
- For Prototypes, Hash is passed the address of two TArrays. If we blindly
hash those without checking their contents, then we can forget about
ever finding any matching prototypes in the type table. (Not that I
remember why I wanted them to be unique, but I'm sure I must have had my
reasons.)
2013-08-10 20:05:42 -05: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
bba092cc0b
Merge branch 'master' into scripting
...
Conflicts:
src/d_player.h
src/g_doom/a_archvile.cpp
src/thingdef/thingdef.h
src/thingdef/thingdef_properties.cpp
2013-08-09 13:03:28 +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
Randy Heit
93cbdd37a5
PArray's size should take alignment into account.
2013-08-08 22:27:40 -05:00
Randy Heit
6c1f3a1396
Added PStruct::AddField()
2013-08-08 22:27:40 -05:00
Randy Heit
476a98652c
Remove extraneous PField class
...
- Remove the existing PField class, rename PMemberField to PField, and
derive it from PSymbol instead of the old PField.
2013-08-08 22:27:39 -05:00
Randy Heit
7e24f6b00c
- Added NewStruct() function.
2013-08-08 22:27:39 -05:00
Randy Heit
0ec33191aa
- Added NewEnum() function.
2013-08-08 22:27:39 -05:00
Randy Heit
12a312b6b4
- Fixed: NewArray returned the element type, not the array type.
2013-08-08 22:27:38 -05:00
Randy Heit
dbaf72772b
Move the symbol table from PClass to PStruct.
2013-08-08 22:27:38 -05:00
Randy Heit
11b588de4a
Add names for fallback tokens.
...
- Fixed: When falling back to the IDENTIFIER token, the identifier it
would get was undefined, because it never got initialized.
2013-08-02 21:54:50 -05:00
Randy Heit
5cc8a9c2a7
Remove redundant Resolves
...
- ParseExpression() calls Resolve() on the FxExpression before returing
it, so there's no need to immediately Resolve() what it returns.
2013-08-02 21:19:05 -05:00
Randy Heit
4f528e3832
Remove lax from FCompileContext
...
- It's always set to true these days, so let's get rid of it.
2013-08-02 21:13:40 -05:00
Randy Heit
09c902ce55
Remove isconst from FCompileContext.
...
- It's not used anymore, so keeping it around is pointless.
2013-08-02 21:09:49 -05: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
Randy Heit
58f088c1ab
Remove FxExpression::EvalExpression() entirely
...
- For the purposes of getting constant values from expressions, the only
class where Resolve doesn't duplicate the functionality of
EvalExpression was FxConstant. So, every other class has had its
EvalExpression taken away, and FxConstant has had it renamed to GetValue.
2013-07-30 22:52:27 -05: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
Randy Heit
c810b4d724
Use new degree FLOPs for DECORATE expressions.
...
- Now that the VM supports degrees, use those instructions when emitting
code for cos and sin DECORATE expressions. (This looks like it also
fixed a bug where sqrt also did the degree to radian conversion.)
2013-07-28 20:31:23 -05:00
Randy Heit
ff7b1f6e5e
Add degree variants of FLOP operations
...
- Added versions of the trig operations supported by FLOP that can work
with degrees directly instead of radians.
- Reorder FLOPs into more sensible groupings.
2013-07-28 20:22:47 -05:00
Randy Heit
0468b1f9ce
Delete default expressions for action definitions
...
- After StateParams was removed in commit 4a1fbdb
, the expressions for
default paramaters that ParseActionDef() created went nowhere and were
lost. Properly throw them away by deleting them as soon as they've been
parsed.
2013-07-28 20:05:07 -05:00
Randy Heit
241622300e
Removed some EvalExpression implementations
...
- Removed EvalExpression() implementations from some subclasses of
FxExpression that don't make any sense in the context of evaluating a
constant value.
2013-07-28 19:40:48 -05:00
Randy Heit
2c24e7f9c6
Remove self pointer from FxExpression::EvalExpression()
...
- Every place that calls this now (which are all in thingdef_parse.cpp)
passed NULL for the self pointer, so it was superfluous to have around.
2013-07-28 19:28:14 -05: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
909ec2e35a
Merge branch 'maint' into scripting
2013-07-28 10:47:17 +02: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
Randy Heit
4a1fbdb32a
Remove all state expression/param stuff
...
- This all became vestigial code after the relevant information was all
moved into FStateTempCall. Now that the MBF code pointer code has been
converted, I can be sure it wasn't still used anywhere.
2013-07-27 22:34:44 -05:00
Randy Heit
9485752b55
Reimplement MBF code pointer parameters
...
- Where the old code mucked about with parameter lists to convert misc1
and misc2 values to action function parameters, we now create new script
functions using a VMFunctionBuilder to pass the parameters to an action
function. This code is completely untested, as I have no BEX patches to
test it with, but at least it compiles without error.
2013-07-27 22:07:37 -05:00
Randy Heit
6cf0916f72
Use VMFunctionBuilder::EmitParamInt in thingdef_expression.cpp
2013-07-27 22:06:14 -05:00
Randy Heit
0603295822
Added EmitParamInt to VMFunctionBuilder
2013-07-27 22:06:14 -05:00
Randy Heit
57bb9c2f7a
Better disassembly of FLOP instructions.
...
- Annotate FLOP instructions with the name of the floating point operation
indicated by the C field.
2013-07-25 22:29:59 -05:00
Randy Heit
070c0a9e30
Stop leaking function damage expressions.
...
- Function damage expressions parsed from DECORATE are now stored in a
single array and deleted at the end of FinishThingdef().
2013-07-25 21:42:30 -05:00
Randy Heit
e3e32d7cca
Added DeleteAndClear method to TDeletingArray.
...
- Normally, TDeletingArray only deletes its contents when it is destroyed.
Now you can do it earlier if you want.
2013-07-25 21:41:18 -05: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
Randy Heit
f6bbd5abf7
Simplify AST dumps.
...
- More forced line breaks.
- Don't use extra parentheses in places where it can still be unambiguous
without them.
- Don't print the UserType for basic-types that aren't ZCC_UserType.
2013-07-24 21:35:02 -05:00
Randy Heit
7d304a4cb6
Partially revert commit 46c0127
...
- Being able to omit optional function arguments is not such a nonsensical
thing after all. However, the previous grammar was still inadequate for
representing this in a useful way.
2013-07-24 20:59:29 -05:00
Christoph Oelckers
cbc0b70e7c
- TransferStencilColor A_SpawnItemEx patch / by Ryan Cordell.
2013-07-24 20:15:17 +02:00
Randy Heit
9c86f1c220
Merge branch 'master' into scripting for plugged userinfo memory leak
...
Conflicts:
src/d_player.h
src/p_interaction.cpp
src/thingdef/thingdef_codeptr.cpp
2013-07-23 21:01:13 -05:00
Randy Heit
a136ca65ea
Allow functions without parameters
...
- Fixed: Trying to define a function without any parameters would silently
discard the function, because the declarator tested FuncParams instead
of FuncName to decide if it was a function.
2013-07-23 20:43:15 -05:00
Randy Heit
67caf3303b
Add the array size to ZCC_VarName
2013-07-23 19:59:47 -05:00
Randy Heit
0d25ed8289
state_call needs parenthesis around func_expr_list
...
- Fixed: state_call needs to enclose func_expr_list in LPAREN/RPAREN
itself, because func_expr_list doesn't include them. This means it also
needs a separate production to accept calls without a parameter list.
2013-07-23 19:34:21 -05:00
Randy Heit
46c0127ebb
Don't accept function params starting with a comma
...
- Fixed: func_expr_list would accept nonsense like this:
Myfunction(, 1, 2);
2013-07-23 19:28:58 -05:00
Randy Heit
aadd4e4de6
ZCCParseNode needs to initialize TopNode
...
- If the parsing is a complete failure, then TopNode won't ever be set to
anything during the parsing process.
2013-07-23 18:38:57 -05: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
Randy Heit
733e5fa2e1
Recognize C-style array declarations
...
- The variable_name production now accepts an optional array size
argument. (Not yet passed to the AST.)
- The notation for using dotted ID lists as types has been changed from
[id1.id2] to .id1.id2, beacuse the former conflicts with the notation
for arrays.
2013-07-19 23:25:01 -05:00
Randy Heit
9cf9226e86
Don't leave open parentheses hanging at line breaks
2013-07-17 23:47:06 -05:00
Randy Heit
c733e4229a
Added more linebreaks to AST dumps
2013-07-17 23:47:06 -05:00
Randy Heit
726ecaf01b
Added basic pretty printing for AST dumps
2013-07-17 23:47:05 -05: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
Randy Heit
a7bbe299e3
Assignment for expr ::= unary_expr was backwards
2013-07-13 23:25:53 -05:00
Randy Heit
ec32248f31
Set value of assign_op explicitly.
2013-07-13 22:34:33 -05:00
Randy Heit
62fb43d67a
Properly pass statements around in the parser.
2013-07-13 22:26:29 -05:00
Randy Heit
6088acd4c0
Add function body to ZCC_FuncDeclarator
2013-07-10 23:26:56 -05:00
Randy Heit
572823046c
Add newlines for better readability in AST dump.
2013-07-10 23:26:01 -05: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
Randy Heit
4deeb8d8ae
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/g_doom/a_doomweaps.cpp
src/p_local.h
src/p_map.cpp
src/sdl/i_main.cpp
src/thingdef/thingdef_codeptr.cpp
2013-06-25 19:28:25 -05:00