Commit graph

21802 commits

Author SHA1 Message Date
Ritchie Swann
699bef1316
Better solution for DwmDefWindowProc on mingw64
On mingw, create our own thunk for DwmDefWindowProc. It should exist in libdwmapi.a (and exists in MSVC), but doesn't.
2024-08-15 02:43:48 -04:00
Ritchie Swann
709d5dd742
Keep legacy_studio_definitions for non mingw64 toolchain 2024-08-15 02:43:47 -04:00
Ritchie Swann
120c0fb5ca
Use TCHAR on Windows 2024-08-15 02:43:47 -04:00
Ritchie Swann
801dc4aaac
sys/stat.h is required on all platforms 2024-08-15 02:43:47 -04:00
Ritchie Swann
e1e5ae16e2
Fix namespace issue
windows.h must be included in the main namespace on mingw64, otherwise there are loads of compile errors
2024-08-15 02:43:47 -04:00
Ritchie Swann
8f7b0ef4eb
Fix libraries on mingw64
dxguid and dwmapi are required on mingw64 and give linker errors if missing
legacy_studio_definitions is not in the latest mingw64
2024-08-15 02:43:47 -04:00
Ritchie Swann
67d573cd41
Use TCHAR for Windows 2024-08-15 02:43:46 -04:00
Ritchie Swann
e3795c762a
Fix preprocessor symbol for Windows 2024-08-15 02:43:46 -04:00
Ritchie Swann
95f31cdd7e
mingw64 requires including cstdint 2024-08-15 02:43:46 -04:00
nashmuhandes
8043370ef1 Export PlayDiveOrSurfaceSounds to ZScript and made it virtual for mods to customize the diving and surfacing sounds 2024-08-11 14:34:53 -04:00
dileepvr
95b264bdb6
Isometric Mode and Robin (#2618)
* Feature-complete isometric mode fork.

* Dithered transparency condition tweaks.

* Dithered transparency for non-corpse monsters only (and missiles).

* SpectatorCamera vertical shift.

* Including math.h in hw_sprites.cpp to keep visual studio happy (it couldn't find M_SQRT2 definition).

* Defining MY_SQRT2 in hw_sprites.cpp to keep visual studio happy (it couldn't find M_SQRT2 definition).

* Defining MY_SQRT2 in r_utility.cpp also to keep visual studio happy.

* retrigger checks

* Have correct sprite angle-frame face the camera with orthographic projection enabled.

* Dithered Transparency now works properly on 3D floors. Moved that dither-trans flag setting code within hw_bsp.cpp to handle double-processing of linedefs. Added helper functions to FRenderViewpoint class 'bool IsOrtho()' and 'bool IsAllowedOoB()' to clean up checks everywhere in the code.

* Fixed indents. Added bbox property to subsector struct and use it instead of BSP nodes and Clippers (creating a bbox around viewpoint and checking for overlap) in orthographic mode when no fog of war is active. Turns out to be much faster. Though you need really big maps (Winter's Fury MAP01) to see a difference in fps.

* Non-linux checks don't like uint. Changed to unsigned int.

* Small change of a float to camera.zs. Ignore for testing. Should make no difference.

* Update actor.h to remain mergeable

RF2_NOMIPMAP was introduced, so I had to displace RF_ISOMETRICSPRITES to next bit.
2024-08-11 10:04:40 -04:00
Ricardo Luís Vaz Silva
b044baf850 don't change priority to idle if i_pauseinbackground is false 2024-08-09 18:04:51 -03:00
Ricardo Luís Vaz Silva
1655f7e3b7 Allow XInput joysticks to work while the game is unfocused 2024-08-09 18:04:51 -03:00
Xaser Acheron
01e7859e1f fix MBF21 A_RadiusDamage crash/broken 'distance' arg 2024-08-09 14:32:35 -03:00
Vitaliy Kanev
bd2027ee4b Support the new Doom + Doom II update 2024-08-09 14:31:48 -03:00
Ashley Miller-Jelfs
7ce6f2214c Fix Specular not using Material definition for Glossiness and Level 2024-08-08 07:23:00 -04:00
Rachael Alexanderson
847f34f2c9
- fix: check if bombsource exists when exploding a projectile with a XF_NOALLIES flag 2024-08-07 11:12:13 -04:00
nashmuhandes
593e1c0225 Add SPF_NOMIPMAP to force actor sprites or particles to have no mipmaps. This makes tiny sprites/particles look more crisp and legible in the distance. Mipmapping causes the sprites/particles to have an inconsistent look where they'd sometimes be clearly visible and sometimes less visible depending on camera distance and movement. 2024-08-03 18:45:48 -03:00
Boondorl
3d3cd88868 Disable effects on Actors set not to render locally
These are purely visual
2024-07-31 07:00:38 -04:00
Boondorl
d697eafbe1 Fixed subnormal float viewpos values breaking rendering 2024-07-29 03:10:50 -04:00
Blue Shadow
519dd16c9a - fixed alignment issue in SBARINFO's DrawString command 2024-07-28 21:19:41 -03:00
nashmuhandes
f671018700 Clean up lightmap stuff in the namedef 2024-07-20 12:56:56 -04:00
Magnus Norddahl
9d78eb5aa0
Fix directory crash for filenames that appear elsewhere in the path 2024-07-12 13:53:45 -04:00
Ricardo Luís Vaz Silva
0caa036a96 fix compilation 2024-07-09 12:25:28 -03:00
Ricardo Luís Vaz Silva
7ddd4ec245 handle freeze in decoupled animations 2024-07-09 12:25:28 -03:00
Boondorl
10d0f94972 Misc network fixes
Fixed missing teleport specials when predicting. Added rubberband limit; if too far away from the predicted position, will instead instantly snap the player's view to their new spot. Deprecated cl_noprediction; this was pointless as you'd never not want to predict your position/angles. Fixed angle targets not being backed up. Fixed oldbuttons not being set. Updated menu
2024-07-07 01:33:37 -03:00
MrRaveYard
a82e3b9dfe Add missing GC write barrier 2024-06-30 11:22:07 -03:00
Ricardo Luís Vaz Silva
ddbf90389b add total chaos retro and full maps to compatibility.txt 2024-06-24 17:23:08 -04:00
Ricardo Luís Vaz Silva
35f66c5cc2 add COMPATF2_NOACSARGCHECK to disable ACS function argument count checks 2024-06-24 17:23:08 -04:00
dpjudas
02305f02b9
Turn on the output limiter 2024-06-24 17:16:26 -04:00
Major Cooke
3e91d38582 Fixed Pre(Un)Morph being called out of order.
- This had broken several mods that relied on the inventory being in place before the switch, which was the intended way to begin with.
2024-06-24 10:37:12 -04:00
Major Cooke
5fc3d44ba5 Added SPF_ROLLCENTER for particles and visual thinkers. 2024-06-23 11:09:29 -04:00
Major Cooke
c56d70f2b1 Added SPF_(NO)FACECAMERA flagst for specifying camera facing on particles and visual thinkers.
- This also adds ensures facing camera is applied to these via the option menu.
2024-06-23 10:07:22 -04:00
nashmuhandes
2e4bf697b8 Add X, Y and Z offsets for VOXELDEF. Needed for voxelized weapons which would typically be very large and take up the majority of the 256x256x256 canvas, therefore making precise positioning of the models relative to the screen pretty much impossible without tweakable offsets. 2024-06-21 08:17:54 -03:00
nashmuhandes
13b9ffd6c8 Rename SourceRadius to SoftShadowRadius (to match VKDoom) 2024-06-15 10:00:39 -04:00
Ricardo Luís Vaz Silva
c693e3b073 Fix A_SetAnimation 2024-06-05 19:43:25 -03:00
Ricardo Luís Vaz Silva
461c2f77b7 restrict new relaxed named arguments to zscript >= 4.13 2024-06-03 10:52:07 -03:00
Ricardo Luís Vaz Silva
20cf8befbf Rework named arguments
Now allows arguments to be in any arbitrary position, and allows required arguments to be named
2024-06-03 10:52:07 -03:00
Ricardo Luís Vaz Silva
87463ef36b Fix memory leak on TDeletingArray move assignment 2024-06-03 10:52:07 -03:00
Acts 19 quiz
c707b418ef Narrow the Launcher check box clickable areas to stop overlap and fix #2558 2024-05-27 20:15:51 -03:00
nashmuhandes
ae28eeae94 Scriptified the view squatting. 2024-05-26 21:06:20 -03:00
Boondorl
ab20b75c14 Added missing player retranslation
Play-scoped team changing function.
2024-05-26 20:31:50 -03:00
Boondorl
53270f0bc8 Added ChangeTeam function for teamplay
Also removes the TeamLibrary global since all it did was call what should've been static functions.
2024-05-26 20:31:50 -03:00
Boondorl
3d6e508d67 Network messages will now show usernames instead of just numbers
Gives more useful feedback as it's not obvious which node belongs to who.

Added line breaks to network messages for cases where a large amount of players are desynced.
2024-05-26 20:29:23 -03:00
Boondorl
4c191f4bf5 Inventory item spawn fixes
Default player items and shared items are no longer capable of being duplicated regardless of item flags. Shared items now give a true copy of the item. Fixed incorrect effects playing from item copies. Dropped items can no longer be shared.
2024-05-26 20:29:14 -03:00
Boondorl
d02f79d4be Added subclassing for use commands
Allows for finding subclasses when using the item commands that search the inventory. Can be either true/false or 0/1.
2024-05-26 20:29:01 -03:00
Kartinea
3bc54d3757 Fix invisibility affect on enemies
When performing the ShadowBlock check, we previously would return a nullptr actor if nothing was between the monster and the player.  This resulted in the monster aiming as if you didn't have invisibility.

Fall back to returning the target actor if it is shadowed but nothing is in between the two.
2024-05-22 22:25:18 +02:00
Rachael Alexanderson
cf8a04c457
- simplify squishing to square pixels for particles and rollsprites 2024-05-21 03:09:47 -04:00
Ricardo Luís Vaz Silva
ffbbe0a4c6 partial fix for FString::IsInt() 2024-05-20 16:08:13 -03:00
Jan Engelhardt
1dedcee739 Provide a diagnostic message for the two 32-bit related static_asserts 2024-05-18 07:48:20 -04:00