Commit graph

1713 commits

Author SHA1 Message Date
terminx
25cd73d99a Patch from Nuke.YKT to use the shade tables for distance shading in Polymost
This makes the shading in Polymost more or less 1:1 with classic mode.

git-svn-id: https://svn.eduke32.com/eduke32@7412 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:39 +00:00
terminx
1a0ee0f4c3 Polymost relative texture alignment patch from Nuke
This "fixes" relative texture alignment for floors and ceilings in Polymost to match classic mode. "Fix" is in quotes because this actually means the alignment is less correct in terms of proper scaling than before, but more correct in terms of accuracy to classic mode.

git-svn-id: https://svn.eduke32.com/eduke32@7411 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:35 +00:00
terminx
b819b298ee ifdef EDUKE32_STANDALONE something for hardcoded Duke projectiles
git-svn-id: https://svn.eduke32.com/eduke32@7410 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:31 +00:00
terminx
da6b01bf8e Improve collision for projectiles
This does a few things:

-projectiles now use clipmovex() instead of clipmove() (this is like CON_CLIPMOVENOSLIDE)
-the z distances passed to clipmove() are now calculated from the sprite's size instead of being hard-coded
-projectiles now move as if they had SFLAG_NOCLIP applied for the first tic after spawning

git-svn-id: https://svn.eduke32.com/eduke32@7409 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:27 +00:00
terminx
b61027086c Fix Polymost HOM
git-svn-id: https://svn.eduke32.com/eduke32@7408 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:23 +00:00
terminx
2ec041b10e Use correct type in range-based loop
git-svn-id: https://svn.eduke32.com/eduke32@7407 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:19 +00:00
terminx
c7f003a1a9 Remove a couple of blocks in A_MoveSpriteClipdist() from standalone builds and call setsprite() unconditionally before doing any movement
git-svn-id: https://svn.eduke32.com/eduke32@7406 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:16 +00:00
terminx
798eaeb980 Allow passing a null pointer to spriteheightofsptr() for the height return value
git-svn-id: https://svn.eduke32.com/eduke32@7405 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:12 +00:00
terminx
76863607e3 This fixes a bug in clipmove() where clipping against sprites above you was wrong
Because this is a check for sprites above the sprite being moved and not a check for sprites below, the height of the sprite should not be taken into account at all here and the base of the sprite should be used instead.

git-svn-id: https://svn.eduke32.com/eduke32@7404 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:08 +00:00
terminx
770b255bff Calculate texture coordinates as double since we're storing them that way anyway
This isn't really intended to fix any specific issue, but to shut up Visual Studio whining about arithmetic overflows.

git-svn-id: https://svn.eduke32.com/eduke32@7403 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:05 +00:00
terminx
729f83761a Rename "player speech" menu option in standalone builds
git-svn-id: https://svn.eduke32.com/eduke32@7402 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:00 +00:00
terminx
c8b161704b Patch from Nuke.YKT to work around a Polymost glitch with slopes
git-svn-id: https://svn.eduke32.com/eduke32@7401 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:57 +00:00
terminx
f1ea04e7da Another Polymost TROR patch from Nuke.YKT
This one should bring Polymost TROR into parity with classic mode.

git-svn-id: https://svn.eduke32.com/eduke32@7400 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:53 +00:00
terminx
92c52d7e60 Formatting
git-svn-id: https://svn.eduke32.com/eduke32@7399 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:48 +00:00
terminx
6190fbb4f2 clipmove() improvements
This fixes an issue with clipmove() caused by sectors behind walls which were candidates for clipping not being added to the list of sectors that definitely clip the player, forcing the function to fall back to a slow, sector-by-sector brute force approach. This brute force approach has also been removed in favor of something more efficient.

git-svn-id: https://svn.eduke32.com/eduke32@7398 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:45 +00:00
terminx
00cac93851 Bump MAXCLIPNUM to 2048
git-svn-id: https://svn.eduke32.com/eduke32@7397 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:41 +00:00
terminx
0e01b45227 Revert r7388 because it just wasn't working out
git-svn-id: https://svn.eduke32.com/eduke32@7396 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:37 +00:00
hendricks266
5258e10271 Fix some GL ES compilation issues in polymost.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7395 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-11 06:06:51 +00:00
hendricks266
6ba0b64de6 Add buildvfs_fopen_write_text
Long-term we will need to replace all uses of "\n" in string literals printed to disk.

git-svn-id: https://svn.eduke32.com/eduke32@7394 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-11 06:06:47 +00:00
hendricks266
381517ffa0 Add CLEAR and KP_CLEAR to the SDL key translation table as synonyms for KP_5
git-svn-id: https://svn.eduke32.com/eduke32@7393 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-11 06:06:43 +00:00
terminx
f54f35a067 Polymost TROR patch from Nuke.YKT--nice!
git-svn-id: https://svn.eduke32.com/eduke32@7392 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:49:11 +00:00
terminx
c6261b9f45 It looks like this is OK to remove now!
git-svn-id: https://svn.eduke32.com/eduke32@7391 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:49:07 +00:00
terminx
0e6dd28573 Patch from Nuke.YKT to clip Polymost spans to screen borders
git-svn-id: https://svn.eduke32.com/eduke32@7390 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:49:03 +00:00
terminx
e33fed3bf8 Add Nuke.YKT to thanks section in credits and move pogokeen to active developers
This also cleans up the code for MENU_CREDITS4 so that it's significantly easier to alter in the future if needed.

git-svn-id: https://svn.eduke32.com/eduke32@7389 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:48:59 +00:00
terminx
a206a83020 This seems to help with some polygon drawing issues in Polymost for now
git-svn-id: https://svn.eduke32.com/eduke32@7388 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:48:55 +00:00
terminx
b72dec2940 Fix compilation with winlayer
There are still a bunch of warnings, but fixing warnings in deprecated code that only one guy uses anymore isn't an efficient use of time.

git-svn-id: https://svn.eduke32.com/eduke32@7387 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:48:50 +00:00
terminx
ea66c0a682 Well, that didn't take long :D
git-svn-id: https://svn.eduke32.com/eduke32@7386 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-03 11:15:20 +00:00
terminx
ac87b8c945 I forgot to remove this comment in r7376
git-svn-id: https://svn.eduke32.com/eduke32@7384 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-03 11:15:12 +00:00
terminx
2b3be31fa2 As if you couldn't already tell from Ion Maiden, I like shitty one liners
git-svn-id: https://svn.eduke32.com/eduke32@7383 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-03 11:15:08 +00:00
terminx
3c0a38d47a Rename "INCOMPLETE_STRUCT_ACCESS" to CON_DISCRETE_VAR_ACCESS as it was neither incomplete nor anything to do with access to structs
However, it's remaining disabled because even with the new dispatch method it still doesn't improve performance any.

git-svn-id: https://svn.eduke32.com/eduke32@7382 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-03 11:15:01 +00:00
terminx
35b208eeab Fix saving to %APPDATA% on Windows...
git-svn-id: https://svn.eduke32.com/eduke32@7381 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:52:50 +00:00
terminx
33a3e9fbca Fix compilation error in texcache
git-svn-id: https://svn.eduke32.com/eduke32@7380 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:35:43 +00:00
terminx
a050281006 A curious Polymost optimization from Nuke.YKT
This bails out of drawing any domost spans that seem to be entirely outside of the range of the screen coordinates. Since this seems so obvious, I have to wonder if Polymost is supposed to be doing this elsewhere already...

git-svn-id: https://svn.eduke32.com/eduke32@7379 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:22:12 +00:00
terminx
e61831ad5d Fix CON issues introduced in r7357 and r7358
git-svn-id: https://svn.eduke32.com/eduke32@7378 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:22:08 +00:00
terminx
dbcd3968ee Am I missing something here?
git-svn-id: https://svn.eduke32.com/eduke32@7377 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:22:04 +00:00
terminx
8b7d099cbd Remove reference pointing to vm.pPlayer because it seems incompatible with the new dispatch method
git-svn-id: https://svn.eduke32.com/eduke32@7376 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:22:00 +00:00
terminx
23e53c17fc This might not be needed anymore after the previous commit
git-svn-id: https://svn.eduke32.com/eduke32@7375 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:56 +00:00
terminx
0e107acd39 Work around floating point precision issues in Polymost causing problems when rendering certain geometry from particular angles
git-svn-id: https://svn.eduke32.com/eduke32@7374 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:52 +00:00
terminx
61b89491c6 Lower MAXWALLSB
git-svn-id: https://svn.eduke32.com/eduke32@7373 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:48 +00:00
terminx
6a251fca16 Free inthash tables used by the CON compiler using the contents of inttables[] instead of listing them explicitly in C_Compile()
git-svn-id: https://svn.eduke32.com/eduke32@7371 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:41 +00:00
terminx
e84d62416d Patch from Striker to allow selective tile redefinition in .def files based on the crc of the original tile
This only works for "tilefromtexture" for now.

git-svn-id: https://svn.eduke32.com/eduke32@7370 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:37 +00:00
terminx
f31f31a17e Rework previous commit to use a little less floating point math
git-svn-id: https://svn.eduke32.com/eduke32@7369 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:32 +00:00
terminx
17fa3ea5ff Patch from Nuke.YKT to fix voxel rotation in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7368 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:29 +00:00
terminx
6d9ecbcfb7 Marginally less sucky version of a function that completely sucks
git-svn-id: https://svn.eduke32.com/eduke32@7367 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:25 +00:00
terminx
db51740d3d Clean up a few uses of the hash table functions to account for hash_findcase() working properly now
git-svn-id: https://svn.eduke32.com/eduke32@7366 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:21 +00:00
terminx
3775bce3d7 Fix a crash when trying to access cvars through typing the name into the console with the wrong case
git-svn-id: https://svn.eduke32.com/eduke32@7365 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:16 +00:00
terminx
f7d4209084 Use lowercase when computing hashes in hash_getcode()
It turns out hash_findcase() has never worked properly because the correct bucket would never have been searched.

git-svn-id: https://svn.eduke32.com/eduke32@7364 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:13 +00:00
terminx
0de543ca2b This was slightly faster here
git-svn-id: https://svn.eduke32.com/eduke32@7363 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:09 +00:00
terminx
e9d53fce0a Optimize nonpow2_mhline and nonpow2_thline by replacing divide operation by cheaper multiplication
Patch from Nuke.YKT.

git-svn-id: https://svn.eduke32.com/eduke32@7362 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:05 +00:00
terminx
425c183c67 Clean up DirectSound driver in audiolib
This includes a small patch from Nuke.YKT as well.

git-svn-id: https://svn.eduke32.com/eduke32@7361 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:01 +00:00
terminx
c757725e65 Remove a "cheap fix" from multivoc that is no longer needed and should never have been needed in the first place
git-svn-id: https://svn.eduke32.com/eduke32@7360 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:20:56 +00:00
hendricks266
7414f29348 Add buildvfs, abstraction layer for file I/O.
Currently it passes calls through to the system libraries as before.

Also adds an incomplete implementation on PhysFS.

git-svn-id: https://svn.eduke32.com/eduke32@7359 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-01 08:51:50 +00:00
hendricks266
5c9b921285 CON: Implement a new VM dispatch method using an explicit jump table
Most of this patch is by pogokeen.

git-svn-id: https://svn.eduke32.com/eduke32@7358 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:49 +00:00
hendricks266
12bfbd5a06 CON: Macro-ize CON keyword tokens in gamedef.h and gameexec.cpp
Most of this patch is by pogokeen.

git-svn-id: https://svn.eduke32.com/eduke32@7357 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:43 +00:00
hendricks266
b7e9cd0791 CON: Move five missed opcodeless keywords down in gamedef.h
git-svn-id: https://svn.eduke32.com/eduke32@7356 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:40 +00:00
hendricks266
328e771636 CON: #ifdef out deactivated stuff that should not be half-in, half-out
git-svn-id: https://svn.eduke32.com/eduke32@7355 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:37 +00:00
hendricks266
f84cbd9a1a Clean up unused warnings
git-svn-id: https://svn.eduke32.com/eduke32@7354 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:33 +00:00
hendricks266
94504ee0c3 Fix net.cpp compilation failure under clang
git-svn-id: https://svn.eduke32.com/eduke32@7353 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:30 +00:00
terminx
b7e524d5d1 Fix autoaim bug introduced in r6942
git-svn-id: https://svn.eduke32.com/eduke32@7352 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-23 05:10:59 +00:00
terminx
766fb93191 Fix a crash when accessing SECTOR_WALLPTR with CON_SETSECTOR
git-svn-id: https://svn.eduke32.com/eduke32@7351 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 20:26:38 +00:00
terminx
4b1d268908 Use existing viewingrange and yxaspect for showview so it matches that of the main view
This fixes fov when using showview in EVENT_DISPLAYROOMS to do layered rendering, but it might not be right for uses of showview that simply display picture-in-picture stuff on screen.

git-svn-id: https://svn.eduke32.com/eduke32@7350 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 18:35:37 +00:00
terminx
e0b5e32be2 Clean up a little bit of yxaspect and viewingrange variable cruft in G_DrawRooms()
git-svn-id: https://svn.eduke32.com/eduke32@7349 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 18:35:33 +00:00
terminx
934f1e9ec6 Display value next to FOV slider and allow dropping FOV to 70
git-svn-id: https://svn.eduke32.com/eduke32@7348 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 18:35:28 +00:00
hendricks266
789d9bd8e6 Rename "textures" to "texturecache" and "textures.cache" to "texturecache.index"
This avoids conflicts with folders named "textures", such as in World Tour. Thanks to enderandrew for the observation.

git-svn-id: https://svn.eduke32.com/eduke32@7347 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 03:40:49 +00:00
terminx
e253f2e0a8 Fixes an issue with the automap
git-svn-id: https://svn.eduke32.com/eduke32@7346 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-21 19:36:47 +00:00
terminx
5eb007396d Round computed horiz instead of potentially truncating
git-svn-id: https://svn.eduke32.com/eduke32@7345 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-21 00:58:33 +00:00
terminx
e513ad21d1 Scale both mouse axes the same in CONTROL_GetMouseDelta()
git-svn-id: https://svn.eduke32.com/eduke32@7344 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-21 00:58:28 +00:00
terminx
10757aa836 PI -> fPI
git-svn-id: https://svn.eduke32.com/eduke32@7343 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:33:04 +00:00
terminx
a3f49b4584 Improve vertical mouse aim
This improves vertical mouse aim in two ways: the Y axis is normalized to match the sensitivity of the X axis, and horiz adjustment has been corrected so that the player's pitch is operated on as an angle instead of as the tangent of said angle. Based on a patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@7342 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:33:00 +00:00
terminx
eef6667fbc Save mouse and joystick analog scales, dead zones, and saturation values to .cfg whether they're the defaults or not
This fixes an issue where changing one of these values would result in the value being written to the .cfg, but changing the value back to the default would leave the old value in the .cfg.

git-svn-id: https://svn.eduke32.com/eduke32@7341 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:56 +00:00
terminx
e74cad12ad Increase MAXANGVEL for player input per tic from 512 to 1024
git-svn-id: https://svn.eduke32.com/eduke32@7340 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:52 +00:00
terminx
7b06ec9a6a atan2 -> atan2f
git-svn-id: https://svn.eduke32.com/eduke32@7339 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:48 +00:00
terminx
a85b9e8259 Change scope of sdlayer lastSwapTime variable
git-svn-id: https://svn.eduke32.com/eduke32@7338 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:44 +00:00
terminx
523121a995 Don't crash when attempting to define quotes at indexes that exceed MAXQUOTES
git-svn-id: https://svn.eduke32.com/eduke32@7337 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:39 +00:00
terminx
22ec4599b0 Fix typo
git-svn-id: https://svn.eduke32.com/eduke32@7336 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:30:11 +00:00
hendricks266
cf86f63121 Fix a mistake in r7322
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@7335 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-19 05:26:53 +00:00
hendricks266
f349dfdabf Menus: Fix the cursor being affected by viewport-annexing status bar sizes
git-svn-id: https://svn.eduke32.com/eduke32@7334 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-19 05:26:49 +00:00
terminx
360ee42e0e Fix system memory check
git-svn-id: https://svn.eduke32.com/eduke32@7333 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:50 +00:00
terminx
af83ff0675 Patch from Fox to fix positioning of SCUBAMASK tile with the full status bar
git-svn-id: https://svn.eduke32.com/eduke32@7332 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:46 +00:00
terminx
180c73d8ca Fix the automap glitch in the region around the full status bar in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7331 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:42 +00:00
terminx
e5c8c8c4fc Fix the direction which the shadow is cast in "modern" status bar ammo icon
git-svn-id: https://svn.eduke32.com/eduke32@7330 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:38 +00:00
terminx
8433d133b4 Patch from Fox:
Add a FOV option in the menu. Range from 75 to 120 degrees (at 4:3 resolution), default is 90.

New userdef "fov". Equals the FOV in 360 degrees.

Update Polymost projection hack, so it compensates for the FOV or height of the game view.

Fix FOV in Polymer when the full status bar is visible. Now the FOV depends of the width of the game view instead of the height.

git-svn-id: https://svn.eduke32.com/eduke32@7329 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:33 +00:00
terminx
27977403fd Remove 3 lines of audiolib header cruft
git-svn-id: https://svn.eduke32.com/eduke32@7328 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:27 +00:00
terminx
464e32d712 Remove read only bit from SPRITE_SECTNUM and SPRITE_STATNUM in m32script
git-svn-id: https://svn.eduke32.com/eduke32@7327 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:22 +00:00
terminx
4cf5a9c31a Mapster32: fix use of uninitialized values
git-svn-id: https://svn.eduke32.com/eduke32@7326 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-02 23:24:36 +00:00
terminx
975126edf4 Fix a couple minor issues with 90 degree wall texture rotation
git-svn-id: https://svn.eduke32.com/eduke32@7325 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-02 23:24:32 +00:00
terminx
38ff5e1c89 Add mousebits gamevar to m32script for querying mouse button states
git-svn-id: https://svn.eduke32.com/eduke32@7324 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 09:36:56 +00:00
terminx
c4753af497 Fix issue where a useless error would be printed to the log and bad memory reads could occur when compiling a CON script with an invalid structure member passed as gamevar structure access shortcut shorthand
git-svn-id: https://svn.eduke32.com/eduke32@7323 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 09:36:52 +00:00
terminx
1245799e6b screentext alignment patch from Fox
git-svn-id: https://svn.eduke32.com/eduke32@7322 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 09:36:47 +00:00
terminx
8e50f47aa4 rotatesprite hack from Fox
git-svn-id: https://svn.eduke32.com/eduke32@7321 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 00:19:56 +00:00
terminx
7a8e368197 CON access to raw q16 values for player horiz and ang etc
git-svn-id: https://svn.eduke32.com/eduke32@7320 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 00:13:05 +00:00
terminx
61c74f25aa Work around weird issue with Bgetsysmemsize() that occurs on exactly one system we've tested
git-svn-id: https://svn.eduke32.com/eduke32@7319 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 00:13:00 +00:00
terminx
d52151c2e8 Fix issue with definegamefuncname and undefinegamefunc
git-svn-id: https://svn.eduke32.com/eduke32@7317 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-23 00:21:52 +00:00
terminx
0a3b840d4e Add error message for SDL_SetGammaRamp() failures in videoSetGamma()
git-svn-id: https://svn.eduke32.com/eduke32@7316 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 22:51:08 +00:00
terminx
8098d04875 Add C as a secondary binding for crouch and remove the mouse look and crosshair toggles from the default key bindings--they can still be bound manually if desired.
git-svn-id: https://svn.eduke32.com/eduke32@7315 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 22:51:04 +00:00
hendricks266
450244e258 Fix missing/invalid palswaps and shades in automap with Polymost
Patch from Nuke.YKT.

git-svn-id: https://svn.eduke32.com/eduke32@7314 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 17:56:37 +00:00
hendricks266
9b17be7f3e CON: Add EVENT_DISPLAYROOMSCAMERATILE
git-svn-id: https://svn.eduke32.com/eduke32@7313 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 17:56:34 +00:00
hendricks266
a91391fdec Menus: Make the gamma slider move in increments of 0.05 instead of 0.1
git-svn-id: https://svn.eduke32.com/eduke32@7312 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 17:56:30 +00:00
terminx
f40dd37cca Mapster32: add wall point delete hotkey. Press shift+delete or the d key in 2d mode to delete a wall point without dragging it.
git-svn-id: https://svn.eduke32.com/eduke32@7311 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-13 23:26:54 +00:00
terminx
5882d9546c Add mutex to protect against S_Callback() being called from more than one thread at the same time
git-svn-id: https://svn.eduke32.com/eduke32@7310 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-13 23:26:50 +00:00
terminx
bd55b2d573 I honestly can't remember why I wrote this like this, but it's problematic so I'm changing it.
git-svn-id: https://svn.eduke32.com/eduke32@7309 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:22:14 +00:00
terminx
5f141ed8d6 Make the time period between averaging the min and max values shown with r_showfps 2+ user configurable with r_showfpsperiod
git-svn-id: https://svn.eduke32.com/eduke32@7308 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:22:10 +00:00
terminx
74d766d988 Create new MV_CleanupVoice() function to handle most of what was in MV_StopVoice() plus the MV_CallBackFunc() functionality
git-svn-id: https://svn.eduke32.com/eduke32@7307 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:22:05 +00:00
terminx
9f3cf8002b Slightly revise multivoc locking logic
git-svn-id: https://svn.eduke32.com/eduke32@7306 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:22:02 +00:00
terminx
97c2271b92 Fix an infinite loop in S_StopEnvSound() that could occur if the audio thread happened to finish playing a voice in between checking if g_sounds[].voices[].id > FX_Ok and calling FX_StopSound(), exacerbated by improper std::atomic usage
git-svn-id: https://svn.eduke32.com/eduke32@7305 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:58 +00:00
terminx
6ca492918e Slightly revise framerate limiter and r_showfps 2 display
git-svn-id: https://svn.eduke32.com/eduke32@7304 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:53 +00:00
terminx
1d74f4e944 Change the hotkeys for adjusting the camera horiz in Mapster32 3d mode from ctrl + a / z to alt + a / z to avoid conflicts with the undo hotkey
git-svn-id: https://svn.eduke32.com/eduke32@7303 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:48 +00:00
terminx
c9390f1845 Fix buffer overrun
git-svn-id: https://svn.eduke32.com/eduke32@7302 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:44 +00:00
terminx
a401dfed47 Enable undo/redo in Mapster32 3d mode. Not incredibly well tested.
git-svn-id: https://svn.eduke32.com/eduke32@7301 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:40 +00:00
terminx
a8c613c995 Add 75, 100, and 240 as options for the FPS limiter
git-svn-id: https://svn.eduke32.com/eduke32@7300 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:36 +00:00
terminx
ed0c45018e Re-add something I didn't intend to remove with r7297
git-svn-id: https://svn.eduke32.com/eduke32@7299 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-23 23:23:50 +00:00
terminx
5ff83a5f5f Remove 'none' as an option for the frame limiter in the menu and fix a bug with the slider for the offset
git-svn-id: https://svn.eduke32.com/eduke32@7298 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-23 23:23:46 +00:00
terminx
caf2a8c9c9 Re-enable -fno-strict-aliasing because apparently many versions of GCC across many platforms are still producing warning spew without it
git-svn-id: https://svn.eduke32.com/eduke32@7297 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-21 01:12:53 +00:00
terminx
a24c720e11 MSVC build fix
git-svn-id: https://svn.eduke32.com/eduke32@7296 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-16 23:28:09 +00:00
terminx
8447e3392d Fix NETCODE_DISABLED builds. We should probably rename Net_GetPackets() to something else, because it does other required things.
git-svn-id: https://svn.eduke32.com/eduke32@7295 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 22:33:15 +00:00
terminx
22ad4221d9 Fix loading screen tile
git-svn-id: https://svn.eduke32.com/eduke32@7294 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 22:33:09 +00:00
terminx
1c369d4978 Fix issue where the option to enable or disable Polymer wasn't being saved properly
git-svn-id: https://svn.eduke32.com/eduke32@7293 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 21:35:03 +00:00
terminx
cae791ffa4 Fix issue where the player's pistol isn't removed when they spawn on HURTRAIL/FLOORSLIME/FLOORPLASMA
git-svn-id: https://svn.eduke32.com/eduke32@7292 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 21:34:57 +00:00
terminx
acf8384d11 macOS build fix. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@7291 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 20:17:03 +00:00
terminx
ea86e5520b Revert "engine.cpp/.h: clean up & fix lintersect(). Additionally, add support for finding intersections of collinear line segments."
This reverts r6886.

git-svn-id: https://svn.eduke32.com/eduke32@7290 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:31 +00:00
terminx
650672717d Fix issue with editor not allowing wall and floor aligned sprites to be resized in 2d mode without textured view mode enabled
git-svn-id: https://svn.eduke32.com/eduke32@7289 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:26 +00:00
terminx
89df4950d4 This should fix the too many sprites spawned issue in single player
git-svn-id: https://svn.eduke32.com/eduke32@7288 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:20 +00:00
terminx
9a23ea148e Expand the list of options available for the framerate limiter, and add a separate option that controls an offset added to the limiter. This should allow the menu to cover all of the important use cases involving G-SYNC, FreeSync, and "Fast Sync".
git-svn-id: https://svn.eduke32.com/eduke32@7287 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:14 +00:00
terminx
33b9dafe8f Fix net.cpp line endings
git-svn-id: https://svn.eduke32.com/eduke32@7286 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:08 +00:00
terminx
465e19909f Change audiolib mixing functions to just use a return value instead of setting a global to indicate the new mixing buffer position
git-svn-id: https://svn.eduke32.com/eduke32@7285 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:03 +00:00
terminx
c3f88abf73 Slight cleanup to MV_GetVorbisCommentLoops(). The biggest change here is swapping calls to atol to our Batol macro, which is actually backed by strtol instead of atol.
git-svn-id: https://svn.eduke32.com/eduke32@7284 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:57 +00:00
terminx
91096d2415 Hendricks and I discussed "auto *" and we've come to the conclusion that it's bad form, so this corrects that.
git-svn-id: https://svn.eduke32.com/eduke32@7283 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:51 +00:00
terminx
6258806a3a Reduce vorbis read block size from 32k to MV_MIXBUFFERSIZE. Despite requiring more calls into libvorbis, this should be faster on slower CPUs in cases where more copies of the same .ogg sound are attempting to be played at once than are allowed, e.g large explosion scenes in Ion Maiden.
git-svn-id: https://svn.eduke32.com/eduke32@7282 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:41 +00:00
terminx
30cc6a35e8 I don't see a reason for these operations to be separated
git-svn-id: https://svn.eduke32.com/eduke32@7281 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:36 +00:00
terminx
ea94b36dec Fix function that some sadist formatted with 3 spaces
git-svn-id: https://svn.eduke32.com/eduke32@7280 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:31 +00:00
terminx
06ac4f88b9 This fixes S_CheckSoundPlaying() and makes CON_IFSOUND work correctly in scripts that run during menus. These changes together fix the exchange between Duke and Lani at the end of episode 3 of Duke3D.
git-svn-id: https://svn.eduke32.com/eduke32@7279 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:25 +00:00
terminx
5102281e0e This makes the output from r_showfps 3, cl_showcoords 1, and what is printed after DNDEBUG all happily coexist. The display of g_moveActorsTime and g_moveWorldTime has also been moved from cl_showcoords to r_showfps.
git-svn-id: https://svn.eduke32.com/eduke32@7278 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:19 +00:00
terminx
ef91435120 Fix CON commands leaving useless extra values in the bytecode. They were only valid outside of executable blocks so it was never noticed.
git-svn-id: https://svn.eduke32.com/eduke32@7277 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:14 +00:00
terminx
c287866954 Fix CON compiler line number accounting problem introduced with the optimization that transforms CON_SETVARVAR -> CON_SETVAR if the second parameter is a constant
git-svn-id: https://svn.eduke32.com/eduke32@7276 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:08 +00:00
terminx
b4404978d6 Change A_AddToDeleteQueue() to call A_DeleteSprite() on sprites it removes from the queue directly, as sprites with statnums other than STAT_ACTOR and STAT_MISC are not deleted automatically when their xrepeat is 0. This fixes using CON_INSERTSPRITEQ with sprites of statnums other than STAT_ACTOR and STAT_MISC.
git-svn-id: https://svn.eduke32.com/eduke32@7275 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:03 +00:00
terminx
49f77b0a21 This is never going to work. When it was first programmed, it was done under the assumption that dividing an integer by a power of 2 was always the same as shifting it. It turns out that this isn't the case and I'm a dumbass. :D
git-svn-id: https://svn.eduke32.com/eduke32@7274 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:58 +00:00
terminx
cad5a5b8c5 Move the debug_break() call in the default case of VM_Execute() to after the call to VM_ScriptInfo().
git-svn-id: https://svn.eduke32.com/eduke32@7273 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:53 +00:00
terminx
d35058a8e5 Fix error building the transpal utility
git-svn-id: https://svn.eduke32.com/eduke32@7272 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:48 +00:00
terminx
8f7e842beb After some refactoring, several CON error checks done at runtime stood out as things that could be determined at script compile time. They have been moved.
git-svn-id: https://svn.eduke32.com/eduke32@7271 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:43 +00:00
terminx
3d4d640be3 Attempting to compile a CON with something stupid like "mul var 0" or "div var 0" in it now throws an error
git-svn-id: https://svn.eduke32.com/eduke32@7270 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:38 +00:00
terminx
2be7afd33c cmenu console command now opens the menu if it isn't already open
git-svn-id: https://svn.eduke32.com/eduke32@7269 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:32 +00:00
terminx
d2f16606c5 Comment out actor and player versions of gamevar manipulation opcodes as they aren't performant with our current switch-based method of processing instructions. This also tweaks the beginning of VM_Execute() to gain a little more performance.
git-svn-id: https://svn.eduke32.com/eduke32@7268 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:27 +00:00
terminx
fad17a83c0 WIP work on fixing CON_DIVVAR/CON_MULVAR optimization
git-svn-id: https://svn.eduke32.com/eduke32@7267 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:22 +00:00
terminx
cf95da82e9 Implement individual opcodes for all the gamevar if checks and the functions that do math on vars
git-svn-id: https://svn.eduke32.com/eduke32@7266 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:16 +00:00
terminx
ace77922b1 Global var opcodes for common conditional statements. Decent performance gain!
git-svn-id: https://svn.eduke32.com/eduke32@7265 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:10 +00:00
terminx
6dfafc49b1 Change goofy check for g_errorCnt and g_warningCnt in gamedef
git-svn-id: https://svn.eduke32.com/eduke32@7264 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:05 +00:00
terminx
dbdf662790 Use separate instructions in the bytecode for manipulating global variables versus more complex variable types. The optimization that transforms CON_DIVVAR and CON_MULVAR into CON_SHIFTVARR and CON_SHIFTVARL plus CON_INV has been disabled for now until I can debug a problem with it.
git-svn-id: https://svn.eduke32.com/eduke32@7263 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:00 +00:00
terminx
702d30f2b5 Replace pointer with reference in VM_Execute()
git-svn-id: https://svn.eduke32.com/eduke32@7262 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:54 +00:00
terminx
72d80890e2 CON cleanup/tweaks. This improves the game update time by about 5% in some of my test scenarios.
git-svn-id: https://svn.eduke32.com/eduke32@7261 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:49 +00:00
terminx
0bbde29c85 Use reference to clean up CON_QSPRINTF
git-svn-id: https://svn.eduke32.com/eduke32@7260 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:44 +00:00
terminx
76edec81ac CON cleanups
git-svn-id: https://svn.eduke32.com/eduke32@7259 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:39 +00:00
terminx
cdefc293c0 Fix setvar console command, and add a line of output so you know it did something
git-svn-id: https://svn.eduke32.com/eduke32@7258 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:34 +00:00
terminx
6696cb0036 This just shuffles some things around and these aren't (or shouldn't be) functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@7257 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:29 +00:00
terminx
ae39954376 Initialize rottile values to -1 with a loop like this instead, because doing it the C++ way increases the binary size by like 120KB
git-svn-id: https://svn.eduke32.com/eduke32@7255 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:19 +00:00
terminx
891bac2b0f This is a cool CON compiler optimization that replaces all of the "varvar" commands and conditional checks in the compiled code with the "var" version if the value supplied to the function is a constant
git-svn-id: https://svn.eduke32.com/eduke32@7254 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:13 +00:00
terminx
f782a86675 I'm pretty sure this is a bug
git-svn-id: https://svn.eduke32.com/eduke32@7253 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:08 +00:00
terminx
b3d1002b58 Move CON_STARTTRACK in gamedef.cpp so it isn't in between the related CON_IFXXX stuff nearby
git-svn-id: https://svn.eduke32.com/eduke32@7252 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:03 +00:00
terminx
7fb84c7a69 Include build.h from player.h to satisfy the need for MAXPLAYERS and compat.h stuff that build.h pulls in
git-svn-id: https://svn.eduke32.com/eduke32@7251 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:58 +00:00
terminx
07d2222dfa Bump MAXANGVEL and MAXHORIZ
git-svn-id: https://svn.eduke32.com/eduke32@7250 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:53 +00:00
terminx
5c6d2d706f Use LINE_NUMBER macro in gamedef.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7249 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:48 +00:00
terminx
8ff047a82e More minor CON parser cleanup. This commit is not incredibly meaningful.
git-svn-id: https://svn.eduke32.com/eduke32@7248 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:42 +00:00
terminx
41c33af8e0 This fixes a small oversight with r7238
git-svn-id: https://svn.eduke32.com/eduke32@7247 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:37 +00:00
terminx
f40026a0be Add bounds check to C_GetNextLabelName(). This isn't really necessary because the extra writes to the label buffer are immediately overwritten by the next label found, but I could see it causing a crash in an edge case where somehow the maximum number of labels had been defined.
git-svn-id: https://svn.eduke32.com/eduke32@7246 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:32 +00:00
terminx
8b0cce6cb7 Convert *(g_scriptPtr-x) syntax in gamedef.cpp to g_scriptPtr[-x], as it should ultimately be more readable and less prone to programming errors.
git-svn-id: https://svn.eduke32.com/eduke32@7245 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:27 +00:00
terminx
b9fa88b5ed This was worth a couple fps in classic mode for me with particularly heavy CON scripts
git-svn-id: https://svn.eduke32.com/eduke32@7244 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:21 +00:00
terminx
ef6a60396c Remove unnecessary spriteNum argument from P_Submerge() and P_Emerge()
git-svn-id: https://svn.eduke32.com/eduke32@7243 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:15 +00:00
seventyfive
87cf4495bf - Packet code implementation (merge from private c/s repo), world updates are now synced through snapshots. See tag SVN_SyncPoint_Dec2018 on master of the other repo.
- "Scratch pad" sprites implementation, to avoid desyncs in sprite indexes, clients will insert temporary sprites which are cleared out when they receive the next snapshot from the server.
- Patches from Striker which fix player stomping frag counts, the accept button when hosting a game through the menu, and a "noffire" command line parameter.
- Patches from NY00123: t_data sync optimizations to improve some jittery behavior on the client side.

git-svn-id: https://svn.eduke32.com/eduke32@7242 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-08 00:40:39 +00:00
terminx
7bd5fa42ee macOS build fix
git-svn-id: https://svn.eduke32.com/eduke32@7241 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 21:25:44 +00:00
terminx
252fb58321 Fix oversight with wall texture rotation on tile 0
git-svn-id: https://svn.eduke32.com/eduke32@7240 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 21:17:59 +00:00
terminx
1c83bd0a01 Fix issue with a couple symbols from cmdline.h sometimes picking up different linkage due to accidental double definition in game.h
git-svn-id: https://svn.eduke32.com/eduke32@7239 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 19:03:40 +00:00
terminx
6d7537aa27 CON syntax extension: the empty "[]" shortcut for accessing a struct at index THISACTOR can now be omitted.
This allows cleaner syntax such as "geta .x temp", "ife sprite.x temp", etc.

git-svn-id: https://svn.eduke32.com/eduke32@7238 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:54 +00:00
terminx
7fd81960e2 Add unsigned access to actor .htmovflag through actor .htumovflag
git-svn-id: https://svn.eduke32.com/eduke32@7237 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:49 +00:00
terminx
38c473851b Misc CON fixups
git-svn-id: https://svn.eduke32.com/eduke32@7236 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:43 +00:00
terminx
2f9f16de7f Further clean up C_SetScriptSize(). This also fixes a bug in the function where when expanding the buffer size, most of the extra space was left uninitialized due to bad parameters passed to memset().
git-svn-id: https://svn.eduke32.com/eduke32@7235 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:38 +00:00
terminx
c29ffec9cb Clean up A_InsertSprite() and the beginning of A_Spawn()
git-svn-id: https://svn.eduke32.com/eduke32@7234 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:33 +00:00
terminx
c4f76e55a6 Shuffle things around so most of the script structure access stuff actually resides in gamestructures.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7233 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:26 +00:00
terminx
4bc7963f48 Minor CON compiler cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7232 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:20 +00:00
terminx
5998256125 This should improve the reliability of CON_SWITCH, and maybe allow nesting them to work.
git-svn-id: https://svn.eduke32.com/eduke32@7231 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:15 +00:00
terminx
67a3ffd44b Small cleanup in gameexec
git-svn-id: https://svn.eduke32.com/eduke32@7230 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:10 +00:00
terminx
0aff0aaf20 This is a little bit more readable
git-svn-id: https://svn.eduke32.com/eduke32@7229 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:05 +00:00
terminx
6da9b537e5 Fix Gv_GetArrayOrStruct() error message
git-svn-id: https://svn.eduke32.com/eduke32@7228 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:00 +00:00
terminx
54bc64ea10 EDUKE32_STANDALONE guard some more Duke3D-specific behavior
git-svn-id: https://svn.eduke32.com/eduke32@7227 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:55 +00:00
terminx
4861d1fc3d WIP wall texture rotation bit
git-svn-id: https://svn.eduke32.com/eduke32@7226 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:48 +00:00
terminx
c1caf149d7 Compile without -fno-strict-aliasing.
git-svn-id: https://svn.eduke32.com/eduke32@7224 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:33 +00:00
terminx
1cbdb901bd This one is for Hendricks
git-svn-id: https://svn.eduke32.com/eduke32@7223 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:25 +00:00
terminx
279bdca726 Was checking something out for a mapper and noticed this block of code should be nested deeper.
git-svn-id: https://svn.eduke32.com/eduke32@7222 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:19 +00:00
terminx
592ee52d2b Improve selection of a failsafe video mode if videoSetGameMode() fails at game startup
git-svn-id: https://svn.eduke32.com/eduke32@7221 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:14 +00:00
terminx
992d5abac2 Mapster32: stop playing sounds when entering the tile selector in 3d mode
git-svn-id: https://svn.eduke32.com/eduke32@7220 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:09 +00:00
terminx
21958bc110 Minor start window cleanup. This ended up touching a bunch of other files due to variable renaming, but there are zero functional changes to anything but the startup window in this commit.
git-svn-id: https://svn.eduke32.com/eduke32@7219 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:02 +00:00
terminx
e77324a6d8 Fix whitespace in gameres.rc
git-svn-id: https://svn.eduke32.com/eduke32@7218 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:54 +00:00
terminx
0a84672121 Use clamp in mact LIMITCONTROL macro
git-svn-id: https://svn.eduke32.com/eduke32@7216 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:43 +00:00
terminx
81d0632099 These changes aren't particularly meaningful
git-svn-id: https://svn.eduke32.com/eduke32@7215 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:38 +00:00
terminx
b3195ad6b4 Moved a few things in mact around while I stared at it thinking about what to do with it
git-svn-id: https://svn.eduke32.com/eduke32@7214 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:33 +00:00
terminx
022eb02c5e Move hash_getcode() and inthash_getcode() to hash.h so they can be used in places other than hash.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7213 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:28 +00:00
terminx
073987fa42 After parsing the cfg, fill in the default bindings for any control functions that are completely missing, with function unbound and key unused by anything else.
git-svn-id: https://svn.eduke32.com/eduke32@7212 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:21 +00:00
terminx
ca1494262c Convert some unwieldly g_player[myconnectindex].ps->gm crap to references
git-svn-id: https://svn.eduke32.com/eduke32@7211 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:16 +00:00
terminx
bb8e441d0d Slightly simplify S_OpenAudio()...
git-svn-id: https://svn.eduke32.com/eduke32@7210 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:11 +00:00
terminx
871207294e Use MODE_RESTART in osdcmd_map() when already in a game
git-svn-id: https://svn.eduke32.com/eduke32@7209 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:06 +00:00
terminx
fb15d84982 Rename Gv_GetSpecialVar() to Gv_GetArrayOrStruct() and fix what would be a bug in Gv_GetVarDataPtr() if we were using it for something more than the single thing we use it for now
git-svn-id: https://svn.eduke32.com/eduke32@7208 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:01 +00:00
terminx
23308603c5 Prevent crash in the editor if newnumwalls and numwalls are both somehow -1
git-svn-id: https://svn.eduke32.com/eduke32@7207 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:56 +00:00
terminx
6618883d7e Fix crash when attempting to load a corrupt map
git-svn-id: https://svn.eduke32.com/eduke32@7206 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:50 +00:00
terminx
0d652ae063 Switch VM_EventCommon to use references
git-svn-id: https://svn.eduke32.com/eduke32@7205 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:44 +00:00
terminx
3b7f41e2bb sdlayer: pass SDL_WINDOW_FULLSCREEN_DESKTOP to SDL_SetWindowFullscreen() when setting a windowed mode that matches the desktop resolution
git-svn-id: https://svn.eduke32.com/eduke32@7204 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:38 +00:00
terminx
6ef3c4c00f Convert the Gv_GetVar and Gv_SetVar family of functions into something similar to the setup for VM_OnEvent, where multiple versions of the functions are generated by the compiler via forced inlining. This makes the functions much easier to maintain.
git-svn-id: https://svn.eduke32.com/eduke32@7203 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:32 +00:00
terminx
a7a1ada83d Tiny cleanups
git-svn-id: https://svn.eduke32.com/eduke32@7202 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:27 +00:00
terminx
32057d2e19 Direct struct access for tsprite, and break special gamevar access out of Gv_GetVar() and into a separate function like it already was with Gv_GetVarX()
git-svn-id: https://svn.eduke32.com/eduke32@7201 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:21 +00:00
terminx
18916ddaf6 Clean up Gv_AddSystemVars() and Gv_RefreshPointers()
git-svn-id: https://svn.eduke32.com/eduke32@7200 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:14 +00:00
terminx
dc519575d4 Add LAST_LABEL macro
git-svn-id: https://svn.eduke32.com/eduke32@7199 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:09 +00:00
terminx
893bcbd603 Direct access for the actor structs
git-svn-id: https://svn.eduke32.com/eduke32@7198 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:04 +00:00
terminx
34c6fcc69f gamedef.cpp and friends: use preprocessor defines instead of hard-coded values for gamevar IDs that are really constants or arrays or structs
git-svn-id: https://svn.eduke32.com/eduke32@7197 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:57 +00:00
terminx
2c3ba0fdb6 Clean up VM array handling with references
git-svn-id: https://svn.eduke32.com/eduke32@7196 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:51 +00:00
terminx
7540f590f1 Refine CON VM error handling behavior.
Old behavior: when an operation failed, execution attempted to continue from the next command as if nothing had happened. This behavior was poorly defined and often had unintended consequences; e.g a "random" sprite being operated on because an operation that was supposed to place a sprite id in a gamevar failed, and the previous value was taken as a sprite id instead.

New behavior: execution of the state/actor/event halts. Failure of a particular actor is more immediately obvious and unwanted trampling on other parts of the game state does not occur.

git-svn-id: https://svn.eduke32.com/eduke32@7195 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:45 +00:00
terminx
eb546f111e WIP: direct CON read/write access to structure members via pointer and offset instead of translation function. This is only enabled for wall and sector structure members in this commit.
git-svn-id: https://svn.eduke32.com/eduke32@7194 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:39 +00:00
terminx
076cc306f8 Remove CON ERROR_OPENBRACKET and ERROR_CLOSEBRACKET and add ERROR_NOTTOPLEVEL
git-svn-id: https://svn.eduke32.com/eduke32@7193 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:32 +00:00
terminx
90bfd3d374 Minor gamedef.cpp cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7191 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:21 +00:00
terminx
a0562d5e69 Formatting
git-svn-id: https://svn.eduke32.com/eduke32@7190 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:15 +00:00
terminx
f14bae5098 Use reference in G_DoGameStartup().
git-svn-id: https://svn.eduke32.com/eduke32@7189 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:10 +00:00
terminx
04c9f99620 Add a new member to memberlabel_t to hold the offset of a structure member for CON access. This will be used in a future commit.
git-svn-id: https://svn.eduke32.com/eduke32@7188 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:04 +00:00
terminx
acf477c09d Sorting and formatting for [names|sound]dyn.[cpp|h]
git-svn-id: https://svn.eduke32.com/eduke32@7187 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:58 +00:00
terminx
e513e1ceae Cleanup includes
git-svn-id: https://svn.eduke32.com/eduke32@7186 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:48 +00:00
terminx
9c0ee3d557 Use references in G_UpdatePlayerFromMenu() and G_BackToMenu() for readability
git-svn-id: https://svn.eduke32.com/eduke32@7184 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:09 +00:00
terminx
89fe17e673 This does nothing but fix indentation of a single block of code
git-svn-id: https://svn.eduke32.com/eduke32@7183 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:04 +00:00
terminx
52eed46aa9 Remove dead code that once opened a browser to the store page for Duke Nukem 3D: Megaton Edition on Steam
git-svn-id: https://svn.eduke32.com/eduke32@7182 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:59 +00:00
terminx
5164ab4a25 More control/input cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7181 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:53 +00:00
terminx
a4182305d0 Clean up some of the remaining stuff in duke3d/src/config.cpp a bit. Not very meaningful changes... just things I saw when trying to decide how to tackle some of this mess.
git-svn-id: https://svn.eduke32.com/eduke32@7180 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:44 +00:00
terminx
c927da7687 Remove the "ConsoleKeys[]" array from osdcmds.cpp in favor of accessing mact's sctokeylut[]
git-svn-id: https://svn.eduke32.com/eduke32@7179 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:38 +00:00
terminx
339c2ec3b4 Move sctokeylut[] in mact to keyboard.h from keyboard.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7178 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:32 +00:00
terminx
b97074eece Remove several unused player struct members and bump BYTEVERSION
git-svn-id: https://svn.eduke32.com/eduke32@7177 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:26 +00:00
terminx
741d362228 Split some of the title screen display stuff into separate functions
git-svn-id: https://svn.eduke32.com/eduke32@7176 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:20 +00:00
terminx
e06962460b More premap cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7175 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:14 +00:00
terminx
9f81e7150c This is starting to feel like distilling diarrhea into grey water
git-svn-id: https://svn.eduke32.com/eduke32@7174 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:08 +00:00
terminx
635a25db72 Add the formats supported by libxmp-lite to the list of extensions to check for in G_SetupFilenameBasedMusic()
git-svn-id: https://svn.eduke32.com/eduke32@7173 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:02 +00:00
terminx
949feae240 Introduce some more meaningful function names and structure to the code touched in the last commit
git-svn-id: https://svn.eduke32.com/eduke32@7172 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:57 +00:00
terminx
3aaa5e04aa Clean up some of the level initialization and player value reset functions that live in premap.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7171 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:51 +00:00
terminx
beafd13b1a Derp
git-svn-id: https://svn.eduke32.com/eduke32@7170 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:44 +00:00
terminx
86496a8126 CON structure member access readability cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7169 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:38 +00:00
terminx
17c63da906 Replace A_ResetVars() with a simpler version and tweak GAMEVAR_Q16PTR handling in VM_GAMEVAR_OPERATOR macro. The other couple things aren't functional changes at all.
git-svn-id: https://svn.eduke32.com/eduke32@7168 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:30 +00:00
terminx
336a4650d5 This is supposed to fix some errors with HIGH_PRECISION_SPRITE reported by a static analyzer, wherein 32-bit values were shifted and truncated as 32-bit before being widened to a 64-bit type, which didn't seem like the intended behavior. This is the commit to look at if anything is suddenly fucked up in the classic software renderer.
git-svn-id: https://svn.eduke32.com/eduke32@7167 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:25 +00:00
terminx
0c74991a21 Fix a couple of issues that cropped up after some of the previous OSD refactoring commits
git-svn-id: https://svn.eduke32.com/eduke32@7166 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:20 +00:00
terminx
369c671632 OSD warning fix
git-svn-id: https://svn.eduke32.com/eduke32@7165 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:15 +00:00
terminx
6d4b0f7731 The most minor of minor changes
git-svn-id: https://svn.eduke32.com/eduke32@7164 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:10 +00:00
terminx
0f0974874b Set XMP_PLAYER_INTERP to XMP_INTERP_SPLINE as it seems to sound better than the default setting
git-svn-id: https://svn.eduke32.com/eduke32@7163 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:04 +00:00
terminx
e6955694e2 Fix a null pointer dereference in G_GameExit() so we don't crash while we're crashing
git-svn-id: https://svn.eduke32.com/eduke32@7162 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:58 +00:00
terminx
cde7529e39 This bounds check is useless
git-svn-id: https://svn.eduke32.com/eduke32@7161 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:53 +00:00
terminx
4206cc1786 Use auto in ldist() and dist() because it looks nicer than vec3_t const *const
git-svn-id: https://svn.eduke32.com/eduke32@7160 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:48 +00:00
terminx
06f0e5e946 Move g_defaultVideoModes[] and g_keyAsciiTable[] from baselayer.cpp to baselayer.h and make them constexpr
git-svn-id: https://svn.eduke32.com/eduke32@7159 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:43 +00:00
terminx
22e1c21f47 Just cleaning up a dump(er)
git-svn-id: https://svn.eduke32.com/eduke32@7158 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:38 +00:00
terminx
3cfda9858d Use tabledivide64() in Gv_GetArrayCountFromFile()
git-svn-id: https://svn.eduke32.com/eduke32@7157 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:33 +00:00
terminx
1cae4ce7e3 Same shit, different diff
git-svn-id: https://svn.eduke32.com/eduke32@7156 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:27 +00:00
terminx
59fde95785 Another bunch of non-functional cleanup changes to the OSD
git-svn-id: https://svn.eduke32.com/eduke32@7155 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:21 +00:00
terminx
f7fac7d9e0 "using osdcmdptr_t = osdfuncparm_t const * const" because I'm tired of seeing it everywhere
git-svn-id: https://svn.eduke32.com/eduke32@7154 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:15 +00:00
terminx
ff410796a1 More incremental improvements to horrible decade-old OSD code
git-svn-id: https://svn.eduke32.com/eduke32@7153 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:07 +00:00
terminx
eb81507565 Fix up osdfunc_exec()
git-svn-id: https://svn.eduke32.com/eduke32@7152 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:01 +00:00
terminx
60e9bca926 Reduced buffer size used for scanning GRPs to display in the startup window from 8MB to 64K, in line with the previous commit that changed osdfunc_fileinfo(). I benchmarked this several times and could not find a case in which the 8MB buffer was faster.
git-svn-id: https://svn.eduke32.com/eduke32@7151 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:56 +00:00
terminx
a35ffd976f Rework osdfunc_fileinfo()
git-svn-id: https://svn.eduke32.com/eduke32@7150 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:51 +00:00
terminx
14f1ea1c05 Use "int" for OSD command return values and a few trivial globals. Our current usage of the return values would have even worked with bool, but we might want to add error conditions or something later.
git-svn-id: https://svn.eduke32.com/eduke32@7149 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:45 +00:00
terminx
b1b01c759e Rename a couple of things in osd.cpp. There should be no change to functionality.
git-svn-id: https://svn.eduke32.com/eduke32@7148 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:37 +00:00
terminx
0ea33b1775 Small cleanups to OSD and game keybinding code before larger changes. Everything still works at this point.
git-svn-id: https://svn.eduke32.com/eduke32@7147 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:32 +00:00
terminx
a6e60e9723 Move pow2char and pow2long to build.h and make them constexpr
git-svn-id: https://svn.eduke32.com/eduke32@7146 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:26 +00:00
terminx
786a0cc6a3 Rename the implementation of _lrotl() found at the top of kplib.cpp to klrotl() and use it unconditionally on platforms other than Win32 (it's only used in .bmp rendering).
git-svn-id: https://svn.eduke32.com/eduke32@7145 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:20 +00:00
terminx
7f54981f4f Improve P_GetInput() a little
git-svn-id: https://svn.eduke32.com/eduke32@7144 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:15 +00:00
terminx
f60c353810 Improve OSD_Dispatch() a little
git-svn-id: https://svn.eduke32.com/eduke32@7143 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:10 +00:00
terminx
9ab8ebce20 Improve CONTROL_GetMouseDelta()
git-svn-id: https://svn.eduke32.com/eduke32@7142 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:03 +00:00
terminx
04e477557a Remove some effectively dead code that handled loading from duke3d.cfg if eduke32.cfg was not found. This has been useless for about a decade.
git-svn-id: https://svn.eduke32.com/eduke32@7141 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:04:57 +00:00
hendricks266
fd175086a3 Move the LZW compression functions out of cache1d.cpp into their own object, klzw.cpp.
This eliminates the hackiness of libcache1d.so (now libkzlw.so) and CACHE1D_COMPRESS_ONLY.

git-svn-id: https://svn.eduke32.com/eduke32@7140 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-05 07:28:07 +00:00
hendricks266
de5d358d32 Refresh BUILDLIC copyright headers
git-svn-id: https://svn.eduke32.com/eduke32@7139 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-05 07:28:01 +00:00
hendricks266
cc65440315 ifdef out all use of libc's FILE in libxmp-lite
git-svn-id: https://svn.eduke32.com/eduke32@7138 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-29 06:34:25 +00:00
hendricks266
696ddec8a8 Fix a big fail in my implementation of CON_DIVR and CON_DIVRU.
git-svn-id: https://svn.eduke32.com/eduke32@7137 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-29 06:34:19 +00:00
terminx
7c4ba73bfd Move CONTROL_ProcessBinds() call to P_GetInput()
git-svn-id: https://svn.eduke32.com/eduke32@7135 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:34:08 +00:00
terminx
7edcdb0ae4 Fix usages of tab characters that slipped into menus.h at some point, and fix declaration of function Menu_Change() to match its definition
git-svn-id: https://svn.eduke32.com/eduke32@7134 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:34:03 +00:00
terminx
69a1d8d953 Very (very) slightly less terrible G_CheckPlayerColor() function.
git-svn-id: https://svn.eduke32.com/eduke32@7133 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:58 +00:00
terminx
e7798d12dc Additional const and constexpr usage in compat.h and pragmas
git-svn-id: https://svn.eduke32.com/eduke32@7132 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:52 +00:00
terminx
fecbe7ad8b Using automatic typing here improves the readability of this code.
git-svn-id: https://svn.eduke32.com/eduke32@7131 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:47 +00:00
terminx
ad7d61baa1 Use range-based loops for simplicity
git-svn-id: https://svn.eduke32.com/eduke32@7130 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:40 +00:00
terminx
3b782aba60 Add CSTAT_SPRITE_ALIGNMENT_MASK. It's identical to CSTAT_SPRITE_ALIGNMENT_SLAB, but should be used in cases where you're checking either CSTAT_SPRITE_ALIGNMENT_WALL or CSTAT_SPRITE_ALIGNMENT_FLOOR rather than checking for a slab (voxel).
git-svn-id: https://svn.eduke32.com/eduke32@7129 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:32 +00:00
terminx
4059e1918e Mark libdivide constructors explicit
git-svn-id: https://svn.eduke32.com/eduke32@7128 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:26 +00:00
terminx
28bed56348 The last of my audiolib changes for now. These change no functionality.
git-svn-id: https://svn.eduke32.com/eduke32@7127 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:21 +00:00
terminx
890341d3af Fix screwed up spacing in a few audiolib files. No functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@7126 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:14 +00:00
terminx
cbb9018728 This precaching stuff doesn't belong in EDUKE32_STANDALONE builds
git-svn-id: https://svn.eduke32.com/eduke32@7125 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:09 +00:00
terminx
51d4347e2c Remove unnecessary "Playing" member of VoiceNode struct
git-svn-id: https://svn.eduke32.com/eduke32@7124 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:04 +00:00
terminx
16c9a58daa Lower DEFAULTMOUSESENSITIVITY to 4
git-svn-id: https://svn.eduke32.com/eduke32@7123 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:57 +00:00
terminx
ed2f9f247b Rework volume control to not completely suck
git-svn-id: https://svn.eduke32.com/eduke32@7122 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:50 +00:00
terminx
6513d9f3e3 Make ASS's mixing functions take a pointer to a voice instead of passing a bunch of parameters separately
git-svn-id: https://svn.eduke32.com/eduke32@7121 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:41 +00:00
terminx
6d226cf0da Mixer function fixups from H266
git-svn-id: https://svn.eduke32.com/eduke32@7120 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:35 +00:00
terminx
1c007c56c5 More sound work
git-svn-id: https://svn.eduke32.com/eduke32@7119 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:29 +00:00
terminx
374a09536d Add per-sound volume support to audiolib. This allows you to control the volume of sounds independently from the distance-based system exposed through CON. To use this, you must define your sounds via the .def syntax and set the "volume" property--default is 1.0.
git-svn-id: https://svn.eduke32.com/eduke32@7117 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:14 +00:00
terminx
98f42cba6f Add support for defining all sound parameters through the .def syntax, instead of just the filename
git-svn-id: https://svn.eduke32.com/eduke32@7116 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:05 +00:00
terminx
5c1e350d79 sdlayer: don't add windowed modes that are larger than the monitor's actual resolution
git-svn-id: https://svn.eduke32.com/eduke32@7115 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:00 +00:00
terminx
b16d7a412b Don't use size_t for loop iterators (or other things not counted in bytes, realistically)
git-svn-id: https://svn.eduke32.com/eduke32@7114 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:54 +00:00
terminx
9447d2c3ff Fix issue with Bgetsysmemsize() on some platforms after the changeover to ::min and ::max.
git-svn-id: https://svn.eduke32.com/eduke32@7113 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:49 +00:00
terminx
71c06d5d95 Savegame cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7112 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:45 +00:00
terminx
a6e7f601d3 Fix HIGH_PRECISION_SPRITE, broken when switching to std::min and std::max.
git-svn-id: https://svn.eduke32.com/eduke32@7111 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:40 +00:00
terminx
50ea556fc6 Clean up a few functions in mact scriplib
git-svn-id: https://svn.eduke32.com/eduke32@7110 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:35 +00:00
terminx
59196c42ea This commit is useless
git-svn-id: https://svn.eduke32.com/eduke32@7109 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:30 +00:00
terminx
a7746f9cd2 Make tabledivide64 actually return an int64_t...
git-svn-id: https://svn.eduke32.com/eduke32@7108 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:25 +00:00
terminx
cee9a65970 userbytever is uint32_t and needs %u instead of %d
git-svn-id: https://svn.eduke32.com/eduke32@7107 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:20 +00:00
terminx
797a724069 Fix derpy menu bug
git-svn-id: https://svn.eduke32.com/eduke32@7106 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:15 +00:00
terminx
8461fb0cb9 Use _strlwr and _strupr with MSVC
git-svn-id: https://svn.eduke32.com/eduke32@7105 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:10 +00:00
terminx
385562d143 Fix bounds checks occurring after array access in tessectrap() and polymost_precache() with very minor cleanup of surrounding lines.
git-svn-id: https://svn.eduke32.com/eduke32@7104 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:05 +00:00
terminx
ad8a65d154 Small cleanups to fogcalc() and fogcalc_old()
git-svn-id: https://svn.eduke32.com/eduke32@7103 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:01 +00:00
terminx
ffab1f7d71 Slightly simplify TrackedType operator stuff
git-svn-id: https://svn.eduke32.com/eduke32@7102 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:56 +00:00
terminx
f1cf0bafdd pitch.cpp cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@7101 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:51 +00:00
terminx
c0889dab31 Untabify minidumper
git-svn-id: https://svn.eduke32.com/eduke32@7100 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:46 +00:00
terminx
2b01ea19b1 Shut up a warning about potentially passing a null ptr to strlen() by way of a bad FILE ptr. The condition wasn't actually possible, but this is just as or more correct than it was before. This sure is a long commit message for something that only adds an 'else'.
git-svn-id: https://svn.eduke32.com/eduke32@7099 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:41 +00:00
terminx
a6021590f7 Remember to free library in minidumper
git-svn-id: https://svn.eduke32.com/eduke32@7098 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:37 +00:00
terminx
3d7a827b3d Update miniz to 3616bf804b1e7b9be5e2769b1e4a7d74d575b13c
git-svn-id: https://svn.eduke32.com/eduke32@7097 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:32 +00:00
terminx
f93e228e2a Fix printf format specifier mismatches in G_PrintFPS()
git-svn-id: https://svn.eduke32.com/eduke32@7096 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:27 +00:00
terminx
175ac6dc6b This looks dumb as fuck, but it tells static analysis tools that our memory allocation functions literally never return a null pointer
git-svn-id: https://svn.eduke32.com/eduke32@7095 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:22 +00:00
terminx
b65120200a Clean up Bgethomedir() and a few of the other directory functions
git-svn-id: https://svn.eduke32.com/eduke32@7094 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:17 +00:00
terminx
9987b1ffa0 Return invalid keyword string instead of null when passing a bad ID to VM_GetKeywordForID()
git-svn-id: https://svn.eduke32.com/eduke32@7093 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:12 +00:00
terminx
76e86ddcea Replace player number check with equivalent null pointer check
git-svn-id: https://svn.eduke32.com/eduke32@7092 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:08 +00:00
terminx
7bd8c55e32 Useless warning silencing
git-svn-id: https://svn.eduke32.com/eduke32@7091 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:03 +00:00
terminx
4c57c4dd46 imo auto is cleaner here because the cast of the rvalue makes the resulting type explicitly clear
git-svn-id: https://svn.eduke32.com/eduke32@7089 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:54 +00:00
terminx
bac01d8e2a Completely unused struct...?
git-svn-id: https://svn.eduke32.com/eduke32@7088 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:49 +00:00
terminx
82fcd89ed5 Add debug_break() to default case in VM_Execute()
git-svn-id: https://svn.eduke32.com/eduke32@7087 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:44 +00:00
terminx
9079beadb4 Remove some dead statements, useless assigments, etc
git-svn-id: https://svn.eduke32.com/eduke32@7086 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:38 +00:00
terminx
1d71ea3fc0 polymost_setTexturePosSize() and polymost_setHalfTexelSize(): pass vec4f_t and vec2f_t by const reference instead of by value
git-svn-id: https://svn.eduke32.com/eduke32@7085 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:30 +00:00
terminx
03332e8812 Fix double free in osdcmd_do() and clean up the variable definitions while we're there
git-svn-id: https://svn.eduke32.com/eduke32@7084 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:25 +00:00
terminx
4bb9a4b792 sscanf format parameter fixups
git-svn-id: https://svn.eduke32.com/eduke32@7083 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:20 +00:00
terminx
9e68009725 Fix downmix_int_8bit() in libxmp-lite assuming char is a signed type
git-svn-id: https://svn.eduke32.com/eduke32@7082 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:13 +00:00
terminx
688fadd729 macOS build fix
git-svn-id: https://svn.eduke32.com/eduke32@7081 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:08 +00:00
terminx
75e141ec81 Fix potential buffer overruns in sdlayer
git-svn-id: https://svn.eduke32.com/eduke32@7080 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:04 +00:00
terminx
1f8b23152e Replace remaining instances of regular malloc/calloc/realloc/strdup with our memory error handler versions
git-svn-id: https://svn.eduke32.com/eduke32@7079 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:28:56 +00:00
terminx
9613bbac33 Use std::min and std::max instead of min and max macros.
git-svn-id: https://svn.eduke32.com/eduke32@7078 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:54 +00:00
terminx
e77325f2a4 Remove redundant assignments
git-svn-id: https://svn.eduke32.com/eduke32@7077 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:42 +00:00
terminx
2ff98ca1ce Bump BYTEVERSION for previous change
git-svn-id: https://svn.eduke32.com/eduke32@7076 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:37 +00:00
terminx
2132fe978a The LZ4 versions of kdfread and kdfwrite don't have the size limitations that the LZW versions have
git-svn-id: https://svn.eduke32.com/eduke32@7075 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:32 +00:00
terminx
e69aac2b93 Remove duplicated line
git-svn-id: https://svn.eduke32.com/eduke32@7074 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:26 +00:00
terminx
ebcebbde5e Update engine headers so that argument names in function declarations match the actual function definitions. This also removes const from function declarations in cases when it isn't meaningful.
git-svn-id: https://svn.eduke32.com/eduke32@7073 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:20 +00:00
terminx
2e2731c119 Same sort of thing as the previous commits, but for the engine. Forward declaration cleanup and constification.
git-svn-id: https://svn.eduke32.com/eduke32@7072 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:09 +00:00
terminx
342b32c4aa Update duke3d headers so that argument names in function declarations match the actual function definitions. This also removes const from function declarations in cases when it isn't meaningful.
git-svn-id: https://svn.eduke32.com/eduke32@7071 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:58 +00:00
terminx
af728b2641 Remove a few useless forward declarations and const-ify a couple of function parameters. Yawn.
git-svn-id: https://svn.eduke32.com/eduke32@7070 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:50 +00:00
terminx
e9797fe24d Remove redundant return statements
git-svn-id: https://svn.eduke32.com/eduke32@7069 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:42 +00:00
terminx
dcb0f9d8bb Convert a couple of strings with escaped characters to raw string literals
git-svn-id: https://svn.eduke32.com/eduke32@7068 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:36 +00:00
pogokeen
4b89c095e2 engine.cpp: fix crash when calling setrendermode 3 where PolymostProcessVoxels would be called before Polymost is initialized.
PolymostProcessVoxels would call videoNextPage during processing which would attempt to render the OSD and lead to a segfault due to Polymost not being properly initialized.

git-svn-id: https://svn.eduke32.com/eduke32@7067 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 21:04:42 +00:00
terminx
7b1cdb6f12 Remove redundant statements. This commit doesn't actually do anything.
git-svn-id: https://svn.eduke32.com/eduke32@7066 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:38 +00:00
terminx
d2f980694b P_UpdateScreenPal() seems to belong here instead
git-svn-id: https://svn.eduke32.com/eduke32@7065 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:33 +00:00
terminx
da040c0690 Increase size of text buffer used for editor 3d mode info display--it was possible to overflow it
git-svn-id: https://svn.eduke32.com/eduke32@7064 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:28 +00:00
terminx
cc6e458d00 Prevent g_sounds[] buffer overflow when attempting to define a sound with an index higher than MAXSOUNDS-1. This reduces the number of sound definitions available by 1 as the last slot is now reserved for the error condition.
git-svn-id: https://svn.eduke32.com/eduke32@7063 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:22 +00:00
terminx
6248cc9cee Remove redundant assignment and null ptr check
git-svn-id: https://svn.eduke32.com/eduke32@7062 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:17 +00:00
terminx
941aa87bce Fix usage of pointer to stack allocated array outside of the scope the array was declared in
git-svn-id: https://svn.eduke32.com/eduke32@7061 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:12 +00:00
terminx
b50b1ad198 Fix huge bug in CON_COPY
git-svn-id: https://svn.eduke32.com/eduke32@7060 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:06 +00:00
terminx
1c5ddca44a Clarify assignment in ternary condition as not a bug
git-svn-id: https://svn.eduke32.com/eduke32@7059 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:01 +00:00
terminx
3e380309ce Replace error condition in rejectQueue_remove() with an assertion, because the NULL pointer it would return if something was fucked up would be unconditionally dereferenced in kdtree_add().
git-svn-id: https://svn.eduke32.com/eduke32@7058 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:56 +00:00
terminx
bcb1374391 Static analyzer says this condition is never true
git-svn-id: https://svn.eduke32.com/eduke32@7057 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:51 +00:00
terminx
15008d7aec Revert r7017. I misread the code mismeasured the result.
git-svn-id: https://svn.eduke32.com/eduke32@7056 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:46 +00:00
terminx
1d3f77b46b Clean up error handling in shitty G_GetVersionFromWebsite() function
git-svn-id: https://svn.eduke32.com/eduke32@7055 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:41 +00:00
terminx
e6c36442bd Add missing ifdef guards to namesdyn.h
git-svn-id: https://svn.eduke32.com/eduke32@7054 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:36 +00:00
terminx
7763a379ef Revert part of r7031 and fix the issue a different way
git-svn-id: https://svn.eduke32.com/eduke32@7053 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:31 +00:00
terminx
b3914431b0 Fix memory leaks in editor sound list
git-svn-id: https://svn.eduke32.com/eduke32@7052 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:26 +00:00
terminx
f354f824f4 Add missing ifdef guards to soundsdyn.h
git-svn-id: https://svn.eduke32.com/eduke32@7051 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:20 +00:00
pogokeen
f876e8ad0c polymost.cpp: temporarily disable experimental r_enablepolymost2 cvar
git-svn-id: https://svn.eduke32.com/eduke32@7050 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 15:08:08 +00:00
pogokeen
0b41a17f6b polymost.h: fix order of parameters to match polymost.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7049 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 14:37:06 +00:00
pogokeen
d291a81ccd polymost.cpp: fix lockup bug that would occur with polymost_waitForSubBuffer() when glClientWaitSync consistently returned GL_WAIT_FAILED on certain hardware/drivers.
Additionally, fix conditional check for r_persistentStreamBuffer requirements in polymost_glinit().

git-svn-id: https://svn.eduke32.com/eduke32@7048 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 14:37:03 +00:00
terminx
eee0a71496 Remove dead code branch from RECON (logic oversight) and get rid of a useless fallthrough__
git-svn-id: https://svn.eduke32.com/eduke32@7047 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:53 +00:00
terminx
59214a2d78 Fix off-by-one error in currently not very useful dedicated server text console input
git-svn-id: https://svn.eduke32.com/eduke32@7046 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:48 +00:00
terminx
3689f9c70c Useless yet innocuous sdlayer fixes
git-svn-id: https://svn.eduke32.com/eduke32@7045 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:44 +00:00
terminx
78a3797295 Use a local variable in SDL_GL_ATTRIBUTES macro instead of relying on it being declared in the function calling the macro
git-svn-id: https://svn.eduke32.com/eduke32@7044 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:39 +00:00
terminx
aa939642d6 Fix MV_GetNextWAVBlock() to no longer check if the unsigned BlockLength value is less than 0.
git-svn-id: https://svn.eduke32.com/eduke32@7043 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:34 +00:00
terminx
f5928ad5c7 Correct some fuckery in inflineintersect()
git-svn-id: https://svn.eduke32.com/eduke32@7042 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:29 +00:00
terminx
f7c8eab261 Further revise a couple of null pointer checks in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7041 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:25 +00:00
terminx
217849b2a3 OSD strtoken maintenance
git-svn-id: https://svn.eduke32.com/eduke32@7040 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:20 +00:00
terminx
2d25aaee95 Variable scope reductions
git-svn-id: https://svn.eduke32.com/eduke32@7038 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:10 +00:00
terminx
f67f935807 Fix some weirdness in osdcmd_setactorvar() and remove an unused counter var from osdcmd_map()
git-svn-id: https://svn.eduke32.com/eduke32@7037 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:05 +00:00
terminx
2f410776ec Parentheses around ternary conditions so CppCheck will stfu
git-svn-id: https://svn.eduke32.com/eduke32@7036 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:00 +00:00
terminx
008056763a Tweak gamevar struct shortcut error handling
git-svn-id: https://svn.eduke32.com/eduke32@7035 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:55 +00:00
terminx
3d9df928a5 Remove unused g_skipKeywordCheck
git-svn-id: https://svn.eduke32.com/eduke32@7034 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:51 +00:00
terminx
33f57d4bb6 Fix off-by-one error in CON_DEFINESOUND and null pointer arithmetic in CON_CASE and CON_DEFAULT (!)
git-svn-id: https://svn.eduke32.com/eduke32@7033 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:46 +00:00
terminx
e6039031fe Variable scope reduction. This commit is boring as fuck.
git-svn-id: https://svn.eduke32.com/eduke32@7032 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:41 +00:00
terminx
3082d381b9 Fix more possible null pointer dereferences in mdsprite
git-svn-id: https://svn.eduke32.com/eduke32@7031 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:36 +00:00
terminx
a3bfaed262 Mostly useless const-ifying and minor variable scope reduction in cache1d
git-svn-id: https://svn.eduke32.com/eduke32@7030 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:32 +00:00
terminx
c2f26439d1 Fix filename string bounds check in kzipopen()
git-svn-id: https://svn.eduke32.com/eduke32@7029 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:27 +00:00
terminx
c67cdc00f8 Fix leaked sockets when failing to check for updates
git-svn-id: https://svn.eduke32.com/eduke32@7028 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:22 +00:00
terminx
eb08f1443e Pass vec2_ts to get_screen_coords() by reference instead of by value
git-svn-id: https://svn.eduke32.com/eduke32@7027 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:17 +00:00
terminx
2206581952 Prevent OOB array access when EVENT_INVENTORYLEFT or EVENT_INVENTORYRIGHT returns a bad value
git-svn-id: https://svn.eduke32.com/eduke32@7026 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:13 +00:00
terminx
eeba7847eb Hoist strlen() outside loop in kzopen()
git-svn-id: https://svn.eduke32.com/eduke32@7025 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:08 +00:00
terminx
a677b18b2d Hoist strlen() outside loop in osdfunc_listsymbols()
git-svn-id: https://svn.eduke32.com/eduke32@7024 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:03 +00:00
terminx
4f590f59c1 Fix potential OOB spriteext[] access when checking SPREXT_NOTMD to determine whether or not to render a sprite's model, if available
git-svn-id: https://svn.eduke32.com/eduke32@7023 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:58 +00:00
terminx
870f1c4dab Oh look, the first 3 arguments passed to parascan() are completely useless
git-svn-id: https://svn.eduke32.com/eduke32@7022 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:53 +00:00
terminx
756369dc22 Silence warning about truncating the result of memcmp
git-svn-id: https://svn.eduke32.com/eduke32@7021 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:49 +00:00
terminx
f4227dcbc1 Tweak osdfunc_setrendermode() to report whether the classic renderer is the C or ASM version
git-svn-id: https://svn.eduke32.com/eduke32@7020 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:43 +00:00
terminx
0d843526f0 Fix null pointer deference when attempting to load a model with improper or missing skin definitions
git-svn-id: https://svn.eduke32.com/eduke32@7019 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:39 +00:00
terminx
cab65752b5 Untabify kplib.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7018 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:34 +00:00
terminx
12a77176e8 Fix overcomputation in the classic renderer due to a bug caused by a previous optimization attempt
git-svn-id: https://svn.eduke32.com/eduke32@7017 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:29 +00:00
terminx
9ae3a3ecb8 Slightly reorganize Bdirent struct for efficiency. Despite being "Bdirent", this struct in no way matches the system provided dirent struct.
git-svn-id: https://svn.eduke32.com/eduke32@7016 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:24 +00:00
terminx
6d7e0518cf Add debug_break() to the top of handle_memerr()
git-svn-id: https://svn.eduke32.com/eduke32@7015 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:20 +00:00
terminx
489ed5b803 Fix false positive buffer overflow report in PVS-Studio
git-svn-id: https://svn.eduke32.com/eduke32@7014 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:15 +00:00
terminx
a7a2c3d12a Fix types of vars passed into sscanf() for use as return values
git-svn-id: https://svn.eduke32.com/eduke32@7013 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:10 +00:00
terminx
7f5f22e184 Fix issue in the C version of the classic renderer where someone had attempted to negate a bool
git-svn-id: https://svn.eduke32.com/eduke32@7012 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:06 +00:00
terminx
2f65866167 Fix bad logic for kill counter in G_DisplayRest()
git-svn-id: https://svn.eduke32.com/eduke32@7011 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:01 +00:00
terminx
e1c1cebfbb Fix accidental double assignment of pPlayer->jetpack_on in P_ResetStatus()
git-svn-id: https://svn.eduke32.com/eduke32@7010 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:56 +00:00
terminx
0a84e2caef Untabify polymost.h
git-svn-id: https://svn.eduke32.com/eduke32@7009 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:52 +00:00
terminx
39c0c93615 Slightly increase efficiency of osd_findsymbol() (this is the slow one that has to handle partial matches)
git-svn-id: https://svn.eduke32.com/eduke32@7008 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:47 +00:00
terminx
b0e0cfa2c9 Comment out bad entry in SDL keycode translation table
git-svn-id: https://svn.eduke32.com/eduke32@7007 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:42 +00:00
terminx
875a5afa93 Replace APLAYER picnum check in A_ShootWithZvel() with null pointer check
git-svn-id: https://svn.eduke32.com/eduke32@7006 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:37 +00:00
terminx
0757a6570b Replace spritenum check with ptr check in VM_ScriptInfo()
git-svn-id: https://svn.eduke32.com/eduke32@7005 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:33 +00:00
terminx
d5381e701f Fix potential null pointer dereferencing
git-svn-id: https://svn.eduke32.com/eduke32@7004 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:28 +00:00
terminx
e449408b57 Fix minor bug where a null pointer was passed into free() unconditionally
git-svn-id: https://svn.eduke32.com/eduke32@7003 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:23 +00:00
terminx
9157ae2776 Fix potential texcache issue with HICTINT_IN_MEMORY and HICTINT_APPLYOVERALTPAL due to a mistake involving operator precedence
git-svn-id: https://svn.eduke32.com/eduke32@7002 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:19 +00:00
terminx
d7772a0100 Fix potential uninitialized use of highlightx/y/1/2 in the editor and convert them to vec2_t in the process
git-svn-id: https://svn.eduke32.com/eduke32@7001 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:14 +00:00
terminx
2f3e78a4b8 Fix potential dereference of null pointer when calling polymost_bindPth()
git-svn-id: https://svn.eduke32.com/eduke32@7000 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:09 +00:00
terminx
8b2d546774 Fix potential null pointer dereference in S_DefineAudioIfSupported() when passing filenames without extensions
git-svn-id: https://svn.eduke32.com/eduke32@6999 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:04 +00:00
terminx
2cb5d948e8 Move SE40 floor/ceilingstat and Z coordinate backups to global variables instead of allocating them on the stack.
git-svn-id: https://svn.eduke32.com/eduke32@6998 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:00 +00:00
terminx
7eb3436bad Fix potential null pointer dereferences when rendering a model with no animations (?)
git-svn-id: https://svn.eduke32.com/eduke32@6997 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:19:55 +00:00
terminx
fbbaeff95a Fix potential null pointer dereference
git-svn-id: https://svn.eduke32.com/eduke32@6996 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:19:50 +00:00
terminx
065bd8df60 Fix a couple of things with the dreaded crosshair coloration functions. ;)
git-svn-id: https://svn.eduke32.com/eduke32@6995 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:19:45 +00:00
terminx
ece6082d2b Add debugbreak.h from https://github.com/scottt/debugbreak
git-svn-id: https://svn.eduke32.com/eduke32@6990 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-04 04:19:46 +00:00
terminx
c33d6a6e89 https://imgur.com/N2v8kjU
git-svn-id: https://svn.eduke32.com/eduke32@6989 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-03 00:43:31 +00:00
terminx
a8cee68a7e "@Dick can you make it so that its impossible to pan the floor texture in 2d mode if the texture isnt visible?"
git-svn-id: https://svn.eduke32.com/eduke32@6988 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-29 01:54:58 +00:00
terminx
dd1058c767 Actually fix savegame crash... probably.
git-svn-id: https://svn.eduke32.com/eduke32@6987 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-29 01:54:52 +00:00
terminx
6aeab6561d Fix embarrassing Windows-centric fuckup
git-svn-id: https://svn.eduke32.com/eduke32@6986 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 07:07:04 +00:00
terminx
89d5305ee3 Fix VS warning
git-svn-id: https://svn.eduke32.com/eduke32@6984 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:53 +00:00
terminx
220d86a583 Fix savegame crash issue
git-svn-id: https://svn.eduke32.com/eduke32@6983 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:48 +00:00
terminx
d4c9cc28d5 Minor fixups needed to build as a native VS project
git-svn-id: https://svn.eduke32.com/eduke32@6982 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:42 +00:00
terminx
64d464e988 EDUKE32_STANDALONE stuff
git-svn-id: https://svn.eduke32.com/eduke32@6980 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:23 +00:00
terminx
8a2651ac55 Remove apScriptEvents from savegames
git-svn-id: https://svn.eduke32.com/eduke32@6979 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:17 +00:00
terminx
f3e0a0b892 Revise r6974
git-svn-id: https://svn.eduke32.com/eduke32@6978 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-06 19:07:02 +00:00
terminx
4c4c5f569c Fix parameter aliasing warning in G_LoadGroups()
git-svn-id: https://svn.eduke32.com/eduke32@6977 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-06 19:06:55 +00:00
terminx
e6277dd8da Replace a bunch of fall-through comments with our fallthrough__ macro.
git-svn-id: https://svn.eduke32.com/eduke32@6976 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-04 05:57:41 +00:00
terminx
8d72c6e5c5 Disable a few more hard-coded sounds in EDUKE32_STANDALONE builds
git-svn-id: https://svn.eduke32.com/eduke32@6975 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:20 +00:00
terminx
2738d8e2a4 Add PROJECTILE_RPG_IMPACT_DAMAGE flag for projectiles, 0x00400000. This makes PROJECTILE_RPG_IMPACT function more or less how it did prior to late 2016 when an issue involving the damage was identified and fixed, and moves the damage to the new flag.
git-svn-id: https://svn.eduke32.com/eduke32@6974 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:15 +00:00
terminx
388a649ee5 Don't invalidate saves based on the compiled script CRC if the script hasn't been compiled yet
git-svn-id: https://svn.eduke32.com/eduke32@6973 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:10 +00:00
terminx
3ba8cb7d05 Xmalloc() -> Xrealloc() in C_AllocProjectile()
git-svn-id: https://svn.eduke32.com/eduke32@6972 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:05 +00:00
terminx
e8b042899b Apply the same autoaim Z position offsetting logic used on GREENSLIME and ROTATEGUN to any sprite with CSTAT_SPRITE_YCENTER set
git-svn-id: https://svn.eduke32.com/eduke32@6971 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:01 +00:00
terminx
41ed560c45 Reword error message displayed at startup when game data is missing
git-svn-id: https://svn.eduke32.com/eduke32@6970 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:35:55 +00:00
terminx
0cc54720db Silence less stupid fucking warning
git-svn-id: https://svn.eduke32.com/eduke32@6969 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:07:14 +00:00
terminx
e9961ec5a3 Silence stupid fucking warnings
git-svn-id: https://svn.eduke32.com/eduke32@6968 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:07:09 +00:00
terminx
2c993de792 Bump BYTEVERSION
git-svn-id: https://svn.eduke32.com/eduke32@6967 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:07:04 +00:00
terminx
a919fecdbb Don't play DUKE_GOTHEALTHATLOW sound in standalone builds
git-svn-id: https://svn.eduke32.com/eduke32@6966 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:07:00 +00:00
terminx
f8fc87db78 Work around strange internal compiler error with gcc 8.2.0...
git-svn-id: https://svn.eduke32.com/eduke32@6965 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:06:55 +00:00
terminx
f1cedd03f4 Remove compiled CON script from savegames in favor of storing a simple CRC32 value computed from the uncompiled CON text--this means that savegames can now only be loaded if the currently loaded CONs match what was in use when the game was saved.
git-svn-id: https://svn.eduke32.com/eduke32@6964 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:06:49 +00:00
pogokeen
448dd1cd01 screens.cpp: Show average game update time over the last 100 game updates
git-svn-id: https://svn.eduke32.com/eduke32@6963 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-02 07:53:09 +00:00
hendricks266
bf043adb73 [facepalm emoji]
git-svn-id: https://svn.eduke32.com/eduke32@6962 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-02 01:21:19 +00:00
hendricks266
e38dc3f674 Remove redundant code from Polymost fog
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6961 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-02 01:21:16 +00:00
pogokeen
eb964f15d8 polymost.cpp/glsurface.cpp: Don't print shader compile status to the console on success.
git-svn-id: https://svn.eduke32.com/eduke32@6960 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-30 23:01:48 +00:00
terminx
c536225555 Mapste32: echo successful script commands invoked from the console with "do" back to the console in green to indicate success.
git-svn-id: https://svn.eduke32.com/eduke32@6959 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-29 19:31:18 +00:00
terminx
e92e9d4f04 "Lomont then searched for a constant optimal even after one and two Newton iterations and found 0x5F375A86, which is more accurate than the original at every iteration stage."
git-svn-id: https://svn.eduke32.com/eduke32@6958 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-29 19:31:12 +00:00
terminx
ddd8b7e5bb Cheap fix for load game menu crash
git-svn-id: https://svn.eduke32.com/eduke32@6957 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-26 16:34:03 +00:00
terminx
c5054af778 Add missing USERDEFS_USERBYTEVERSION to VM_SetUserdef()
git-svn-id: https://svn.eduke32.com/eduke32@6956 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-26 16:33:57 +00:00
hendricks266
0a7f148a8b Create P_GetOverheadPal() and restore the DOS definition of it.
DOS: the player sprite's pal (including pants color and frozenness), unaffected by sector floor pal
what the code had for some reason: the sector's floor pal, neglecting the nofloorpal bit, frozenness, and the player's pants color

I contend that it is okay for the automap sprite to ignore the sector's color for map legibility purposes.

git-svn-id: https://svn.eduke32.com/eduke32@6955 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:56:11 +00:00
hendricks266
5cf6c2110c Factor out P_GetKneePal().
git-svn-id: https://svn.eduke32.com/eduke32@6954 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:56:08 +00:00
hendricks266
e14d92a2af Clean up variables in overhead map player sprite draw code.
git-svn-id: https://svn.eduke32.com/eduke32@6953 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:56:05 +00:00
hendricks266
1839427f0d Menus: Make some non-functional changes for clarity in Menu_RunInput_EntryRange*_Movement.
git-svn-id: https://svn.eduke32.com/eduke32@6952 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:56:02 +00:00
hendricks266
d1ea5176ff Fix -Wformat-overflow warnings
git-svn-id: https://svn.eduke32.com/eduke32@6951 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:59 +00:00
hendricks266
cc999ff883 Fix warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct menusave_t'; use assignment or value-initialization instead [-Wclass-memaccess]
git-svn-id: https://svn.eduke32.com/eduke32@6950 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:56 +00:00
hendricks266
104bdb131b Fix warning: type qualifiers ignored on cast result type [-Wignored-qualifiers]
git-svn-id: https://svn.eduke32.com/eduke32@6949 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:53 +00:00
hendricks266
a0c87b5fda Update glad to 0.1.25
Includes https://github.com/Dav1dde/glad/pull/140

git-svn-id: https://svn.eduke32.com/eduke32@6948 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:49 +00:00
hendricks266
0116b51b2d softsurface: Perform a "divisor known at compile time" optimization
git-svn-id: https://svn.eduke32.com/eduke32@6947 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:46 +00:00
hendricks266
142b97b9fb Fix variable capitalization in Dependencies.mak files
git-svn-id: https://svn.eduke32.com/eduke32@6946 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:42 +00:00
terminx
f181db5776 MSVC build fix
git-svn-id: https://svn.eduke32.com/eduke32@6945 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:18:18 +00:00
terminx
89cfe15d64 Limit classic upscaling to 2x and 4x until issues with rotatesprite can be ironed out
git-svn-id: https://svn.eduke32.com/eduke32@6944 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:18:13 +00:00
terminx
a9db35a808 CON_SWITCH maintenance
git-svn-id: https://svn.eduke32.com/eduke32@6943 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:18:08 +00:00
terminx
b2e788b7e9 EDUKE32_STANDALONE stuff
git-svn-id: https://svn.eduke32.com/eduke32@6942 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:18:03 +00:00
terminx
1cfe23b348 Change sv prefix applied to savegame control cvars to cl for client (sv is reserved for server vars in multiplayer)
git-svn-id: https://svn.eduke32.com/eduke32@6941 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:17:57 +00:00
pogokeen
8f579cbd09 menus.cpp: Don't show texture filtering, anisotropy, or palette emulation options when EDUKE32_STANDALONE is defined
git-svn-id: https://svn.eduke32.com/eduke32@6940 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-18 00:24:03 +00:00
pogokeen
1df7127609 Support software renderer upscaling engine-side in sdlayer and sdlayer12 with various scaling factors (beyond just pixel doubling).
When glsurface is available, use GL to upscale the render buffer.
Additionally, fix build issues with sdlayer12 introduced by GLAD changes (r6656).

git-svn-id: https://svn.eduke32.com/eduke32@6939 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-14 21:36:44 +00:00
pogokeen
1b932fddaf sdlayer.cpp: Don't destroy window resouces if switching between software rendering on glsurface and Polymost/Polymer
git-svn-id: https://svn.eduke32.com/eduke32@6938 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-14 21:36:34 +00:00
pogokeen
a13a8bf579 polymost.cpp: make c_wrapThreshold consistent between POLYMOST1_BASIC_FRAGMENT_SHADER_CODE and POLYMOST1_EXTENDED_FRAGMENT_SHADER_CODE
git-svn-id: https://svn.eduke32.com/eduke32@6937 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-03 04:29:23 +00:00
pogokeen
facc69f142 polymost.cpp: fix rendering for indexed colour textures to match original behaviour when !r_usetileshades or globalflags & GLOBAL_NO_GL_TILESHADES
Additionally, fix issue in polymost_setShade() where shade calculation was happening after a check for whether or not the shade needed to be updated.

git-svn-id: https://svn.eduke32.com/eduke32@6936 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-03 04:29:19 +00:00
terminx
16cdad6bca Rename console command 'sv_cleanup' to 'purgesaves', as sv_ is a prefix for cvars, not console commands
git-svn-id: https://svn.eduke32.com/eduke32@6935 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-01 04:51:25 +00:00
terminx
ba7340ca47 Reduce default snd_numvoices to 64 and reduce max to 128
git-svn-id: https://svn.eduke32.com/eduke32@6934 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-01 04:51:19 +00:00
pogokeen
29c2863750 sdlayer.cpp: fix software renderer crash affecting Mapster32 due to improper handling of lockcount in videoBeginDrawing()/videoEndDrawing() when using glsurface
git-svn-id: https://svn.eduke32.com/eduke32@6933 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-28 02:00:42 +00:00
pogokeen
9e90b0633b glsurface.h/.cpp: change how the palette is handled and fix tinting/fading
git-svn-id: https://svn.eduke32.com/eduke32@6932 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-25 14:53:46 +00:00
pogokeen
a0faeaf8f6 Revert a number of changes from r6929 and r6930 that are no longer necessary.
Fix root causes of issues causing crash and black screen in Mapster32 when switching back and forth between 3D & 2D modes

git-svn-id: https://svn.eduke32.com/eduke32@6931 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-25 14:53:42 +00:00
terminx
d0e73aa85e Temporary workaround for palette or GL surface issue wherein launching Mapster32 into 2d mode produces a black screen until switching to 3d mode and back
git-svn-id: https://svn.eduke32.com/eduke32@6930 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-24 00:55:29 +00:00
terminx
bcb7815118 Fix crash in Mapster32 when switching from GL 3d mode to 2d mode.
git-svn-id: https://svn.eduke32.com/eduke32@6929 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-24 00:55:23 +00:00
terminx
cbf6dc3c42 Use aligned memory allocation for GL surface
git-svn-id: https://svn.eduke32.com/eduke32@6928 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-24 00:55:17 +00:00
terminx
983781b56d Fix issue with viewing the player sprite through a security camera
git-svn-id: https://svn.eduke32.com/eduke32@6927 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-21 04:12:04 +00:00
terminx
e1a532a15d Fix inclusion of sdl_inc.h in Duke3D's config.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6926 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 21:25:20 +00:00
terminx
84cae053c1 Fix error with initputs symbol when linking the Build tools in some environments
git-svn-id: https://svn.eduke32.com/eduke32@6925 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 21:25:14 +00:00
terminx
652c0044a1 Fix building the Build tools
git-svn-id: https://svn.eduke32.com/eduke32@6924 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 17:49:53 +00:00
terminx
f873b551a8 Fix building with winlayer
git-svn-id: https://svn.eduke32.com/eduke32@6923 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 17:49:46 +00:00
pogokeen
ffee0f8ae9 Add glsurface.cpp/h and tilepacker.cpp/h to Visual Studio Project
git-svn-id: https://svn.eduke32.com/eduke32@6922 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:26 +00:00
pogokeen
d5b669ebe5 Don't allow GL modes if GL Major Version is less than 2.
Additionally, fix build issues for RENDERTYPE=WIN introduced in r6827.

git-svn-id: https://svn.eduke32.com/eduke32@6921 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:22 +00:00
pogokeen
7fd844a795 sdlayer.cpp: don't alter desktop composition using win_setvideomode() if we're creating an SDL window for rendering GL
git-svn-id: https://svn.eduke32.com/eduke32@6920 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:19 +00:00
pogokeen
9d243606d0 When OpenGL is available, prefer using the new glsurface to blit the classic renderer's 8-bit buffer to the screen.
git-svn-id: https://svn.eduke32.com/eduke32@6919 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:16 +00:00
pogokeen
38de24d7eb tilepacker.cpp: instead of maintaining the heap on each insertion, maxheap_buildHeap() on tilepacker_pack()
git-svn-id: https://svn.eduke32.com/eduke32@6918 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:10 +00:00
pogokeen
58132c2353 anim.cpp: timerUpdate() before setting the start time of the animation so that delays outside of animation playback won't cause animations to skip
git-svn-id: https://svn.eduke32.com/eduke32@6917 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-12 20:28:02 +00:00
pogokeen
e75e8cc4aa astub.cpp: fix issue where globalpal was not declared if polymost.h was not included
git-svn-id: https://svn.eduke32.com/eduke32@6916 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-12 02:13:39 +00:00
pogokeen
054f25d7ef palette.cpp: don't call uploadbasepalette() if USE_OPENGL is not defined
git-svn-id: https://svn.eduke32.com/eduke32@6915 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-12 02:13:32 +00:00
terminx
725d556bc4 Fix conveyor belt speed in IM, but not Duke because it breaks gameplay
git-svn-id: https://svn.eduke32.com/eduke32@6914 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:47 +00:00
terminx
fb301ddae7 Rename KXDWN macro and GAMEFLAG_KXDWN to IONMAIDEN and GAMEFLAG_IONMAIDEN
git-svn-id: https://svn.eduke32.com/eduke32@6913 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:42 +00:00
terminx
2c80af8c12 Remove dead code branch from A_DoWaterTracers() and rename the function to Proj_DoWaterTracers()
git-svn-id: https://svn.eduke32.com/eduke32@6912 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:37 +00:00
terminx
0dd623a7fe Don't spawn hardcoded Duke3D debris/guts/glass sprites when compiled as EDUKE32_STANDALONE
git-svn-id: https://svn.eduke32.com/eduke32@6911 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:31 +00:00
terminx
9c313158e8 Rework SE26 movement to function more like SE14 than SE24
git-svn-id: https://svn.eduke32.com/eduke32@6910 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:24 +00:00
terminx
66dadaaa71 Fix issues with running the game fullscreen on Windows 10 with high DPI setups
git-svn-id: https://svn.eduke32.com/eduke32@6909 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-05 21:59:59 +00:00
terminx
326af0d062 Fix SFLAG_WAKEUPBADGUYS
git-svn-id: https://svn.eduke32.com/eduke32@6908 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-05 21:59:52 +00:00
pogokeen
8bf9ad1c31 engine.cpp: fix issue introduced in r6905 where voxels with fractional scaling would not be handled correctly in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@6907 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-30 12:01:42 +00:00
pogokeen
014cf67753 tiles.cpp: fix texcache.cpp:CLEAR_GL_ERRORS() hang on some drivers when trying to create GL textures for tiles when we have no GL context.
This could occur when returning to 2D mode from 3D mode in Mapster32 as videoSet2DMode() does not affect the result of videoGetRenderMode() despite destroying the GL context.

git-svn-id: https://svn.eduke32.com/eduke32@6906 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-26 22:11:25 +00:00
pogokeen
db1220cd11 engine.cpp: fix issue with voxmodel_t voxels not having their scale set properly due to defs being processed before PolymostProcessVoxels()
git-svn-id: https://svn.eduke32.com/eduke32@6905 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 15:04:56 +00:00
pogokeen
5ff4e22eb9 engine.cpp: fix classicDrawVoxel() positioning bugs by:
+avoid adding the pivot's z offset again after it was already added in classicDrawSprite()
+offset the voxel object by half of the voxel object's z size

git-svn-id: https://svn.eduke32.com/eduke32@6904 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 15:04:52 +00:00
hendricks266
5629f4f433 Manually rebasing my r6899 over the formatting atrocity in r6895 broke my work.
git-svn-id: https://svn.eduke32.com/eduke32@6903 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 06:01:53 +00:00
hendricks266
48f86ce594 CON: Add "swaparrays" command, which performs a pointer-swap on arrays of the same storage class.
git-svn-id: https://svn.eduke32.com/eduke32@6902 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:21 +00:00
hendricks266
2a9c846a49 CON: Factor out the parsing of gamearray names.
git-svn-id: https://svn.eduke32.com/eduke32@6901 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:17 +00:00
hendricks266
a442c4f7bf CON: Remix resizearray in the following ways:
Make only one allocation instead of two.
Calculate array byte sizes in a way compatible with GAMEARRAY_BOOLEAN.
Clear the expanded part of grown arrays using correct counts for non-int32 sizes.
Support resizing an array to 0 to free it.

git-svn-id: https://svn.eduke32.com/eduke32@6900 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:12 +00:00
hendricks266
cb86c86ee1 CON: Implement the copy command for GAMEARRAY_BOOLEAN.
git-svn-id: https://svn.eduke32.com/eduke32@6899 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:09 +00:00
hendricks266
064ff3a403 CON: Fix two regressions completely breaking the correctness of the copy command, introduced in r6343.
git-svn-id: https://svn.eduke32.com/eduke32@6898 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:03 +00:00
hendricks266
749d79dcdd Fix the vertical position of the level stats when using the original mini-HUD.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6897 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:57:58 +00:00
hendricks266
9b495ea67f Ensure that anywhere the def parser takes a tilenum or palnum accepts defined tokens in addition to integer literals, if it doesn't already.
Affects fogpal, nofloorpalrange, setuptilerange, dummytilerange, undefinetilerange, definemodelframe, definevoxeltiles, texhitscanrange, nofullbrightrange, and light.

git-svn-id: https://svn.eduke32.com/eduke32@6896 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:43:35 +00:00
terminx
d2e4823feb Move some of the more commonly used CON functions to the top of the switch in VM_Execute(), and promote some of the loop's variables to native_t. Unfortunately, Visual Studio's new clang-format integration took it upon itself to reformat everything. Use diff -w.
git-svn-id: https://svn.eduke32.com/eduke32@6895 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-22 19:03:44 +00:00