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
Christoph Oelckers
cbfb79977a
- adjustments to make it compile with the new menu code.
2019-12-13 21:01:14 +01:00
Christoph Oelckers
ddf0babefb
- run the input routine.
...
This was done in faketimerhandler which isn't called anywhere anymore.
2019-12-13 20:10:03 +01:00
Christoph Oelckers
93fc2cb10a
- fixed intro movie playback with sound disabled.
...
It would never do anything because the sound callback cannot make it advance if it isn't called.
Of course without sound it isn't properly synchronized - still better than nothing.
2019-12-13 20:08:42 +01:00
Christoph Oelckers
b86d773005
- finally something can be seen...
...
The intro movie doesn't work without sound...
2019-12-13 18:48:18 +01:00
Christoph Oelckers
0cd7c9a5ae
- removed the "configuration" Exhumed came with.
...
Seriously, what's the point of emulating something this worthless?
All settings have been remapped to the global CVARs.
2019-12-13 18:28:58 +01:00
Christoph Oelckers
b13ee90aa0
- first steps trying to get the game to work.
2019-12-13 00:19:34 +01:00
sirlemonhead
30304341a5
Clear screen before rendering intro movie - stops previous screen flickering through in OpenGL mode when zooming/rotating in at the start
2019-12-09 17:30:45 +01:00
sirlemonhead
30879292b8
Set volume level immediately for music playback. Avoids hearing a brief blip of sound if you have volume set to 0.
2019-12-07 01:03:18 +01:00
sirlemonhead
a83efd37ff
Intro movie now has audio.
...
# Conflicts:
# source/exhumed/src/movie.cpp
2019-12-07 01:03:17 +01:00
sirlemonhead
77a2625a85
Tidy Mummy AI code and fix incorrect branch
2019-12-07 01:01:04 +01:00
sirlemonhead
63120a1ca4
Fix stupid incorrect backwards Rat variable assignment
2019-12-07 01:01:03 +01:00
sirlemonhead
cd59452806
Fix FindFood() for Rat AI and tidy a bit
2019-12-07 01:01:02 +01:00
sirlemonhead
8d81e49ac9
Tidy Anubis AI code slightly
2019-12-07 01:01:00 +01:00
sirlemonhead
6cf5bd1f16
Tidy spider AI code
2019-12-07 01:00:59 +01:00
sirlemonhead
0ddfbba8a0
Tidied up DoEnergyTile() a bit and lowered the speed of the cinema text scrolling
2019-12-07 01:00:58 +01:00
sirlemonhead
e1dc15d165
Added switch case break and returns for Rex
2019-12-03 17:30:40 +01:00
nukeykt
099a995495
minor branching fix in FuncPlayer
2019-12-03 17:30:39 +01:00
nukeykt
426570729e
Use engine's MAXSECTORS value in MoveRaToEnemy
2019-12-03 17:30:37 +01:00
nukeykt
865ca92b33
Another fish ai fix
2019-12-03 17:30:36 +01:00
nukeykt
0a4129ff56
RandomWord should be unsigned
2019-12-03 17:30:35 +01:00
nukeykt
a0dac5e035
Fix bubbles
2019-12-03 17:30:34 +01:00
nukeykt
d5fd9ba8b4
Fix fish velocity calculation
2019-12-03 17:30:32 +01:00
nukeykt
c783ecbf22
Fix explode trigger seq counter randomization
2019-12-03 17:30:31 +01:00
nukeykt
51a24b3413
Fix demo playback speed
2019-12-03 17:30:30 +01:00
nukeykt
75789eee50
Fix reading demo file
...
# Conflicts:
# source/exhumed/src/exhumed.cpp
2019-12-02 21:19:25 +01:00
sirlemonhead
7a7a0e16e8
Fix /playback command line argument handling
2019-12-02 21:18:42 +01:00
sirlemonhead
a55a5ef038
Fix laptop static when using OpenGL
2019-12-02 21:18:40 +01:00
sirlemonhead
fae001df77
Even more silencing of compiler warnings
...
# Conflicts:
# source/exhumed/src/aistuff.cpp
# source/exhumed/src/config.cpp
# source/exhumed/src/exhumed.cpp
# source/exhumed/src/status.cpp
2019-12-02 21:18:39 +01:00
sirlemonhead
2e28647e31
Silence some more compiler warnings
2019-12-02 21:17:05 +01:00
sirlemonhead
c4b9137ee1
Silence compiler warnings about intentional switch fallthrough
2019-12-02 21:17:03 +01:00
sirlemonhead
5b82f519ff
Add some timing code to the Laptop scene to control the playback speed. This speed isn't likely exact to the original - might need to verify this on one of my old machines.
...
# Conflicts:
# source/exhumed/src/menu.cpp
2019-12-02 21:17:02 +01:00
sirlemonhead
33eeb3956f
Amend previous spider and lion code slightly.
2019-12-02 21:16:13 +01:00
sirlemonhead
9e44478467
Add another invalid target sprite index check for Spider (and made the lion check more consistent to other code)
...
# Conflicts:
# source/exhumed/src/lion.cpp
# source/exhumed/src/spider.cpp
2019-12-02 21:16:03 +01:00
sirlemonhead
81dce2d2fe
Amend previous spider and lion code slightly.
2019-12-01 00:02:56 +01:00
sirlemonhead
eecb503207
Tidy anims.cpp somewhat
2019-12-01 00:02:53 +01:00
sirlemonhead
a7e09febe4
Add another invalid target sprite index check for Spider (and made the lion check more consistent to other code)
2019-12-01 00:02:51 +01:00
sirlemonhead
66e3a53991
Fix another potential index of sprite array by -1
2019-12-01 00:02:49 +01:00
sirlemonhead
ceccc0c2ee
Fix an issue where the game attempts to index sprite array with -1. This occurs when runlist_DamageEnemy() is called when no source sprite for the damage is specified (an enemy burning in lava??). The game passes -1 for the 2nd parameter to this function call, and then attempts to index sprite array. Added check. Hopefully fixes crashing on the final level?
2019-12-01 00:02:46 +01:00
sirlemonhead
7b60bfdb95
Fix infinite loop in DimLights(). Should fix game locking up when finishing the final level.
2019-11-30 01:09:58 +01:00
sirlemonhead
cdf44030d7
Silence nPlayerSprite check in DoKenTest() as this can fail in valid situations, such as in RestartPlayer() while the player is still being set up.
2019-11-29 00:39:24 +01:00
sirlemonhead
de5aa31674
Fix issue causing voodoo doll of player appearing when selecting No to starting Training when already in a level. Fixes issue #20
2019-11-29 00:39:23 +01:00
sirlemonhead
1928f3fbc1
Change cheat screen messages to not display player number - are cheats usable outside of single player?!. Also removed a redundant message in FillWeapons() which got overwritten immediately anyway
2019-11-29 00:39:22 +01:00
sirlemonhead
e115058cd3
Rewrote music playback to be more sensible. Hopefully this will get rid of the crashes that the handful of people reported. Needs to be fully tested.
...
Also, not sure what to do re: map screen. OG seems to keep playing the currently playing track, which seems slightly janky? should we just play track 19?
# Conflicts:
# source/exhumed/src/cd.cpp
# source/exhumed/src/cd.h
2019-11-29 00:39:20 +01:00
nukeykt
acc8f01269
Shifting is not needed here
2019-11-28 17:06:55 +01:00
nukeykt
6f4a6daaa2
Scale status text
2019-11-28 17:06:54 +01:00
sirlemonhead
ca80125aba
Set bShowTowers back to it's default value
...
# Conflicts:
# source/exhumed/src/map.cpp
2019-11-28 17:06:53 +01:00
sirlemonhead
c7e3aa4b46
Changed the order of some variable assignment in ThrowGrenade() to match disassembly. Don't think it really makes a difference?
2019-11-28 17:06:20 +01:00
sirlemonhead
2dddf19ce7
Add shade flash highlight for currently selected Load Game name
2019-11-28 17:06:18 +01:00
sirlemonhead
f56dd9a3e1
Fix incorrect bitwise OR operation in CheckSectorSprites()
2019-11-28 17:06:17 +01:00
sirlemonhead
8b9f15d5ea
Fix DoAfterCinemaScene() not calling GoToTheCinema()
2019-11-28 17:06:16 +01:00
Christoph Oelckers
7cbe9615ea
- fixed merge error.
2019-11-26 19:15:44 +01:00
nukeykt
1b0a036995
Add fov cvar
...
# Conflicts:
# source/exhumed/src/config.cpp
# source/exhumed/src/osdcmds.cpp
2019-11-26 19:13:48 +01:00
sirlemonhead
82767751a7
Fix credits screen
...
# Conflicts:
# source/exhumed/src/exhumed.cpp
2019-11-26 19:12:52 +01:00
sirlemonhead
f34507813f
Add some error handling for music playback
2019-11-26 19:12:22 +01:00
sirlemonhead
aba3e85c8e
Fix player taunt frequency (and there was much rejoicing)
2019-11-25 23:24:20 +01:00
sirlemonhead
979f40f900
Fix missing angle mask for Anubis AI
2019-11-25 23:24:18 +01:00
sirlemonhead
803f22904b
Fix Ramses head being all tiny
...
# Conflicts:
# source/exhumed/src/exhumed.cpp
2019-11-25 23:24:17 +01:00
sirlemonhead
326947d976
Initial music playback support code
...
# Conflicts:
# source/exhumed/src/cd.cpp
# source/exhumed/src/cd.h
2019-11-24 22:39:25 +01:00
Christoph Oelckers
28294c8a96
- use symbolic constants.
2019-11-24 16:37:31 +01:00
Christoph Oelckers
11b8017752
- Exhumed compiles without errors.
2019-11-24 16:34:23 +01:00