Commit graph

1308 commits

Author SHA1 Message Date
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
hendricks266
fb78df76cd Add verification screens to color correction, keyboard, and joystick resetting options
git-svn-id: https://svn.eduke32.com/eduke32@7971 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:07:20 +02:00
hendricks266
791f8376b6 Implement contoller analog 0 in menus very hackishly
git-svn-id: https://svn.eduke32.com/eduke32@7970 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:07:18 +02:00
hendricks266
e19511cad7 Replace "Joystick" config strings with "Controller" to reset defaults
git-svn-id: https://svn.eduke32.com/eduke32@7969 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:07:16 +02:00
hendricks266
b4362aa6a9 Implement controller defaults
git-svn-id: https://svn.eduke32.com/eduke32@7968 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:07:14 +02:00
hendricks266
5c96fcb334 Add Third Person View gamefunc
git-svn-id: https://svn.eduke32.com/eduke32@7967 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:07:12 +02:00
hendricks266
3bfed33608 Add voxels option to menu, if at least one has been defined
git-svn-id: https://svn.eduke32.com/eduke32@7961 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/engine.cpp
2019-09-20 16:04:57 +02:00
hendricks266
0aea2e92c6 Menus: Move auto aim option to Control Setup
git-svn-id: https://svn.eduke32.com/eduke32@7959 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:04:41 +02:00
hendricks266
5cc9d1e440 Fix binding joystick digital axes in the menu
git-svn-id: https://svn.eduke32.com/eduke32@7957 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:47 +02:00
hendricks266
56998c4840 Report 16-bit analog axis precision to the game instead of arbitrarily truncating it to ~14.3 bits.
git-svn-id: https://svn.eduke32.com/eduke32@7956 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:45 +02:00
terminx
44d5371ad3 Fix bug where "standing" on top of a sprite structure underwater would cause the player to act as if they were no longer underwater
git-svn-id: https://svn.eduke32.com/eduke32@7955 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:43 +02:00
terminx
620f0da65b Another attempt at improving/fixing the fps limiter
git-svn-id: https://svn.eduke32.com/eduke32@7954 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:41 +02:00
terminx
755de405c2 Add automapping var to Gv_RefreshPointers()
git-svn-id: https://svn.eduke32.com/eduke32@7953 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:39 +02:00
terminx
99a3c3393a Better behaved falling actors
git-svn-id: https://svn.eduke32.com/eduke32@7952 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:36 +02:00
terminx
49edf5f542 Change actor/player context of EVENT_SCREEN
git-svn-id: https://svn.eduke32.com/eduke32@7951 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:35 +02:00
terminx
d404f010c9 Fix some undefined behavior
git-svn-id: https://svn.eduke32.com/eduke32@7950 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:33 +02:00
terminx
0ffc89fbb7 Remove dead declaration
git-svn-id: https://svn.eduke32.com/eduke32@7948 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:28 +02:00
hendricks266
c40a4b26ff Fix how analog axis values are used by the game code, part 2: aiming.
Mouse movement is no longer funneled through analog axis handling.

git-svn-id: https://svn.eduke32.com/eduke32@7947 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:27 +02:00
hendricks266
f1e67616a9 Fix how analog axis values are used by the game code, part 1: movement.
Turning and looking will require me to disentangle CONTROL_GetMouseDelta from the rest of CONTROL_PollDevices.

git-svn-id: https://svn.eduke32.com/eduke32@7946 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:24 +02:00
hendricks266
7338988b5e Fix mouse and joystick menu slider scales
git-svn-id: https://svn.eduke32.com/eduke32@7945 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:21 +02:00
hendricks266
618203489f Blank out old-style joystick defaults because they're irrelevant in 2019.
git-svn-id: https://svn.eduke32.com/eduke32@7944 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:19 +02:00
hendricks266
87c31bbdf5 Fix bugs with unbound mouse and joystick controls not saving properly.
git-svn-id: https://svn.eduke32.com/eduke32@7943 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:17 +02:00
hendricks266
47d8541cf3 Enable joysticks by default because better that than figuring out how to parse settings.cfg multiple times without breaking something.
git-svn-id: https://svn.eduke32.com/eduke32@7942 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:15 +02:00
pogokeen
5c11fc8889 sounds.cpp: fix infinite loop caused by removal of "else" in r7939
git-svn-id: https://svn.eduke32.com/eduke32@7941 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:12 +02:00
terminx
9ee310ce71 Fix sound issue
git-svn-id: https://svn.eduke32.com/eduke32@7940 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:10 +02:00
terminx
ef7f4f8a60 Oops
git-svn-id: https://svn.eduke32.com/eduke32@7939 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:08 +02:00
hendricks266
e7723efcf4 Fix skipping to the end of def blocks
git-svn-id: https://svn.eduke32.com/eduke32@7938 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:06 +02:00
terminx
36366c0c98 M-M-M-MUTEX MADNESS
git-svn-id: https://svn.eduke32.com/eduke32@7937 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:04 +02:00
terminx
6fddd30eaa Remove lockclock from mapstates
git-svn-id: https://svn.eduke32.com/eduke32@7936 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:02 +02:00
terminx
564a68f1a7 Improve frame limiter logic
git-svn-id: https://svn.eduke32.com/eduke32@7935 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:00 +02:00
terminx
0a5cdea62a Run savegame events as myconnectindex instead of screenpeek
This doesn't really matter right now, but it's wrong.

git-svn-id: https://svn.eduke32.com/eduke32@7934 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:02:58 +02:00
terminx
3b98ba6561 Attempt to work around odd behavior when attempting to use stuff like wall aligned sprites with the new version of clipmove
The behavior was always "wrong" as clipmove does not handle movement of lines, just movement of clip boxes against lines and face sprite points, but the newer version of clipmove actively bounces sprites away from lines they would otherwise clip into. This was causing wall-aligned sprites that called any functions that ended up calling clipmove to get pushed away from the wall unintentionally.

git-svn-id: https://svn.eduke32.com/eduke32@7932 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:02:53 +02:00
hendricks266
67b7d2408b newgamechoices
git-svn-id: https://svn.eduke32.com/eduke32@7930 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/defs.cpp
2019-09-20 16:02:49 +02:00
terminx
1413c7fd5c Tiny error message cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7925 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:01:20 +02:00
hendricks266
ca8f8c0dbd save name in exts
git-svn-id: https://svn.eduke32.com/eduke32@7924 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:01:18 +02:00
hendricks266
03b63470b9 Add fallthrough__ in gameexec
git-svn-id: https://svn.eduke32.com/eduke32@7923 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:01:16 +02:00
terminx
32cd1ae4dd Tweak the fatal engine initialization error and game already running dialog boxes a bit
git-svn-id: https://svn.eduke32.com/eduke32@7921 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
2019-09-20 16:01:11 +02:00
terminx
b7f349cd92 Sound cleanups
git-svn-id: https://svn.eduke32.com/eduke32@7915 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/sounds.h
2019-09-20 15:47:13 +02:00
terminx
48f9edf743 New feature: combine SF_GLOBAL and SF_DTAG definesound flags to get Duke3D explosion sound behavior
git-svn-id: https://svn.eduke32.com/eduke32@7914 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:47 +02:00
terminx
789be3cf35 Add S_SetProperties() function to handle repetitious setting of a few sound structure members
git-svn-id: https://svn.eduke32.com/eduke32@7913 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:45 +02:00
terminx
40e54fdbbb Tweak how the semaphore used to detect multiple running copies of the game is utilized
git-svn-id: https://svn.eduke32.com/eduke32@7912 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:43 +02:00
terminx
4e0325e0d4 Add FURY checks for some EDUKE32_STANDALONE stuff
git-svn-id: https://svn.eduke32.com/eduke32@7911 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:41 +02:00
terminx
aec48c73c1 'If' out a couple of instances of g_soundlocks[] manipulation I somehow missed during my first pass
git-svn-id: https://svn.eduke32.com/eduke32@7906 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:30 +02:00
terminx
9021b885d6 Eliminate pos_as_vec2 from anything that had it
git-svn-id: https://svn.eduke32.com/eduke32@7905 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
#	source/build/src/polymost.cpp
2019-09-20 15:46:28 +02:00
hendricks266
2e325b0f5b Tweak map start message printed to the log
git-svn-id: https://svn.eduke32.com/eduke32@7902 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:19 +02:00
hendricks266
4523515a33 ext updates
git-svn-id: https://svn.eduke32.com/eduke32@7901 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:17 +02:00
pogokeen
091a2961ab game.cpp: move check for quitevent during start-up so that if start-up is cancelled during definitions parsing, the game won't continue to play in a half-loaded state.
git-svn-id: https://svn.eduke32.com/eduke32@7900 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:15 +02:00
hendricks266
90568878a5 Allow MOUSEINACTIVECONDITIONAL when out of menu. Fixes left clicking screens.
git-svn-id: https://svn.eduke32.com/eduke32@7899 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:13 +02:00
hendricks266
7d96aba66d Add CONTROL_ClearAllButtons
git-svn-id: https://svn.eduke32.com/eduke32@7898 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:12 +02:00
hendricks266
640b1c4461 Remove RTS names from standalone builds
git-svn-id: https://svn.eduke32.com/eduke32@7897 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:10 +02:00
hendricks266
dcdabd30d3 definecheatdescription
git-svn-id: https://svn.eduke32.com/eduke32@7896 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:07 +02:00
hendricks266
ba91dd0120 Move cheat descriptions from menus.cpp to cheats.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7895 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:06 +02:00
hendricks266
29d4a7e634 Add I_GeneralTrigger as a combination of Advance and Return and use it for skipping screens so that Esc works.
git-svn-id: https://svn.eduke32.com/eduke32@7894 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:03 +02:00
pogokeen
c80b01cfda gameexec.cpp: allow G_ShowView() to execute regardless of the state of g_screenCapture.
This fixes skyboxes not rendering in TILE_SAVESHOT.

git-svn-id: https://svn.eduke32.com/eduke32@7893 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:44:00 +02:00
pogokeen
67522909c5 sector.cpp: ensure that if scripts have told us not to render normally to the tile, that we still handle restoring our target & setting up the tile appropriately for what the script may have rendered
git-svn-id: https://svn.eduke32.com/eduke32@7891 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:43:56 +02:00
terminx
2126d215ed Fix crashes when passing invalid variable names to a couple of debugging commands in the console
git-svn-id: https://svn.eduke32.com/eduke32@7883 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:34:26 +02:00
terminx
3c28f6cfc6 Don't attempt to draw TILE_LOADSHOT unless it's already in memory
This works around a flaw in the .ext loading logic that I don't have time to debug right now.

git-svn-id: https://svn.eduke32.com/eduke32@7882 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:34:23 +02:00
terminx
c5dbbe892c Fix automapping not working when looking at the textured map mode
git-svn-id: https://svn.eduke32.com/eduke32@7881 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:34:21 +02:00
terminx
e9e9067251 Fix warning
git-svn-id: https://svn.eduke32.com/eduke32@7879 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:34:16 +02:00
terminx
db85a55dfd Use I_AdvanceTrigger() instead of I_CheckAllInput() for the skip condition in Anim_Play()
git-svn-id: https://svn.eduke32.com/eduke32@7877 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:34:11 +02:00
terminx
9f9a158946 Replace runtime pow2 calculations with pow2char LUT usage
I don't know that this is any faster, but there's something to be said for standardization and consistency. I will be making most of this stuff use bitmap_set/test/clear() soon.

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

# Conflicts:
#	source/build/src/build.cpp
#	source/build/src/polymost.cpp
2019-09-20 15:34:08 +02:00
terminx
9c5db5aac0 Sanitize walock[] usage
git-svn-id: https://svn.eduke32.com/eduke32@7875 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:33:07 +02:00
terminx
2a3c80f95d Fix issue with sounds being expired from cache
git-svn-id: https://svn.eduke32.com/eduke32@7874 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:33:05 +02:00
terminx
1a0c56f0f1 This adds back in the engine's old automapping feature
This was removed a long time ago because Duke3D and Shadow Warrior don't use it.

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

# Conflicts:
#	source/build/src/polymer.cpp
#	source/build/src/polymost.cpp
2019-09-20 15:32:13 +02:00
terminx
6ad445d47b Make most things in screens.cpp use I_AdvanceTrigger() instead of I_CheckAllInput()
git-svn-id: https://svn.eduke32.com/eduke32@7872 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:29:40 +02:00
terminx
c7e403619b Don't blow away wall cstat bit 14 for use as a temp flag in the editor
Patch from Nuke.YKT.

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

# Conflicts:
#	source/build/src/build.cpp
2019-09-20 15:29:35 +02:00
terminx
752cf77887 Untabify a couple of headers
git-svn-id: https://svn.eduke32.com/eduke32@7862 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:29:05 +02:00
terminx
24a53db8f5 I'm not aware of any particular issues this change fixes, but I definitely don't intend this hack to ever affect anything while the player is on the ground
git-svn-id: https://svn.eduke32.com/eduke32@7861 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:29:02 +02:00
terminx
ed40842bad Apply "reset object trackers on savegame load" patch
git-svn-id: https://svn.eduke32.com/eduke32@7860 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:29:01 +02:00
terminx
762c3ebbf6 Add sc_Space to I_AdvanceTrigger() and I_AdvanceTriggerClear()
git-svn-id: https://svn.eduke32.com/eduke32@7856 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:28:50 +02:00
terminx
e65fb8ab2a Switch fadepal() and fadepaltile() over to using I_CheckAllInput()/I_ClearAllInput() instead of checking for the spacebar exclusively
git-svn-id: https://svn.eduke32.com/eduke32@7855 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:28:47 +02:00
pogokeen
5377b128a9 Fix rendering skyboxes to a tile by altering renderSetTarget() & renderRestoreTarget() to set & reset xdim & ydim so that G_ShowView() can render while a render target is set,
and additionally modifying G_SetupCamTile() to call EVENT_DISPLAYROOMSCAMERATILE after calling renderSetTarget()

git-svn-id: https://svn.eduke32.com/eduke32@7852 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:28:41 +02:00
hendricks266
fdaee03dfb ext loading
git-svn-id: https://svn.eduke32.com/eduke32@7850 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:26:44 +02:00
terminx
ae36202ac7 Fix for emerging from TROR water
git-svn-id: https://svn.eduke32.com/eduke32@7848 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:26:24 +02:00
terminx
56604e5e25 Make it easier to jump into vents
git-svn-id: https://svn.eduke32.com/eduke32@7841 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:55 +02:00
terminx
7c88548074 Remember to delete .esv.ext file when deleting .esv file itself
git-svn-id: https://svn.eduke32.com/eduke32@7840 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:52 +02:00
terminx
28c778c8a3 Automatic source file dependency generation for GNUmakefile
This automatically saves the dependencies used for a given object file during the first compilation, then uses the generated data for each subsequent compile to determine if the object needs to be rebuilt. Why? Because if I see one more warning about the C++ One Definition Rule, I'm going to fucking snap.

git-svn-id: https://svn.eduke32.com/eduke32@7839 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:50 +02:00
terminx
686a906c78 Move RCtrl keybind for gamefunc_Fire to slot 1 instead of 2
git-svn-id: https://svn.eduke32.com/eduke32@7837 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:45 +02:00
terminx
bf573ff2c9 Fix issue with the autorun key when resetting controls to defaults, and give gamefunc_Last_Used_Weapon a default key binding of X
git-svn-id: https://svn.eduke32.com/eduke32@7836 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:43 +02:00
terminx
6d2ca41b9c Fix clipping issue with jumping
git-svn-id: https://svn.eduke32.com/eduke32@7833 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:36 +02:00
terminx
2bb93967e1 Fix an issue where looping sound effects would play at full volume for a tic after playback began, regardless of distance to the sound
git-svn-id: https://svn.eduke32.com/eduke32@7821 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:05 +02:00
hendricks266
dc87150f2a update esv exts
git-svn-id: https://svn.eduke32.com/eduke32@7817 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:18:01 +02:00
hendricks266
3a1e4a445f new special purpose gamevar flag
git-svn-id: https://svn.eduke32.com/eduke32@7816 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:57 +02:00
hendricks266
66032defbb Don't lock out cheats in skill 4 if FURY
git-svn-id: https://svn.eduke32.com/eduke32@7815 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:53 +02:00
hendricks266
36bde42d8c This may be my worst commit ever.
git-svn-id: https://svn.eduke32.com/eduke32@7814 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:49 +02:00
terminx
165b320f64 Amend r7805
'Murica.

git-svn-id: https://svn.eduke32.com/eduke32@7811 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:40 +02:00
terminx
763b4b8d7f Throw a warning when attempting to use CON_DEFINESOUND with a sound index that has already been defined
git-svn-id: https://svn.eduke32.com/eduke32@7810 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:37 +02:00
terminx
48f602ae68 Rename IONMAIDEN -> FURY
git-svn-id: https://svn.eduke32.com/eduke32@7808 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:31 +02:00
terminx
97390c1ff4 Fix another bunch of improperly sized bitmap arrays
git-svn-id: https://svn.eduke32.com/eduke32@7806 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
2019-09-20 15:17:25 +02:00
pogokeen
3d63d1b720 Add updatesectorneighbour() and updatesectorneighbourz() and make them accessible to CON to allow searching for nearby neighbouring sectors from a known sector.
These updatesector counterparts are more performant for tasks that require determining whether nearby sectors exist at a point as they will not exhaustively search the map.
This also leads to more correct behaviour when sectors are disjoint, as queries will breadth-first search neighbouring sectors rather than risk accidentally stumbling first across accomodating disjoint sectors.

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

# Conflicts:
#	source/build/include/build.h
2019-09-20 15:16:47 +02:00
hendricks266
844ec0bd63 Expose the current episode and skill selection in ud.m_volume_number and ud.m_player_skill while in their respective menus
git-svn-id: https://svn.eduke32.com/eduke32@7804 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:14:33 +02:00
pogokeen
1ec5547a9c Fix edge case where mirrors & TROR could interact and render over skyboxes in the classic software renderer
git-svn-id: https://svn.eduke32.com/eduke32@7803 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:14:31 +02:00
hendricks266
83e1a6902d Implement "usermap" music definition slot
git-svn-id: https://svn.eduke32.com/eduke32@7802 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:14:29 +02:00
hendricks266
ba7c266f89 CON_MUSIC: Accept "." as meaning "do nothing to this slot"
git-svn-id: https://svn.eduke32.com/eduke32@7801 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:14:27 +02:00
hendricks266
d1b43acc06 Use std::numeric_limits instead of float.h
git-svn-id: https://svn.eduke32.com/eduke32@7799 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:14:23 +02:00
hendricks266
6b4d64bde5 Tweak previous commit so clipmove takes precedence over getzrange
git-svn-id: https://svn.eduke32.com/eduke32@7795 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:11:01 +02:00
hendricks266
df609ccfbc Fix an OG Duke bug where projectiles would bounce off the tops of sprites instead of registering a hit
git-svn-id: https://svn.eduke32.com/eduke32@7794 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:59 +02:00
terminx
2313e3d374 Rename "autosaves" to "checkpoints" in menu
git-svn-id: https://svn.eduke32.com/eduke32@7790 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:18 +02:00
terminx
b4d3a76793 Fix stupid bug with sprite shadows in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7789 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:16 +02:00
pogokeen
07df3ffc42 osdfuncs.cpp: fix OSD background sometimes not rendering with the correct gl state
git-svn-id: https://svn.eduke32.com/eduke32@7784 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:05 +02:00
terminx
c233d58cf8 QOL change: print save filename to console for manual savegames, too, not just ones generated through the script
git-svn-id: https://svn.eduke32.com/eduke32@7779 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:40:15 +02:00
terminx
c96ec9d440 This is just syntax and formatting
No functional changes.

git-svn-id: https://svn.eduke32.com/eduke32@7776 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:39:09 +02:00
terminx
fa5ff547c8 Rename stupid structure member I probably named when I was high
git-svn-id: https://svn.eduke32.com/eduke32@7775 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:39:06 +02:00
terminx
19e54dc1ad Stop trying to make CTRL-ALT-DEL happen
It's not going to happen.

git-svn-id: https://svn.eduke32.com/eduke32@7774 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:39:03 +02:00
terminx
cf7ac8f16e Untie EVENT_ALTFIRE from the conditions required to trigger EVENT_FIRE
git-svn-id: https://svn.eduke32.com/eduke32@7772 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:54 +02:00
terminx
4c290ab4ec Add gamefunc_Alt_Weapon and EVENT_ALTWEAPON back in
git-svn-id: https://svn.eduke32.com/eduke32@7771 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:50 +02:00
terminx
bf94922b27 Even more minor fix to previous commit
git-svn-id: https://svn.eduke32.com/eduke32@7769 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:45 +02:00
terminx
8e8a1334e9 Minor fix to last commit
git-svn-id: https://svn.eduke32.com/eduke32@7768 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:42 +02:00
terminx
7e7f19b5fd Add tilehasmodelorvoxel() function and fix instances where voxels for multi-sided sprites would get flipped based on the viewing angle
git-svn-id: https://svn.eduke32.com/eduke32@7767 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:40 +02:00
terminx
31f66f7de4 Fix audio position updating in automap mode
git-svn-id: https://svn.eduke32.com/eduke32@7766 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:38 +02:00
terminx
465403a199 Prevent addlogvar from accepting constants, which causes a crash
git-svn-id: https://svn.eduke32.com/eduke32@7765 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:36 +02:00
terminx
5cfcb96768 Swap indexes for gamefunc_AutoRun and gamefunc_Alt_Fire
Normally I wouldn't be in favor of changing indexes that are already exposed to scripts around, but gamefunc_AutoRun is a locally handled key that doesn't have any script events associated with it, and gamefunc_Alt_Fire is pretty important to have up near the top wherever gamefuncs are listed.

git-svn-id: https://svn.eduke32.com/eduke32@7762 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:30 +02:00
terminx
4e81b4e2f0 Replace gamefunc_Alt_Weapon with a gamefunc_Alt_Fire that works as expected
git-svn-id: https://svn.eduke32.com/eduke32@7761 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:28 +02:00
terminx
130649b017 Move cacheAllSounds() out of G_CacheMapData() and into G_Startup()
git-svn-id: https://svn.eduke32.com/eduke32@7758 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:21 +02:00
pogokeen
13615565fd game.cpp: temporarily limit A_Spawn() owner changes from r7738 to locators
git-svn-id: https://svn.eduke32.com/eduke32@7751 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:17:57 +02:00
terminx
c1d261965f Clarify incompatible savegame log message
git-svn-id: https://svn.eduke32.com/eduke32@7745 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:15:03 +02:00
pogokeen
458124a237 actors.cpp: Change demo camera path following behaviour to search for locators based on a hitag channel to avoid locator lotag contention.
Now, destination and subject locators should be assigned one hitag channel.  Destination locators will be visited starting from lotag 0 and counting upward.
Subject locators can have any lotag within the same hitag channel, and may also be a destination if the lotag is not separated from the destination locator ids.
Destination locators must now specify their subject locator in their owner field by lotag.

git-svn-id: https://svn.eduke32.com/eduke32@7739 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:04:38 +02:00
pogokeen
cfa0ea2a65 game.cpp: When A_Spawn() is spawning from an already existing sprite, do not reset the owner field if it has been overridden from the default.
git-svn-id: https://svn.eduke32.com/eduke32@7738 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:04:36 +02:00
pogokeen
8cbdf3a0c4 Use stencil buffer in Polymost to restrict mirrors to only render within the region of the screen occupied by the mirror wall.
Additionally, raise minimum number of stencil buffer bits to accomodate future use of the stencil buffer.

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

# Conflicts:
#	source/build/include/build.h
#	source/build/src/polymer.cpp
#	source/build/src/polymost.cpp
#	source/kenbuild/src/game.cpp
2019-09-20 14:04:29 +02:00
pogokeen
c2340dd409 Add EVENT_RESETGOTPICS which gives scripts the chance to reset gotpics (and similar effects trackers) for effects that run in EVENT_DISPLAYROOMS.
EVENT_RESETGOTPICS is called after the last call to EVENT_DISPLAYROOMS in a frame, but before any engine-side calls to renderDrawRoomsQ16()

git-svn-id: https://svn.eduke32.com/eduke32@7734 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:59:20 +02:00
pogokeen
cdd83905ca Fix TROR & skyboxes to work with mirrors in Software & Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7733 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:59:17 +02:00
pogokeen
2c85a0a53c game.cpp: fix issue where tilt angle was not being reset to 0 at times when it should have been disabled
git-svn-id: https://svn.eduke32.com/eduke32@7732 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:59:14 +02:00
pogokeen
b014ae4d54 game.cpp: improve G_FPSLimit() to be more stable with regard to floating point precision.
Additionally, prefer rendering early and compensating with a late frame due to clock precision rather than the other way around so that we are more consistently within a target vblank period.

git-svn-id: https://svn.eduke32.com/eduke32@7731 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:32:29 +02:00
pogokeen
19c2c690d3 Fix latency issue introduced by G_FPSLimit() handling of videoNextPage() that was causing frames to be delayed presentation until after the next frame is prepared.
videoNextPage() is now called immediately after preparing the frame for drawing, outside of G_FPSLimit() but on the condition that its return value is true.

git-svn-id: https://svn.eduke32.com/eduke32@7730 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:32:27 +02:00
pogokeen
281ee3358b Add benchmarkmode cvar which allows putting demo cameras in the map which can be used for automatic benchmarking of performance & correctness testing
git-svn-id: https://svn.eduke32.com/eduke32@7729 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:32:24 +02:00
pogokeen
87d3af7204 game.cpp: change camera sprite yvel limits to clamp to min/max angle when beyond the min/max rather than when beyond 0 and 199
git-svn-id: https://svn.eduke32.com/eduke32@7728 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:32:21 +02:00
pogokeen
0cc6ff2e48 actors.cpp: Add additional demo camera behaviours.
Allow the demo camera to be used while not playing back a recorded demo.
Add the ability for the camera to follow paths specified by locators.

git-svn-id: https://svn.eduke32.com/eduke32@7727 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:32:14 +02:00
terminx
876627136a Player duct walking sound fix
git-svn-id: https://svn.eduke32.com/eduke32@7726 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:32:12 +02:00
terminx
7a4a80552c Call S_PauseSounds(false) from Menu_Close()
git-svn-id: https://svn.eduke32.com/eduke32@7724 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:17:31 +02:00
terminx
a7d4df8072 Use default argument values of -1 for the sprite and player indexes passed to VM_OnEvent()
git-svn-id: https://svn.eduke32.com/eduke32@7721 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:08:36 +02:00
terminx
00222e05f6 Use remove_pointer_t instead of regular std::remove_pointer and add a definition for it for CXX11 builds
git-svn-id: https://svn.eduke32.com/eduke32@7719 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 12:07:46 +02:00
terminx
db7a2bd0db Update libdivide from git
git-svn-id: https://svn.eduke32.com/eduke32@7715 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 12:07:36 +02:00
terminx
2114abcedd Don't force APLAYER to have the default action when shown through a viewscreen in EDUKE32_STANDALONE builds
git-svn-id: https://svn.eduke32.com/eduke32@7710 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 12:07:24 +02:00
terminx
cf915a142c Cosmetic change
git-svn-id: https://svn.eduke32.com/eduke32@7709 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 12:07:22 +02:00
terminx
ccdba037b5 Added Xfree() function to accompany the Xmalloc() family of functions and change all uses of Bfree() to Xfree()
This was necessary because everything is already allocated with the Xmalloc() functions, but a future commit will make blocks allocated with those functions no longer compatible with the system implementation of free(), which Bfree() wraps.

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

# Conflicts:
#	source/build/src/build.cpp
#	source/build/src/mdsprite.cpp
#	source/build/src/polymer.cpp
#	source/build/src/polymost.cpp
#	source/build/src/texcache.cpp
#	source/build/src/voxmodel.cpp
2019-09-20 12:07:10 +02:00
terminx
87b136eb79 Fix bug with sprite heights and autoaim targeting
git-svn-id: https://svn.eduke32.com/eduke32@7702 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 12:02:38 +02:00
terminx
126088f035 Remove ifdef'd out Gv_DivVar() generation with VM_GAMEVAR_OPERATOR macro because LIBDIVIDE_ALWAYS is going away
git-svn-id: https://svn.eduke32.com/eduke32@7699 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 12:02:31 +02:00
terminx
02ef02872a Replace manual casts of sprite and wall pointers to vec2/3_t with use of the anonymous union
git-svn-id: https://svn.eduke32.com/eduke32@7697 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
#	source/build/src/polymost.cpp
2019-09-20 12:02:26 +02:00
terminx
26a266dfe5 Rename STRUCT_TRACKERS_ENABLED preprocessor definition to USE_STRUCT_TRACKERS
This may also fix a minor performance regression introduced in Polymer sometime after we switched to building as C++, caused by confusion between STRUCT_TRACKERS_ENABLED and UNTRACKED_STRUCTS. UNTRACKED_STRUCTS is now named UNTRACT_STRUCTS__ to dissuade use outside of buildtypes.h.

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

# Conflicts:
#	source/build/src/polymer.cpp
2019-09-20 12:01:36 +02:00
terminx
9d7e5d9970 Rename vec2s_t to vec2_16_t
git-svn-id: https://svn.eduke32.com/eduke32@7694 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
2019-09-20 11:28:57 +02:00
terminx
dd2e35eab3 EDUKE32_STANDALONE crap
git-svn-id: https://svn.eduke32.com/eduke32@7689 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 10:15:14 +02:00
hendricks266
ff204ff034 Fix macOS -Wdeprecated-declarations warnings
git-svn-id: https://svn.eduke32.com/eduke32@7688 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	.gitignore
2019-09-20 10:15:10 +02:00
hendricks266
5fc9868c6a Add support for E0LXY to game defs music token
git-svn-id: https://svn.eduke32.com/eduke32@7687 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 10:14:40 +02:00