Commit graph

6389 commits

Author SHA1 Message Date
Christoph Oelckers
2769abcf0f - Blood: Removed most #defines.
only ThrowError and dassert left...
The unused BitWriter class was also removed.
2020-10-11 14:30:43 +02:00
Christoph Oelckers
7b6964a08f - Blood: #define replacement 2020-10-11 14:30:43 +02:00
Christoph Oelckers
7deb3ed4bd - Duke: got rid of the last 3 remaining #defines not used for list generation, as well. 2020-10-11 14:30:43 +02:00
Christoph Oelckers
fc82b3bc8a - Duke: replaced the game type macros with inline functions. 2020-10-11 14:30:42 +02:00
Christoph Oelckers
9cc1268839 - Duke: added missing include guard to conlabel.h. 2020-10-11 14:30:42 +02:00
Christoph Oelckers
67375cf79c - SW: renamed 3 duplicate constants 2020-10-11 14:30:42 +02:00
Christoph Oelckers
f0a1ce4850 - SW: fix some include guards. 2020-10-11 14:30:42 +02:00
Christoph Oelckers
fc54d98100 - Exhumed: Give all savegame handlers and action sequences unique names. 2020-10-11 14:30:41 +02:00
Christoph Oelckers
c87185a337 - use distinct names for monster AI variables and functions.
I was just toying around with compiling all of these as a single unit and that uniform naming made it impossible.
2020-10-11 14:30:41 +02:00
Christoph Oelckers
2f4c78dd73 - use distinct variable names for QAV and SEQ management. 2020-10-11 14:30:41 +02:00
Christoph Oelckers
3b59bf759c - Blood: there's no need to store the loadsave handlers in local variables that never get used. 2020-10-11 14:30:40 +02:00
Christoph Oelckers
47e452f452 - fixed the real issue for the sound problems and reverted the last commit.
It was far more serious than a botched merge.
2020-10-11 13:44:23 +02:00
Mitchell Richters
5973391a51 - SW: Tune DrawHUD2() text positioning and image scaling.
Not sure how or when these came to be off. Perhaps additional chars have effected the overall font size?
2020-10-11 22:38:56 +11:00
Mitchell Richters
372f0db28a - Exhumed: Resolve sound issues following bad merge conflict resolve from b06a847d9a. 2020-10-11 22:01:37 +11:00
Christoph Oelckers
adaf25377c - moved the player sprite away from the edge of the frame. 2020-10-11 07:50:41 +02:00
Christoph Oelckers
8b8c6a5e3a - fixed episode default. 2020-10-11 07:44:51 +02:00
Christoph Oelckers
ca288d08f4 - compile all files with script exports in the main project.
This hopefully gets around the failure to find these on on-Windows Builds.
2020-10-11 07:40:11 +02:00
Mitchell Richters
5011b10549 - binaryangle.h/cpp: Inline the functions created in 271eb1c3fa. No real need to have a separate file for these. 2020-10-11 15:34:18 +11:00
Christoph Oelckers
820b37721b - moved tab completion code into 'common' as well. 2020-10-11 00:08:07 +02:00
Christoph Oelckers
242a70e610 - split the command line buffer off from c_console.cpp and reactivated the check for CONBACK. 2020-10-10 23:16:08 +02:00
Christoph Oelckers
fe2e96d3a6 Merge branch 'master' into InputContinuation
# Conflicts:
#	source/games/duke/src/duke3d.h
2020-10-10 21:39:27 +02:00
Christoph Oelckers
dcde91b0c9 - do not wrap the simple value wrappers into a JSON object when being serialized.
It only adds to the processing time - they can just be written out as-is.
2020-10-10 21:36:12 +02:00
Christoph Oelckers
a39cf290e3 - Blood: fixed: The player's inventory and some other state were reset for each level, not each new game. 2020-10-10 20:20:12 +02:00
Christoph Oelckers
78d5b2aa95 - Duke: fixed: The Recon's roaming sound was poorly checked resulting in garbled output.
It checked for two instances globally, which made the same actor repeat its sound all over again, but if more recons were present some were silent.
Now each one is allowed to play its effect separately.
2020-10-10 19:17:23 +02:00
Christoph Oelckers
b06a847d9a Merge branch 'menu2'
# Conflicts:
#	source/exhumed/src/sound.cpp
2020-10-10 19:03:29 +02:00
Christoph Oelckers
e95fea1056 - fixed: Toggling palette emulation should reset the texture filter in the samplers. 2020-10-10 18:57:16 +02:00
Christoph Oelckers
16a4d49268 - added background dimming for the menu when in overlay mode. 2020-10-10 18:29:15 +02:00
Christoph Oelckers
b142f33edd - fixed problems with stopping sector effect sounds.
The old check only accounted for the case of trying to play a valid follow-up sound, but not for merely stopping the old one.
Restored the original check that was here.
2020-10-10 18:11:26 +02:00
Christoph Oelckers
f9ab77f700 - create named texture copies for 'tilefromtexture' replacements.
We want to be able later to find them in the texture manager again.
2020-10-10 16:52:04 +02:00
Christoph Oelckers
c478d1add2 - properly uninit the menus. 2020-10-10 15:16:28 +02:00
Mitchell Richters
271eb1c3fa - binaryangle.h/cpp: Hook up FSerializer and use within Duke for saving objects. 2020-10-11 00:10:53 +11:00
Christoph Oelckers
91e23b3ab5 - Exhumed: play the menu advance sound when starting a game 2020-10-10 13:30:23 +02:00
Christoph Oelckers
294a806793 - fixed some issues with prematurely terminated sounds. 2020-10-10 12:57:43 +02:00
Christoph Oelckers
db21d5e946 - took all script exports out of the namespaces.
It looks like GCC cannot deal with this - on MSVC it works fine.
2020-10-10 10:11:22 +02:00
Christoph Oelckers
16fd505f9a - make sure that sfxinfo_t is always fully initialized by adding initializer values to all fields.
Let's hope this finally fixes those sound hiccups.
2020-10-10 09:47:00 +02:00
Mitchell Richters
8f68e8b4a1 - Amend 2865fef7ed as accidentally returned horizon as Build and not Q16.16. 2020-10-10 17:52:43 +11:00
Mitchell Richters
2865fef7ed - Duke: Restore return_to_center in gameexec.cpp dropped in 0ab3b33a6c and redo based on new code. 2020-10-10 16:59:00 +11:00
Mitchell Richters
6ecbb2587e - Duke: Fix z position when on certain cameras following changes in 09a05f354c. 2020-10-10 16:17:02 +11:00
Christoph Oelckers
2237113a77 - fixed font scaling in RR's confirmation screens. 2020-10-10 00:51:26 +02:00
Christoph Oelckers
37d86d03f5 - fixed SW's skill-dependent startup lines 2020-10-10 00:09:18 +02:00
Christoph Oelckers
03e57fa3d7 - fixed Exhumed's game startup. 2020-10-09 23:58:34 +02:00
Christoph Oelckers
d6d9100992 - set proper slider colors for all games. 2020-10-09 23:35:38 +02:00
Christoph Oelckers
b21beb4039 - made the options search work.
This required changing how the engine credits menu work because it created a circular dependency in its original form.
2020-10-09 22:33:02 +02:00
Mitchell Richters
9c993b9104 - d_protocol: Change horz/avel pack/unpacking from long to float. 2020-10-09 16:18:28 +11:00
Mitchell Richters
79cd5e4731 - Blood: Fix warptocoords CCMD. 2020-10-09 12:33:47 +11:00
Mitchell Richters
c6e3b4df11 - Blood: Use backend interpolation functions for angle and rotscrnang. 2020-10-09 11:34:42 +11:00
Mitchell Richters
44e4c5ff78 - Fix joystick scaling following shift to fixedhoriz and binangle.
* Remove joystick scaling from `CONTROL_GetInput()`.
* Store turnspeed as constant at top of `processMovement()` and use it for joystick yaw/pitch scaling. This adds the advantage of having the out-of-box turning speed match the keyboard's turn speed and also attenuates when the player is not running.
2020-10-09 11:34:14 +11:00
Christoph Oelckers
2d8bcd06fd - added the player display for Duke.
This completes the menu transition.
2020-10-09 01:09:51 +02:00
Christoph Oelckers
a10aacea3a - added the QAV drawer page. 2020-10-09 00:50:21 +02:00
Christoph Oelckers
2f8284f10b - added filler help and credit menus for Exhumed.
They should not be empty, so that they do not crash when opened from the console.
2020-10-09 00:21:06 +02:00
Christoph Oelckers
4024ebd12d - re-added Duke 1.3's credit screens. 2020-10-09 00:11:49 +02:00
Christoph Oelckers
802d295e48 - Shadow Warrior credit screens. 2020-10-08 23:53:15 +02:00
Christoph Oelckers
02507d937d - got the text screens working. Also reformatted RR's credits a bit for a better presentation. 2020-10-08 23:40:17 +02:00
Christoph Oelckers
19c719db4e - image scroller is working again. 2020-10-08 22:53:12 +02:00
Christoph Oelckers
6ba06f5ed0 - ImageScroller WIP commit. 2020-10-08 22:20:41 +02:00
Christoph Oelckers
15eaf86f5a - preparations for the image scroller menu. 2020-10-08 18:02:25 +02:00
Christoph Oelckers
8caaf4fa64 - menu transitions are working again. 2020-10-08 16:33:11 +02:00
Mitchell Richters
f35bec4a5d - Fix interpolation issues and do other minor fixes following shift to fixedhoriz and binangle.
* When interpolating on the initial setup, when binangle reached an overflow point when going lower than zero, the engine was spinning the player around clockwise to the new angle (2047, for instance).
* Interpolating after casting as uint64_t with a workflow similar to the original games, the issue went away.
* Cleaned up other interpolation functions to be of a consistent workflow.
* Scale keyboard input turning down to degree speeds.
* Uplift some remaining Q16.16 code in `applylook()` to full BAM precision.
* Move static calculations of aim and look speeds for `sethorizon()` back into function since GameTicRate isn't set right before calculation is done.
* Simplify the angle target setup back to a basic value like before.
* Repair SW interpolation issues of weapon sprite drawer when rotating left/right.
* Fix SW death horizon constant values following change of horizon center to 0.
2020-10-08 21:12:21 +11:00
Mitchell Richters
9bcdeae6cd - InputPacket: Change q16avel to avel, changing type from fixed_t to float. 2020-10-08 14:47:30 +11:00
Mitchell Richters
e53d58bd42 - gamecontrol: Clean up remainder of legacy angle code. 2020-10-08 14:29:50 +11:00
Mitchell Richters
d758a0ae28 - SW: Cut q16ang/q16look_ang/q16rotscrnang over to PlayerAngle struct. 2020-10-08 14:23:44 +11:00
Christoph Oelckers
cc7290e313 - work on menu transitions. 2020-10-08 01:00:23 +02:00
Christoph Oelckers
56eae0b42d - got the basics working for Exhumed's main menu. 2020-10-08 00:21:07 +02:00
Christoph Oelckers
a953404331 - SW's text menus done.
This also copies the Build texture animation info into the texture manager so that the 2D code can access it through existing interfaces.
2020-10-07 23:22:29 +02:00
Mitchell Richters
3bc6777cf4 - Exhumed: Cut q16ang/q16look_ang/q16rotscrnang over to PlayerAngle struct. 2020-10-08 08:08:40 +11:00
Mitchell Richters
bd68f67460 - Blood: Cut q16ang/q16look_ang/q16rotscrnang over to PlayerAngle struct. 2020-10-08 07:55:54 +11:00
Christoph Oelckers
6041a3355c - removed the file location reporting for Blood errors because it embeds the full path into the executable, which is not acceptable. 2020-10-07 20:52:25 +02:00
Christoph Oelckers
789eb6d51d - Most of Duke's menus work again. 2020-10-07 20:32:43 +02:00
Christoph Oelckers
2bb38f7d67 - get load and save game menus and related CCMDs working again. 2020-10-07 18:32:57 +02:00
Christoph Oelckers
53c3a6fc9b - silenced some warnings. 2020-10-07 16:02:49 +02:00
Mitchell Richters
40cb64cdcf - applylook(): Remove some forgotten debug lines. 2020-10-07 23:40:41 +11:00
Mitchell Richters
babd7b9556 - InputState: Proposed new sensitivity dividers now that mouse input is based on true pitch and true angle. 2020-10-07 23:25:36 +11:00
Mitchell Richters
fca846272e - gamecontrol: Initial setup of PlayerAngle struct and deployment within Duke.
* Struct made up of binangle class units.
* Create signed clone of binangle for use with look_ang and rotscrnang.
* Append currently outgoing function names with `2` at the end to avoid conflict.
2020-10-07 23:13:29 +11:00
Mitchell Richters
e2691d4184 - Duke: Clean up a few missed things during f39939d114. 2020-10-07 18:34:52 +11:00
Mitchell Richters
0c55a533be - PlayerHorizon: Change struct functions to declarations and define code in gamecontrol.cpp to reduce binary size. 2020-10-07 18:25:50 +11:00
Mitchell Richters
6a30d6880e - InputPacket: Change q16horz to horz, changing type from fixed_t to float. 2020-10-07 18:22:07 +11:00
Mitchell Richters
d16b4651bb - gamecontrol: Remove old horizon code left behind while cutting over each game. 2020-10-07 18:12:09 +11:00
Mitchell Richters
6476430be6 - SW: Cut q16horiz/q16horizoff over to PlayerHorizon struct. 2020-10-07 18:08:57 +11:00
Mitchell Richters
6da756cc9f - Exhumed: Cut q16horiz over to PlayerHorizon struct. 2020-10-07 17:40:59 +11:00
Mitchell Richters
c03131f8d1 - Blood: Cut q16horiz/q16slopehoriz over to PlayerHorizon struct. 2020-10-07 17:16:58 +11:00
Mitchell Richters
f39939d114 - gamecontrol: Initial setup of PlayerHorizon struct and deployment within Duke.
* Started with the most complicated game first.
* Struct made up of fixedhoriz class units.
* Append currently outgoing function names with `2` at the end to avoid conflict.
2020-10-07 17:12:48 +11:00
Mitchell Richters
0e3604ac9e - SW: Remove q16horizbase and apply q16horizoff in draw code like Duke & Blood.
* Standardisation is needed here for upcoming horizon changes.
2020-10-07 13:33:16 +11:00
Mitchell Richters
082336e5f8 - buildhoriz: Implementation of pitch and BAM conversion code.
* Determined maximum horizon able to be handed by engine in Q16.16 format is 280039127.
* Re-did pitch math to work on this known maximum and standardised pitch around -90/90 degrees as it should be.
* Because pitch is now -90/90 and not ~-188/188, m_sensitivity_y probably requires re-scaling.
2020-10-07 13:29:04 +11:00
Mitchell Richters
90e711464a - clamp(): Remove definition in compat.h and uplift definition in templates.h. 2020-10-07 13:29:00 +11:00
Mitchell Richters
8be8bcc87a - Duke/SW: Fix InitTracerTurret() to use player's q16horiz with full precision and replace some manually expressed mulscales with mulscale16() inline from pragmas.h. 2020-10-07 13:28:58 +11:00
Mitchell Richters
09a05f354c - Re-standardise horizon around 0 and not 100.
* Blood had this right. It makes sense that the horizon be based around as it's easier to work with.
* Removed all associated game math to deduct default horizon of 100 when doing weapon zvel etc, meaning actual horizon can just be used.
* Re-did return to center function to work on the already converted pitch. Return speed should be 1:1 with previous code.
2020-10-07 13:28:45 +11:00
Christoph Oelckers
38ddbfe65f - activated most of the support code for programmatically created menus again.
Blood's regular menu screens mostly work again
2020-10-07 01:31:41 +02:00
Christoph Oelckers
5726b693bd - added back the menu transition, although it cannot be used yet, and all game specific menu CCMDs. 2020-10-07 01:12:57 +02:00
Christoph Oelckers
0968a9d97e - renamed the Customizer to 'Delegate' because this works very much like a delegate in Objective-C.
- route menu sound calls through the delegate to better deal with differences between games.
2020-10-07 01:00:43 +02:00
Christoph Oelckers
603c3b50ec - reimplemented Blood's menu items. 2020-10-07 00:50:26 +02:00
Christoph Oelckers
06b00887f5 - added a menu control for Blood's dripping blood. 2020-10-06 23:49:34 +02:00
Christoph Oelckers
1ea6084478 - Exhumed also done.
Also using proper assets now.
2020-10-06 22:35:25 +02:00
Christoph Oelckers
17a68bc60a - SW's caption done, too.
In this case the font is squashed to be more narrow because otherwise many texts would not fit anymore.
2020-10-06 22:01:20 +02:00
Christoph Oelckers
5bcb72f7a9 - create names for several of SW's textures.
Not complete, but should cover most that is really needed.
2020-10-06 21:35:26 +02:00
Christoph Oelckers
b8941a09ad - we need this... 2020-10-06 21:11:37 +02:00
Christoph Oelckers
bec1f67178 - implemented the menu caption for Duke et.al. 2020-10-06 20:49:55 +02:00
Christoph Oelckers
d22bdf9dc7 - use an alias for the menu bar texture in Blood.
Direct tile access has been disabled for now, hopefully this can be buried deep in the engine for all eternity.
2020-10-06 20:05:51 +02:00
Christoph Oelckers
55e7e34707 - added texture aliases so that tiles can given real names in the texture manager.
Use this to turn Duke's and RR's tile enums into real names, leaving out RRTILExx - the few that are needed were renamed.
2020-10-06 19:26:22 +02:00
Mitchell Richters
bbc60e8424 - Duke: Ensure tripbomb's ammo_count decrements with use.
* Note: Unsure whether `isWW2GI()` was meant to be inversed but do not believe so. Have removed check for now.
* Fixes #104.
2020-10-06 16:31:28 +11:00
Mitchell Richters
478f20b845 - SW: Apply fix from c86af08a19 not to just when stopping operation of remote objects, but all objects.
* Fixes #105.
2020-10-06 16:23:54 +11:00
Mitchell Richters
d5bd7ba309 - Exhumed: Fix positioning of air level meter when underwater.
* Fixes #103.
2020-10-06 16:19:01 +11:00
Christoph Oelckers
1e131eda9e - implemented Blood's menu caption 2020-10-06 00:34:35 +02:00
Christoph Oelckers
3dbb8cbb11 - safety commit 2020-10-05 21:47:53 +02:00
Christoph Oelckers
29a4955f79 - missing global variables. 2020-10-05 20:44:30 +02:00
Christoph Oelckers
4d712cd5a0 - date code from GZDoom. 2020-10-05 20:28:19 +02:00
Christoph Oelckers
c03644ea76 - base.zs cleanup and extendable structs. 2020-10-05 20:03:28 +02:00
Christoph Oelckers
afea519b10 - fixed issues with underwater sound pitch.
This would repeatedly lower the pitch until the sound got inaudible.
2020-10-05 16:20:40 +02:00
Christoph Oelckers
53980787b6 - added global offset for 2D drawer.
This is needed to handle Duke's scrolling menus transparently to the menu code.
2020-10-05 01:42:47 +02:00
Christoph Oelckers
9606b09ddd - update of language code from GZDoom. 2020-10-05 00:46:24 +02:00
Christoph Oelckers
dd5c3eee91 - Exhumed: Fully initialize the sfxinfo struct for newly added sounds
This was using its own incomplete code instead of calling AddSoundLump for it.
2020-10-05 00:35:17 +02:00
Christoph Oelckers
7c89db69bd -menuCustomizer from GZDoom. 2020-10-05 00:23:30 +02:00
Christoph Oelckers
f670d35ba1 - added a game-module wide lump filter for Duke and related games. 2020-10-05 00:20:33 +02:00
Christoph Oelckers
16431e9f0a - SetupMenuColors restored. 2020-10-04 22:21:11 +02:00
Christoph Oelckers
6a4b72cfef - removed obsolete calls from menudef.cpp. 2020-10-04 22:14:20 +02:00
Christoph Oelckers
27ff78ed51 - removed the GZDoom menu CCMDs. 2020-10-04 22:02:10 +02:00
Christoph Oelckers
f233345ba1 - move most of the menu code into the backend. 2020-10-04 21:57:35 +02:00
Christoph Oelckers
26a31a626d - option menus are working, although all colors are still wrong and the captions are not displayed. 2020-10-04 21:42:40 +02:00
Christoph Oelckers
7f6b02c451 - merged string table and system callbacks. 2020-10-04 21:15:51 +02:00
Christoph Oelckers
5d76cbcbdb - game compiles and starts again (without menu, of course)
Now it's time to rebuild the menu.
2020-10-04 20:53:37 +02:00
Christoph Oelckers
9cc318da93 - ugh 2020-10-04 20:14:15 +02:00
Christoph Oelckers
b0301d6fc9 - progress. 2020-10-04 20:11:04 +02:00
Christoph Oelckers
7be2d44108 - corrected includes. 2020-10-04 20:11:03 +02:00
Christoph Oelckers
0b9c6fe559 - added GZDoom's menu script code. 2020-10-04 20:11:03 +02:00
Christoph Oelckers
82612a1330 - it compiles again (with lots of code commented out.) 2020-10-04 20:11:02 +02:00
Christoph Oelckers
46a1fe3826 - updated script definitions to silcence startup warnings. 2020-10-04 20:10:13 +02:00
Christoph Oelckers
dff8339ba3 - backend update from GZDoom. 2020-10-04 19:33:50 +02:00
Christoph Oelckers
58dcf0586b - scale weapons down to the original tile's size.
Needed because hires replacements contain no scaling info.
2020-10-04 15:33:12 +02:00
Christoph Oelckers
393b0a1db2 - added missing punctuation characters to Exhumed's SmallFont.
In particular this provides the required colon and slash characters for the level stats display.
2020-10-03 19:32:42 +02:00
Christoph Oelckers
7661720585 - fixed Blood map loading
Whoever designed that map format with its idiotic encryption should burn in Hell >)
It's a needless complication and open invitation for errors.
To avoid follow up problems it now uses its own local struct for loading in the sprites and the global spritetype no longer depends on any map format and can be changed as the need arises.

Fixes #101
2020-10-03 18:35:47 +02:00
Christoph Oelckers
ddc968f607 - disable palette emulation when map global fog is active.
This doesn't work well together and is pointless anyway as everything needs to be rendered at full brightness.
Fixes #99
2020-10-03 18:04:07 +02:00
Christoph Oelckers
f8caf88089 - backend update. 2020-10-03 17:04:45 +02:00
Christoph Oelckers
89d5d18b9e - these parts were missed somehow. 2020-10-02 22:42:54 +02:00
Christoph Oelckers
e0717e30b4 - savegame version change for the new member in spritetype. 2020-10-02 22:19:32 +02:00
Christoph Oelckers
57945d2baf - eliminated a few overlooked 'long's. 2020-10-02 22:18:08 +02:00
Christoph Oelckers
4e67197838 - added back the hijacked 'detail' member to spritetype.
This changes the Blood map loader to not use the in-game sprite structure for loading a level and moves the qsprite_filler array back into the sprite.
2020-10-02 22:18:08 +02:00
Mitchell Richters
c86af08a19 - SW: Repair occasional locked player angle after player stops operating a sector object. 2020-10-02 19:47:32 +10:00
Mitchell Richters
43e447d40b - Duke: Fix auto-aiming issues for shotgun and chaingun.
Fixes #98.
2020-10-02 17:05:50 +10:00
Christoph Oelckers
49642c3b3c - removed the slowdown killswitch from the ANM player.
This did not play well with SW and is generally not needed.
2020-09-30 00:28:17 +02:00
Christoph Oelckers
51f35550a9 - last but not least, for international display, use ConFont in Exhumed's laptop cutscene. 2020-09-29 23:02:32 +02:00
Christoph Oelckers
75281de42e - Shadow Warrior as well.
For the cookie text display with international characters the text font is used with 50% size to make it fit the available space.
2020-09-29 22:46:50 +02:00
Christoph Oelckers
e8cd336f86 - same procedure for Blood.
This time there were 3 additional texts and the notify display, though, except for multiplayer content that wasn't touched yet.
The result is the same: No need to extend the tiny font with international characters
2020-09-29 22:20:25 +02:00
Christoph Oelckers
4c2ff2950a - for Duke/RR, when not using English force use of the regular text font for drawing the map label on the automap.
This essentially removes the tiny font which is simply too small to ever be able to receive a proper international extension from the equation for localization because the level name display was the only remaining relevant content using this font.
The only other screen where this font is still being used to draw text requiring translated content is the multiplayer summary which will have to be redesigned anyway if multiplayer becomes functional again.
2020-09-29 21:47:32 +02:00
Christoph Oelckers
fe61ff09a4 - added remapping for Cyrillic characters to matching Latin counterparts. 2020-09-29 20:16:31 +02:00
Christoph Oelckers
6488f52055 - fixed: Restarting after dying unset the currently selected skill level. 2020-09-29 18:30:00 +02:00
Christoph Oelckers
a558703740 - bumped up the vertical mouse movement factor to 1/5 from 1/8.
1/8 was far too low for an average mouse
2020-09-29 18:14:22 +02:00
Mitchell Richters
0bb9904338 - Tune mouse input following changes in b57e13ff62.
* Reduce `hidInput->mouseturny` to previous scaling (0.25 of incoming input).
* Change `hidInput->mouseturnx` to be 0.5 of incoming input (33% slower than b57e13ff62, but matches what other ports by providing a 2:1 scale).
* Remove further divisions beyond m_side and m_forward and adjust code in `processMovement()` accordingly.
* Change scaling for `mousevelscale` in `processMovement()` to be 1/160th of keymove. Slightly lower for Duke and a lot faster for Blood where it's needed.
2020-09-29 21:02:36 +10:00
Christoph Oelckers
b57e13ff62 - mouse code update.
May still need some tweaking of the factors.
2020-09-28 22:36:43 +02:00
Christoph Oelckers
0ddf53a3ef Merge branch '0.7' 2020-09-28 21:26:43 +02:00
Christoph Oelckers
012bccd916 - indexed rendering fixes
backported from GZDoom.
2020-09-28 21:26:21 +02:00
Christoph Oelckers
dcae0c4103 - fixed incomplete merging of WW2GI/Duke code for the pistol animation 2020-09-28 08:55:59 +02:00
alexey.lysiuk
6cf921dbfe - restored old mouse scaling for Cocoa backend
This reverts commit df2b3b6b17.
2020-09-28 09:35:36 +03:00
Christoph Oelckers
1a65be3ddc - 0.7.1 2020-09-27 20:45:54 +02:00
Christoph Oelckers
47c1c22ff7 - do not stop the music in the cross-game level-end handler.
Some maps require that it continues playing here.
2020-09-27 20:42:55 +02:00
Christoph Oelckers
9ab29f5975 - reset ud.eog after playing the end of game cutscene.
If this persists, all following levels will also immediately end the game as well.
2020-09-27 20:34:48 +02:00
Christoph Oelckers
3a50f82498 - Duke: In the ending cutscene of the first episode, stop the music only when entering the summary screen. 2020-09-27 20:34:48 +02:00
Christoph Oelckers
5d35d02c87 - fixed overflow in first episode's end cutscene. 2020-09-27 20:34:48 +02:00
Christoph Oelckers
9dd26c8196 - fixed explosion distance of Hexen Cleric's firestorm weapon. 2020-09-27 16:30:06 +02:00
Christoph Oelckers
02afa90202 - another backend update from merging several GZDoom PRs. 2020-09-27 16:16:53 +02:00
Christoph Oelckers
9764c9de0b - use the proper variable for timer frequency only.
MinFPSRate was an obsolete leftover.
2020-09-27 16:12:52 +02:00
Christoph Oelckers
c326bcd308 - fixed i_net's GetPlayerName function's indexing. 2020-09-27 16:12:51 +02:00
Christoph Oelckers
af5e3dd1b8 - render backend update from GZDoom, mostly minor stuff. 2020-09-27 16:12:51 +02:00
Christoph Oelckers
4ca5bfdd46 - sanity check added for MoveLumpsInFolder 2020-09-27 16:12:51 +02:00
Christoph Oelckers
ba5da8ebc2 - UE1 model code update. 2020-09-27 16:12:51 +02:00
Christoph Oelckers
cb49bcb96d - updated VM from GZDoom.
Just to be up to date.
2020-09-27 16:12:50 +02:00
Christoph Oelckers
0314cdec55 - texture manager fixes from GZDoom
* missing null check in FPngTexture.
* ignore identity translations when creating textures.
2020-09-27 16:12:50 +02:00
Christoph Oelckers
f8ae35f8a5 - macOS backend update, plus moving base64.cpp around. 2020-09-27 16:12:50 +02:00
Christoph Oelckers
0795c79a3a - engine updates from GZDoom. 2020-09-27 16:12:50 +02:00
Christoph Oelckers
a9ca6c8081 - sound backend update from GZDoom. 2020-09-27 16:12:49 +02:00
Christoph Oelckers
03a0cf943e -minor cleanup and backporting of con_pulsetext from Raze. 2020-09-27 16:12:49 +02:00
Christoph Oelckers
9285d91918 - added timescale support from GZDoom. 2020-09-27 16:12:49 +02:00
Christoph Oelckers
a5984ddc7c - fixed sprite changing logic for developer commentaries and attenuate the music while commentaries are playing. 2020-09-27 12:52:26 +02:00
Mitchell Richters
392c9ec0d6 - Duke: Tune menu light amounts. 2020-09-27 17:52:20 +10:00
Mitchell Richters
bb4f46489f - Exhumed/SW: Adjust 9271444feb and 289b0a089c so that the games check the state of cl_syncinput prior to setting it. 2020-09-27 16:08:32 +10:00
Mitchell Richters
289b0a089c - SW: Do 19fd0331d4 in a better way.
* Will still need to review SOs and synchronised input. It would be good to be able to run them unsynchronised like the turret.
2020-09-27 16:00:06 +10:00
Mitchell Richters
9271444feb - Exhumed: Force synchronised input when using 3rd person mode until something better can be done for it. 2020-09-27 15:46:04 +10:00
Christoph Oelckers
f0678f4f4e - Font setup fix from GZDoom. 2020-09-27 07:33:43 +02:00
Christoph Oelckers
af8b7679b6 - bumped version numbers for 0.7. 2020-09-26 17:50:19 +02:00
Christoph Oelckers
b93a9b478a - implemented World Tour's developer commentaries. 2020-09-26 17:43:34 +02:00
Christoph Oelckers
3a459ac603 - added a parser for WT's developer commentary definitions. 2020-09-26 16:18:44 +02:00
Christoph Oelckers
e549aa0527 - fixed: concmd_actor wrote beyond the end of the ScriptCode array.
This was causing spurious crashes.
2020-09-26 12:46:56 +02:00
Christoph Oelckers
3210dd5782 - fixed the noisiest value truncation warnings after shortly re-enabling them in the compiler, plus a few places where the warning pointed to incorrect code. 2020-09-26 11:59:24 +02:00
Christoph Oelckers
696610fbc5 - Exhumed: When starting the training map, skip all intermission stuff.
This tends to screw up the target map with its selection option on the map.
2020-09-26 10:49:13 +02:00
Christoph Oelckers
1e12bca0a6 - route World Tour's texts through the string table by adding an indirection option
This way they can be translated into all languages without duplicating all relevant content.
The original text files are no longer being used.
2020-09-26 10:08:48 +02:00
Christoph Oelckers
18ce5bed60 - add line feed after PALETTE_EMULATION #define 2020-09-26 08:52:11 +02:00
Mitchell Richters
1c90d16aaf - Exhumed: Fix Training menu option. 2020-09-27 02:46:11 +10:00
Christoph Oelckers
8450369a22 - must reset file pointer before reading the size from a patch texture. 2020-09-26 08:42:40 +02:00
Mitchell Richters
40a89fb26f - Duke/RR: Fix alt HUD health flashing when > 100. 2020-09-27 02:27:03 +10:00
Mitchell Richters
837b7c0a30 - SW: Changed some downscaled and upscaled Q16.16 variables missed when doing 46810ec490. 2020-09-27 02:07:07 +10:00
Mitchell Richters
362fda4378 - Duke: Change fix in 6e9576b871 to be outside of donewgame() in case player is loading a map from the command line. 2020-09-26 09:17:50 +10:00
Mitchell Richters
6e9576b871 - Duke: Fix skill level coming in from main loop. 2020-09-26 08:55:10 +10:00
Christoph Oelckers
64607834f3 - Blood: fixed application of palette from the QAV data for HUD weapons. 2020-09-25 23:55:20 +02:00
Christoph Oelckers
1e63341c4d - fixed inverted checks for texture clamping. 2020-09-25 23:42:53 +02:00
Christoph Oelckers
8b9853ad28 - print cheat prompts to the regular message display. 2020-09-25 22:41:17 +02:00
Christoph Oelckers
047c5de286 - SW: layout tweaks for inventory display. 2020-09-25 22:31:16 +02:00
Christoph Oelckers
77841b3154 - fixed application of detail textures. 2020-09-25 22:03:11 +02:00
Christoph Oelckers
3344e73fed - fixed some crashes in the .def parser and texture initialization code. 2020-09-25 20:51:02 +02:00
Christoph Oelckers
73c57af9ca - added credit screen handling for Duke Nukem 1.3. 2020-09-25 20:22:30 +02:00
Christoph Oelckers
1fc919f5a1 - fixed episode startup on Duke so that the intro for ep. 4 plays. 2020-09-25 19:46:04 +02:00
Christoph Oelckers
89bc194035 - added shareware checks to the "start game" menus. 2020-09-25 19:36:50 +02:00
Christoph Oelckers
ccfd20e074 - added some quick rejection checks for Doom patch textures.
Since the checker reads all lumps completely into memory to check them, this can take quite a while. Reject everything that can be just by looking at the size fields immediately, without loading the rest.
2020-09-25 19:06:19 +02:00
Christoph Oelckers
e7f16f6ff7 - Duke: do not play 1.5 intro sounds in 1.3
- Duke: In 1.3, the Duke team image should stay until dismissed manually.
2020-09-25 18:40:45 +02:00
Mitchell Richters
e9326fffe3 - processMovement(): Slightly adjust some ratios to provide proper average values. 2020-09-25 23:07:38 +10:00
Mitchell Richters
9b12675f4e - processMovement(): Re-arrange parameter variables somewhat so game-specific parameters are at the end and to allow some common defaults so they don't need specifying. 2020-09-25 22:26:50 +10:00
Mitchell Richters
73f52b2cee - SW: Fix turn scaling while pp->sop_control and specify !pp->sop to processMovement()s allowstrafe bool instead of an unconditional true. 2020-09-25 22:17:21 +10:00
Rachael Alexanderson
c8a74a8f3f - sw: flykey: guard against non-godmode, bind to j by default 2020-09-25 13:50:29 +02:00
Rachael Alexanderson
410d392ba8 - enable fly cheat for shadow warrior. in other games it is currently ignored, but I think Redneck Rampage and Blood both need it at some point too 2020-09-25 13:50:29 +02:00
Mitchell Richters
ce269808dc - Remove leftover Ion Fury stuffs causing log errors like "Script error, 'D:/Program Files (x86)/Steam/steamapps/common/Ion Fury/fury.grpinfo" line 10: Warning: GRP without game defined. Ignoring'". 2020-09-25 18:06:06 +10:00
Mitchell Richters
4ff3810711 - Blood/Duke/RR/SW: Improvements to 3rd person viewing by modifying the rendered player's posz so the camera is looking further above the camera sprite as EDuke32 does. Blood just enables the crosshair when using 3rd person view. 2020-09-25 17:52:00 +10:00
Mitchell Richters
e7de0da36c - Duke: Changed some downscaled and upscaled Q16.16 variables missed when doing 46810ec490. 2020-09-25 17:08:44 +10:00
Mitchell Richters
0746b98886 - RR: Don't draw weapon on screen when in 3rd person view. 2020-09-25 16:17:55 +10:00
Mitchell Richters
9c0667a7ce - Duke: Don't display cracking knuckles while in 3rd person view. 2020-09-25 16:17:34 +10:00
Mitchell Richters
71d667cdc9 - ApplyGlobalInput(): Fix const issue. 2020-09-25 13:33:44 +10:00
Mitchell Richters
67c8187d62 - processMovement(): Attenuate hidInput->dyaw when using for strafing. 2020-09-25 12:03:56 +10:00
Mitchell Richters
038edfe972 - Exhumed: A few more positioning tweaks for the classic full and split HUDs. 2020-09-25 11:02:06 +10:00
Mitchell Richters
2679e28a2e - Exhumed: Tune positioning of classic full and split HUDs. 2020-09-25 10:42:46 +10:00
Mitchell Richters
c4f4468fd4 - Exhumed: Tune DrawHUD2() sizing positioning to match other games. 2020-09-25 09:42:02 +10:00
Mitchell Richters
ad1f0ce6c3 - Duke: Tune sizing in FullscreenHUD1 for Duke 3D 1.3D and Nam/WW2GI. 2020-09-25 09:26:55 +10:00
Mitchell Richters
5e947cd78f - Duke: Fix occasional flicker in corner of 'Completed' text. Need to do the text after all backdrop changes. 2020-09-25 09:08:22 +10:00
Mitchell Richters
439633e6db - Duke: Don't play 3rd pipebomb explosion if not Plutonium/Atomic. 2020-09-25 08:40:58 +10:00
Christoph Oelckers
8480aca6f1 Merge remote-tracking branch 'remotes/Github_private/Input_UnifyProcessMovement' 2020-09-24 20:21:45 +02:00
Christoph Oelckers
0f96d6a003 - fixed transition to the next level from Ramses cutscenes. 2020-09-24 20:14:25 +02:00
Mitchell Richters
6aa494285d - processMovement(): Add scaling for Exhumed's keymove. Input was far too slow and didn't match the others. 2020-09-25 00:57:48 +10:00
Mitchell Richters
aa14ee1232 - InputState: Scale dyaw/dpitch with regards to ticrate. All testing on initial uplift was with Duke at 30Hz. SW running at 40Hz therefore is not at the same speed as the others. 2020-09-25 00:25:49 +10:00
Mitchell Richters
9e0bd569f7 Merge branch 'back_to_basics2' into Input_UnifyProcessMovement
# Conflicts:
#	source/exhumed/src/input.cpp
2020-09-25 00:17:16 +10:00
Mitchell Richters
16cee1148b - Duke: Change a few ps[] to use the p alias available following changes in f4fff5ee30. 2020-09-25 00:09:31 +10:00
Mitchell Richters
f0262039b6 - Exhumed: Fixed issues with call to playerProcessHelpers() not occurring after dying. 2020-09-25 00:04:19 +10:00
Mitchell Richters
a4438fd218 - Exhumed: Actually fix ramses/spirit head issues... 2020-09-24 22:55:27 +10:00
Mitchell Richters
04af1d9ce8 - All Games: Unify processMovement(). 2020-09-24 22:32:37 +10:00
Mitchell Richters
081dfb187c - Duke: Make changes in ce7af5fe0e easier to read by way of aliases. 2020-09-24 09:05:42 +10:00
Mitchell Richters
ca2f1bb556 - Exhumed: Fix ramses/spirit head issues in DoSpiritHead() and clamp horizon in draw code in case for whatever reason (like before) we exceed the game's defined bounds. 2020-09-24 08:11:56 +10:00
Christoph Oelckers
44fc452747 - World Tour: Fixed missing smoke on burning monsters
Yay, another one-liner...
2020-09-23 19:24:40 +02:00
Christoph Oelckers
daabb31bff - more stat constants 2020-09-23 19:24:01 +02:00
Christoph Oelckers
67985b7819 - changespritestat literal number replacement 2020-09-23 18:51:43 +02:00
Christoph Oelckers
71213bf8bd - added a missing code fragment for WT's lavapool.
This made them float in the air instead of being on the ground.
2020-09-23 18:18:23 +02:00
Christoph Oelckers
f106f35598 - fixed interpolation of palette emulation. 2020-09-23 18:18:23 +02:00
Christoph Oelckers
a6c45a8e52 - Duke: must serialize SB_CENTERVIEW (but no other bits.) 2020-09-23 18:18:23 +02:00
Christoph Oelckers
f4fff5ee30 - moved sync structure into the playerstruct for easier maintenance. 2020-09-23 18:18:23 +02:00
Christoph Oelckers
5a76dce5f8 - reinstated setuptile.
Apparently this is needed by some hires packs to fudge the sprite offsets.
Fortunately, setting sprite offsets is the only thing this was ever used for so it's relatively uninvasive.
2020-09-23 18:18:22 +02:00
Mitchell Richters
8690c633d8 - Blood: Add extra call to inputState.ClearAllInput() in StartLevel(). 2020-09-24 00:20:40 +10:00
Mitchell Richters
e078ea6ebd - Blood/Exhumed/SW: Hook up gi->clearlocalinputstate(). 2020-09-24 00:15:51 +10:00
Mitchell Richters
9b85816f70 - Exhumed: Fix ordering issue in gi->GetInput() preventing player from pressing use to start again. 2020-09-23 23:45:32 +10:00
Mitchell Richters
2bb5ef0d2e - Exhumed: Don't return to center after jumping or having something of a fall while playing with mouselook enabled. 2020-09-23 23:37:06 +10:00
Mitchell Richters
64113f8f9c - Blood/Duke/SW: Smooth out player's zpos adjustment while in 3rd person view. 2020-09-23 23:12:59 +10:00
Mitchell Richters
ce7af5fe0e - Duke: Fix security cameras skewing over time.
* Fixes regression from e1ee9bc83c. +='ing the angle by 16 gave a noticeable hiccup, but was keeping the poor math before in-check so the angle didn't drift.
* Using more temp data fields in hittype, properly define a min/max using the initial camera angle and the hitag which is conveniently the camera's viewing arc.
2020-09-23 18:31:12 +10:00
Christoph Oelckers
5784ff6ef7 - fixed damage type of incinerator's fireball.
A one-liner, what else... :D
2020-09-23 07:37:08 +02:00
Mitchell Richters
470f481619 - Duke: Simplify entire camera angle setup. 2020-09-23 15:34:03 +10:00
Mitchell Richters
ed9c8af82f - Duke: Move changes performed in 53038e1b29 from FinalizeInput() to processInputBits(). 2020-09-23 15:03:34 +10:00
Mitchell Richters
53038e1b29 - Duke: Don't allow looking left/right when on a security camera screen. 2020-09-23 15:00:33 +10:00
Mitchell Richters
88608e0682 - Duke: Interpolate camera sprite angle in animatecamsprite(). Fixes a "fixme". 2020-09-23 14:42:33 +10:00
Mitchell Richters
407b5346e3 - Blood: Fix issues taking damage following level transitions.
Fixes https://forum.zdoom.org/viewtopic.php?f=340&t=69919.
2020-09-23 13:28:07 +10:00