Christoph Oelckers
73a4e0d1fe
- made Blood's FullMap flag global and removed the hacks to show the full automap.
...
Also refactor show2dsector into a bit array to get rid of the bit shifting code at play here.
2020-03-07 19:30:18 +01:00
Christoph Oelckers
a203e37aeb
- removed buggy diagnostics print.
2020-03-05 01:01:04 +01:00
nukeykt
b88eeea9a2
Exhumed: Correctly set player action id for mummified state
2020-03-04 17:57:16 +01:00
Christoph Oelckers
8eef69b1a6
- compile fixes.
2020-03-02 23:05:07 +01:00
sirlemonhead
df34d8ca85
PCExhumed: Big bunch of AI tidying, code consistency changes and misc fixes. Aiming to get compatibility with new demos from DOS exe.
...
# Conflicts:
# source/exhumed/src/anubis.cpp
# source/exhumed/src/bubbles.cpp
# source/exhumed/src/bubbles.h
# source/exhumed/src/bullet.cpp
# source/exhumed/src/bullet.h
# source/exhumed/src/fish.cpp
# source/exhumed/src/fish.h
# source/exhumed/src/grenade.cpp
# source/exhumed/src/grenade.h
# source/exhumed/src/lavadude.cpp
# source/exhumed/src/lavadude.h
# source/exhumed/src/lion.cpp
# source/exhumed/src/lion.h
# source/exhumed/src/mummy.cpp
# source/exhumed/src/mummy.h
# source/exhumed/src/queen.cpp
# source/exhumed/src/queen.h
# source/exhumed/src/ra.cpp
# source/exhumed/src/ra.h
# source/exhumed/src/rat.cpp
# source/exhumed/src/rat.h
# source/exhumed/src/rex.cpp
# source/exhumed/src/roach.cpp
# source/exhumed/src/roach.h
# source/exhumed/src/runlist.cpp
# source/exhumed/src/scorp.cpp
# source/exhumed/src/set.cpp
# source/exhumed/src/set.h
# source/exhumed/src/snake.cpp
# source/exhumed/src/snake.h
# source/exhumed/src/spider.cpp
# source/exhumed/src/spider.h
# source/exhumed/src/wasp.cpp
# source/exhumed/src/wasp.h
2020-03-02 23:01:55 +01:00
Christoph Oelckers
951d28f15d
- Exhumed movie fix.
2020-03-01 18:32:43 +01:00
Christoph Oelckers
cf662de165
- commented out diagnostic messages.
2020-03-01 17:22:31 +01:00
Christoph Oelckers
12af524dcc
- fixed Exhumed's ingame menu.
...
The bad setup here didn't let the menu's exit action pass to the game code, it still needed ugly workarounds.
2020-03-01 16:32:41 +01:00
Christoph Oelckers
4bc0531bf7
- disabled help screen in Exhumed and save menus in Deer Huntin'.
2020-02-29 12:55:12 +01:00
Christoph Oelckers
69e018d0c4
- added serialization of playing sounds.
...
For ambient sounds that can be cleanly restarted a new 'transient' flag was added so that these do not get written out.
Tested on SW so far, other games yet to do.
2020-02-29 12:33:35 +01:00
Christoph Oelckers
1a66878205
- fixed some issues with Exhumed's ambient and creepy sounds.
...
Both now refer to a proper target for bookkeeping.
2020-02-28 19:56:37 +01:00
sirlemonhead
69aba5f3ea
PCExhumed: Don't modify coordinates with abs() in runlist_CheckRadialDamage(), correct to original behaviour.
2020-02-28 18:42:45 +01:00
sirlemonhead
cd4090e531
PCExhumed: Fix Anubis drum not moving correctly when shot (bad angle calc).
2020-02-27 18:27:33 +01:00
Christoph Oelckers
0ed3b3b3ea
- manual merge of * PCExhumed: Don't shrink/expand screen viewable area if in map mode. Fixes #327
...
Code was too different for cherry-picking.
2020-02-26 20:51:19 +01:00
Christoph Oelckers
6315bd3960
- Exhumed - fixed wrong sound origin for special effect sound
2020-02-26 00:20:52 +01:00
Christoph Oelckers
b4a2a5c187
- fixed Exhumed's creepy sounds.
2020-02-25 20:10:36 +01:00
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
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
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
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
4d7a43004c
- use the new SW interpolation function for all games.
2020-02-02 10:27:47 +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
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
eac1007c56
- automap color fix.
2020-01-30 22:05:18 +01:00
Christoph Oelckers
4bf519dcb0
- fixed copy/pasted broken 'map' CCMD.
2020-01-30 20:25:52 +01:00
Christoph Oelckers
4aaf6c4cf6
- check for angular overflow in pitch calculations.
2020-01-29 21:52:17 +01:00
Christoph Oelckers
8657ecb35d
- implemented 'map' CCMD for all games.
2020-01-28 11:20:30 +01:00
Christoph Oelckers
9ca1e56713
- added extended sound lookup as well plus menu options.
2020-01-27 22:29:45 +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
Christoph Oelckers
245aa5d3bc
- reworked global palette state for robustness.
2020-01-26 10:58:00 +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
a7b020d1a8
- implemented proper screen size scaling for Exhumed.
2020-01-22 16:14:01 +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
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
5739b4b024
- added savepic generation to Exhumed.
2020-01-14 21:48:01 +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
sirlemonhead
1ddcc41ed8
PCExhumed: Fix spark effect when destroying an energy tower.
2020-01-10 17:32:28 +01:00
Christoph Oelckers
cfed7afd02
- all source compile now on macOS
2020-01-08 01:00:57 +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
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
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
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
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
sirlemonhead
5e6c109d35
PCExhumed: Correct variable name/usage in runlist channel loop.
2020-01-04 10:06:15 +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
Christoph Oelckers
e63ca0f471
- removed redundant keyboard.h header
2020-01-02 19:56:57 +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
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
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
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
f1891c7750
- fixed compilation.
2019-12-29 22:47:40 +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
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
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
2b95808d42
- fixed ambient sounds not restarting in DN3D and RR.
2019-12-28 12:59:19 +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
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
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
ce1a78fd62
- work on the savegame writer.
...
It saves, reloading not implemented yet.
2019-12-27 10:52:40 +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
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
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
cc81b95570
- main menu works in the common framework.
...
The rest is messed up, though. This menu is really on an entirely different level of crappiness, even for a 1995 game.
2019-12-14 12:39:18 +01:00
Christoph Oelckers
5ac0eaad0b
- added support data for the Powerslave demo.
2019-12-14 09:48:04 +01:00
sirlemonhead
3265b52c17
Add support for Powerslave demo version
...
# Conflicts:
# source/exhumed/src/exhumed.cpp
# source/exhumed/src/grpscan.cpp
# source/exhumed/src/grpscan.h
# source/exhumed/src/sound.cpp
2019-12-14 09:32:20 +01:00
Christoph Oelckers
ff91493e39
- this was not correct.
2019-12-14 00:20:03 +01:00
Christoph Oelckers
0885befe6b
- fixed input on the map.
2019-12-13 21:13:42 +01:00