Commit graph

1350 commits

Author SHA1 Message Date
Christoph Oelckers
489170b12c - fixed compilation again. 2019-10-20 10:52:38 +02:00
terminx
63d6e70e21 Apparently, a long while back when I limited snd_numvoices to 128 I forgot to change the menu to reflect it
git-svn-id: https://svn.eduke32.com/eduke32@8234 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 10:45:51 +02:00
Christoph Oelckers
76bceb81cd - removed time consuming load indicator from Duke3D frontend as well. 2019-10-20 10:45:50 +02:00
terminx
c68c50ddca Add snd_tryformats cvar to disable automatic loading of .ogg and .flac versions of sound and music
git-svn-id: https://svn.eduke32.com/eduke32@8212 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 10:45:50 +02:00
terminx
873440f06c Fix tiny header issue
git-svn-id: https://svn.eduke32.com/eduke32@8208 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/osdcmds.cpp
#	source/duke3d/src/osdcmds.h
2019-10-20 10:45:50 +02:00
terminx
b8f4651ab4 Don't try videoSetGameMode() if there aren't any valid modes
git-svn-id: https://svn.eduke32.com/eduke32@8207 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 10:45:50 +02:00
Christoph Oelckers
215a7cdff3 - removed unused animlock variable. 2019-10-20 10:45:49 +02:00
terminx
ca789dc4d0 Wait to run G_MoveLoop() until a frame has just been rendered
This should give G_MoveLoop() a better chance to not run past the time when another frame is to be drawn.

git-svn-id: https://svn.eduke32.com/eduke32@8195 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 10:45:49 +02:00
terminx
ba02bbaf67 Add #pragma once to debugbreak.h and remove it from separate inclusion in a couple of translation units as we're including it directly in compat.h now
git-svn-id: https://svn.eduke32.com/eduke32@8192 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/sdlayer.cpp
#	source/duke3d/src/gamedef.cpp
2019-10-20 10:45:48 +02:00
terminx
d7f779eaec Use EXIT_FAILURE and EXIT_SUCCESS from stdlib.h when calling exit()
git-svn-id: https://svn.eduke32.com/eduke32@8190 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
#	source/build/src/polymost.cpp
#	source/build/src/tiles.cpp
#	source/duke3d/src/astub.cpp
2019-10-20 10:45:48 +02:00
Christoph Oelckers
462bd8d292 - cleaned out some commented out code. 2019-10-20 10:44:51 +02:00
Christoph Oelckers
2316957026 - made things compile again after updating enet. Also removed the redundant dumb and game_music_emu libraries which just got imported by accident when using other things from GZDoom.
Note: enet uses 'malloc' and 'free' as field names in a struct - this does not work with any compiler using some sort of heap instrumentation that #defines these names!
This had to be changed to allow MSVC debug builds to compile again.
2019-10-20 09:16:01 +02:00
terminx
63713002b3 Swap out our old deprecated version of ENet for a single-file header-based fork, including features like IPv6 support
git-svn-id: https://svn.eduke32.com/eduke32@8175 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	GNUmakefile
#	libraries/enet/LICENSE
#	libraries/enet/callbacks.c
#	libraries/enet/compress.c
#	libraries/enet/enet/callbacks.h
#	libraries/enet/enet/enet.h
#	libraries/enet/enet/list.h
#	libraries/enet/enet/protocol.h
#	libraries/enet/enet/time.h
#	libraries/enet/enet/types.h
#	libraries/enet/enet/unix.h
#	libraries/enet/enet/utility.h
#	libraries/enet/enet/win32.h
#	libraries/enet/host.c
#	libraries/enet/list.c
#	libraries/enet/packet.c
#	libraries/enet/peer.c
#	libraries/enet/protocol.c
#	libraries/enet/unix.c
#	libraries/enet/win32.c
#	platform/Windows/build.vcxproj
#	platform/Windows/build.vcxproj.filters
#	platform/Windows/eduke32.sln
#	platform/Windows/eduke32.vcxproj
#	source/duke3d/src/player.cpp
2019-10-20 08:43:36 +02:00
terminx
ad6d94b0f5 Patch from Doom64hunter to address a couple of issues with per-map art
git-svn-id: https://svn.eduke32.com/eduke32@8167 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/tiles.cpp
2019-10-20 08:28:44 +02:00
terminx
a649130327 Clamp nextPageDelay in G_FPSLimit() to 0.0 - g_frameDelay
git-svn-id: https://svn.eduke32.com/eduke32@8148 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 08:12:26 +02:00
terminx
85dd8e31a5 G_HandleAsync() -> gameHandleEvents()
git-svn-id: https://svn.eduke32.com/eduke32@8140 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 07:48:15 +02:00
terminx
802f69d324 Partial timer cleanup
After this revision, the only place timerUpdate() is called is from within handleevents(). S_Cleanup(), MUSIC_Update(), and G_HandleSpecialKeys() are now called from a timer callback set with timerSetCallback(). This more or less deprecates the usage of faketimerhandler() in EDuke32 and Mapster32, but other games still rely on the functionality.

git-svn-id: https://svn.eduke32.com/eduke32@8139 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/astub.cpp
2019-10-20 07:48:13 +02:00
terminx
593b5740e3 Reword stupid error message that has probably never even been seen
git-svn-id: https://svn.eduke32.com/eduke32@8138 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 07:48:05 +02:00
terminx
4d3dedd4ab ifdef DEBUGGINGAIDS for this quick exit crap
this is more like regular AIDS than DEBUGGINGAIDS though

git-svn-id: https://svn.eduke32.com/eduke32@8137 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 07:48:04 +02:00
terminx
b298ed19ff Ugh, apparently we rely on this for FURY
git-svn-id: https://svn.eduke32.com/eduke32@8135 1a8010ca-5511-0410-912e-c29ae57300e0
2019-10-20 07:48:01 +02:00
Christoph Oelckers
85d377647a - tweaked the fade ramp a bit.
For Duke Nukem and its direct offspring (Nam, WW2GI and Redneck Rampage) the ramp is not a linear fade from 0 to 1, it needs to be a little darker than that.
Unfortunately the proper factor needed here must be set manually, this cannot really be calculated from the lookup tables.
2019-10-20 01:14:48 +02:00
Christoph Oelckers
6f4ca480b5 - sky clamping may only be done in Blood for now.
This needs a better solution.
2019-10-19 20:25:58 +02:00
Christoph Oelckers
cd7bbe35a8 - removed all legacy fog code. 2019-10-19 15:52:46 +02:00
Christoph Oelckers
8b1f2f5fc9 - disabled console lockout option as a modding feature.
No, sorry, but this is something I consider unacceptable!
2019-10-19 00:27:34 +02:00
Christoph Oelckers
bef8c9ae76 - hictinting cleanup.
This needs to be moved into the backend, and partially into the shader. So far this only removes the code from the main rendering logic, the final implementation is not done yet.
It had to go because it required the main rendering code to look deep into the texture data which would be a major blocker for refactoring.
2019-10-17 20:29:58 +02:00
Christoph Oelckers
6d7458fe42 - fixed bad endif() placing in CMake projects 2019-10-17 08:44:01 +02:00
Christoph Oelckers
0aa5db7969 - project rework to shorten compile times.
* subprojects fpr game frontends added and unsigned char option put into global flags.
2019-10-16 23:09:02 +02:00
Christoph Oelckers
64e116a4b1 - use special classes with [] operators to redirect the frequently used global arrays to the newly implemented texture manager.
This allows to use the contained storage without changing all the code.
2019-10-16 20:39:59 +02:00
Christoph Oelckers
9a52e8039c - rerouted tileCreate and tileSetExternal calls. 2019-10-15 23:18:52 +02:00
Christoph Oelckers
c3bc690e98 - more updating and bug in UpdatePicSize fixed. 2019-10-15 20:02:37 +02:00
Christoph Oelckers
0e165e40a3 - first batch of adjustments to the new tile management.
- consolidated Polymost precaching and removed precaching for static tiles because they now are always loaded.
- removed cache configurability. On modern systems this is relatively pointless - allocating 50 or 100 MB is a non-issue - and the cache is due for replacement anyway.
2019-10-15 00:54:14 +02:00
Christoph Oelckers
bb67a1ba38 - some reworking of the texture code to make integration of Build tiles easier. 2019-10-12 08:54:06 +02:00
Christoph Oelckers
fbc22e0125 - sanitized walock.
Sorry, but having a globally writable pointer to every texture is just insane and makes any functional management impossible.
This is merely a preparation for adding a real texture manager. That cannot be done if any code can write over the data at will. For that, it now has to make the texture writable first or create a writable empty texture.
2019-10-11 23:31:59 +02:00
Christoph Oelckers
3621aae3f0 - rerouted all write accesses to tilesiz and picsiz through a function interface.
These will have to do some texture management bookkeeping so directly changing the values is problematic.
This required changing the parameter interface in polymost.cpp because a few places hacked around with the global state to pass parameters to subfunctions.
2019-10-11 21:04:31 +02:00
Christoph Oelckers
fbc7e626e9 - removed the fullbright render pass, because this is better set up as a shader option.
- also removed the legacy fog modes because their implementation did not mix well with the texture system - they are also not really useful to begin with.

The last fog mode will most likely also be removed once true color shading is working but that one is less of an issue.
2019-10-10 21:05:10 +02:00
Christoph Oelckers
16dbb3526a - removed unused code. 2019-10-07 22:11:28 +02:00
Christoph Oelckers
ef2de97077 - the harmless changes of the failed refactoring of the shader. 2019-10-06 19:32:35 +02:00
Christoph Oelckers
93ad83b380 - use GZDoom's texture backend to read hightile textures. (Hightile tinting code moved to the shader but isn't active yet.
- remove all code for faking gamma correction through palette manipulated images.
2019-10-05 21:59:03 +02:00
Christoph Oelckers
ae1e090716 - all non-shader related GL calls are gone from the main code base. 2019-10-04 21:13:04 +02:00
Christoph Oelckers
a86f1ffd4f - make it compile again. 2019-10-04 17:36:37 +02:00
Christoph Oelckers
471f720d95 - consolidated console clear functions. 2019-10-04 01:25:10 +02:00
Christoph Oelckers
d12563f644 - got rid of klzw and the legacy demo code along with it. 2019-09-25 23:12:29 +02:00
Christoph Oelckers
0261fef4a8 - removed some unused files. 2019-09-25 23:00:10 +02:00
Christoph Oelckers
cd920299d0 - moved winbits.cpp to the platform folder and cleaned out unused parts. 2019-09-25 22:38:47 +02:00
Christoph Oelckers
330c80246e - added ZDoom's FArgs class for easier command line checking. 2019-09-23 19:29:25 +02:00
Christoph Oelckers
37907ddd06 - startup hacks.
Unfortunately nothing of this can be fixed before the resource management has been refactored from the ground up. Sp for now this ugliness needs to suffice.
2019-09-23 18:17:36 +02:00
Christoph Oelckers
527d99008b - fixed the setup.
Renamed all elements still referring to zdoom.
removed the frontend specific resource data.
fixed startup dialog to accept ANSI date despite building as Unicode. This needed a bit of hackery because the macros in windowsx.h are not character set sensitive.
2019-09-23 01:28:18 +02:00
Christoph Oelckers
2cbe211e7c - transitioned project to CMake and deleted most of the old build system.
The EDuke32 and RedNukem frontends are working, Blood isn't yet.

Notes:

many of the CMake variables and its output still refer to zdoom. Before changing that I wanted to make sure to be able to commit something that works.
support code for Windows XP has been entirely removed. On Windows this will only target Vista and up.
the crc32.h header had to be renamed to deconflict from zlib.
several Windows API calls were changed to call the A-versions directly. Weirdly enough there were places that defined their parameters as T types but in a non-working way.
removed some remaining editor files and support for the native software rendering only Windows backend.
in a few simple cases, replaced 'char' with 'uint8_t'. The code as-is depends on chars being unsigned which is non-portable. This needs to be carefully reviewed.
2019-09-22 23:15:46 +02:00
Christoph Oelckers
55a879fcc0 - put EDuke frontend source into a namespace.
This commit does not work yet!
2019-09-21 22:53:00 +02:00
Christoph Oelckers
30c47a8511 - include namespace file in all sources as the very first include. 2019-09-21 20:59:54 +02:00
Christoph Oelckers
92fa2cc030 - removed Mapster launcher images. 2019-09-21 20:28:55 +02:00
Christoph Oelckers
7721ed31c0 - removed Lunatic remains.
This looks as dead as it could be, so away it goes.
2019-09-21 20:27:29 +02:00
Christoph Oelckers
639d1fb4d3 - we do not want to build an editor here. 2019-09-21 20:24:11 +02:00
Christoph Oelckers
15f5a35fd8 - removed all extern "C" from EDuke32 folder, plus some other dead code I noticed. 2019-09-21 19:38:38 +02:00
Christoph Oelckers
71b332459b - removed Android and Mapster headers plus raw EDuke assets in Blood folder. 2019-09-21 19:30:20 +02:00
Christoph Oelckers
998ac01157 - manual merge of all NBlood changes that couldn't get cherry picked. 2019-09-21 13:02:17 +02:00
nukeykt
107a630883 Add TROR rendering
# Conflicts:
#	source/blood/src/mapedit.cpp
#	source/build/include/editor.h
#	source/build/include/polymer.h
#	source/build/src/build.cpp
#	source/build/src/polymer.cpp
2019-09-21 10:11:02 +02:00
nukeykt
75d2e81e98 Move midi stuff to audiolib
# Conflicts:
#	platform/Windows/eduke32.vcxproj
#	platform/Windows/nblood.vcxproj.filters
#	source/audiolib/include/al_midi.h
#	source/audiolib/include/opl3.h
#	source/audiolib/include/oplmidi.h
#	source/audiolib/src/_al_midi.h
#	source/audiolib/src/_oplmidi.h
#	source/audiolib/src/al_midi.cpp
#	source/audiolib/src/opl3.cpp
#	source/audiolib/src/oplmidi.cpp
#	source/duke3d/Dependencies.mak
#	source/duke3d/src/sdlmusic.cpp
2019-09-21 09:37:07 +02:00
terminx
225be48aca Fix issue where the borderless windowed mode menu option wasn't starting out reflecting the current value
git-svn-id: https://svn.eduke32.com/eduke32@8130 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:27:47 +02:00
terminx
4ad6dd65b1 EDUKE32_STANDALONE does, however, need this
git-svn-id: https://svn.eduke32.com/eduke32@8129 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:27:32 +02:00
terminx
d3448c0ccc EDUKE32_STANDALONE doesn't need this
git-svn-id: https://svn.eduke32.com/eduke32@8128 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:27:32 +02:00
terminx
701c67eb9e "digital axis shit based on mouse movement should be eliminated"
git-svn-id: https://svn.eduke32.com/eduke32@8127 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/menus.cpp
2019-09-20 23:27:31 +02:00
terminx
b99ac8c4a0 This should help with some of the player movement fuckery
This fixes the bug that let you jump through the ticket booth window in E1L1 and the problems jumping into vents when run mode is disabled.

git-svn-id: https://svn.eduke32.com/eduke32@8119 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:25:40 +02:00
terminx
05fae1eb1a This fixes the shrinker in E1L4
I wonder what it breaks! :D

git-svn-id: https://svn.eduke32.com/eduke32@8117 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:25:39 +02:00
terminx
e6d72ae2b6 Add missing EDUKE32_STANDALONE ifdef
git-svn-id: https://svn.eduke32.com/eduke32@8111 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:18 +02:00
terminx
4e15b11571 Remove getzsofslope_player() and use yax_getzsofslope() and getcorrectzsofslope() to determine the player's .truecz and .truefz values
git-svn-id: https://svn.eduke32.com/eduke32@8110 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:18 +02:00
terminx
a5dacd4b12 Fix bug dating back to the DOS version where actors on sector lines would sometimes fail to shoot hitscan projectiles
git-svn-id: https://svn.eduke32.com/eduke32@8107 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:16 +02:00
terminx
8f347bde0b Fix bug with SFLAG_NOWATERSECTOR in EDUKE32_STANDALONE (Fury) builds
git-svn-id: https://svn.eduke32.com/eduke32@8106 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:15 +02:00
terminx
b127997824 Just formatting...
git-svn-id: https://svn.eduke32.com/eduke32@8104 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:04 +02:00
terminx
ea66e1a8ee Expose control over the list of statnums that hitradius will damage to CON
git-svn-id: https://svn.eduke32.com/eduke32@8103 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:03 +02:00
terminx
1b12de0037 Fix a couple remaining issues with crouch toggle
git-svn-id: https://svn.eduke32.com/eduke32@8102 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:02 +02:00
terminx
48ca8f01aa Take slope heights into account in A_RadiusDamage()
git-svn-id: https://svn.eduke32.com/eduke32@8101 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:02 +02:00
terminx
0cba9d2036 This theoretically helps with cases in which the player is squished by geometry
git-svn-id: https://svn.eduke32.com/eduke32@8100 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:01 +02:00
terminx
35274783a9 Eliminate another goofy holdover from the old version of A_RadiusDamage()
git-svn-id: https://svn.eduke32.com/eduke32@8099 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:01 +02:00
terminx
22f67f17e9 Add missing abs() call to z check before EVENT_JUMP
git-svn-id: https://svn.eduke32.com/eduke32@8098 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:23:00 +02:00
hendricks266
475743424f Make sjson its own object
git-svn-id: https://svn.eduke32.com/eduke32@8091 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:19:58 +02:00
terminx
e3f1399484 Fix dumbass problem with A_RadiusDamage()
git-svn-id: https://svn.eduke32.com/eduke32@8090 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:18:48 +02:00
terminx
8aa8b7bef6 EDUKE32_STANDALONE stuff
git-svn-id: https://svn.eduke32.com/eduke32@8089 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:18:48 +02:00
terminx
f144f1a0bc Relax SKIPWALLCHECK enforcement with SHRINKSPARK projectile in Duke3D
git-svn-id: https://svn.eduke32.com/eduke32@8086 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:17:59 +02:00
terminx
ad4afc2020 More A_RadiusDamage() work
git-svn-id: https://svn.eduke32.com/eduke32@8085 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:17:59 +02:00
terminx
11e9baa045 Add borderless windowed mode options to menu
git-svn-id: https://svn.eduke32.com/eduke32@8084 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:17:58 +02:00
terminx
12eea3740c EDUKE32_STANDALONE crap
git-svn-id: https://svn.eduke32.com/eduke32@8083 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:17:58 +02:00
terminx
aa8ce8d42a Fix USE_OPENGL=0 builds
git-svn-id: https://svn.eduke32.com/eduke32@8082 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:17:57 +02:00
terminx
8ac4c6739a Change A_DamageWall() parameter from pointer to reference because we don't write to it
git-svn-id: https://svn.eduke32.com/eduke32@8080 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:17:22 +02:00
terminx
9cc608715e Fast A_RadiusDamage()
git-svn-id: https://svn.eduke32.com/eduke32@8079 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 23:17:21 +02:00
Christoph Oelckers
625586b729 - delete unneeded content from rsrc folders.
None of these will be used in any way so they may just go.
2019-09-20 22:16:34 +02:00
terminx
3a071ae6b7 At some point these two lines got removed from CON_IFCANSHOOTTARGET
git-svn-id: https://svn.eduke32.com/eduke32@8075 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:15:15 +02:00
terminx
e262135463 Use multiples of 5 for the HUD scale option and cap the range at 50-100
git-svn-id: https://svn.eduke32.com/eduke32@8071 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:10:42 +02:00
terminx
1ba0406b4d uint64_t in G_FPSLimit()
git-svn-id: https://svn.eduke32.com/eduke32@8070 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:10:42 +02:00
terminx
598a0f2630 Allow up to fov 140 from console
git-svn-id: https://svn.eduke32.com/eduke32@8068 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:10:41 +02:00
terminx
5f8e7193d7 Bind medkit to mouse3 by default
git-svn-id: https://svn.eduke32.com/eduke32@8067 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:10:40 +02:00
terminx
c670cceb18 Remove C as alternate default bind for regular gamefunc_Crouch
git-svn-id: https://svn.eduke32.com/eduke32@8066 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:10:40 +02:00
terminx
d0223fd744 Support fullscreening to the correct display in multiple monitor configurations
git-svn-id: https://svn.eduke32.com/eduke32@8063 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/include/baselayer.h
#	source/build/src/polymost.cpp
2019-09-20 21:10:22 +02:00
terminx
f868345670 More gamefunc_Toggle_Crouch improvements
git-svn-id: https://svn.eduke32.com/eduke32@8061 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:09:57 +02:00
terminx
4300eb1a66 Rename gamefunc_Crouch_Toggle to gamefunc_Toggle_Crouch to match the only existing similarly named gamefunc, gamefunc_Toggle_Crosshair
Now bound to C by default.

git-svn-id: https://svn.eduke32.com/eduke32@8059 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:09:18 +02:00
terminx
e6cb2e4a8d Use a sound's volume offset parameter as the max distance if the explosion flag is set
git-svn-id: https://svn.eduke32.com/eduke32@8058 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:09:18 +02:00
terminx
dcf9768c20 Rework crouch toggle
This is almost entirely contained in P_GetInput() now. It still uses two separately mappable buttons but you can get away with only gamefunc_Crouch_Toggle.

git-svn-id: https://svn.eduke32.com/eduke32@8057 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:09:17 +02:00
terminx
9841b053ea Set actor .bpos after A_GetZLimits() in A_Spawn()
git-svn-id: https://svn.eduke32.com/eduke32@8055 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:09:16 +02:00
terminx
d27c705b15 Fix MSVC build
git-svn-id: https://svn.eduke32.com/eduke32@8053 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:09:15 +02:00
pogokeen
222e593437 Change some clocks to support sub-tick precision using a new class, ClockTicks.
Using that higher precision, interpolate at a higher granularity.
Further, truncate the target interpolation time to vertical blank boundaries to avoid producing temporal artifacts.
Fix issues caused by interpolation calculations being handled differently in multiple places (and fix cases where smoothratios were being thrown away only to be redone without checking all proper conditions).
Ensure ClockTicks changes do not break other targets (EKenBuild, VoidSW), but note any interpolation there is not similarly updated.

git-svn-id: https://svn.eduke32.com/eduke32@8050 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
#	source/build/src/sdlayer.cpp
2019-09-20 21:09:14 +02:00
hendricks266
ab14653bbc Make building Fury easier with FURY=1
git-svn-id: https://svn.eduke32.com/eduke32@8044 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:19:09 +02:00
hendricks266
97a1dea887 Fix "bind showkeys" crash
git-svn-id: https://svn.eduke32.com/eduke32@8041 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:17:21 +02:00
terminx
10a909b0af Yeahhhhhh, this wasn't a great idea
git-svn-id: https://svn.eduke32.com/eduke32@8040 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:17:21 +02:00
hendricks266
5cd2b246e5 I don't know why I read this diff backwards.
git-svn-id: https://svn.eduke32.com/eduke32@8039 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:17:20 +02:00
hendricks266
8c285aafe6 Remove fav priority weapon switch setting from menu, still available as a cvar
git-svn-id: https://svn.eduke32.com/eduke32@8038 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:17:20 +02:00
hendricks266
c0cf31a28c Re-enable mouse dead zone and mouse bias in input code, follow-up to r8028
git-svn-id: https://svn.eduke32.com/eduke32@8037 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:17:19 +02:00
terminx
b2f96ade69 Tweak weapon autoswitch menu option text
git-svn-id: https://svn.eduke32.com/eduke32@8033 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:15:53 +02:00
terminx
1b5edf9551 Don't spawn TRANSPORTERSTAR if FURY
git-svn-id: https://svn.eduke32.com/eduke32@8032 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:15:52 +02:00
terminx
3dcbf9955d Add console/log output for when the player is killed by various internal things, to aid in debugging
git-svn-id: https://svn.eduke32.com/eduke32@8030 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:14:10 +02:00
terminx
b9e61fcb7f Use a vec3_t instead of separate vars to hold temporary position data in G_HandleMirror()
git-svn-id: https://svn.eduke32.com/eduke32@8029 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:14:10 +02:00
terminx
a8f621a989 if out the in_mousebias and in_mousedeadzone cvars
git-svn-id: https://svn.eduke32.com/eduke32@8028 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:14:09 +02:00
hendricks266
673bd16299 Input: Separate everything in AdvanceTrigger into a new TextSubmit except Space so it doesn't submit text fields such as savegames
git-svn-id: https://svn.eduke32.com/eduke32@8025 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:14:09 +02:00
hendricks266
757b19ad3f Menus: Move weapon switching to Control Setup
git-svn-id: https://svn.eduke32.com/eduke32@8023 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:14:08 +02:00
terminx
6c330bba1f Add option to disable the game side framerate limiter back into the menu
git-svn-id: https://svn.eduke32.com/eduke32@8022 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:14:08 +02:00
terminx
d1e9a4ec0d Add toggle for always run back to the menu
git-svn-id: https://svn.eduke32.com/eduke32@8021 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:14:08 +02:00
terminx
2895b36b72 Change skill alignment if FURY
git-svn-id: https://svn.eduke32.com/eduke32@8017 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:12:21 +02:00
hendricks266
4f5434dffe Don't clobber E1L8 for user maps
git-svn-id: https://svn.eduke32.com/eduke32@8016 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:12:21 +02:00
hendricks266
733cb636cd Return to the main menu after completing a user map
git-svn-id: https://svn.eduke32.com/eduke32@8015 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:12:20 +02:00
hendricks266
7bf4a722fb Menus: Fix Y/N options with three lines
git-svn-id: https://svn.eduke32.com/eduke32@8014 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:12:20 +02:00
hendricks266
98c4d8247f Menus: Fix the Sound and Music Volume options in a way that works for Duke too, using indentation
git-svn-id: https://svn.eduke32.com/eduke32@8013 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:12:19 +02:00
hendricks266
fafc8f1583 Menus: Disable the gamepad axes and buttons menus if opening them would cause an abort due to having no items
git-svn-id: https://svn.eduke32.com/eduke32@8012 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 20:12:19 +02:00
hendricks266
002a52033d Amend r7987 to only clear input if actually in the menu
git-svn-id: https://svn.eduke32.com/eduke32@8008 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:12:29 +02:00
hendricks266
f47b44f4b2 Fix use of wrong macros for game controller buttons in game-side input.cpp
git-svn-id: https://svn.eduke32.com/eduke32@8006 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:12:25 +02:00
terminx
59b0c0e3f7 Revise r8001
git-svn-id: https://svn.eduke32.com/eduke32@8004 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:12:21 +02:00
terminx
c72a69ff6f This timing stuff actually works
It doesn't help when it turns out the compiler is broken and implementing std::chrono::high_resolution_clock as something that only counts in ms instead of properly aliasing it to std::chrono::steady_clock!

git-svn-id: https://svn.eduke32.com/eduke32@8002 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/sdlayer.cpp
2019-09-20 16:12:16 +02:00
terminx
3b504975a2 Call A_GetZLimits() for sprites in the map at load time
git-svn-id: https://svn.eduke32.com/eduke32@8001 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:11:09 +02:00
hendricks266
00992a7ba5 Menus: Open the User Map menu to a folder named "usermaps" if one exists.
git-svn-id: https://svn.eduke32.com/eduke32@7999 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:11:05 +02:00
hendricks266
345497b271 newgamechoices: usercontent flag
git-svn-id: https://svn.eduke32.com/eduke32@7998 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:11:03 +02:00
hendricks266
6fa8a17c44 Don't adjust analog turning because of the Run gamefunc
git-svn-id: https://svn.eduke32.com/eduke32@7997 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:11:01 +02:00
hendricks266
addc919636 Amend r7993
git-svn-id: https://svn.eduke32.com/eduke32@7996 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:59 +02:00
hendricks266
446186d49a CON: Add userdef .gamepadactive
git-svn-id: https://svn.eduke32.com/eduke32@7995 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:57 +02:00
hendricks266
f7d6f66405 Menus: Use gamepad button names for Y/N prompts when most recently active
git-svn-id: https://svn.eduke32.com/eduke32@7994 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:55 +02:00
hendricks266
9c3ec69c86 CON: Add getgamefuncbind
git-svn-id: https://svn.eduke32.com/eduke32@7993 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:52 +02:00
hendricks266
73fb1d467f Replace implementation of crouch toggle in a way that won't interfere with other uses of the crouch key, such as swimming and jetpacking.
TODO: Make this work over the network.

git-svn-id: https://svn.eduke32.com/eduke32@7991 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:48 +02:00
hendricks266
9a1a3f01e8 Fix grpinfo reading in Mapster32
Thanks to Doom64hunter.

git-svn-id: https://svn.eduke32.com/eduke32@7990 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:46 +02:00
hendricks266
ef0d79140c Disable drawing sprite arrows and borders in the automap in FURY mode
git-svn-id: https://svn.eduke32.com/eduke32@7989 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:44 +02:00
hendricks266
86aa23e394 Allow gamepads to accept text entry fields
git-svn-id: https://svn.eduke32.com/eduke32@7988 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:42 +02:00
hendricks266
a29869f86e Fix gamepad analogs not working in menus when in game
git-svn-id: https://svn.eduke32.com/eduke32@7987 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:40 +02:00
hendricks266
cb405ced52 Add gamepad axis inversion toggles
git-svn-id: https://svn.eduke32.com/eduke32@7986 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:38 +02:00
hendricks266
1bbd251bff Rescan for controllers when toggling gamepads back on
git-svn-id: https://svn.eduke32.com/eduke32@7985 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:37 +02:00
hendricks266
0bf4f744a8 Menus: Improve the "Status bar" option when there are only two settings and one is None
git-svn-id: https://svn.eduke32.com/eduke32@7984 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:34 +02:00
hendricks266
d143589f3d Menus: Fix the names of the Sound and Music Volume options
git-svn-id: https://svn.eduke32.com/eduke32@7983 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:32 +02:00
hendricks266
27e3194d27 Menus: Add Enable Gamepad toggle
git-svn-id: https://svn.eduke32.com/eduke32@7982 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:30 +02:00
hendricks266
e08b292598 Remix the gamepad layouts
git-svn-id: https://svn.eduke32.com/eduke32@7981 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:29 +02:00
hendricks266
cfdb57ac6d Make use of fix16 for controller aiming
git-svn-id: https://svn.eduke32.com/eduke32@7980 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:26 +02:00
hendricks266
314eaa7200 Fix analog turning rate being half of what it should be
git-svn-id: https://svn.eduke32.com/eduke32@7979 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:24 +02:00
hendricks266
ba730be6b6 Add Crouch Toggle gamefunc
git-svn-id: https://svn.eduke32.com/eduke32@7978 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:10:22 +02:00
terminx
3a7ee79554 Name fix, I guess?
git-svn-id: https://svn.eduke32.com/eduke32@7974 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:07:39 +02:00
terminx
f76ca0a361 Fix remaining casts to vec2_t/vec3_t
git-svn-id: https://svn.eduke32.com/eduke32@7973 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
2019-09-20 16:07:36 +02:00
hendricks266
32edf9a747 Rename "Joystick" to "Gamepad" in menus
git-svn-id: https://svn.eduke32.com/eduke32@7972 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:07:22 +02:00