Commit graph

5,073 commits

Author SHA1 Message Date
fa13d9f078 Some merge cleaning up. 2025-09-24 19:45:46 +02:00
b2a9dbf809 Merge remote-tracking branch 'gzdoom/master' into gzdoom_merge 2025-09-24 19:39:17 +02:00
Marcus Minhorst
376bef7033 Fix array oob 2025-09-23 10:34:50 -04:00
Gaerzi
1fff657204
Fix Hexen transcription error
It's actually "archimage", with an i, not "archmage".

Cf. bc35ff0cb7/Hexen Source/MN_MENU.C (L1008)
2025-09-12 20:04:07 +02:00
nashmuhandes
a8c5355f31 Allow particle fade-out and fade-in to be defined individually for FSpawnParticleParams and A_SpawnParticleEx. Requires either SPF_FADE_IN_OUT or SPF_FADE_IN_HOLD_OUT flags to be enabled first, and startalpha to be 0 for fading in. The old fadestep parameter serves as the fade-in time, while the new fadeoutstep parameter controls the fade-out time. SPF_FADE_IN_HOLD_OUT ensures the particle will stay solid for the duration of its lifetime before starting to fade out. 2025-09-10 07:10:13 -03:00
Marcus Minhorst
7086f463e5 Keep cursor in screen when resizing 2025-09-08 17:08:02 -03:00
Marcus Minhorst
4ba28c2781 Clamp scroll value better 2025-09-08 17:08:02 -03:00
Marcus Minhorst
5c658a3834 Fix optionmenu not respecting rowheight 2025-09-08 17:08:02 -03:00
Marcus Minhorst
259dc1936f Fix another menu scroll bug
Static text at the end of menu would break scrolling
2025-09-08 17:08:02 -03:00
Rachael Alexanderson
d7c04e2fb2
- remove vid_scalemode 7 from the menu for now, if for no other reason than it doesn't work properly at the moment 2025-09-06 19:48:04 -04:00
Alexander Kromm
655d01ba4d expose ToInt and ToFloat from FString as ToInt and ToDouble 2025-09-03 09:36:21 -04:00
Boondorl
3d39bf33bb Re-add handler param to MessageBox Init virtual
This is just to prevent breaking any existing overrides. The value is fully unused.
2025-08-30 15:39:30 -03:00
Rachael Alexanderson
53ffd97822
Revert "- add argument for EventHandler.Find() which allows searching by parent class (default false)"
This reverts commit abdacad8d3.

Revert "- missed one"

This reverts commit 03123b96de.
2025-08-30 06:03:02 -04:00
Rachael Alexanderson
03123b96de
- missed one 2025-08-25 01:50:45 -04:00
Rachael Alexanderson
abdacad8d3
- add argument for EventHandler.Find() which allows searching by parent class (default false) 2025-08-24 04:27:55 -04:00
Marcus Minhorst
0e621e2f30 Added rumble from damage 2025-08-24 03:02:06 -04:00
Marcus Minhorst
d4a6e1c6aa Added rumble from world 2025-08-24 03:02:06 -04:00
Marcus Minhorst
7a21853d3f Added rumble from menus 2025-08-24 03:02:06 -04:00
Marcus Minhorst
b2979f0e23 Added rumble from actions 2025-08-24 03:02:06 -04:00
Marcus Minhorst
968fa10a93 Added haptic compat options 2025-08-24 03:02:06 -04:00
Marcus Minhorst
a7a1d8447d Added haptics settings 2025-08-24 03:02:06 -04:00
Marcus Minhorst
848df46ee0 Added haptic bindings 2025-08-24 03:02:06 -04:00
Marcus Minhorst
75ef08c755 Added rumble mappings 2025-08-24 03:02:06 -04:00
Marcus Minhorst
8352039e3f Cleanup 2025-08-24 03:02:06 -04:00
Sally Coolatta
fa35d00ba8 Remove default binds for DirectInput
As requested.

DirectInput-only controllers are already getting rarer and rarer. Plus, this branch makes all controllers faster & simpler to rebind. I'd even argue these get in the way, because you can't just immediately bind a DInput controller from boot-up, you have to unbind everything first.

I'm not against a new code path for DInput defaults that tries to guess what kind of controller you have, but I don't care about it myself.
2025-08-23 05:18:34 -04:00
Sally Coolatta
90ff9b5b15 Add gamepad reset option to menu 2025-08-23 05:18:34 -04:00
Sally Coolatta
1bcae623b0 Add client cvar for strafe running on analog stick 2025-08-23 05:18:34 -04:00
Sally Coolatta
ba9b2ddf37 Add game logic sensitivity for analog yaw & pitch
Add options to change how fast the analog sensitivity is for yaw & pitch.

Why not use the existing axis sensitivity options? Because they can change how the deadzones and input response preform, and you have to balance several options. In my opinion, those sensitivity options should be for full-on stick calibration (if your stick is not outputting the full range, for instance). But how fast the player should be able to look around is up to the user's taste, regardless of the stick they're using. This also helps make it match up with how mouse sensitivity is split up (i.e: device sensitivity vs game logic sensitivity)

Default analog pitch sensitivity has been drastically lowered, from 2048 (x1.6 yaw sensitivity) to 768 (x0.6 of yaw sensitivity). I don't think I've ever heard of any FPS game on controller before that makes pitch more sensitive than yaw... it is either the same or lower, because players typically want to stay looking in the horizon, and analog stick isn't precise enough to treat them evenly (let alone more sensitive). IMO this is a lot more playable, but I can change the default back to match older versions if that is preferred.
2025-08-23 05:18:34 -04:00
Sally Coolatta
952988d5cd Fix missing gamepad keys in inputevents.zs 2025-08-23 05:18:34 -04:00
Sally Coolatta
ca562829c5 Tie axis data to the button map
The main benefit of this is to remove the requirement of going to the gamepad menu for binding analog sticks, and going to a keybinds menu for binding literally everything else; now it's all bound in the same location.

This also means that axes can both register as a digital button press, and be used as an analog value for movement separately. Before, using analog movement would not register BT_FORWARD, BT_BACK, etc
2025-08-23 05:18:34 -04:00
jekyllgrim
ba9e127e9f Added to CreateTossable and PowerWeaponLevel2 2025-08-22 12:09:51 -03:00
jekyllgrim
977b5acbe1 Added OnSelect() and OnDeselect() to weapons 2025-08-22 12:09:51 -03:00
Marcus Minhorst
4d8f715d50 Corrected overscroll behavior 2025-08-22 12:09:31 -03:00
Magnus Norddahl
e3cde7a9e9 More big beautiful porting 2025-08-08 00:43:45 +02:00
Magnus Norddahl
3fdd22ef91 Merge remote-tracking branch 'gzdoom/master' into big_beautiful_merge 2025-08-06 21:06:53 +02:00
nashmuhandes
24aea22ef2 Move the "custom inverse map" options from Light to Appearance (this option has nothing to do with lighting; it's actually related to the fullscreen inverted effect of the invulnerability powerup) 2025-08-06 08:24:06 +08:00
Magnus Norddahl
23a344b086 Apply sunlight as a true light source for line horizons 2025-08-05 10:53:26 +02:00
Boondorl
316b18a4d9 Added built-in delta time handling
Allows tracking time since last-rendered frame in seconds.
2025-08-02 19:44:00 -03:00
Boondorl
86375c1b79 Move travelling to two-step system
Mark Actors meant to travel early so their flag can be written into the snapshot, followed by moving them over all at once at the same time as previously. On finish, destroy any marked Actors to prevent duplication in hubs. Switch to a unique function that does the verification instead of ChangeStatNum and lock out STAT_TRAVELLING entirely since it shouldn't be used for regular gameplay.
2025-08-02 17:35:16 -03:00
Boondorl
00d2b43ce0 Remember statnum when travelling
Also cleans up the functions a little.
2025-08-02 17:35:16 -03:00
Boondorl
d7d71177d7 Reworked Travelling logic
Added safety barriers for STAT_STATIC and STAT_TRAVELLING to avoid potential exploits. Properly clear all internal fields pointing towards non-read barriered data and always relink properly when finishing travelling. Moved ZScript callback to after travelling has finished for all Thinkers, that way everything is initialized correctly.  Allow arbitrary thinkers (excluding native ones) to be added to the travelling list (for Actors, their positioning will need to be handled by modders). Ensure lights get re-enabled after travelling.
2025-08-02 17:35:16 -03:00
Marcus Minhorst
7ccd0dd3cd Fix oboe 2025-08-02 15:04:34 -03:00
nashmuhandes
346f4c0e87 Add gl_weapon_purelightlevel to make view weapon sprites/models match sector light levels purely 2025-08-02 12:00:50 -04:00
Sally Coolatta
4cc5fe942d Save/Load menu: Add delete bind for gamepads 2025-07-30 12:56:06 -03:00
Rachael Alexanderson
9d92686c0a
- language update 2025-07-29 23:53:44 -04:00
Boondorl
b6b3c311e1 Export DecalBase
Allows setting this between Actors with type safety. Now also serializes these fields.
2025-07-28 15:24:04 -03:00
Boondorl
4acc5f2a7d Lock down MessageBox handler 2025-07-28 14:36:54 -03:00
Boondorl
a4ed63033e Fixed quick save rotator breaking save logic
The game should only ever save during the gameplay loop and never on the spot. Also fixes the quick save rotator skipping certain checks.
2025-07-28 02:50:10 -04:00
nashmuhandes
21ba4e6ab0 Add missing item tags for items in Doom and Chex Quest. There are mods out there that read tags. The accompanying language entries have been sent to the localization spreadsheet. 2025-07-27 17:34:08 -03:00
Marcus Minhorst
05f19f4ac0 Fixed oob array access when using m_use_mouse=1 2025-07-27 17:33:44 -03:00