Christoph Oelckers
4980e0ea41
- refactor Set to use actors.
2021-10-25 19:02:44 +02:00
Christoph Oelckers
48a5448f94
- access SetList through a pointer.
2021-10-25 18:57:10 +02:00
Christoph Oelckers
0b37c9afec
- did the bubbles.
2021-10-25 17:52:31 +02:00
Christoph Oelckers
5cc1a8934e
- refactored Anim to use actors.
2021-10-24 21:50:03 +02:00
Christoph Oelckers
3b0df0e9b4
- renamed fields in Anim to match DExhumedActor.
2021-10-24 20:14:36 +02:00
Christoph Oelckers
e8e0294929
- access AnimList through a pointer.
2021-10-24 20:06:46 +02:00
Christoph Oelckers
43e849ca40
- BuildSplash and BuildExplosion.
2021-10-24 19:18:11 +02:00
Christoph Oelckers
a7b71c724e
- use the actor variant of BuildAnim wherever trivially doable.
2021-10-24 19:12:06 +02:00
Christoph Oelckers
5ff8852d12
- refactor the wasp to use actors.
2021-10-24 18:35:13 +02:00
Christoph Oelckers
a46a8c21a3
- access WaspList through a pointer.
2021-10-24 13:15:40 +02:00
Christoph Oelckers
2c8da6fe72
- refactor the spider to use actors.
2021-10-24 13:06:41 +02:00
Christoph Oelckers
6821fef5e1
- refactor scorpion to use actors.
2021-10-24 12:22:32 +02:00
Christoph Oelckers
6903404718
- access scorpion through a pointer.
2021-10-24 12:20:26 +02:00
Christoph Oelckers
937e71cfbb
- refactor Roach to use actors.
2021-10-24 12:11:33 +02:00
Christoph Oelckers
3a051b8acb
- access RoachList through a pointer.
2021-10-24 12:10:18 +02:00
Christoph Oelckers
f0f0ca020b
- refactor rex to use actors.
2021-10-24 10:59:45 +02:00
Christoph Oelckers
1cf616c7ba
- access RexList through a pointer.
2021-10-24 10:58:27 +02:00
Christoph Oelckers
54fc724b25
- fixed bad initialization of local variable.
...
Probably went unnoticed because it is in an unlikely code path.
2021-10-24 08:24:02 +02:00
Christoph Oelckers
5d0ee1478c
- fixed bad pointer comparison.
...
MSVC did not catch this, only GCC 11 and Clang errored out on this one. :(
2021-10-24 08:21:54 +02:00
Christoph Oelckers
e88627b72a
- refactor the rat to use actors.
2021-10-23 21:57:13 +02:00
Christoph Oelckers
9c8fda9a4d
- access RatList through a pointer.
2021-10-23 21:50:57 +02:00
Christoph Oelckers
cd97fdaa30
- refactor the mummy to use actors.
2021-10-23 20:49:03 +02:00
Christoph Oelckers
fab0fff1fe
- access LionList through a pointer.
2021-10-23 20:06:48 +02:00
Christoph Oelckers
cd2c796574
- refactor the lion to use actors.
2021-10-23 19:37:04 +02:00
Christoph Oelckers
3de4bc29c1
- access LionList through a pointer.
2021-10-23 19:31:53 +02:00
Christoph Oelckers
77525cecf0
- refactor the lava dude to use actors.
2021-10-23 18:51:52 +02:00
Christoph Oelckers
f12faa9279
- access LavaList through a pointer.
2021-10-23 18:41:05 +02:00
Christoph Oelckers
657e5ef6be
- refactor the fish to use actors.
2021-10-23 13:02:43 +02:00
Christoph Oelckers
f8cab790d4
- access FishList through a pointer.
...
To make the following commmit more readably.
2021-10-23 12:33:33 +02:00
Christoph Oelckers
5d7d4ce496
- fixed radial damage for actors.
2021-10-22 23:57:46 +02:00
Christoph Oelckers
0ac449ab95
- refactored Anubis.
...
This now stores its data in the actor, not a static array.
2021-10-22 22:09:02 +02:00
Christoph Oelckers
fa8edc7493
- quick replacement of some sprite[] accesses.
2021-10-22 22:05:02 +02:00
Christoph Oelckers
944b7b8776
- DeleteActor implementation.
2021-10-22 22:04:44 +02:00
Christoph Oelckers
491c27caa6
- fixed runlist handling for actor targets.
2021-10-22 22:04:04 +02:00
Christoph Oelckers
51ee9cf6c6
- fixed bad interpolation setup in AddFlow, plus some variable renaming.
2021-10-22 21:55:51 +02:00
Christoph Oelckers
4ee3505dde
- Exhumed: fixed return value of BuildTrap
2021-10-22 08:06:24 +02:00
Christoph Oelckers
6e919f2364
- Exhumed: fixed handling of torch messages for localization
2021-10-19 21:49:02 +02:00
Christoph Oelckers
2cece35902
Replaced sprite[] in some smaller functions
2021-10-19 21:49:02 +02:00
Christoph Oelckers
5a9978a27b
- extended the run list to handle actor targets.
...
Also renamed fields to be more descriptive.
2021-10-17 16:22:25 +02:00
Christoph Oelckers
1b8d3f9a89
- Exhumed: some inlines for upcoming actor refactoring.
2021-10-17 15:21:29 +02:00
Christoph Oelckers
33261db902
- some quick sprite[] replacements.
2021-10-16 15:36:34 +02:00
Christoph Oelckers
3419d6a901
- fixed compilation.
2021-10-16 15:36:34 +02:00
Christoph Oelckers
1839634d79
- small stuff
2021-10-16 15:36:33 +02:00
Christoph Oelckers
b1d15811c5
- make nBodygunSprite an actor array.
2021-10-16 15:36:33 +02:00
Christoph Oelckers
fe9ddabd35
- made nChunkSprite an actor array
...
# Conflicts:
# source/games/exhumed/src/move.cpp
2021-10-16 15:36:33 +02:00
Christoph Oelckers
c2467dc47b
- made nBodySprite an actor array.
...
# Conflicts:
# source/games/exhumed/src/aistuff.h
# source/games/exhumed/src/player.cpp
# Conflicts:
# source/games/exhumed/src/aistuff.h
# source/games/exhumed/src/player.cpp
2021-10-16 15:36:33 +02:00
Christoph Oelckers
dbe4aa3515
- renamed disassembly variables in bubbles.cpp.
...
# Conflicts:
# source/games/exhumed/src/bubbles.cpp
# source/games/exhumed/src/exhumedactor.h
2021-10-16 15:36:33 +02:00
Christoph Oelckers
0d0326f8c1
- argument of BelowNear
2021-10-16 15:36:32 +02:00
Christoph Oelckers
9badd2e78b
- converted switches to classes.
2021-10-16 15:36:32 +02:00
Christoph Oelckers
601d358b49
- converted FuncWasp to a class.
2021-10-16 15:36:32 +02:00
Christoph Oelckers
8d7f37066f
- converted FuncSpider to a class
2021-10-16 15:36:32 +02:00
Christoph Oelckers
5a424bdd06
- converted FuncSnake to a class.
2021-10-16 15:36:32 +02:00
Christoph Oelckers
61df236588
- converted FuncSet/FuncSoul to a class.
2021-10-16 15:36:32 +02:00
Christoph Oelckers
d77a5208f3
- converted FuncScorp to a class.
2021-10-16 15:36:31 +02:00
Christoph Oelckers
5418c4326f
- converted FuncRoach to a class.
2021-10-16 15:36:31 +02:00
Christoph Oelckers
25de6fe4c5
- converted FuncRex to a class.
2021-10-16 15:36:31 +02:00
Christoph Oelckers
89d98ddf34
- fixed the rat.
...
- converted FuncRat to a class.
2021-10-16 15:36:11 +02:00
Christoph Oelckers
39ca524185
- converted FuncRa to a class.
2021-10-15 22:57:53 +02:00
Christoph Oelckers
335ebe9272
- converted queen funcs to classes
2021-10-15 22:55:03 +02:00
Christoph Oelckers
93b0a35927
- converted FuncPlayer into a class
2021-10-15 22:19:07 +02:00
Christoph Oelckers
f13e1f2127
- converted all FuncObjects to classes.
2021-10-15 22:14:14 +02:00
Christoph Oelckers
3bda4d5b07
- converted FuncMummy into a class
2021-10-15 22:02:06 +02:00
Christoph Oelckers
008825fe32
- converted FuncCreatureChunk into a class.
2021-10-15 21:58:07 +02:00
Christoph Oelckers
b772200dd4
- converted FuncLion into a class
2021-10-15 21:29:24 +02:00
Christoph Oelckers
45e7b7c4d5
- converted FuncLavaDude(Limb) into classes
2021-10-15 21:25:53 +02:00
Christoph Oelckers
e73725a40e
- converted FuncGrenade into a class.
2021-10-15 21:20:28 +02:00
Christoph Oelckers
cdc7fba8a0
- converted AIFish(Limb) into classes
2021-10-15 21:17:25 +02:00
Christoph Oelckers
8f9e9de4b4
- converted FuncBullets into a class.
2021-10-15 21:11:01 +02:00
Christoph Oelckers
832b394561
- converted FuncBubble into a class.
2021-10-15 21:07:58 +02:00
Christoph Oelckers
0fc490bf40
- converted FuncAnubis into a class.
2021-10-15 21:07:33 +02:00
Christoph Oelckers
ce78b23fb6
- converted FuncAnim into a class
2021-10-15 21:06:53 +02:00
Christoph Oelckers
d130a43aa0
- preparations for cleaning up Exhumed's event dispatcher.
2021-10-15 18:51:22 +02:00
Christoph Oelckers
b725adc426
- Exhumed: split up the message word for event messages.
2021-10-15 18:49:35 +02:00
Christoph Oelckers
2ee7be0382
- Exhumed: split up the value parameter of the run list.
2021-10-15 18:37:39 +02:00
Christoph Oelckers
719081824a
- exhumedactor.h added.
2021-10-15 00:18:37 +02:00
Christoph Oelckers
6f8a5ee2d2
- Exhumed: replaced a large amount of sprite array accesses with pointers.
...
No logic changes, this is mainly search & replace.
2021-10-10 11:47:18 +02:00
Christoph Oelckers
10b0bba53e
- fixed warnings in Exhumed.
2021-10-08 19:24:45 +02:00
Christoph Oelckers
d466ea155f
- Exhumed: Avoid masking bits into the sector index as well.
...
# Conflicts:
# source/games/exhumed/src/player.cpp
2021-09-12 18:28:47 +02:00
Christoph Oelckers
9991e6665c
- Exhumed: Avoid masking sound flags into the sprite index.
...
This put a hard 4096 sprites limit into the engine. It's also a blocker for refactoring.
2021-09-12 18:27:30 +02:00
Christoph Oelckers
d82b7ff51c
- Exhumed: renamed disassembly variable.
2021-09-12 18:27:30 +02:00
Christoph Oelckers
f7a475aa94
- Exhumed: fixed sound origin in DoRegenerates.
...
Should be the actual sprite, not the table index...
# Conflicts:
# source/games/exhumed/src/items.cpp
2021-09-12 18:27:17 +02:00
Christoph Oelckers
38c9d3f702
- Exhumed: fixed crash when ending the game.
2021-08-14 10:40:14 +02:00
Mitchell Richters
33845c4a23
- Add skill
CCMD to return player's current skill, while also being able to set skill for next game.
...
* Fixes #332 .
2021-07-20 18:50:58 +10:00
Mitchell Richters
2a8e636066
- Exhumed: Extend 7b8dcde5d2
by showing the M60's clip/magazine amount available when cl_showmagamt 1
is set.
2021-07-17 14:57:43 +10:00
Mitchell Richters
6940384625
- Exhumed: Move pistol clip/magazine recalculation code that was added in 593bbe10ef
from FillWeapons()
to CheckClip()
.
2021-07-17 14:57:00 +10:00
Mitchell Richters
052429f350
- Exhumed: Change M60's clip/magazine capacity from 99 to 100 to better match the max ammo capacity of the weapon. This does not increase the player's available ammunition.
2021-07-17 14:56:05 +10:00
Mitchell Richters
f9b75b1aa9
- Exhumed: Make FillWeapons()
fill the ammo count to the maximum allowed by the game for all weapons (300).
2021-07-17 14:54:36 +10:00
Mitchell Richters
593bbe10ef
- Exhumed: Ensure FillWeapons()
recalculates the pistol clip amount after filling.
...
* When cheating, this wasn't done which lead to the clip having 6 rounds when via modulo it should have only had 3.
2021-07-17 00:11:37 +10:00
Mitchell Richters
7b8dcde5d2
- Exhumed: Make use of cl_showmagamt
.
...
* Fixes #463 .
2021-07-16 23:52:56 +10:00
Christoph Oelckers
89344a6023
- Exhumed: precache all frames of tile animations.
2021-06-02 21:31:38 +02:00
Christoph Oelckers
454816299e
- reorganized loading of textures.
...
Due to dependencies on initializing some data in app_init it was not possible to cleanly set up the fonts.
This adds a game-side function for loading the entire palettes before starting with the texture data and another one for loading game-side texture data.
This now allows fully setting up the palettes before starting with the textures and to fully set up the textures before reading the .def files.
All this is needed because to properly initialize, the fonts need to be able to access the fully initialized texture state, including replacements and hires substitutions from the .def files.
2021-06-01 11:05:26 +02:00
Christoph Oelckers
8b507ed606
- enabled the ENDOOM-like text screens when quitting Duke and SW.
...
Turned out that all they needed was the font.
2021-05-31 23:16:52 +02:00
Christoph Oelckers
9c60ab791b
- implemented all needed font overrides for localization.
2021-05-31 21:20:31 +02:00
Christoph Oelckers
af781e0422
- moved all font setup out of the C++ code.
...
All internal fonts now get defined through FONTDEFS.
Also fixing a few offsets.
2021-05-31 21:20:31 +02:00
Christoph Oelckers
42b70a7d93
- added internationalized fonts.
...
This still needs a bit of fixing and tweaking but most is working.
2021-05-31 21:20:30 +02:00
Christoph Oelckers
8fae793341
- defined a new constant, CR_NATIVEPAL, to use the font functions with a predefined palette.
...
This is mainly for code clarification, the value is the same as CR_UNDEFINED.
2021-05-29 11:47:05 +02:00
Christoph Oelckers
e10bcf6294
- split the screen job code into a generic and a Raze specific part.
...
Preparations for porting this to GZDoom.
2021-05-22 01:35:50 +02:00
Christoph Oelckers
395de23b21
- Exhumed: Don't autoaim backwards.
2021-05-16 19:20:36 +02:00
Christoph Oelckers
b520d38bc0
- removed the native implementation od Exhumed's status bar.
2021-05-15 10:25:39 +02:00
Christoph Oelckers
663f330684
- fixed GetChunkFrame implementation and one bad GetString call.
...
Exhumed's status bar is fully working with this.
2021-05-15 10:25:38 +02:00
Christoph Oelckers
b71c725e3e
- ported Exhumed's status bar.
...
Not tested yet.
2021-05-15 10:25:38 +02:00
Christoph Oelckers
c716900a3c
- handled the remaining arrays that got accessed by the status bar.
2021-05-15 10:25:38 +02:00
Christoph Oelckers
12b7c73393
- turning some of the player arrays into Player members.
...
For script code we do not want the arrays accessible so all that get accessed need to be moved into the struct first.
2021-05-15 10:25:38 +02:00
Christoph Oelckers
4e182ea5ee
- Exhumed: made the status bar independent of static global state.
...
It will now perform all state change checks itself
2021-05-15 10:25:38 +02:00
Christoph Oelckers
c9361aff76
- Exhumed: moved nPlayerItem into PlayerList
2021-05-15 10:25:37 +02:00
Christoph Oelckers
71f4946879
- Exhumed: changed lung display as well.
2021-05-15 10:25:37 +02:00
Christoph Oelckers
35c07500c3
-Exhumed: changed key display on status bar to be controlled from the status bar itself.
...
First of 6 externally controlled status bar indicators.
2021-05-15 10:25:37 +02:00
Christoph Oelckers
694066c4ec
- fixed all warnings in Exhumed.
2021-05-12 21:50:01 +02:00
Christoph Oelckers
d097c8e635
- removed the non-functional and long abandoned level music alias feature.
...
With RMAPINFO such a hack is no longer needed for anything.
2021-05-12 21:48:40 +02:00
Christoph Oelckers
03289f5097
- silenced some warnings.
2021-05-12 21:47:32 +02:00
Christoph Oelckers
10a6515b9a
- Exhumed: Fixed weapon swaying intensity, introduced by e76f63e2c0
...
Note that shifting right by 17 bits vs. shifting right by 16 bits and then multiplying the entire result by 0.5 is not the same here!
2021-05-11 00:12:03 +02:00
Christoph Oelckers
e74aca291c
- position tweaking for Nam's skies.
...
Why is this such an utter mess to get skies placed correctly? :(
2021-05-10 20:13:28 +02:00
Christoph Oelckers
8e070343c5
- added default crosshair for Exhumed.
...
See 1abadb6f1c
2021-05-08 14:49:49 +02:00
Christoph Oelckers
c679f83f75
- make all games return to the main menu when the game is ended with F10.
...
Duke still went to the intro movies which was a bit problematic.
2021-05-04 11:32:09 +02:00
Christoph Oelckers
7d77b2315f
- merged the few remaining contents of mmulti.h into d_net.h
2021-05-03 19:01:00 +02:00
Christoph Oelckers
8003ab6fa3
Merge branch 'scriptable_cutscenes' into newrenderer
2021-05-02 22:37:46 +02:00
Christoph Oelckers
4b064b9f34
- migrated Exhumed's level setup to RMAPINFO.
...
This game never had a proper setup so this also fixes the crashes with visiting the multiplayer maps.
2021-05-02 15:54:19 +02:00
Christoph Oelckers
93bfc35ad6
- use the volumes to find the starting maps for the menu and the clusters for the cutscenes.
2021-05-02 01:01:30 +02:00
Christoph Oelckers
f3eb476fbf
- minor cleanup.
2021-05-01 23:09:24 +02:00
Christoph Oelckers
10395688bf
- must restore the laptop background of Exhumed's LEV20 cutscene each frame.
...
Also fixed the variable names in this function.
2021-04-30 20:08:36 +02:00
Christoph Oelckers
4069a5096a
- scriptified Exhumed's 2D content (minus the programmatic textures.)
2021-04-30 20:08:36 +02:00
Christoph Oelckers
b65dfb6145
- check r_precache in all games.
2021-04-30 20:08:35 +02:00
Christoph Oelckers
0dc6980e5c
- made episode intro cutscenes a game independent feature.
...
So far only defined for Duke E4 but all the logic is outside the game code now and can be universally handled.
2021-04-30 20:08:33 +02:00
Christoph Oelckers
1166b00af2
- switched intro movie playing over to the new system
...
Not tested yet.
2021-04-30 20:08:32 +02:00
Christoph Oelckers
4ff2010bd1
- moved the entire screen job management to the script side.
...
This isn't hooked up yet and lots of code is commented out, the games won't start with this commit.
2021-04-30 20:08:30 +02:00
Christoph Oelckers
4a7430c8e4
- got rid of JobDesc.
2021-04-30 20:08:23 +02:00
Christoph Oelckers
fb5e2fe0c0
- use flags instead of bools.
2021-04-30 20:08:22 +02:00
Mitchell Richters
93edeac791
- Clean-up of input functions.
...
* Remove unused `getincanglef()`.
* Remove unused `getincangleq16()`.
* In `PlayerHorizon` struct, clamp value when setting target in `__settarget()`, not each public `settarget()` overload.
* Rename `PlayerAngle` method `applylook()` to `applyinput()`.
* Rename `PlayerHorizon` method `sethorizon()` to `applyinput()`.
* In `PlayerHorizon::applylook()`, slightly clean return to centre code so it doesn't do math if already at 0.
* In `PlayerAngle::applylook()`, slightly clean rotscrnang/look_ang code so it doesn't do math if already at 0 and reposition where mouse input is applied so that if input is applied, the player never enters a spin.
* In `Duke3d::player_struct::apply_seasick()`, use `buildfang()` method instead of scaling float to BAM within function.
2021-04-21 20:41:04 +10:00
Christoph Oelckers
f51872db25
Merge branch 'master' into newrenderer
2021-04-20 20:46:06 +02:00
Christoph Oelckers
9e40e49c2c
- generalized the special key handling for skipping cutscenes.
2021-04-20 15:01:26 +02:00
Mitchell Richters
d34070b8ae
- gameinput.h: Remove precise bool from horizsumfrac()
, look_anghalf()
and looking_arc()
added in a4895cb270
.
...
* It looks terrible to have low precision math versions of look_anghalf and looking_arc since we always interpolate `look_ang` now, so lets just not.
2021-04-20 21:12:17 +10:00
Mitchell Richters
2f696e1a95
Merge branch 'master' into newrenderer
2021-04-19 20:50:37 +10:00
Mitchell Richters
de06030ea0
- gameinput.cpp: Make sethorizon()
, applylook()
and calcviewpitch()
class functions of PlayerHorizon
and PlayerAngle
where appropriate.
2021-04-19 20:50:10 +10:00
Mitchell Richters
1daa346fdd
- Exhumed: Make SB_CENTERVIEW
work properly when cl_syncinput 1
is set.
2021-04-19 20:24:11 +10:00
Mitchell Richters
171d541112
Merge branch 'master' into newrenderer
2021-04-18 10:05:10 +10:00
Mitchell Richters
3961fcc28a
- Exhumed: When returning to center after going up/down stairs etc (slope tilting), don't use the backend's aim/look up/down return to center code as it's slower.
2021-04-18 10:04:17 +10:00
Christoph Oelckers
82194bbf6b
Merge branch 'master' into newrenderer
...
# Conflicts:
# source/games/exhumed/src/2d.cpp
2021-04-17 13:22:30 +02:00
Christoph Oelckers
091a9b7fef
- fixed Exhumed laptop cutscene.
2021-04-17 00:01:28 +02:00
Christoph Oelckers
2b9a527aba
- added a 'Start' method to DScreenJob.
...
Since the menu pauses the ticker this is needed to perform initial setup before the first frame.
2021-04-16 23:29:53 +02:00
Christoph Oelckers
49e07a47c6
- now that everything is fixed, the map in Exhumed can be initiated from the console.
2021-04-16 22:40:21 +02:00
Christoph Oelckers
03d517c509
- removed debug assert.
2021-04-16 22:16:21 +02:00
Christoph Oelckers
1852c0b802
- properly pause the screen job player if the menu is open.
...
Still needs a bit of work for movies with embedded streaming sound.
2021-04-16 22:03:01 +02:00
Christoph Oelckers
e580407d7d
- the remaining Exhumed screens.
...
These are not tested yet, a bit more work is needed to allow this.
2021-04-16 20:48:40 +02:00
Christoph Oelckers
a43259c40c
- Exhumed's map.
2021-04-16 20:10:46 +02:00
Christoph Oelckers
fed15a79e4
- Exhumed's intro screens.
2021-04-16 20:08:20 +02:00
Christoph Oelckers
6ed1d5e678
- DBlackScreen and DImageScreen migrated to event-based handling.
2021-04-16 17:24:58 +02:00
Mitchell Richters
be4fbbf9ec
- Exhumed: Hide player panning code behind cl_slopetilting
.
...
* Fixes #303 . again.
2021-04-16 23:37:05 +10:00
Christoph Oelckers
9c5f3f3673
- Exhumed: Skip the map when changing levels from the console.
...
The current screen job implementation does not coexist well with UI elements.
More like a hotfix, the screen job framework needs to be redone for properly handling input.
2021-04-15 23:04:14 +02:00
Christoph Oelckers
dc8b72b2ce
Merge branch 'master' into newrenderer2
...
# Conflicts:
# source/games/duke/src/actors.cpp
# source/games/duke/src/hudweapon_d.cpp
# source/games/duke/src/hudweapon_r.cpp
# source/games/duke/src/render.cpp
2021-04-15 19:34:03 +02:00
Christoph Oelckers
61a6321cd6
- Exhumed: Change map command to start the level directly without going through the scrolling map.
2021-04-15 18:55:54 +02:00