Commit Graph

4306 Commits

Author SHA1 Message Date
Christoph Oelckers 71083f2b23 - use sound rolloff settings for Exhumed that actually work.
I cannot say if this is correct because the sound in PCExhumed doesn't seem right so the rolloff distance was more or less guesswork based on what sounds ok.
2020-02-25 19:40:39 +01:00
Christoph Oelckers 1c2ea506f2 - fixed: Windows must call the wide version of _mkdir for Unicode support. 2020-02-25 18:49:24 +01:00
Christoph Oelckers 7d725bfe8a Exhumed sound coordinate fixes 2020-02-25 00:40:51 +01:00
sirlemonhead 999840a9b5 PCExhumed: Corrected sector tag number handling for enemy death triggered sectors. Fixes issue #328 2020-02-24 22:13:32 +01:00
Christoph Oelckers 2f91c2f696 - fixed the Exhumed sequence reader.
There was interference with the sound loader here - both accessed the same file handle so the sequence's sound data wasn't read correctly, resulting in memory corruption.
2020-02-24 21:59:04 +01:00
Christoph Oelckers fe1133e5c2 - fixed EnumerateChannels. 2020-02-24 20:19:03 +01:00
Christoph Oelckers 920f424184 - pitch fix. 2020-02-24 18:34:15 +01:00
Christoph Oelckers 3a7067dbec - properly transitioned Exhumed's sound system to the OpenAL sound engine. 2020-02-23 20:40:45 +01:00
Christoph Oelckers 3aea6d1fad - refactored sound user data to be easier to serialize. 2020-02-23 18:30:48 +01:00
Christoph Oelckers 83adb81756 - call the proper functions to stop sounds in Shadow Warrior. 2020-02-23 17:13:18 +01:00
Christoph Oelckers c8aa006f82 - fixed sound channel iterator to properly handle callbacks that delete sounds.cpp 2020-02-23 17:12:40 +01:00
Christoph Oelckers e28de10c00 - serialize sound IDs as index, not name.
The name is not unique. This really needs something better.
2020-02-23 17:11:54 +01:00
Christoph Oelckers 935a880b63 - Blood's ambient sound table does not need to be written to the savegame because it can be statically reinitialized after loading. 2020-02-23 17:10:29 +01:00
Christoph Oelckers c35a2e5f11 - do not hold persistent references to sound channels in SW's ambient sound code.
For robustness, channels should always be looked up when needed so that the sound engine is free to do with them as it needs.
2020-02-23 15:41:57 +01:00
Christoph Oelckers 985e441d80 - transitioned all JSON-based savegame code to FSerializer and removed sjson.
Now everything is in place to transition the rest of the savegame code as well.
2020-02-23 14:03:03 +01:00
Christoph Oelckers 1b6b43291b - disabled the 'portable' savegame feature for Ion Fury.
This won't survive the coming savegame refactoring because its only reason for existence is to work around the savegame format's volatility.
2020-02-23 09:55:49 +01:00
Christoph Oelckers a09e195954 - started transitioning the savegame writer to the newly added serializer.
Writing info.json done.
2020-02-23 09:41:12 +01:00
Christoph Oelckers 88b6661395 - hooked up GZDoom's JSON serializer.
It's time to build a better savegame format and also to replace SJSON with something easier to work with.
2020-02-22 18:41:24 +01:00
Christoph Oelckers 8a085c0af9 - fixed undefined behavior with unpositioned but attenuated sounds. 2020-02-22 17:23:23 +01:00
Christoph Oelckers 39c96d58c6 - fixed bug with wallsprite calculation trashing angles of voxel sprites.
Fix was missed from upstream due to a merge conflict.
2020-02-22 16:56:20 +01:00
Christoph Oelckers 8e9491b5e4 - ported music start fix from GZDoom. 2020-02-22 16:12:40 +01:00
Christoph Oelckers 3c88e1c30a - proper detection for SW Redux. 2020-02-22 14:57:43 +01:00
Christoph Oelckers 9fab46b7d7 - initialize the secret hint system for each level. 2020-02-22 08:57:18 +01:00
Rachael Alexanderson 3a30e083ad - add Redneck Rampage to Steam search paths 2020-02-21 19:02:51 -05:00
Christoph Oelckers 455137e5e0 - re-enabled depth clamping.
This was never supposed to remain deactivated.
2020-02-21 21:36:42 +01:00
Christoph Oelckers 020692588c - fixed level names in statistics printout. 2020-02-21 21:36:42 +01:00
Rachael Alexanderson 6a40d71e89 - Replicate commit from: 5ee864ab5b
- Special thanks to @hanatos
2020-02-21 07:55:11 -05:00
Christoph Oelckers 56c959d025 - Blood: Stop music before starting a cutscene. 2020-02-19 18:34:17 +01:00
Christoph Oelckers c253cd899c - fixed statistics reader for savegames. 2020-02-18 21:23:28 +01:00
Christoph Oelckers ce9b71a31f - fixed hitbox for menu sliders. 2020-02-18 21:05:46 +01:00
Christoph Oelckers 6282062492 - fixed brightmaps.
They are no longer run through the texture postprocessor and the shader now applies them correctly.
2020-02-18 20:43:16 +01:00
Christoph Oelckers 4671161852 - fixed the secret hint system. 2020-02-17 23:07:29 +01:00
Christoph Oelckers 7dc26a3162 - stop all playing sound when starting a new game.
- give all bonus screen sounds in Duke the CHANF_UI flag.
2020-02-17 19:43:58 +01:00
Christoph Oelckers a657b55b50 - give all cutscene sounds in SW the CHANF_UI flag. 2020-02-17 19:12:05 +01:00
CommonLoon102 1105d52677 Blood: rename Ummune to Immune 2020-02-17 18:41:15 +01:00
Christoph Oelckers dcad616030 - unpause sound when starting the demo loop. 2020-02-17 18:40:32 +01:00
Christoph Oelckers 41a81989d8 0.4.5 2020-02-16 21:38:49 +01:00
Christoph Oelckers 57a3f89105 - workaround for cl_autoaim not being set anymore.
Only for singleplayer for now, the network implementation for this flag leaves a lot to be desired.
2020-02-16 21:31:29 +01:00
Christoph Oelckers 40cbaf969c - ignore GRPINFOs without a defined game.
These can cause unpredictable behavior, including crashes.
2020-02-16 20:18:07 +01:00
Christoph Oelckers 3cd2b92dd1 - pause all game sounds while the menu or console are open and marked SW's UI sounds as such. 2020-02-16 20:08:04 +01:00
Christoph Oelckers a873dcf6e0 - fixed the pause key.
Apparently SDL maps this to a different scan code.
Since pause is hard coded in all games the corresponding menu option has been disabled.
2020-02-16 17:22:14 +01:00
Christoph Oelckers 19f9860c11 - fixed Blood's sfxKill3DSound function checking the wrong ID. 2020-02-16 16:52:02 +01:00
Christoph Oelckers c583318f31 - guard NNLoadSaveConstruct with #ifdef NOONE_EXTENSIONS. 2020-02-16 14:54:24 +01:00
Christoph Oelckers 26d4114566 - Blood: Fix for buried zombies losing their targeting ability when being struck down while rising from the grave.
Normally they change their type when being fully risen - but when attacked before that happens, never reach that code. To keep them functional, the change must be performed before performing the first target check in thinkChase.
2020-02-15 21:47:02 +01:00
Christoph Oelckers cc872c79fc - removed some vertex fudging code in polymost_domost that was no longer present in upstream code.
This looks like it fixes a few render glitches.
2020-02-15 21:36:29 +01:00
Christoph Oelckers 410f5a4545 - clean out stale sprite pointers in User when a sprite gets removed.
This was the main reason for those constant crashes, the game was accessing an invalid sprite, treating its data as valid.
Also added a few checks for valid targets in two places where it still crashed.
2020-02-14 21:44:59 +01:00
Christoph Oelckers c643aadb4b - fixed hud scaling slider value ranges 2020-02-14 00:56:23 +01:00
Christoph Oelckers 071a364d83 - SW: Stop all sound before starting a cutscene 2020-02-14 00:52:57 +01:00
Christoph Oelckers dff86c7e38 - removed some coordinate fudging for drawing SW's automap background
The current code does not need this
2020-02-14 00:41:36 +01:00
Christoph Oelckers 84bf6ad785 - unused code removed 2020-02-14 00:38:22 +01:00
Christoph Oelckers 844dcc22ae - SW: Don't allow level change via cheat when dead. 2020-02-14 00:37:15 +01:00
Christoph Oelckers 71485fe9d0 - reverted special detection of Duke add-ons
The side effects here are worse than the benefit.
2020-02-14 00:21:09 +01:00
Christoph Oelckers 488f8b1526 - Text code for AI state saving 2020-02-14 00:00:35 +01:00
Christoph Oelckers 91b7770e84 - use a command line switch to set Duke compatibility
At this point the command line CCMD execution has not run yet, so setting the CVAR does not work as expected.
2020-02-13 16:09:27 +01:00
Christoph Oelckers d63d9f80bb - fixed missing menu descriptor for Blood. 2020-02-12 23:41:26 +01:00
nukeykt a604152e39 Rednukem: fix kill counter
# Conflicts:
#	source/rr/src/gameexec.cpp
2020-02-12 23:14:53 +01:00
Christoph Oelckers 1e8e5d3732 - fixed: CON_ADDKILLS in RedNukem code was performing RR-only checks even when playing Duke.
Original code looks like this:

case 88:
	insptr++;
	ps[g_p].actors_killed += *insptr;
	hittype[g_i].actorstayput = -1;
	insptr++;
	break;
2020-02-12 23:14:42 +01:00
Christoph Oelckers 1c24ae3fad - restrict cl_weaponswitch to 0 and 1 for Shadow Warrior. 2020-02-12 22:46:18 +01:00
nukeykt f2b98f9abc Rednukem: WW2GI weapon code fixes 2020-02-12 20:28:15 +01:00
nukeykt 88eacbcc1b Rednukem: fix ifvare instruction 2020-02-12 20:28:14 +01:00
Christoph Oelckers 9c9638a765 - save version bump.
# Conflicts:
#	source/common/version.h
2020-02-12 20:28:14 +01:00
Christoph Oelckers f3d953513b - make things compile again. 2020-02-12 20:27:43 +01:00
nukeykt b9e9b25cc6 Rednukem: fix WW2GI events 2020-02-12 20:27:43 +01:00
nukeykt d5e3be61c2 Rednukem: WW2GI fixes
# Conflicts:
#	source/rr/src/menus.cpp
2020-02-12 20:27:43 +01:00
nukeykt 365b7bfe79 Rednukem: implement WW2GI weapons
# Conflicts:
#	source/rr/src/actors.cpp
#	source/rr/src/gamevars.cpp
#	source/rr/src/sbar.cpp
2020-02-12 20:27:42 +01:00
nukeykt 972f2c4f0d Rednukem: WW2GI events
# Conflicts:
#	source/rr/src/events_defs.h
#	source/rr/src/game.cpp
#	source/rr/src/gameexec.h
2020-02-12 20:27:42 +01:00
nukeykt 47572cc01a Rednukem: Readd gamevars from eduke32 for WW2GI support
# Conflicts:
#	platform/Windows/rednukem.vcxproj
#	platform/Windows/rednukem.vcxproj.filters
#	source/rr/src/events_defs.h
#	source/rr/src/gamedef.h
#	source/rr/src/gamevars.cpp
#	source/rr/src/savegame.cpp
2020-02-12 20:27:42 +01:00
Christoph Oelckers 7909f29691 - allow starting Duke, NAM and WW2GI with the RedNukem-based game code for Redneck Rampage.
This mainly required some rework of the menu setup to be less explicit about the frontend's menu classes.
2020-02-12 20:25:59 +01:00
Christoph Oelckers 82939f2037 - do not reinitialize all actors in Blood when loading a savegame.
The call to actInit has been replaced with only performing the one necessary thing that needs to be done here - setting the enemy default difficulty.
2020-02-12 18:44:04 +01:00
Christoph Oelckers 1f7877823b - applied intro cutscene aspect ratio fix from NBlood. 2020-02-12 17:59:22 +01:00
Christoph Oelckers 4c682813e7 - more unused data removed 2020-02-12 01:00:47 +01:00
Christoph Oelckers 4d45117ca5 - removed pointless and non-functional null check
clipmapinfo is a static global variable, its address is never null.
2020-02-12 00:42:34 +01:00
Christoph Oelckers 9f9e59e3ba - fixed some warnings 2020-02-12 00:43:21 +01:00
Christoph Oelckers 9fdd1d9e17 - continued work on Blood save state
* save and restore the ambient sound state
* removed a few unused global variables
* removed unused code from choke.cpp
2020-02-12 00:43:13 +01:00
Christoph Oelckers fd384a5f47 - added an indexer for Blood's AI states.
These seem to be the only pointer variables that need to be written out to a savegame, but to restore them they need to be turned into indices before saving.
2020-02-12 00:22:11 +01:00
Christoph Oelckers 29e51a677f First round of Blood Savegame fix.
- const-ify most tables in actor.cpp for documentation purposes.
- gVectorData cannot be made const because one single field in there gets modified by code. :?
- save the global data in nnexts.cpp.
2020-02-11 23:15:25 +01:00
Christoph Oelckers 2f0a31508e - added Y/N to end game message. 2020-02-11 21:33:20 +01:00
Christoph Oelckers 1aa72cfbbd - fixed: The quicksave requester did not open the menu properly
This resulted in input not reaching it.
2020-02-11 21:25:21 +01:00
Christoph Oelckers 52e12702cf - fixed Linux paths not ending with a slash. 2020-02-11 21:00:01 +01:00
Christoph Oelckers 286d53d3bf - added the missing handling for the basepal tinting. 2020-02-11 20:55:47 +01:00
Christoph Oelckers f2043c4e3d - fixed palette in 3D Realms screen and first end-of-episode animation in Duke3D. 2020-02-11 19:29:05 +01:00
Christoph Oelckers a67c281290 - added StopFX function for Shadow Warrior.
Needed by an upstream change.
2020-02-11 19:28:25 +01:00
Christoph Oelckers 744bd67616 - removed redundant check. 2020-02-11 18:26:58 +01:00
terminx 9bd966c77e Macros for a couple hardcoded values
git-svn-id: https://svn.eduke32.com/eduke32@8641 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:24:50 +01:00
terminx a9e8666b07 This lets the player jump into the vents in DUKEDC3.MAP
Since this is Duke3D, I'm sure this change breaks something else.

git-svn-id: https://svn.eduke32.com/eduke32@8640 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:24:39 +01:00
terminx ff3ec2e66b Re-enable ignoring 256 units of curb when clipping against ceilings
This fixes getting stuck on tiny lips created by sloppy slopes in the undersized vents in DUKEDC3.MAP.

git-svn-id: https://svn.eduke32.com/eduke32@8639 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:24:05 +01:00
terminx 376c29dba6 Rename ZOFFSET1 to ACTOR_FLOOR_OFFSET and use ACTOR_MAXFALLINGZVEL in several places where it should have been used
git-svn-id: https://svn.eduke32.com/eduke32@8637 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/player.cpp
2020-02-11 18:23:49 +01:00
terminx 46b62aa6aa Fix for E1L1 dumpster fire issue
git-svn-id: https://svn.eduke32.com/eduke32@8636 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:23:14 +01:00
terminx 5a13be1f7b Avoid overflow in clipmove()
git-svn-id: https://svn.eduke32.com/eduke32@8633 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:22:41 +01:00
hendricks266 9269295102 SW: Don't restart the music when loading a save playing the same track
git-svn-id: https://svn.eduke32.com/eduke32@8627 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/sw/src/game.cpp
#	source/sw/src/save.cpp
2020-02-11 18:21:58 +01:00
hendricks266 5d475c2788 SW: Add handleevents to end credits
From JFSW commit 0c651743f8371fade0231e9c3206ca25e6ae5269

git-svn-id: https://svn.eduke32.com/eduke32@8626 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:21:00 +01:00
hendricks266 0b23c14b9d SW: Fix potential blank 3DR logo
From JFSW commit 18d1c68893693e68d0ce7d41bd1eacbec5655d4f

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

# Conflicts:
#	source/sw/src/game.cpp
2020-02-11 18:20:59 +01:00
hendricks266 8e0407a425 SW: Fix potential buffer overrun in colormap
From JFSW commit 18d1c68893693e68d0ce7d41bd1eacbec5655d4f

git-svn-id: https://svn.eduke32.com/eduke32@8624 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:20:22 +01:00
hendricks266 a2f507d044 CON: Add getarraysequence and setarraysequence
Patch from Fox.

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

# Conflicts:
#	source/duke3d/src/game.h
2020-02-11 18:20:04 +01:00
hendricks266 8adb6be002 CON: Factor out implementations of setarray and resizearray commands
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@8622 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-11 18:19:12 +01:00
CommonLoon102 8d7d8cc930 Blood: Clear keys on new level, fixes #308
# Conflicts:
#	source/blood/src/player.h
2020-02-11 18:17:22 +01:00
Christoph Oelckers 37f3bb37d4 - re-added menu opening sound for Duke and RR. 2020-02-11 18:13:15 +01:00
Christoph Oelckers f0039afa5e - fixed: INI sections for game vars were never created. 2020-02-11 00:22:56 +01:00
Christoph Oelckers 41f2c62ed1 - use the original Build engine compatibility for Shadow Warrior.
The 'modern' code causes problems with the tank in the fourth map and probably elsewhere, too.
2020-02-10 22:38:17 +01:00
Christoph Oelckers e2457d104b - fixed: Voxels did not explicitly set their palette and took the last one set. 2020-02-10 22:05:53 +01:00
Christoph Oelckers 39a9e3cd8b - removed double detection of DN3D addons. 2020-02-10 20:38:38 +01:00
Christoph Oelckers a32bc350f1 - allow all keys to open the menu in Blood's demo loop. 2020-02-10 20:35:21 +01:00
alexey.lysiuk 744e4161f7 - removed message about vintage build 2020-02-10 15:10:45 +02:00
alexey.lysiuk 508b019447 - removed useless call in SDL backend
Its result wasn't used, and it may invoke function of DDummyFrameBuffer during initial sound precaching
2020-02-10 15:09:59 +02:00
Christoph Oelckers 8374b9e1b4 - fixed: The menu code should not reset the global input state when trying to close a menu with none open. 2020-02-09 22:57:04 +01:00
Christoph Oelckers e3f8fca36e - fixed two crash bugs I found while testing some mods. 2020-02-09 22:32:13 +01:00
Christoph Oelckers 4e58265d21 - disabled parts of EDuke commit 7829 because its side effects are worse than what it tries to fix.
In particular this causes backwards sliding against walls.
2020-02-09 22:18:36 +01:00
Christoph Oelckers c53d9cfc3a - reworked voxel texture generation to use the backend's palette manager.
The original code was not able to handle changing palettes and only worked if each palette change resulted in a full texture flush - which Raze does not perform.
2020-02-09 20:14:26 +01:00
Christoph Oelckers 6257994198 - fixed validation of hud_custom CVAR. 2020-02-09 18:42:14 +01:00
Christoph Oelckers b87ee10a0a - added missing string length check. 2020-02-09 18:37:24 +01:00
NoOneBlood fa057282df - Fix kModernTargetChanger wrong dudeInfo 2020-02-09 16:16:02 +01:00
Christoph Oelckers 7f58e8b6ca 0.4.1 2020-02-09 16:14:36 +01:00
Christoph Oelckers 91b9ce54e4 - use a dedicated flag for defined hightile tints so that the shader can use them. 2020-02-09 15:53:08 +01:00
Christoph Oelckers a5fc374b59 - always recalculate the projection matrix.
Trying to cache this is not useful, it barely saves time and was causing display errors.

# Conflicts:
#	source/build/src/polymost.cpp
2020-02-09 15:53:07 +01:00
alexey.lysiuk 30204d6072 - made ZMusic library required for non-MSVC targets 2020-02-09 16:48:07 +02:00
Christoph Oelckers 6231cec7c1 - sound backend update. 2020-02-09 13:26:51 +01:00
Christoph Oelckers 9310c25a7b - -addon 0 seems to be a valid parameter... 2020-02-09 09:48:55 +01:00
Christoph Oelckers 598ce8a2ef - increased amount of vertices to allow handling voxel packs.
This is merely a stopgap until the code can be properly refactored.
2020-02-09 08:32:40 +01:00
Christoph Oelckers 1054356cef - fixed CD music playback in SW on maps with no MIDI defined. 2020-02-08 21:37:32 +01:00
alexey.lysiuk 67b5cd2cb3 - disabled progress bar on Cocoa start window 2020-02-08 16:56:52 +02:00
NoOneBlood 5d6ac932d3 Removed IsItemSprite, IsWeaponSprite, IsAmmoSprite function duplicates 2020-02-08 12:01:24 +01:00
Christoph Oelckers 681155de65 - fixed GOG path lookup.
I was unable to verify the Steam paths so they may or may not work.
2020-02-07 22:23:33 +01:00
NoOneBlood e79a693313 Refactor of NOONE_EXTESNIONS:
All functions and definitions was moved to nnexts.h and nnexts.cpp files
to minimize ifdefs and generally make code more clear

# Conflicts:
#	GNUmakefile
#	platform/Windows/nblood.vcxproj
#	platform/Windows/nblood.vcxproj.filters
#	platform/Windows/props/build_common.props
#	source/blood/src/actor.cpp
#	source/blood/src/ai.h
#	source/blood/src/aiunicult.cpp
#	source/blood/src/blood.cpp
#	source/blood/src/db.cpp
#	source/blood/src/eventq.cpp
#	source/blood/src/gameutil.cpp
#	source/blood/src/gameutil.h
#	source/blood/src/loadsave.cpp
#	source/blood/src/player.cpp
#	source/blood/src/player.h
#	source/blood/src/triggers.h
#	source/blood/src/view.cpp
2020-02-07 22:23:33 +01:00
alexey.lysiuk 8ee516086b - added default soundfont
Using SC-55 Presets from https://www.vogons.org/viewtopic.php?f=9&t=45600

https://forum.zdoom.org/viewtopic.php?t=67284
2020-02-07 22:36:37 +02:00
terminx b214a67853 Minor clipping fix
git-svn-id: https://svn.eduke32.com/eduke32@8608 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-07 18:55:56 +01:00
terminx ba7de01d7f This should be ifndef NETCODE_DISABLE
git-svn-id: https://svn.eduke32.com/eduke32@8604 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-07 18:55:56 +01:00
alexey.lysiuk c54f813ea9 - fixed shifting of the current item in save/load menus
Virtual <New save game> item wasn't taken into account
2020-02-07 08:06:09 +01:00
nukeykt 438fa1b267 Blood: prevent player struct OOB issues
# Conflicts:
#	source/blood/src/view.cpp
2020-02-06 18:48:23 +01:00
nukeykt 389ac695de oops #2 2020-02-06 18:48:02 +01:00
nukeykt 8d99df7dec oops
# Conflicts:
#	source/blood/src/demo.cpp
2020-02-06 18:48:02 +01:00
nukeykt 9cc4d9f432 Blood: workaround dudeInfo OOB issue
# Conflicts:
#	source/blood/src/actor.cpp
#	source/blood/src/demo.cpp
#	source/blood/src/dude.cpp
#	source/blood/src/dude.h
2020-02-06 18:47:26 +01:00
Christoph Oelckers 215cb14401 - use a non-0 depth bias for sprites.
Hopefully this helps fixing the z-fighting issue with wall sprites in some Blood maps.
2020-02-06 18:44:06 +01:00
alexey.lysiuk 1479e1feae - unified demo path handling for all platforms
The current game subdirectory is now created on all platforms
2020-02-06 12:04:51 +01:00
alexey.lysiuk 787211c9dc - unified saved games path handling for all platforms
The current game subdirectory is now created on all platforms
Added support for -savedir command line switch for all platforms
Removed save_dir CVAR in favor of cl_savedir which was available on Windows only
Made cl_savedir CVAR global instead of different value per each game
2020-02-06 12:04:51 +01:00
Christoph Oelckers 67a2952ead - fixed RR's music. 2020-02-05 22:03:42 +01:00
Christoph Oelckers 803e57c3b3 - fixed: Reverb must be fully disabled when starting the SW intermission. 2020-02-05 20:25:18 +01:00
Christoph Oelckers dbc958baeb - fixed swapped color channels in the tinting part of the shader. 2020-02-05 20:02:50 +01:00
Christoph Oelckers f6d9b5602b - fixed hud_scale. 2020-02-05 19:06:36 +01:00
Christoph Oelckers d7e54f83de - fixed ShadowWarrior's 'map' CCMD. 2020-02-05 18:55:10 +01:00
Christoph Oelckers 4b0db4893a - fixed a few changes constants. 2020-02-05 18:49:47 +01:00
sirlemonhead 5f2009eea5 PCExhumed: Remove function declaration for ServeSample in movie.cpp 2020-02-05 18:00:41 +01:00
sirlemonhead efaefff3d0 PCExhumed: Misc code tidying. Changed cases in runlist_ProcessSectorTag() to match editor tag numbers,
consolidated duplicate code in runlist_ProcessWallTag(), renamed ActiveSound struct vars etc.

# Conflicts:
#	source/exhumed/src/cd.cpp
#	source/exhumed/src/exhumed.cpp
#	source/exhumed/src/fish.cpp
#	source/exhumed/src/grenade.cpp
#	source/exhumed/src/mummy.cpp
#	source/exhumed/src/sound.cpp
2020-02-05 18:00:40 +01:00
Christoph Oelckers 03a300988e - version bump and new bug forum URL 2020-02-04 21:11:17 +01:00
Christoph Oelckers 1d468190a6 - fixed: parent-less confirmation screens did not process any input. 2020-02-04 21:02:22 +01:00
Christoph Oelckers 5d4514060b - disable palette emulation for Blood's cutscenes.
These use color 255 as a valid index which the palette emulation shader does not handle.
2020-02-04 20:40:10 +01:00
Christoph Oelckers 1126d5e3d4 - fixed return value of Mus_play
This wasn't always returning false if playback failed.
2020-02-04 20:32:51 +01:00
Christoph Oelckers 7bbbe63bd9 - fixed: hictint must not be enabled if the flags are 0. 2020-02-04 20:19:26 +01:00
Rachael Alexanderson 37443f2365 - fix compile on 32-bit 2020-02-04 18:51:15 +01:00
alexey.lysiuk 14ef8e873e - fixed compilation NO_OPENAL option enabled 2020-02-04 16:16:49 +02:00
Christoph Oelckers 5d8f008140 - added 0 length check to StripExtension. 2020-02-03 22:12:36 +01:00
Christoph Oelckers a90185bea9 - cleaned up the remaining dependencies on windows.h
This file now only gets included by code that really needs it.
2020-02-03 21:30:57 +01:00
Christoph Oelckers 95c906e21a - removed the ENet dependency from gamecontrol.cpp as well.
The global init/shutdown code has been moved to the enet.cpp stub so that now only the networking files which need access include enet.h
2020-02-03 21:14:35 +01:00
Christoph Oelckers 4350a4dd31 - netcode cleanup.
This moves all parts in the Duke/Redneck modules that access ENet into net.cpp/network.cpp and changes global ENet structs to use C++ notation instead of typedefs so that anonymous definitions for them can be added where needed.
These changes are done to avoid including enet.h globally which is a major issue because this file does not work without including windows.h, making it extremely dirty.
2020-02-03 21:06:03 +01:00
CommonLoon102 0d8f901e2d Blood: proper use of the NOONE_EXTENSIONS preprocessor definition
# Conflicts:
#	Common.mak
#	platform/Windows/nblood.vcxproj
2020-02-03 19:14:06 +01:00
CommonLoon102 081bbe6532 fix cerberus spinning not just if NOONE_EXTENSIONS is enabled 2020-02-03 19:13:42 +01:00
CommonLoon102 256bc3ec08 take maphacks into consideration
# Conflicts:
#	source/build/src/polymost.cpp
2020-02-03 19:13:42 +01:00
Christoph Oelckers 78ff1f0536 - removed Bfree.
It was only used in two places in the header, no need to keep it around.
2020-02-03 19:12:36 +01:00
nukeykt 03b1f65a52 Polymost: fix sprite rendering issues
# Conflicts:
#	source/build/src/engine.cpp
#	source/build/src/polymost.cpp
2020-02-03 19:08:51 +01:00
alexey.lysiuk cdeaa5b3d5 - suppressed omnipresent GCC warning
source/build/include/compat.h:1043:21: warning: self-comparison always evaluates to true [-Wtautological-compare]
2020-02-03 10:48:15 +02:00
hendricks266 060d19ae35 SW: Clamp tsprz of blood pool floor decals
git-svn-id: https://svn.eduke32.com/eduke32@8598 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/sw/src/names2.h
2020-02-02 20:50:39 +01:00
hendricks266 364b41bd55 SW: Clamp tsprz of Bouncing Betty mines to their floorz if beneath the floor
This fixes their invisibility in Polymost.

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

# Conflicts:
#	source/sw/src/draw.cpp
2020-02-02 20:49:54 +01:00
Christoph Oelckers df36f27b32 - added a few missing voxel checks. 2020-02-02 20:48:40 +01:00
Christoph Oelckers ca21852945 - hook up -nologo. 2020-02-02 20:44:57 +01:00
hendricks266 5fdd69cbbb SW: Add Redux's workaround for glitchy fist HUD sprites in widescreen
git-svn-id: https://svn.eduke32.com/eduke32@8589 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-02 20:37:21 +01:00
hendricks266 9f2cb8ea0d renderMakeTSpriteFromSprite: Copy extra, since SW uses it
SW: This fixes enemies glowing under nightvision.

git-svn-id: https://svn.eduke32.com/eduke32@8587 1a8010ca-5511-0410-912e-c29ae57300e0
2020-02-02 20:36:14 +01:00
hendricks266 3e023684f4 Fix -Wsign-compare warnings in anim.cpp
git-svn-id: https://svn.eduke32.com/eduke32@8584 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/anim.cpp
2020-02-02 20:35:43 +01:00
Christoph Oelckers 5b83e51ab5 - reverb testing code
- toned down the default reverb.
2020-02-02 20:29:43 +01:00
Christoph Oelckers 8412602621 - added more EDuke credits. 2020-02-02 20:29:43 +01:00
alexey.lysiuk 01050be226 - added save_dir CVAR to customize saved games path 2020-02-02 17:06:13 +02:00
alexey.lysiuk b70796db4c - fixed drawing of a single character
This fixes missing console prompt and cursor
2020-02-02 15:00:51 +02:00
alexey.lysiuk d0c58b8e64 - fixed: weapon names were printed instead of ammo in Shadow Warrior 2020-02-02 14:37:07 +02:00
Christoph Oelckers 3a522091b9 - detect the add ons in the Megaton edition. 2020-02-02 13:33:07 +01:00
Christoph Oelckers 1bb1f2ae98 - fixed the crash reporter on Windows. 2020-02-02 13:33:07 +01:00
alexey.lysiuk a890079906 - added Steam path to Shadow Warrior Redux add-ons
Twin Dragon and Wanton Destruction are in the game selection list now
2020-02-02 13:57:45 +02:00
alexey.lysiuk 1edb5fe8ae - moved showing of start window banner to proper location in Cocoa backend
Banner with the current game's name is not used yet but was displayed without any text
2020-02-02 13:55:59 +02:00
Christoph Oelckers c9d7f21bf1 - fixed the config loader to read long line without messing up the data. 2020-02-02 11:49:36 +01:00
Christoph Oelckers 4d7a43004c - use the new SW interpolation function for all games. 2020-02-02 10:27:47 +01:00
Christoph Oelckers f76d139207 - fixed SW's interpolation math. 2020-02-02 09:51:44 +01:00
Christoph Oelckers a594ba32d4 - added assignment to an unused scratch variable to the InitActor*Noise functions.
They are used a state identifiers but identical content-wise so MSVC's linker would merge them all together into one if some code wasn't added to make them different.
A global check for the scratch variable was added in a harmless place to ensure that whole program optimization algorithms won't optimize it out anyway after discovering that the variable is never used.
2020-02-02 08:53:28 +01:00
Christoph Oelckers c34d9da783 - properly define the BasePalette wrapper. 2020-02-02 07:58:05 +01:00
Christoph Oelckers ae9ad6612c - fixed: Exhumed did not pause when the console was open. 2020-02-02 00:10:18 +01:00
Christoph Oelckers 0e1eeea037 - use the game palette directly for palette lookups.
The setup here is far too messy for having a copy in a better format - it can be changed in some non-obvious places.
2020-02-01 23:05:43 +01:00
Christoph Oelckers 5d55f768e0 - added autodetection for Cryptic Passage and Route 66 add-ons in their originally (messed up) form.
Cryptic Passage will also be detected in a Fresh Supply installation now.
2020-02-01 21:12:09 +01:00
alexey.lysiuk 0c2faae48b - fixed invalid context warnings with Cocoa backend
A bunch of 'CGContext<...>: invalid context 0x0' messages were printed to console during OpenGL view creation and resizing
2020-02-01 17:11:56 +02:00
alexey.lysiuk 55cfecbe2c - extended list of paths to Steam games 2020-02-01 17:09:13 +02:00
alexey.lysiuk 2dafa4555d - fixed accessing Steam games on Linux and macOS
Special $STEAM "environment variable" should not be expanded
2020-02-01 13:17:02 +01:00
Christoph Oelckers 1cce5d8de2 - fixed RR was still generating input events when the game was paused. 2020-02-01 13:07:58 +01:00
Christoph Oelckers 77ad7dfb81 - fixed incomplete savegame restoration from inside the game.
This now quits the game loop instead of trying to set up the loaded level from inside it.
2020-02-01 10:50:40 +01:00
Christoph Oelckers ab3811bac0 - fixed: The 2D drawer must apply the render state before it finishes.
Otherwise the global state settings will not be reset.
2020-01-31 22:07:51 +01:00
Christoph Oelckers 4ea61f37fb - 0.3.3 2020-01-30 22:15:44 +01:00
Christoph Oelckers eac1007c56 - automap color fix. 2020-01-30 22:05:18 +01:00
Christoph Oelckers 08a5c5ff4d - added support for loading eduke.con for DN3D mods.
This is EDuke32's standard so it needs to be handled for mods using this name.
2020-01-30 20:53:39 +01:00
Christoph Oelckers 4bf519dcb0 - fixed copy/pasted broken 'map' CCMD. 2020-01-30 20:25:52 +01:00
Christoph Oelckers 2334787f1b - reenabled the depth test for Polymost.
This was for debugging but accidentally left in.
2020-01-30 20:13:48 +01:00
Christoph Oelckers cec7b006ca Merge branch 'master' of https://github.com/coelckers/Raze 2020-01-29 22:06:48 +01:00
Christoph Oelckers 4aaf6c4cf6 - check for angular overflow in pitch calculations. 2020-01-29 21:52:17 +01:00
Christoph Oelckers a0fa0560d4 - removed in_mousedeadzone CVAR. 2020-01-29 21:51:57 +01:00
Christoph Oelckers 68dc8d1812 - remove in_mousedeadzone, mirroring EDuke's removal of this. 2020-01-29 21:06:47 +01:00
terminx 8aee2f9489 Calculate game loop timing using fractional ticks
git-svn-id: https://svn.eduke32.com/eduke32@8572 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:36:55 +01:00
terminx af816fdf00 This fixes things like shrunk player behavior at the expense of the return of issues like the player automatically stepping up onto sprite architecture.
git-svn-id: https://svn.eduke32.com/eduke32@8568 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:35:34 +01:00
terminx 102c7a6293 Remove useless G_MoveLoop() function
git-svn-id: https://svn.eduke32.com/eduke32@8563 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/game.cpp
2020-01-29 19:22:40 +01:00
terminx 541c71902b ClockTicks maintenance
git-svn-id: https://svn.eduke32.com/eduke32@8562 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:21:39 +01:00
terminx 0fcdf3c1af Rename G_CheckPlayerInSector() to G_GetPlayerInSector()
git-svn-id: https://svn.eduke32.com/eduke32@8560 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:20:45 +01:00
terminx 8543f476d7 Ion Fury compatibility improvements
git-svn-id: https://svn.eduke32.com/eduke32@8559 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/game.cpp
2020-01-29 19:20:35 +01:00
terminx eee0509856 Fix issue where radius damage wasn't able to hit/damage sectors, walls, and sprites it should have been able to
git-svn-id: https://svn.eduke32.com/eduke32@8558 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:18:26 +01:00
terminx 6836faee07 Disable EDUKE32_PREDICT_TRUE and EDUKE32_PREDICT_FALSE for now
git-svn-id: https://svn.eduke32.com/eduke32@8553 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:15:25 +01:00
terminx aebc2632f3 Bail out of A_MoveSpriteClipdist() early if passed no velocity
git-svn-id: https://svn.eduke32.com/eduke32@8546 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:11:15 +01:00
terminx 470e9afe22 Macro safety
git-svn-id: https://svn.eduke32.com/eduke32@8545 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:11:02 +01:00
terminx d0640618fd Don't push sprites away from other clip objects when their clip areas overlap if the velocity passed to clipmove() is 0
This workaround should fix issues with stationary sprites moving around at map load when their clip area is overlapping solid walls.

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

# Conflicts:
#	source/build/src/clip.cpp
2020-01-29 19:10:26 +01:00
terminx 5bd62f666e Add "maxhealth" console command to set the player's maximum health
git-svn-id: https://svn.eduke32.com/eduke32@8542 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:10:09 +01:00
terminx 92a6178429 Fix forward movement with the mouse when mouse aiming is disabled
This was missed back when input between the x and y axes was normalized to use the same scale.

git-svn-id: https://svn.eduke32.com/eduke32@8541 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:09:48 +01:00
terminx e4add4956b Factor conditions for locking player movement out into new P_CheckLockedMovement() function
git-svn-id: https://svn.eduke32.com/eduke32@8539 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-29 19:09:33 +01:00
terminx 9e86e83da8 Use ClockTicks class for the timer values saved and restored when creating a savegame
git-svn-id: https://svn.eduke32.com/eduke32@8537 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/duke3d/src/savegame.cpp
2020-01-29 19:09:17 +01:00
Christoph Oelckers a32da009bd - moved V_Init2 in SW a little further up so that the cache calls are being made with an initialized renderer. 2020-01-29 19:06:26 +01:00
alexey.lysiuk 9dd3213393 - fixed path traversal on POSIX platforms 2020-01-29 11:41:23 +02:00
alexey.lysiuk 93fb98413e - fixed compilation with GCC and Clang
There were lots of errors ‘...’ was declared ‘extern’ and later ‘static’ [-fpermissive]
2020-01-29 10:20:17 +02:00
Magnus Norddahl 305e6fa617 Move a few more vars to engine.cpp 2020-01-28 22:54:57 +01:00
Magnus Norddahl 113c0d8b34 Move engine variables not managed by polymost.cpp to engine.cpp 2020-01-28 22:41:07 +01:00
Magnus Norddahl ba23ebdc0f Set functions and variables that can be static to be static 2020-01-28 22:21:53 +01:00
Christoph Oelckers 9b88d41169 - fixed compile errors. 2020-01-28 21:44:39 +01:00
Christoph Oelckers e119dc841b - fixed setup of hires textures.
File check was accidentally inverted.
2020-01-28 21:36:30 +01:00
Christoph Oelckers 08ec38ce75 - fixed some missing menu texts. 2020-01-28 21:36:30 +01:00
Christoph Oelckers 1f5f7c63fe - rewrite of tileCopySection 2020-01-28 12:42:17 +01:00
Christoph Oelckers 8657ecb35d - implemented 'map' CCMD for all games. 2020-01-28 11:20:30 +01:00
Christoph Oelckers 809b687969 - removed the Build color matching code
For the handful of lookups it got used for the needed data is too large and the lookup not precise enough. ZDoom's BestColor yields better results, does not need any tables and for the small amount of lookups being performed is more than adequate.
2020-01-28 10:31:59 +01:00
alexey.lysiuk c0bd8f80e7 - configured use of libvpx for all platforms
MSVC uses libvpx stored in the repository if lookup for external headers and libraries failed
2020-01-28 11:04:48 +02:00
alexey.lysiuk d56fb25975 - fixed compilation of POSIX targets
source/common/music/music.cpp:118:52: error: call of overloaded ‘FString(FName&)’ is ambiguous
    source/common/utility/zstring.h:133:2: note: candidate: FString::FString(char)
    source/common/utility/zstring.h:131:2: note: candidate: FString::FString(const char*)
2020-01-28 11:00:25 +02:00
Rachael Alexanderson 212cfde186 - add levelwarp cheat to Redneck and Duke 2020-01-27 22:29:47 -05:00
Rachael Alexanderson 999986e6cd - replace Linux xpm icon, even though it doesn't seem like it's ever being used 2020-01-27 21:31:08 -05:00
Christoph Oelckers 6f396ae368 0.3.2 2020-01-28 00:05:10 +01:00
Christoph Oelckers 9ca1e56713 - added extended sound lookup as well plus menu options. 2020-01-27 22:29:45 +01:00
Christoph Oelckers 67a0954c32 - fixed option menu positioning. 2020-01-27 22:29:00 +01:00
Christoph Oelckers ab5bc0e435 - more reworking of music lookup.
extended lookup now also supports looking for substitutions inside the file system.
2020-01-27 21:39:15 +01:00
Christoph Oelckers 5de7fbca37 - consolidation of music lookup code for user maps. 2020-01-27 20:53:41 +01:00
alexey.lysiuk 5510df77be - streamlined CMake configuration of game libraries
https://forum.zdoom.org/viewtopic.php?t=67121
2020-01-27 18:11:35 +01:00
Rachael Alexanderson 1c8c2543cb - fixed: Shadow Warrior: End sequence was still 'hung' 2020-01-27 11:11:21 -05:00
Rachael Alexanderson a2b7aa18d1 - fixed - menudef was not detecting properly the presence of OpenAL 2020-01-26 18:42:52 -05:00
Christoph Oelckers 6f3bbcba46 - fixed the demo setup for Blood.
This failed to read the demos in the game directory.
For those who find demos annoying there's now a demo_playloop CVAR.
Currently this is only active in Blood because the other games have demos disabled because they are non-functional.
2020-01-26 22:22:41 +01:00
Christoph Oelckers d73f0c7b8f - fixed the merge 2020-01-26 21:01:22 +01:00
Christoph Oelckers 1ba5eaa281 - reactivate the #ifdef'd stuff in the project 2020-01-26 20:28:34 +01:00
NoOneBlood 0693b0efc8 - Added ifdefs for NOONE_EXTENSIONS that provides modern features for mappers
and changes that was required to minimize their amount in code.

# Conflicts:
#	source/blood/src/actor.cpp
#	source/blood/src/ai.h
#	source/blood/src/aiunicult.cpp
#	source/blood/src/aiunicult.h
#	source/blood/src/db.cpp
#	source/blood/src/db.h
#	source/blood/src/dude.h
#	source/blood/src/gameutil.cpp
#	source/blood/src/loadsave.cpp
#	source/blood/src/player.h
#	source/blood/src/sfx.cpp
#	source/blood/src/triggers.h
#	source/blood/src/view.cpp
#	source/blood/src/weapon.cpp
2020-01-26 20:27:21 +01:00
nukeykt 5db1f95b29 Prevent OOB issues in old pushmove 2020-01-26 18:17:25 +01:00
nukeykt dc9b37c847 More faithful old pushmove implementation
this fixes Daedalus's e3m1 demo
2020-01-26 18:10:03 +01:00
alexey.lysiuk 2f4078d99e - fixed rendering on macOS
This restores support for OpenGL implementations without persistent mapped buffers, and helps with strict core profile GLSL compilers
2020-01-26 17:03:02 +01:00
alexey.lysiuk 687573d4c5 - fixed crash during initialization in Cocoa backend 2020-01-26 16:41:52 +02:00
alexey.lysiuk 3b71e8090f - added POSIX source files to generated projects 2020-01-26 16:40:43 +02:00
alexey.lysiuk e7b013e201 - setup icon for macOS application bundle 2020-01-26 16:39:10 +02:00
alexey.lysiuk 52916e5f55 - disabled mandatory code signing by Xcode 2020-01-26 16:38:13 +02:00
Christoph Oelckers 43f48a10dd - partial fix for the broken sky in E3M2 of Blood. 2020-01-26 13:45:33 +01:00
Christoph Oelckers 4c6265e246 - fixed movie palette in Blood. 2020-01-26 12:10:23 +01:00
Christoph Oelckers 00da92377a - clear the screen before drawing a scene. Thanks to ability to layer scenes with scripting it is not possible to render solid geometry fully opaque. 2020-01-26 11:54:50 +01:00
Christoph Oelckers cb652ad147 - use Pal_2D for Duke's title screen.
This has transparent overlays so it must not disable translucency.
2020-01-26 11:47:40 +01:00
Christoph Oelckers 3be4364d6e - fixed file checks for Blood cutscenes.
The stripped drive-less name wasn't passed to the calling code.
2020-01-26 11:42:02 +01:00
Christoph Oelckers 245aa5d3bc - reworked global palette state for robustness. 2020-01-26 10:58:00 +01:00
Christoph Oelckers 51d5236216 - made Blood's 'map' CCMD more useful by properly handling internal maps the same as 'levelwarp'. 2020-01-25 20:21:49 +01:00
Christoph Oelckers be0242e919 - use correct indices for the palette tester CVARs. 2020-01-25 19:10:05 +01:00
Christoph Oelckers 99c4b6b6d7 - don't let environmental palettes (like underwater) affect the HUD and menu. 2020-01-25 18:48:48 +01:00
Rachael Alexanderson 3d84384678 - Blood: add levelwarp 'e' 'm' cheat 2020-01-25 11:10:16 -05:00
Christoph Oelckers 8f41964f56 - fixed handling of statistics data.
Blood had the logic wrong and it wasn't saved in savegames.
2020-01-25 16:47:48 +01:00
Rachael Alexanderson 7765fa45cd - Blood: add 'activatecheat' ccmd to pass a raw string to the cheat checker 2020-01-25 10:36:18 -05:00
Christoph Oelckers c0b18d0356 - fixed weapon projection being broken after saving in Blood.
A classic case of having a function which performs too many different tasks.
2020-01-25 15:27:46 +01:00
Christoph Oelckers e8231f904f - I have no idea why a fov of exactly 90° does not work.
Changing this by one in either direction makes the problem go away.
2020-01-25 11:56:13 +01:00
Christoph Oelckers f8a807e3bb - cleaned out a tiny bit of the garbage that has accumulated in compat.h.
This file really needs to go away, we do not need this kind of "compatibility".
2020-01-25 10:56:30 +01:00
Christoph Oelckers fd1e63b996 - allow skipping in the end of game sequence. 2020-01-24 21:41:47 +01:00
sirlemonhead ccfefaa9be PCExhumed: Fixed player view not centring when the Ramses Head appears. 2020-01-24 19:51:42 +01:00
sirlemonhead d044b2a605 PCExhumed: Fix inconsistent HUD health and magic animation speed. 2020-01-24 19:51:42 +01:00
Christoph Oelckers 08e69b1d2e - fixed missing messages in Shadow Warrior. 2020-01-24 19:51:06 +01:00
Rachael Alexanderson a431d6e190 - fix compile on Clang 9 2020-01-23 13:36:30 -05:00
Christoph Oelckers 0cb5658d41 Merge branch 'master' of https://github.com/coelckers/Raze 2020-01-23 19:14:21 +01:00
Christoph Oelckers bcc254e0ba - enabled '+' command line args to execute CCMDs on startup. 2020-01-23 19:14:10 +01:00
Rachael Alexanderson 69ebd9a95d - update shadow warrior's PutStringInfo to put newlines in the console automatically (it was this, or update every use of PutStringInfo to have them) 2020-01-23 13:05:09 -05:00
Christoph Oelckers aebea2eb92 - added special SW handling for music lookup plus optional debug output where music is picked from. 2020-01-23 19:01:51 +01:00
Rachael Alexanderson 52897c0cbb - complete the "give" commands for Shadow Warrior
- add a "levelwarp" cheat for Shadow Warrior
2020-01-23 12:56:19 -05:00
Christoph Oelckers 7a5efde1c9 - I think a version bump may be in order. 2020-01-23 18:20:53 +01:00
nukeykt 7c1f9d971a Blood: fix spin 180 functionality 2020-01-23 18:18:45 +01:00
Rachael Alexanderson ae001b6cda - oops, missing files 2020-01-23 07:13:20 -05:00
Rachael Alexanderson 929fc880ee - make "activatecheat" pass a raw string to shadow warrior's cheat processor
- added a nullptr check
2020-01-23 07:12:12 -05:00
Rachael Alexanderson 0f3b3300fb - not yet finished: this enables some console cheats in Blood and Shadow Warrior 2020-01-23 05:50:12 -05:00
Christoph Oelckers b98019a4ba - added some debug asserts to the savegame symbol code so that it always breaks into the debugger in case of a symbol error. 2020-01-22 22:57:28 +01:00
Christoph Oelckers 6958e0326d - Shadow Warrior fixes
* added missing entries to saveables.
* added several null pointer checks to places where the game crashed.
2020-01-22 22:49:51 +01:00
Christoph Oelckers 90ce4a893d - fixed: the current shade was applied twice for voxels - once as a shade and once as a light level. 2020-01-22 21:34:18 +01:00
Christoph Oelckers bbc145cbee - enabled the Blood RFS parser.
Seems to work but there's not that much material to use it on so the mileage may vary.
2020-01-22 21:09:45 +01:00
Christoph Oelckers 3ed7856f53 - fixed sound volume issues in Blood. 2020-01-22 16:34:58 +01:00
Christoph Oelckers a7b020d1a8 - implemented proper screen size scaling for Exhumed. 2020-01-22 16:14:01 +01:00
Christoph Oelckers dcbb936a9b - fixed hud_scale for Shadow Warrior. 2020-01-22 15:21:07 +01:00
Christoph Oelckers 09106b3159 - fixed the HUD size slider for Blood. 2020-01-22 13:53:26 +01:00
Christoph Oelckers 6a06f6aef4 - fixed typo in string label. 2020-01-22 13:41:55 +01:00
Madame Rachelle 47ba169150 - oops, I misplaced an endif in the Linux code 2020-01-22 05:54:59 -05:00
pogokeen dbc8e63b8b game.h: fix calc_smoothratio_demo() to take into account differences between timerGetClockRate() and TICRATE when calculating the refresh frequency to interpolate between
git-svn-id: https://svn.eduke32.com/eduke32@8534 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-21 23:57:44 +01:00
Christoph Oelckers 9c423ae6a3 - take down the level outside the LoadGame function in ShadowWarrior.
With the new savegame system it was done too late which could cause crashes.
2020-01-21 23:36:54 +01:00
Christoph Oelckers 12d4f12da5 - removed the 'experimental' switch for Exhumed.
The game works better than Shadow Warrior so this seems pointless.
2020-01-21 22:08:05 +01:00
Christoph Oelckers 27cc865af7 - null checks in SW. 2020-01-21 22:03:04 +01:00
Christoph Oelckers 493525a58e - consolidation of engine save code.
This had discrepancies between the game modules so now all use the same code to save the common engine state.
2020-01-21 21:51:05 +01:00
Christoph Oelckers acf7f29dbd - moved Exhumed's engine state save code into the common part.
This needs to be save for all games and the discrepancies have already caused problems so engine state saving needs to be unified.
2020-01-21 19:22:38 +01:00
Christoph Oelckers cacbd7d8b6 - reset YAX data before loading a game.
This could cause random lockups when loading a savegame for a game not maintaining the feature. The entire engine state really needs to be handled globally instead of repeating this core 5 times...
2020-01-21 19:14:53 +01:00
Rachael Alexanderson a637ec60c4 - finally - we have a compile on linux! 2020-01-20 05:46:18 -05:00
Rachael Alexanderson bab394b061 Merge remote-tracking branch 'origin/master' into fix-linux-compile 2020-01-20 04:40:28 -05:00
Rachael Alexanderson f28d05753d - almost got it all compiled on linux 2020-01-20 04:09:44 -05:00
Rachael Alexanderson d9563dae73 Merge remote-tracking branch 'origin/master' into fix-linux-compile 2020-01-20 03:00:16 -05:00
Christoph Oelckers e555d15cc7 renamed the swap function in pragmas.h
This conflicts with std::swap on some setups.
2020-01-20 01:32:39 +01:00
Christoph Oelckers ef3ade08d3 - silence debug diagnostics for non-test builds 2020-01-20 00:42:40 +01:00
Christoph Oelckers d7d5da93f6 - properly set up info.plist for macOS 2020-01-20 00:24:25 +01:00
BSzili bd1523ef2d Rednukem: fix building with NETCODE_DISABLE
# Conflicts:
#	source/rr/src/game.cpp
#	source/rr/src/net.h
2020-01-19 23:54:04 +01:00
Christoph Oelckers 6f39b87d5b - actually draw the fullscreen blends. 2020-01-19 23:49:53 +01:00
Christoph Oelckers b066f725d4 - clear the matrix list after rendering the 2D content. 2020-01-19 23:27:59 +01:00
Christoph Oelckers aa1361acbb - make palfadedelta explicitly unsigned 2020-01-19 23:18:38 +01:00
Christoph Oelckers c8fa2443d3 - completely separated view and model matrix.
This way the view matrix will remain constant per scene and an update of the model matrix is only needed for rendering a model or voxel, reducing the total amount of generated matrices to the point where they can be written to a buffer instead of constantly uploading them as uniforms.
2020-01-19 16:07:09 +01:00
Christoph Oelckers b209b1f960 - make sure that the first matrix is always the identity matrix. It was just random luck that it was always put there before.
- let the matrix setters return the previous value for easy restoring without creating yet another matrix.
2020-01-19 14:08:48 +01:00
Christoph Oelckers 7a5f60e14d - removed gl_projectionhacks and the SOFTROTMAT code path.
Both were hard coded not to be used.
2020-01-19 13:57:24 +01:00
Christoph Oelckers c4429cf15d - fixed voxel rendering. 2020-01-19 13:50:31 +01:00
Christoph Oelckers 352c099b5a - basics for hardware rendered camera textures. 2020-01-19 08:40:03 +01:00
Jonathan Gray c7ffed4867 Blood: change fallthrough annotations to fix clang build
Remove some fallthrough annotations so clang does not fatally error:

source/blood/src/aiunicult.cpp:1983:13: error: fallthrough annotation does not
      directly precede switch label

source/blood/src/triggers.cpp:1045:33: error: fallthrough annotation does not
      directly precede switch label

# Conflicts:
#	source/blood/src/aiunicult.cpp
#	source/blood/src/triggers.cpp
2020-01-18 22:48:13 +01:00
Christoph Oelckers 454f796b69 - collect all 3D geometry in a list so that it can be rendered later.
With this out of the way the renderer can now be switched to the core profile.
2020-01-18 22:41:08 +01:00
Christoph Oelckers 2bc1708870 - removed the complete crosshair color hackery.
The code needs to be refactored anyway to allow better crosshair control but this also seemed to affect global render state, considering how poorly it was all implemented.
2020-01-18 16:14:31 +01:00
Christoph Oelckers 8cd9775513 - fixed VP8 video player.
Also do the color space conversion on the CPU to avoid the shader hassle, performance wise it is utterly irrelevant here.
2020-01-18 16:14:30 +01:00
Christoph Oelckers 2e06ccfec6 - draw the screen overlays using the vertex buffer. 2020-01-18 16:14:30 +01:00
Christoph Oelckers 1a916c0a76 - use the vertex buffer to render the post processed screen image. 2020-01-18 16:14:30 +01:00
Christoph Oelckers 298bbb4c97 - removed some leftover pieces of the original savepic code in RR. 2020-01-15 20:52:36 +01:00
Christoph Oelckers a4d8e68b9f - added an engine credits menu page. 2020-01-15 20:39:41 +01:00
Christoph Oelckers c0c18db7cd - dynamically allocate the large networking buffers.
These waste a whopping 800MB of address space, which on 32 bit could be the deciding factor for exhausting available memory.
2020-01-15 18:36:53 +01:00
Christoph Oelckers 4aacd6d958 - display the savepics.
- fixed level name list in Exhumed.
2020-01-14 22:37:23 +01:00
Christoph Oelckers 5739b4b024 - added savepic generation to Exhumed. 2020-01-14 21:48:01 +01:00
Christoph Oelckers 8db6a4331b - added savepic generation for Blood. 2020-01-14 21:20:46 +01:00
Christoph Oelckers e30975581b - enabled savegame pictures in Shadow Warrior.
Unlike the original game this enables mirrors - no idea why they were disabled, some limitation of the software renderer, maybe?
2020-01-14 20:44:20 +01:00
Christoph Oelckers 6ace2f8bf0 - added savepic generation to RR. 2020-01-14 20:12:08 +01:00
Christoph Oelckers 7b6bd34a58 - create the savepic framebuffer without multisampling.
It didn't work and doesn't need it so let's save that piece of video memory.
2020-01-14 19:50:47 +01:00
Magnus Norddahl e923ef5d3a Add missing M_FinishPNG call 2020-01-14 14:22:03 +01:00
Magnus Norddahl a8614c89dd Fix incorrect pitch size when creating savepic 2020-01-13 19:50:25 +01:00
Christoph Oelckers 45a93fc57e - fixed a few bad or missing string labels. 2020-01-13 18:05:43 +01:00
Evan Ramos 3e3477c414 Fix errors in PR
# Conflicts:
#	source/blood/src/osdcmd.cpp
#	source/blood/src/view.cpp
#	source/build/src/mutex.cpp
2020-01-13 18:00:25 +01:00
NoOneBlood 2b36e53706 - Removed event.causedBy for demo playback compatibility
- Fixed kThingArmedRemote in triggers.cpp (OperateSprite())
- Fixed kTrapFlame in triggers.cpp (OperateSprite())

# Conflicts:
#	source/blood/src/actor.cpp
#	source/blood/src/player.h
2020-01-13 17:58:27 +01:00
NoOneBlood 4123a9e14e - gModernMap guard instead of VanillaMode in dudeSpawn
- No sound for player when jumping fix
2020-01-13 17:57:13 +01:00
NoOneBlood 6f3ccdc651 - Combination switches fix (and basically all event commands)
- No sound of jumping when player's jump velocity is too low
2020-01-13 17:57:13 +01:00
Christoph Oelckers dc5b8d27f8 - infrastructure for savegame pics.
Savepic generation implemented for Duke 3D, but results in a black image.
2020-01-12 23:16:21 +01:00
Christoph Oelckers 95f917a408 - added the main vertex buffer and some code to maintain it on systems where persistent mapping is not possible.
All games combined there's 11(!!!) scene render blocks, not counting the sub-blocks for ROR and mirrors.
Does it surprise anyone that most of these sub-blocks do not feature all engine capabilities?
2020-01-12 20:28:07 +01:00
Christoph Oelckers 661431df87 - moved bits of my own code to properly copyrighted files. 2020-01-12 14:54:43 +01:00
Christoph Oelckers 9ca2819ad1 - added missing validation to S_GetUserFlags functions. 2020-01-12 09:32:30 +01:00
Christoph Oelckers b57d683938 - added default for nosubdir parameter. 2020-01-12 08:53:11 +01:00
Christoph Oelckers 238bbd26c1 - fixed: savegame insertion must not move the "New savegame" node at the top. 2020-01-11 23:05:37 +01:00
Christoph Oelckers 6e3772d50d - fixed voxel color setting. 2020-01-11 22:39:53 +01:00
CommonLoon102 851a82c01f Blood: prefix the new maphack tokens with md
# Conflicts:
#	source/duke3d/src/lunatic/con_lang.lua
#	source/rr/src/lunatic/con_lang.lua
2020-01-11 22:24:13 +01:00
CommonLoon102 bc4a4bea23 Add possibility to move voxels/models via maphacks
# Conflicts:
#	source/build/src/engine.cpp
#	source/build/src/polymer.cpp
#	source/build/src/polymost.cpp
#	source/duke3d/src/lunatic/con_lang.lua
#	source/rr/src/lunatic/con_lang.lua
2020-01-11 22:23:53 +01:00
CommonLoon102 95eb10d2a6 fix voxel positions when notmd is defined in maphack file
# Conflicts:
#	source/blood/src/view.cpp
2020-01-11 22:19:50 +01:00
Christoph Oelckers 55dab6d3d3 - hooked up the high color texture colorization code.
Not tested and probably still not working correctly, the entire feature was a nearly impenetrable mess of convoluted code. This definitely needs verification with multiple mods using it.
2020-01-11 22:18:06 +01:00
Christoph Oelckers 17eddda36c - added date and play time display to savegames. 2020-01-11 19:40:35 +01:00
Christoph Oelckers a5f08a4734 - fixed Shadow Warrior save game loading from the main menu. 2020-01-11 18:50:38 +01:00
Christoph Oelckers 5e34b437d9 Merge branch 'master' into fix-linux-compile 2020-01-11 17:37:29 +01:00
Christoph Oelckers 3b955b7c94 - added support for ZDoom-style GAMEINFO. 2020-01-11 17:05:25 +01:00
Rachael Alexanderson 0785c6b9e3 - this is a good stopping point for now, again... 2020-01-11 10:02:44 -05:00
Rachael Alexanderson 96852300bf - a lil more done 2020-01-11 09:27:12 -05:00
Rachael Alexanderson 965c2fd789 - and a lil bit more work 2020-01-11 09:27:12 -05:00
Rachael Alexanderson e86e830407 - some more work on this, taking antoher break 2020-01-11 09:27:12 -05:00
Rachael Alexanderson 897354e725 - this is incomplete, i'm just putting this here for now so i don't lose it 2020-01-11 09:27:12 -05:00
nukeykt af80e64ecf Calculate map MD4 used for maphacks
# Conflicts:
#	source/blood/src/db.cpp
2020-01-11 14:58:12 +01:00
Christoph Oelckers 4825d66e10 - make file system directory printout optional. 2020-01-10 21:54:18 +01:00
Christoph Oelckers 6305714493 - fixed some issues with RR's Route66 add-on.
The new movies weren't played because the names did not match.
Transition from the last level of Ep1 to the first one of Ep2 did not work.
Selection with command line switch wasn't reliable.
2020-01-10 21:36:46 +01:00
sirlemonhead 1ddcc41ed8 PCExhumed: Fix spark effect when destroying an energy tower. 2020-01-10 17:32:28 +01:00
Christoph Oelckers 74fdb6dbcb - fixed menu for DN3D 1.3 2020-01-09 17:35:38 +01:00
Christoph Oelckers 30ebd18680 - fixed incorrect name for last RR map. 2020-01-08 18:58:36 +01:00
Christoph Oelckers dc6e7c52c1 - don't pop up the menu over the intro movies when ending a game. 2020-01-08 17:36:21 +01:00
Christoph Oelckers f513692a08 - fixed last commit. 2020-01-08 17:36:00 +01:00
Christoph Oelckers cfed7afd02 - all source compile now on macOS 2020-01-08 01:00:57 +01:00
Christoph Oelckers 8f455d8ffa Merge branch 'master' of https://github.com/coelckers/Raze 2020-01-08 00:34:25 +01:00
Christoph Oelckers cfc057bf37 - fix POSIX includes 2020-01-08 00:34:17 +01:00
Christoph Oelckers df7c5a7067 - use proper math instead of crash-prone libdivide here. 2020-01-08 00:06:24 +01:00
Christoph Oelckers 42f16a7b30 - removed merged code that doesn't work anymore. 2020-01-08 00:05:37 +01:00
Christoph Oelckers 8cbb313a96 - clearing the screen here is redundant. 2020-01-07 20:17:08 +01:00
nukeykt dfd6796159 Rednukem: fix thunder effect timing 2020-01-07 20:13:06 +01:00
sirlemonhead 56abec7ed4 PCExhumed: Add god, noclip and changelevel console commands.
# Conflicts:
#	source/exhumed/src/osdcmds.cpp
2020-01-07 20:12:12 +01:00
NY00123 86503338ec PCExhumed: Remove unused moveTimer variable from menu_DrawTheMap
(minor addition to world map code fixes and tidying from Oct 14).

# Conflicts:
#	source/exhumed/src/menu.cpp
2020-01-07 20:10:52 +01:00
NY00123 bb020c15f1 PCExhumed: Further improve the widescreen fix for the smoke in menu_DrawTheMap.
rotatesprite is now directly called, instead of going through the
overwritesprite wrapper, in order to trim the smoke sprites,
so they don't leave the map's boundaries in widescreen.

A technical side-effect is that picanm[tilenum].sf is not temporarily
set to 0, as done in overwritesprite.

The call to videoClearScreen is still required, in case the console is
shown and then hidden. It's now called after HandleAsync, just for the
sake of it (less useful in case of quit, and maybe also in another scenario).
2020-01-07 20:10:42 +01:00
Christoph Oelckers 338dcef94c - fix macOS compile error.
The conditions for this redefinition do not seem to be correct.
2020-01-07 20:06:56 +01:00
Christoph Oelckers e7ee858d0d - fixed incomplete reset of savegame state. 2020-01-07 18:53:16 +01:00
Christoph Oelckers b8ac5aea84 Merge branch 'master' of https://github.com/coelckers/Raze 2020-01-07 01:11:33 +01:00
Christoph Oelckers fb985d2503 - more macOS compilation fixes
Still not complete…
2020-01-07 01:11:19 +01:00
Christoph Oelckers 663774cc2d - replaced the icon.
No more EDuke logo. :)
2020-01-06 23:02:47 +01:00
Christoph Oelckers 1d315ae67b - added savegame symbols for the extra gory ninja death. 2020-01-06 21:12:42 +01:00
Christoph Oelckers 2a0104092d - fixed uninitialized variable in savegame name entering menu. 2020-01-06 21:11:59 +01:00
Christoph Oelckers e1e2b01c84 - fixed memory leak in savegame code. 2020-01-06 20:01:18 +01:00
NY00123 d5d60afdc3 PCExhumed: Improve the cheat code fixes in CheckKeys.
- Replace direct calls to strtok with calls to a new wrapper function,
safeStrtok. Whenever strtok returns a null pointer, safeStrtok returns
an empty string instead. This should assist with replicating
the behaviors with the DOS EXE, without leading to crashes.
- This way, the "GOTO" and "CREATURE" codes are fixed.
The code handling "LEVEL" is additionally simplified.
- The code executed if nStringLen == 0 || pToken == NULL is now gone.
As is the case under DOS, if you enter a non-empty string which isn't
matched at all, sHollyStr will be emptified, but you'll otherwise
still be able to enter a code, with no need to retype "HOLLY".
2020-01-06 18:16:36 +01:00
Christoph Oelckers 134122335b - first attempt to compile on a Mac
This could have gone better, there's far too many warnings here
2020-01-06 02:41:47 +01:00
Christoph Oelckers e45cf19936 Project update for Posix sources 2020-01-06 02:35:27 +01:00
Christoph Oelckers 5da0f5c7fa - added the Posix backend code.
Nothing is hooked up yet and adjusted - next thing to do.
2020-01-05 21:40:18 +01:00
Christoph Oelckers 93d634813d - fixed SW's savegame handling.
This set up the wrong game state for saves from within the game loop.
2020-01-05 20:41:57 +01:00
Christoph Oelckers 83292c9dd6 - fixed a few issues and added some savegame debug code for Shadow Warrior. 2020-01-05 18:49:19 +01:00
Christoph Oelckers 2dc0de5824 - fixed incorrect sampler binding. 2020-01-05 17:37:28 +01:00
Christoph Oelckers 9e7f91b5ac - fixed size of texture arrays.
We need 6 slots, not 5.
2020-01-05 12:56:32 +01:00
Christoph Oelckers b6862cfd70 - fixed text input menu and y-positioning of option menus. 2020-01-05 12:12:14 +01:00
sirlemonhead bddcde73f4 PCExhumed: Cheat code fixes.
Default to level 0 if no level number is specified and don't crash if only space characters are submitted. Thanks to NY00123 for reporting.
2020-01-05 10:48:55 +01:00
Christoph Oelckers 746aa4da82 - added a ClearScreen function to the 2D drawer to wrap the frequent occurence of this use case. 2020-01-05 10:48:44 +01:00
Christoph Oelckers a3020ed867 - don't let joystick/controller axis events register as a keypress for screen advancing. 2020-01-05 10:36:52 +01:00
Christoph Oelckers 9f0bb97e63 - disabled printing the version on Blood's status bar. 2020-01-05 10:22:20 +01:00
Christoph Oelckers 6c6874cb0e - fixed scissoring with out of range coordinates.
Blood's status bar sets such a bogus clipping rectangle.
2020-01-05 10:21:34 +01:00
Christoph Oelckers e84acb7e2f - invalidate the render state after finishing a frame.
Last bound textures in particular may not be valid anymore in the next frame in movie playback.
2020-01-05 09:38:44 +01:00
Christoph Oelckers e61e77fb82 - handle textures in the render state.
This should complete the transition and allow storing the render state in an array so that Polymost can be rewritten to create draw lists instead of actually doing the rendering itself.
2020-01-04 23:58:26 +01:00
Christoph Oelckers f6251cdf66 Merge branch 'master' of https://github.com/coelckers/Raze 2020-01-04 23:23:50 +01:00
Christoph Oelckers e982c30590 - fixed Shadow Warrior's mirror code. 2020-01-04 23:23:36 +01:00
sirlemonhead 5e6c109d35 PCExhumed: Correct variable name/usage in runlist channel loop. 2020-01-04 10:06:15 +01:00
Magnus Norddahl 0714155e3a Fix ssao no longer working 2020-01-04 09:54:47 +01:00
Christoph Oelckers ed813562eb - fixed sound in Blood cutscenes. 2020-01-04 00:07:20 +01:00
Christoph Oelckers d4b32c535a - moved matrices to render state. 2020-01-03 23:38:50 +01:00
Christoph Oelckers 9de5814063 - fixed bad alpha setting for rotatesprite calls. 2020-01-03 22:05:00 +01:00
Christoph Oelckers 73950458d4 - fixed mouse selection for generated menus. 2020-01-03 21:28:01 +01:00
Christoph Oelckers 5cc165587e - added mouse control for image scroller menu. 2020-01-03 20:53:38 +01:00
Christoph Oelckers 4155d49e59 - fixed menu slider rendering. 2020-01-03 20:40:56 +01:00
Christoph Oelckers 39c55199f9 - added a few missing menu things. 2020-01-03 20:37:02 +01:00
Christoph Oelckers f2cc7e3636 - The interpolation code needs the current frame rate so it must be retrieved. 2020-01-03 20:13:44 +01:00
Christoph Oelckers 064a453b41 - fixed: Key up events were processed as character input.
This broke the cheat input in Duke Nukem.
2020-01-03 19:28:54 +01:00
Magnus Norddahl 13a7b7d4b2 Hook up gl_ssao 2020-01-03 18:34:43 +01:00
Christoph Oelckers 6ba04e7a09 - fixed voxel rendering in indexed color mode. 2020-01-03 18:30:00 +01:00
Christoph Oelckers f743b22661 - render voxels as triangles instead of quads.
Quads are not available in the core profile which is required to run GL 3.3 on macOS.
2020-01-03 18:09:05 +01:00
Christoph Oelckers 07754b3255 - std::filesystem is gone. 2020-01-03 17:56:22 +01:00
Christoph Oelckers 9f0b720b25 -second function freed of std::filesystem. 2020-01-03 17:34:52 +01:00
Christoph Oelckers c82d6de6c3 - fixed a few typos and uninitialized variables. 2020-01-03 17:08:41 +01:00
Christoph Oelckers 78e7b2dd8c - getting rid of std::filesystem, part one.
Since it's not usable on macOS it needs to go.
2020-01-03 14:19:52 +01:00
hendricks266 6a4870e7fb actors.cpp: Address -Wsometimes-uninitialized warnings
git-svn-id: https://svn.eduke32.com/eduke32@8528 1a8010ca-5511-0410-912e-c29ae57300e0
2020-01-03 11:48:42 +01:00
Christoph Oelckers e2d64a1c4a - copied anim fix to RR. 2020-01-03 11:47:10 +01:00
Christoph Oelckers 6c55d8ed69 Merge branch 'master' of https://github.com/coelckers/Raze 2020-01-03 11:43:56 +01:00
Christoph Oelckers ce75832945 - color and depth func moved to render state. 2020-01-03 11:43:44 +01:00
Christoph Oelckers 27ed6cdae5 - viewport and scissor moved to render state. 2020-01-03 10:48:22 +01:00
Christoph Oelckers cfc0ba48cb - moved render style handling to the render state and simplified its storage to use FRenderStyle instead of its components. 2020-01-03 10:48:22 +01:00
Magnus Norddahl b3e754ecbe Fix uninitialized variables causing black screen sometimes when playing videos 2020-01-03 09:45:15 +01:00
Christoph Oelckers 6574c34543 - re-enabled MIDI selection, but only with the devices that are supposed to be seen. 2020-01-03 09:22:22 +01:00
Evan Ramos a6c2641c20 Rednukem: Fix tspr->clipdist bits 2020-01-03 08:07:28 +01:00
Evan Ramos 148c8770e9 Blood: Constify some {u,t,}spritetype templates
This is important where tracked spritetype could be involved.
2020-01-03 08:07:27 +01:00
Evan Ramos d7a7bb3e78 Make use of renderAddTSpriteFromSprite
# Conflicts:
#	source/blood/src/m32exec.cpp
#	source/rr/src/m32exec.cpp
2020-01-03 08:07:27 +01:00
Evan Ramos e363cd53a5 tspritetype cleanup
# Conflicts:
#	source/blood/src/m32common.cpp
#	source/blood/src/m32exec.cpp
#	source/blood/src/m32structures.cpp
#	source/blood/src/mapedit.cpp
#	source/rr/src/astub.cpp
#	source/rr/src/m32common.cpp
#	source/rr/src/m32exec.cpp
#	source/rr/src/m32structures.cpp
2020-01-03 08:07:10 +01:00
Evan Ramos 8fce9c5be8 Blood: Restore original tspritetype member synonyms
# Conflicts:
#	source/blood/src/view.cpp
2020-01-03 08:06:07 +01:00
Evan Ramos 1caabf2e7b Add Blood-specific synonyms for tspritetype members 2020-01-03 08:05:43 +01:00
Christoph Oelckers 6135e388ed - changed the remaining license headers from GZDoom's renderer's files, in agreement with all contributors to this code. 2020-01-03 08:03:29 +01:00
Magnus Norddahl 066f444dd0 Hook up vid_fps 2020-01-03 06:28:25 +01:00
Magnus Norddahl 2403d1b7e5 Update the license for the postprocessing source code 2020-01-03 05:42:37 +01:00
Christoph Oelckers 62fd8a49c1 - fixed CVAR assignment for number of sound channels. 2020-01-03 00:47:13 +01:00
Christoph Oelckers 72036721d5 - made DN3D shareware operable.
The GRP defines neither episodes nor skills, so they have to be provided internally.
This isn't 100% correct yet, but should do for now.
2020-01-03 00:44:39 +01:00
Christoph Oelckers 3380420de9 - converted the clear screen commands. 2020-01-02 23:56:35 +01:00
Christoph Oelckers b549228d4d - commented out the time wasting level loading screen in Blood.
Now seriously, doing frequent screen updates here only make things worse!
2020-01-02 23:35:29 +01:00
Christoph Oelckers 3608a646e6 - converted the simple state settings into renderstate flags. 2020-01-02 23:34:21 +01:00
Christoph Oelckers 6156e7382a - preparation for moving GL state into the renderstate struct. 2020-01-02 23:15:16 +01:00
nukeykt cc4f801b1e Blood: fix candles 2020-01-02 20:21:20 +01:00
nukeykt 57e925a1bb Blood: Explosion polymer light 2020-01-02 20:21:19 +01:00
nukeykt 8fbd6674d2 Blood: polymer lights wip
# Conflicts:
#	source/blood/src/actor.cpp
#	source/blood/src/blood.cpp
#	source/blood/src/osdcmd.cpp
2020-01-02 20:21:19 +01:00
nukeykt a3b48c44d6 Blood: fix multiskies with 16 tiles in polymer
# Conflicts:
#	source/build/src/polymer.cpp
2020-01-02 20:19:08 +01:00
nukeykt 9208c1249d Blood: fix uninitialized palette usage
# Conflicts:
#	source/blood/src/view.cpp
2020-01-02 20:19:01 +01:00
Christoph Oelckers e63ca0f471 - removed redundant keyboard.h header 2020-01-02 19:56:57 +01:00
Christoph Oelckers afb1d7b885 - changed a few licenses of my own code to something more permissive. 2020-01-02 19:38:47 +01:00
Christoph Oelckers e43d2c10c0 - removed the OPL synth because parts of it are GPLv3 and even under the best circumstances not compatible with the license mix here. 2020-01-02 19:20:12 +01:00
Christoph Oelckers 4571ba74c2 - merge fixes.
Why does that freaking merger always delete the namespace markers...?
2020-01-02 19:20:11 +01:00
nukeykt 2e085b559f Precache more tiles on level start
# Conflicts:
#	source/blood/src/fx.cpp
#	source/blood/src/gib.cpp
#	source/blood/src/gib.h
#	source/blood/src/qav.cpp
#	source/blood/src/weapon.h
2020-01-02 19:20:11 +01:00
nukeykt 7af92bb327 blood: Precache fonts 2020-01-02 19:20:11 +01:00
NoOneBlood afb8c11683 - It's possible now to change posture settings for each player
- Touch trigger for walls fix
- It's possible to set custom clipdist for things (gModernMap only)
- Few tweaks for Custom Dude
- Player Control type fixes and updates

# Conflicts:
#	platform/Windows/nblood.vcxproj
#	source/blood/src/player.h
2020-01-02 19:20:11 +01:00
NoOneBlood 5bcfcc1b55 - Player Control type fixes
- Custom Dude type fixes
2020-01-02 19:20:11 +01:00
Grind Core ec782a28de - Rewrite true random once again
- Fix Custom Dude genIdle aistate
- Fix grown and shrink races
- Fix qav scene was not able to stop if sprite is locked
- Fix stupid error in gDefaultJump array

# Conflicts:
#	source/blood/src/actor.cpp
#	source/blood/src/view.cpp
2020-01-02 19:20:11 +01:00
Grind Core 1eb50414ab -Fix xspriData2Array function
-Fix kModernSpriteDamager type

# Conflicts:
#	source/blood/src/actor.cpp
#	source/blood/src/gameutil.cpp
#	source/blood/src/gameutil.h
#	source/blood/src/triggers.h
2020-01-02 19:20:10 +01:00
Grind Core da47ebbd2c - Rewrite true random, so it should work just fine now
- Way better AI for Custom Dude when attacking the target
- Minor warning fixes and other updates

# Conflicts:
#	source/blood/src/actor.cpp
#	source/blood/src/aiunicult.cpp
#	source/blood/src/aiunicult.h
#	source/blood/src/asound.cpp
#	source/blood/src/gameutil.cpp
#	source/blood/src/gameutil.h
#	source/blood/src/player.h
#	source/blood/src/triggers.h
2020-01-02 19:20:10 +01:00
Rachael Alexanderson a6bf1c3026 - oops, didn't mean to change this line (I blindly copied the function over) 2020-01-02 00:15:19 -05:00
Rachael Alexanderson 21ba23f36d - pull most recent video scale changes from gzdoom 2020-01-01 23:42:09 -05:00
Rachael Alexanderson 6a17e3910b - relicense my reused GZDoom code as BSD 2020-01-01 08:59:40 -05:00
Christoph Oelckers dda45c6780 - all polymost2 code has long been nuked. 2020-01-01 13:46:46 +01:00
Christoph Oelckers e01c161258 - removed some dead variables. 2020-01-01 13:11:44 +01:00
Christoph Oelckers 18099e9179 - removed the pure software render surface and deleted a few unused variables.
With all the 2D refactorings thhe softsurface won't work anymore.
This also revealed a bug with the fullscreen variable, a few places were still using the old one from the SDL backend.
2020-01-01 12:36:48 +01:00
Christoph Oelckers d09b83d4a5 - moved the last remaining function out of baselayer.cpp and removed that file.
g_logFlushWindow was deleted entirely because with the current console this is not needed anymore.
2020-01-01 12:01:26 +01:00
Christoph Oelckers 7ec8368688 - used the wrong formula to calculate shadeDiv. 2020-01-01 11:49:32 +01:00
Christoph Oelckers d464017363 - cleaned up the input code a bit. 2020-01-01 11:35:47 +01:00
Christoph Oelckers bcb48d8441 - added handling for changing the screen size (dragging the window borders / change scale factor) 2020-01-01 09:49:06 +01:00
Christoph Oelckers 3d47652d08 - had a look at Exhumed's shade tables and implemented the necessary adjustments for the 3 with abnormal gradients. 2019-12-31 22:53:03 +01:00
Christoph Oelckers f106505344 - fixed the broken alignment between lines and sectors on the Shadow Warrior automap. 2019-12-31 22:11:04 +01:00
Christoph Oelckers 9543c2cbb9 - fixed the broken automap defaults in Shadow Warrior.
Now it will properly reveal the map as the player progresses and not show everything from the start.
2019-12-31 22:05:23 +01:00
Christoph Oelckers 98604e513e - set up the scene viewport for the postprocessor. 2019-12-31 20:11:31 +01:00
Christoph Oelckers 05e381ff6d - fixed screen clearing for the automap.
This should only affect the active window, not the entire screen.
2019-12-31 19:50:27 +01:00
Christoph Oelckers ef5292b4ae - don't use Build's clipping code to clip automap parts to the screen.
Not really surprisingly this is not compatible with a real triangulator. Fortunately it's also not really needed.
2019-12-31 19:38:50 +01:00
Christoph Oelckers d3a57e6e74 - route all clearscreen calls that happen after drawing the scene through the 2D drawer.
Otherwise they aren't synchronized with the remaining content.
2019-12-31 19:25:49 +01:00
Christoph Oelckers 1890df98f9 - process lines through the 2D drawer. 2019-12-31 19:02:55 +01:00
Christoph Oelckers 2f8d472d7d - cleaned up the map drawer by using a real triangulator.
Immediate benefit: almost 200 lines of bona-fide Kencode go to the dumpster.
2019-12-31 17:23:29 +01:00
Christoph Oelckers 77cd7bffc5 - fixed alpha calculations for textured automap. 2019-12-31 15:50:08 +01:00
Christoph Oelckers d825282726 - removed a few software rendering parts from the automap drawer.
These won't be needed anymore.
2019-12-31 15:41:12 +01:00
Christoph Oelckers 964e303dd7 - draw the textures on the automap with the 2D drawer. 2019-12-31 15:05:08 +01:00
Rachael Alexanderson 143c8be84d - fixed: argument count passed to the OSD system was +1 than it expected 2019-12-31 08:07:22 -05:00
Jonathan Gray 5ea5d87664 PCExhumed: fix triddat.cpp build with libc++
Include cstdlib for abs() with an int argument.  Fixes the following
compile error with libc++.

source/exhumed/src/trigdat.cpp:159:9: error: call to 'abs' is ambiguous
    if (abs(diff) > c)
        ^~~
/usr/include/c++/v1/math.h:761:1: note: candidate function
abs(float __lcpp_x) _NOEXCEPT {return ::fabsf(__lcpp_x);}
^
/usr/include/c++/v1/math.h:765:1: note: candidate function
abs(double __lcpp_x) _NOEXCEPT {return ::fabs(__lcpp_x);}
^
/usr/include/c++/v1/math.h:769:1: note: candidate function
abs(long double __lcpp_x) _NOEXCEPT {return ::fabsl(__lcpp_x);}
^
1 error generated.
2019-12-31 09:19:58 +01:00
Jonathan Gray 64d3d38014 PCExhumed: remove uneeded malloc.h include
malloc.h is a non-standard header and isn't required here
fixes build on OpenBSD which has no malloc.h

# Conflicts:
#	source/exhumed/src/enginesubs.cpp
2019-12-31 09:19:58 +01:00
Christoph Oelckers 51eaa5cd1f - let mouse control in the menu default to Touchscreen-like, like it is in GZDoom. 2019-12-31 02:48:16 +01:00
Magnus Norddahl 8f1d1fa94b Fix mouse move precision loss when only moving the mouse a pixel or two. Also make the baseline mouse scaling more reasonable. 2019-12-31 01:46:54 +01:00
Magnus Norddahl 0396f79c15 Fix in_mouse 0 and in_joystick 0 not working 2019-12-31 01:00:30 +01:00
Christoph Oelckers e4caea2f95 - set default for mouse control to DirectInput.
This simply works a lot better than Raw Input and causes far less problems.
Ironic considering that it's the deprecated method...
2019-12-30 23:55:57 +01:00
Christoph Oelckers 91a4e0a005 - fixed Blood cutscene playback.
Some merge from upstream must have broken the file name correction.
2019-12-30 21:36:08 +01:00
Christoph Oelckers 2c35f87925 - fixed translucency determination. 2019-12-30 21:03:15 +01:00
Christoph Oelckers 6b431cec2c - fixed: True color texture replacements were set up incorrectly.
They incorrectly set themselves up as their own glow and detail textures.
These layers also weren't disabled for the next texture.
2019-12-30 20:44:37 +01:00
Christoph Oelckers ad24a1ce31 - place weapon sprites in a separate render list.
They need to be drawn in a different pass than the 2D overlay HUD so the backend must have them separately.
2019-12-30 20:16:51 +01:00
Christoph Oelckers 7ea053bd90 - reconnected the HUD model drawer.
This will have to be done differently later when the postprocessor is fully working, but for now it's sufficient to just render the model right away.
2019-12-30 20:16:51 +01:00
Christoph Oelckers 9ceb47fdb2 - cleaned up the rotatesprite code a bit. 2019-12-30 20:16:51 +01:00
Christoph Oelckers 596705a36e - apply RS_YFLIP to 2D sprites. 2019-12-30 20:16:51 +01:00
Christoph Oelckers 5830e72ab0 - fixed some rotatesprite issues:
* scissor was not applied
* texture coordinates were fetched from the wrong texture, courtesy of using global variables.
2019-12-30 19:37:23 +01:00
Christoph Oelckers 6459f4e532 - refactored rotatesprite to really use the 2D drawer.
Mostly working, except clipping and weapon sprites.
2019-12-30 19:37:23 +01:00
Christoph Oelckers b34f3637ab - restored keybinds setup to the original procedure as defined by ZDoom.
Looks like some parts were missed when this was integrated piece by piece.
2019-12-30 12:43:21 +01:00
Magnus Norddahl c3d48c9a82 Disable linux files as they are missing 2019-12-30 09:12:25 +01:00
Christoph Oelckers f1891c7750 - fixed compilation. 2019-12-29 22:47:40 +01:00
nukeykt cdb08f22dd Fix redneck compiling
# Conflicts:
#	platform/Windows/eduke32.sln
#	platform/Windows/rednukem.vcxproj
#	platform/Windows/rednukem.vcxproj.filters
#	source/rr/src/config.cpp
#	source/rr/src/game.cpp
#	source/rr/src/game.h
#	source/rr/src/osdcmds.cpp
#	source/rr/src/sounds.cpp
2019-12-29 22:34:16 +01:00
nukeykt 62c37b64ae Fix exhumed compiling
# Conflicts:
#	source/exhumed/src/exhumed.cpp
#	source/exhumed/src/menu.cpp
2019-12-29 22:30:13 +01:00
nukeykt a5351620db Fix blood compiling
# Conflicts:
#	source/blood/src/config.cpp
#	source/blood/src/osdcmd.cpp
#	source/blood/src/screen.cpp
#	source/blood/src/sound.cpp
#	source/blood/src/sound.h
#	source/blood/src/view.cpp
#	source/blood/src/view.h
2019-12-29 22:29:50 +01:00
hendricks266 456d975392 Make the Polymode cstat bits Duke-only by translating them to tspr->clipdist
git-svn-id: https://svn.eduke32.com/eduke32@8523 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymer.cpp
#	source/build/src/polymost.cpp
#	source/duke3d/src/astub.cpp
#	source/duke3d/src/common_game.h

# Conflicts:
#	source/duke3d/src/common_game.h
2019-12-29 22:23:18 +01:00
hendricks266 6a5906833b Move TSPR_EXTRA_MDHACK from extra to clipdist
git-svn-id: https://svn.eduke32.com/eduke32@8522 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/mdsprite.cpp
#	source/build/src/polymer.cpp
2019-12-29 22:22:20 +01:00
hendricks266 6465feb438 Refactor tsprite creation into renderAddTSpriteFromSprite
git-svn-id: https://svn.eduke32.com/eduke32@8521 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymer.cpp
#	source/duke3d/src/m32exec.cpp
2019-12-29 22:22:19 +01:00
hendricks266 422601bc82 Make tspritetype its own distinct struct
git-svn-id: https://svn.eduke32.com/eduke32@8520 1a8010ca-5511-0410-912e-c29ae57300e0
2019-12-29 22:22:19 +01:00
Christoph Oelckers 5a41b545e5 - reactivated saving of console aliases. 2019-12-29 17:43:40 +01:00
Christoph Oelckers 6dc064a178 - another unused one. 2019-12-29 17:13:12 +01:00
Christoph Oelckers 3a6d0b8f84 - more cleanup. 2019-12-29 17:04:38 +01:00
Christoph Oelckers 2e261a7468 - cleanup and removal of unused code.
compat.h probably needs a bit more attention, it's a horrendous mess of the wrong type of "compatibility" concerns.
2019-12-29 16:35:51 +01:00
Christoph Oelckers cc332486b4 - cleaned out the 2D drawing code.
With the new backend there will always be just one page, never more, so the RS_PERMS case will never be entered.
In addition, since the software renderer has already been nonfunctional due to lacking support from the 2D drawer, its 2D components have also been removed. Its main remaining purpose, drawing camera textures, remains unaffected by this.
2019-12-29 15:46:48 +01:00
Christoph Oelckers d80159b76a - use glVertexAttrib consistently for the presentation drawcall.
- fixed vid_saturation default and adjusted ranges for gamma correction CVARs.
2019-12-29 14:35:24 +01:00
Magnus Norddahl 26dbf5fe10 Fix black screen 2019-12-29 05:10:36 +01:00
Magnus Norddahl 7c6dc7a7db Fix premature exit when only one .grp file is available 2019-12-29 04:49:28 +01:00
Christoph Oelckers 737bf15ad8 - added GZDoom's postprocessing/presentation code.
Compiles but only draws a black screen. Something must be missing but no idea yet what that might be.
2019-12-28 22:36:47 +01:00
Christoph Oelckers f6dee38d28 - route all 2D drawing through the 2D drawer unconditionally.
This is needed so that the postprocessor receives a clean 3D view to process without messing up the 2D parts.
2019-12-28 19:10:23 +01:00
Christoph Oelckers a021b96119 - added the needed parts of GZDoom's render backend to have the postprocessor working.
Not hooked up yet.
2019-12-28 18:20:47 +01:00
Christoph Oelckers c4219f40be - renamed the project to "Raze". 2019-12-28 14:10:25 +01:00
Christoph Oelckers 1e16998cac - fixed memory leak in savegame menu. 2019-12-28 13:08:34 +01:00
Christoph Oelckers 2b95808d42 - fixed ambient sounds not restarting in DN3D and RR. 2019-12-28 12:59:19 +01:00
Christoph Oelckers d6c129b825 - Hide Exhumed frontend behind a -experimental switch.
Since the NBlood and PCExhumed repos got merged, keeping separate branches may become a bit of a hassle, so now there is only one branch, but this game will not be shown to regular users until it gets more stable.
2019-12-27 23:22:39 +01:00
Christoph Oelckers 93fccfd767 - fixed the fire sound in the intro. 2019-12-27 23:09:05 +01:00
Christoph Oelckers bea7391ac9 - more sound related fixes.
This was messier than I thought.
2019-12-27 22:17:36 +01:00
Christoph Oelckers c41c585c7f Merge branch 'master' into powerslave 2019-12-27 20:06:44 +01:00
Christoph Oelckers affa8240f4 - fixed: Exhumed's ChannelEnded method did not call the super class.
This caused all sorts of audio errors.
2019-12-27 20:05:58 +01:00
Christoph Oelckers 907c2bbe1e - fixed keyboard turning.
Why did it only apply the chance each 4th call instead of doing it smoothly???
2019-12-27 17:35:13 +01:00
Christoph Oelckers c3ba6d00e6 - fixed: forgettable channels must not be tested for sound limits because they no longer have a valid source. 2019-12-27 17:08:48 +01:00
Christoph Oelckers 7e758a5e48 - hook up the savegame code in Exhumed. Superficially it looks like it works but it will require a lot more testing.
- fixed per-frame sound system update in Exhumed.

Sound is still quite broken and will require more work.
2019-12-27 17:07:09 +01:00
Christoph Oelckers 8e5b9111bd Merge branch 'master' into powerslave
# Conflicts:
#	source/CMakeLists.txt
2019-12-27 15:34:09 +01:00
Christoph Oelckers 6b0711ff0c - put the project's name into a variable so that it doesn't have to be changed everywhere if needed. 2019-12-27 13:52:15 +01:00
Christoph Oelckers 5a853cb196 - gave .natvis file a neutral name. 2019-12-27 13:39:30 +01:00
Christoph Oelckers b307db2346 - renamed internal CMake variables to not contain the project name. 2019-12-27 13:37:39 +01:00
Christoph Oelckers aefb3ec216 - removed obsolete gamemain.cpp 2019-12-27 13:11:48 +01:00
Christoph Oelckers 44ed9d63a7 Merge branch 'master' into powerslave 2019-12-27 10:54:50 +01:00
Christoph Oelckers 1870e1857f - savegame name generation fix for SW. 2019-12-27 10:54:00 +01:00
Christoph Oelckers 9415d0f78b - corrected savegame signatures. 2019-12-27 10:53:47 +01:00
Christoph Oelckers ce1a78fd62 - work on the savegame writer.
It saves, reloading not implemented yet.
2019-12-27 10:52:40 +01:00
Christoph Oelckers a4c5fbe295 - savegame name generation fix for SW. 2019-12-27 10:48:43 +01:00
Christoph Oelckers 3bd36bfb9d - more savegame stuff.
Should be complete now. We'll see...
2019-12-26 23:17:11 +01:00
Christoph Oelckers 79d0818201 - added savegame records for all global data that looks to be game relevant.
The data organization here is a mess, no wonder that this game could only save at the beginning of a level.
Fortunately it's all static so no allocations and pointers to track.
2019-12-26 22:00:04 +01:00
Christoph Oelckers 90fecbc6c0 - removed more unused content. 2019-12-26 19:41:42 +01:00
Christoph Oelckers 7fd86c8640 - config.cpp was also free of actual content. 2019-12-26 18:36:07 +01:00
Christoph Oelckers 25bb94cd94 - reducing the completionist cruft.
The 3 CD related files don't really contain enough code to justify this, merged all non-empty parts into one.
2019-12-26 18:29:10 +01:00
Christoph Oelckers 68a3a60d0b - Exhumed menu tweaks - draw a background and caption for the option menus the game originally did not have.
- fixed a crash in the 2D drawer when two consecutively allocated vertex buffers had the same address. Strangely this only occured with Exhumed but not the other games
- fixed Exhumed crashing with sound disabled.
2019-12-26 17:42:45 +01:00
Christoph Oelckers 6373b75d22 Merge branch 'master' into powerslave
# Conflicts:
#	source/common/gamecontrol.cpp
#	source/common/version.h
#	wadsrc/static/engine/grpinfo.txt
2019-12-26 14:46:14 +01:00
Christoph Oelckers d473f9c590 - replaced all uses of Bfree with Xfree so they are subjected to debug instrumentation, uses FStrings in a few cases where it made sense.
- fixed: Sound channels weren't freed.
2019-12-26 14:43:44 +01:00
Christoph Oelckers eff25141a0 - little bit of CMake cleanup. 2019-12-26 14:16:00 +01:00
Christoph Oelckers 62e9112133 - renamed the internal resource directory to "engine" and routed most literal mentions of the engine name through version.h
All this comes from a time when I didn't use version.h so it's better to do it the same way as GZDoom to allow easy renaming of the engine.
2019-12-26 14:04:53 +01:00
Christoph Oelckers 7f62208bad - renamed demolition.grpinfo to grpinfo.txt. 2019-12-26 13:31:48 +01:00
Christoph Oelckers d8dfe752b5 - fixed handling of music in Redneck Rampage and Shadow Warrior.
After merging the CD enabling CVAR they had the same default (off) as Blood which is wrong.
This also addresses other music related issues, like not properly cycling through the RR music.
2019-12-26 13:04:29 +01:00
Christoph Oelckers c8edef4e0c - disabled the "User Maps" option pending implementation of a working selection menu for exposing this. 2019-12-26 10:55:43 +01:00
Christoph Oelckers 5dcfa1cb0c - do not use the internal SWCUSTOM.TXT from the Twin Dragon add-on.
There's a second variant without this definition, so this needs to be defined internally, and since it needs to be done internally it may receive proper localization labels.
2019-12-26 10:47:10 +01:00
hendricks266 8e6a54a1e4 Mostly clean up the codebase in preparation for tspritetype != uspritetype
Remaining exceptions:
SW - ConnectCopySprite
CON and M32Script - pSprite/pUSprite

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

# Conflicts:
#	source/build/include/polymer.h
#	source/build/src/engine.cpp
#	source/build/src/engine_priv.h
#	source/build/src/polymer.cpp
#	source/build/src/polymost.cpp
#	source/duke3d/src/astub.cpp
#	source/duke3d/src/game.h
#	source/duke3d/src/m32common.cpp
#	source/duke3d/src/m32exec.cpp
#	source/duke3d/src/m32structures.cpp
#	source/kenbuild/src/bstub.cpp
#	source/kenbuild/src/game.cpp
#	source/sw/src/jnstub.cpp
#	source/sw/src/jsector.cpp
2019-12-26 08:58:25 +01:00
hendricks266 3bbecf84c2 SW: Fix FindDistance3D calls to not z>>4 at the call site
This is handled by the function itself now.

Fixes the distance issue with the ceiling fan.

git-svn-id: https://svn.eduke32.com/eduke32@8525 1a8010ca-5511-0410-912e-c29ae57300e0
2019-12-26 08:54:17 +01:00
hendricks266 ae94566fb5 SW: Draw the crosshair actually centered
Thanks to Striker for the tip.

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

# Conflicts:
#	source/sw/src/draw.cpp
2019-12-26 08:53:36 +01:00
hendricks266 91cbaa1491 Add information to cstat enums
git-svn-id: https://svn.eduke32.com/eduke32@8518 1a8010ca-5511-0410-912e-c29ae57300e0
2019-12-26 08:49:42 +01:00
hendricks266 846c7eaff2 SW: Run all allocations through Xmalloc et al
git-svn-id: https://svn.eduke32.com/eduke32@8515 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/audiolib/src/driver_winmm.cpp
#	source/audiolib/src/flac.cpp
#	source/sw/src/StartupWinController.game.mm
#	source/sw/src/bldscript.cpp
#	source/sw/src/game.cpp
#	source/sw/src/game.h
#	source/sw/src/grpscan.cpp
#	source/sw/src/jbhlp.cpp
#	source/sw/src/rts.cpp
#	source/sw/src/scrip2.cpp
#	source/sw/src/sounds.cpp
2019-12-26 08:47:09 +01:00
hendricks266 33ad4b9860 Fix -Wfallthrough error in gamevars.h
git-svn-id: https://svn.eduke32.com/eduke32@8495 1a8010ca-5511-0410-912e-c29ae57300e0
2019-12-26 08:26:09 +01:00
Christoph Oelckers 078455659f - fixed incorrect initialization order. 2019-12-26 00:54:21 +01:00
Christoph Oelckers 1a8f11e01d Merge branch 'master' into powerslave
# Conflicts:
#	source/build/src/sdlayer.cpp
#	source/common/menu/menu.cpp
#	source/sw/src/config.cpp
#	source/sw/src/game.cpp
2019-12-26 00:21:04 +01:00
Christoph Oelckers e3084cd1b1 - ported Exhumed sound to OpenAL.
The regular sounds are not a big deal, but this game contains two special effects that were problematic to port. We'll have to wait and see if they work as intended - the original panning effect is not 3D compatible so I had to redo it.
2019-12-25 23:37:16 +01:00
Christoph Oelckers e180d9afd3 Merge commit '40a533402e443a0de1673543642c892ab9c731fd' into powerslave
# Conflicts:
#	source/audiolib/include/fx_man.h
#	source/audiolib/include/multivoc.h
#	source/audiolib/src/_multivc.h
#	source/audiolib/src/fx_man.cpp
#	source/audiolib/src/multivoc.cpp
2019-12-25 19:24:55 +01:00
Christoph Oelckers 2d7ad75b5f - lightened sound.cpp by deleting all inactive content. 2019-12-25 19:17:06 +01:00
Christoph Oelckers 23bc599468 - fixed recursion issues caused by the plasma generator function performing a busy wait. 2019-12-25 18:57:08 +01:00
Christoph Oelckers 4050ce156f - fixed crash on NAM.
This game contains one sound that made the Voc loader crash.
2019-12-25 17:14:17 +01:00
Christoph Oelckers dd984c94b0 - fixed extended quote management. 2019-12-25 17:13:36 +01:00
Christoph Oelckers 414201e741 - fixed palette translucency after aborting movie playback. 2019-12-25 17:13:10 +01:00
Christoph Oelckers 120a985b98 - disable palette transparency for color 255 when running an animation.
There's several intro cutscenes using the full palette and for these the color must not be nulled as it should for in-game textures.
2019-12-25 14:13:15 +01:00
Christoph Oelckers b0cefdedce - plugged all memory leaks that were reported with Shadow Warrior when starting the first level. 2019-12-25 11:26:19 +01:00
Christoph Oelckers 5e821de481 - replaced the leaky hash table that was used to handle the animations.
Just replaced with a linear array - for a hash table indexed with a string to be efficient, a much larger amount of data is needed than 20 or 30 entries.
This is also hardly the kind of data where losing a microsecond for performing the search matters.
2019-12-25 09:51:44 +01:00
sirlemonhead 4a31447702 NBlood: Remove std::string from libsmackerdec to fix cutscene crashing with MinGW builds.
# Conflicts:
#	source/libsmackerdec/include/FileStream.h
#	source/libsmackerdec/src/FileStream.cpp
2019-12-25 09:02:18 +01:00
Christoph Oelckers 745d78d8d7 - fixed voxels leaking memory. 2019-12-25 08:57:58 +01:00
Christoph Oelckers efe4261932 - fixed Blood music and movie playback.
I have no idea why the movie code was completely disabled in NBlood, it all works fine...
2019-12-25 01:10:13 +01:00
Christoph Oelckers 5bd32cf769 - fixed: Voxel setup code wasn't called anymore. 2019-12-25 00:30:13 +01:00
Christoph Oelckers 49c49b2672 - read the global settings before presenting the game selection dialog
- deinit the menu in GameMain instead of using atexit.
- gi == null check must include the call to FreeGameData.
2019-12-24 20:06:55 +01:00
Christoph Oelckers 055b310d60 - rewrote all remaining places that used wm_msgbox to throw a fatal error instead so that the global error handler can deal with the messages.
This eliminates another piece of hideous code.
This commit also moves the memory error handler to the common code, so that all games can call it if triggered.
2019-12-24 19:59:14 +01:00
Christoph Oelckers f65b2c1dcb - disable the allocation breakpoint. 2019-12-24 19:48:26 +01:00
Christoph Oelckers 43033e830a - Blood now also starts the first level without leaks.
I had to refactor the LoadSave data to allow automatic takedown, the linked list was not the most convenient thing - an array is better.
2019-12-24 19:47:34 +01:00
Christoph Oelckers 2820dc85a8 - plugged more memory leaks.
I can now start the first Duke Nukem level, exit with Alt-F4 and no leaked memory blocks get reported.
2019-12-24 18:53:29 +01:00
Christoph Oelckers 1c46c6da9d - more leaks plugged, plus rerouting exception messages to the log window. 2019-12-24 16:30:33 +01:00
Christoph Oelckers 0d908960ed - started fixing memory leaks: Console and clip shapes done. 2019-12-24 16:09:43 +01:00
Christoph Oelckers 58d0585eaa - replaced EDuke's game selector with GZDoom's. 2019-12-24 15:28:00 +01:00
Christoph Oelckers bfb3a797ff - do not send mouse wheel "up" events right after "down".
The input system needs to be able to detect them in a "pressed" state, even though that doesn't physically exist.
2019-12-24 14:02:09 +01:00
Christoph Oelckers e8d7777f4a - mouse input works again after cleaning out the remaining cruft of the old input code. 2019-12-24 13:54:50 +01:00
Christoph Oelckers 1b9a2f5932 - disabled the message entering code.
This needs to be replaced with the game independent ZDoom version and hooked up properly, but it of low priority because it's a multiplayer only feature.
2019-12-24 13:21:36 +01:00
Christoph Oelckers a870df840e - hooked up the input system and did a major cleanup.
Much of the old system is no longer needed with all buttons being handled as keys.
Mouse axis movement is not working yet.
2019-12-24 12:59:26 +01:00
Christoph Oelckers 141887263d - header cleanup 2019-12-23 21:19:42 +01:00
Christoph Oelckers 9ab8a8c737 - refactored the coordinate printout to a stat and removed printext256 and the associated font. 2019-12-23 20:55:12 +01:00
Christoph Oelckers 3b98635170 - removed all remaining references to SDL. The Windows version is now fully native. 2019-12-23 20:03:03 +01:00
Christoph Oelckers 62ecedf1f8 - got it to the point where it can render to the GL surface from the native backend. 2019-12-23 19:37:40 +01:00
Christoph Oelckers a1f7f0cc30 - added the GL framebuffer class.
Everything compiles again but obviously no init code will run for now.
2019-12-23 15:40:17 +01:00
Christoph Oelckers 6b475417dc Merge branch 'master' into gzbackend 2019-12-23 14:31:31 +01:00
Christoph Oelckers 5c62e9776f - fix for cherry picks. 2019-12-23 14:30:10 +01:00
hendricks266 56e88b33a8 Replace color matching up to index 239 with the engine's fullbright mask
Should improve the color range available to non-Duke editors.

git-svn-id: https://svn.eduke32.com/eduke32@8491 1a8010ca-5511-0410-912e-c29ae57300e0
2019-12-23 11:37:00 +01:00
hendricks266 34ef03185d Generate editorcolors[] from vgapal16[] at a better point in the startup process
git-svn-id: https://svn.eduke32.com/eduke32@8490 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
#	source/build/src/palette.cpp
2019-12-23 11:36:24 +01:00
hendricks266 221e7a6b85 paletteGetClosestColor: I think these < should be <=
git-svn-id: https://svn.eduke32.com/eduke32@8489 1a8010ca-5511-0410-912e-c29ae57300e0
2019-12-23 10:59:21 +01:00
hendricks266 0a7f5f558a Rename colmatch functions
git-svn-id: https://svn.eduke32.com/eduke32@8488 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/include/colmatch.h
#	source/build/src/build.cpp
#	source/build/src/defs.cpp
#	source/build/src/palette.cpp
#	source/duke3d/src/lunatic/dynsymlist_editor.lds
#	source/duke3d/src/lunatic/dynsymlist_game.lds
#	source/duke3d/src/lunatic/engine.lua
#	source/tools/src/transpal.cpp
2019-12-23 10:59:14 +01:00
hendricks266 7db49ea20a Change PaletteIndexFullbrights from uint32_t[8] to uint8_t[32]
git-svn-id: https://svn.eduke32.com/eduke32@8487 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/include/palette.h
2019-12-23 10:57:11 +01:00
Christoph Oelckers 6e9631f2d8 - fixed all undefined symbols except OpenGLFrameBuffer. 2019-12-23 10:53:58 +01:00
Christoph Oelckers 10683e9123 - added GZDoom's Windows backend code.
Compiles but doesn't link yet.
2019-12-22 20:55:47 +01:00
Christoph Oelckers 773be7db26 - moved around a few bits of code to get rid of winbits.cpp/h. 2019-12-22 18:53:58 +01:00
Christoph Oelckers 3914eb5f85 - set up some basic reverb.
I'm not sure if this is working out as the original "reverb" was just too crappy and generic. It may be best to just disable it.
2019-12-22 17:43:39 +01:00
Christoph Oelckers 417d425f27 - fixed cherry picked commits. 2019-12-22 17:20:13 +01:00
hendricks266 f4fda7e646 SW: Fix crash issues when Track sprites are set up incorrectly
git-svn-id: https://svn.eduke32.com/eduke32@8485 1a8010ca-5511-0410-912e-c29ae57300e0
2019-12-22 15:19:55 +01:00