Commit Graph

12669 Commits

Author SHA1 Message Date
Christoph Oelckers 8bfb0b1e20 - do not dim the objects of the Exhumed background screen.
This was for dimming the console background but since the console already dims its background itself it made the background nearly opaque black.
2020-10-25 09:22:17 +01:00
Christoph Oelckers 273ad5e133 - backend update 2020-10-25 09:20:26 +01:00
Christoph Oelckers 570897005c - added sound playback to the Smacker video player.
Thanks to Blood's weird setup and the resulting lack of sound support in NBlood's player I never realized that this is a fully featured movie format that actually has sound support.
Now the soundtrack will play if present.
2020-10-25 00:46:39 +02:00
Christoph Oelckers 1a21e73cd9 - fixed bad collision state check in movesprite.
Fixes #147
2020-10-24 21:36:27 +02:00
Christoph Oelckers aeda977bc2 - fixed incomplete font initialization. 2020-10-24 21:02:00 +02:00
Christoph Oelckers 9a6a98ada9 - RR: Picking up the crossbow should also enable the dynamite as a separate weapon. 2020-10-24 20:43:36 +02:00
Christoph Oelckers f02cf7e067 - fixed issues with fog setup and added missing fog to Exhumed's red palette.
Foggy lookups should not attempt to calculate a fade ramp, that does not work if the color gets brighter with distance.
Fixes #143
2020-10-24 20:33:33 +02:00
Christoph Oelckers acda4b7799 - fixed Duke's RPG explosion
Fixes #146
2020-10-24 19:44:10 +02:00
Christoph Oelckers 28a926eb9a - Blood: Copy the 'shade' member for sprites.
This got lost when the loader was transitioned to using a local buffer to read the map data.
Fixes #140
2020-10-24 19:11:58 +02:00
Christoph Oelckers c33525381e - undid the native part of GetFullscreenRect because the functions are not compatible. 2020-10-24 18:13:45 +02:00
Christoph Oelckers ce03813ab1 - Exhumed: Fixed the invulnerability item.
Fixes #137
2020-10-24 18:03:06 +02:00
Christoph Oelckers c82d9d2908 - backend update from GZDoom. 2020-10-24 17:30:47 +02:00
sinisterseed 8b03abcd00 - allow Wang to make sounds when healing with "Player Speech" turned off.
Looks like I overlooked this one while doing the speeches, which left Wang completely silent when healing. This allows his relief sound to play when the toggle is off, but the "Acupuncture" joke will still be silenced.
2020-10-24 14:24:54 +03:00
Christoph Oelckers 82d87deb30 - added missing includes for release build. 2020-10-24 10:01:14 +02:00
Christoph Oelckers 8fd0fe5955 - changed the spriteq to use pointers instead of indices. 2020-10-24 09:40:10 +02:00
Christoph Oelckers 34e39dd221 - pass spawner as an actor pointer to 'lotsofstuff'.
Allows doing this without using sprite indices.
2020-10-24 09:36:35 +02:00
Christoph Oelckers a5b3681630 - foundation for a better collision info management.
The way this is handled is the main reason why Build maps are size limited, but since it is extremely invasive it needs to be taken out of the game code piece by piece, this is the framework for doing this for Duke.
2020-10-24 09:31:15 +02:00
Christoph Oelckers 16e49ac1fd - use pointer for sprite access in movesprite_r.
Bringing it in line with movesprite_d.
2020-10-24 09:20:45 +02:00
Christoph Oelckers 42e5201e9f - replaced a few array accesses where a pointer is already available. 2020-10-24 09:11:45 +02:00
Christoph Oelckers 87e4c0fa7d - experimented a bit with optimizing the spawn function's use. 2020-10-24 09:05:54 +02:00
Christoph Oelckers 356060e127 - optimized another batch of array accesses in the spawn functions. 2020-10-24 08:52:21 +02:00
Christoph Oelckers 6311898152 - renamed a few disassembly variables. 2020-10-24 07:48:51 +02:00
Christoph Oelckers 5cde56de28 - another case of replacing a long list of array accesses with a pointer. 2020-10-24 07:39:51 +02:00
Christoph Oelckers 03da2011b6 - array cleanup in spawn.cpp. 2020-10-24 07:34:54 +02:00
Christoph Oelckers d237471b79 - DoActor cleanup.
Using pointers instead of repeated array accesses now.
2020-10-24 07:25:25 +02:00
Christoph Oelckers 00b8a75de4 - made cheatGod function less ugly. 2020-10-24 07:19:53 +02:00
Christoph Oelckers 8868be659f - make snd_speech toggle work in SW. 2020-10-23 22:53:02 +02:00
sinisterseed f78d9fb770 - marked most of Wang's speech lines to be used with the "Player Speech" toggle. 2020-10-23 22:38:57 +02:00
Christoph Oelckers 46d90f5d49 - clearcamera and ssp. 2020-10-23 22:37:38 +02:00
Mitchell Richters be21cb0602 - Duke: Fix `give` CCMD to ensure it works after being resurrected from the dead via god cheat.
* Extension to 63cb7dd2bd.
2020-10-22 20:18:41 +11:00
Mitchell Richters f46d9499a5 - Duke (RR): Adjust when to call `DrawWeaponBar()` within `Statusbar()`.
* Partially addresses #1 of https://forum.zdoom.org/viewtopic.php?f=340&t=70284.
2020-10-22 19:54:39 +11:00
Mitchell Richters e63f5e1ae7 - Duke (RR): Fix bad text setup in `DrawWeaponBar()`.
* Fixes #2 of https://forum.zdoom.org/viewtopic.php?f=340&t=70284.
2020-10-22 19:40:39 +11:00
Mitchell Richters d90badef6f - Exhumed: Amend b6ec41e2b1 to ensure next/prev weapon is actually available before trying to switch to it.
* Fixes https://forum.zdoom.org/viewtopic.php?f=340&t=70266.
2020-10-22 19:30:04 +11:00
Christoph Oelckers e702a13ef4 - close the quickload and quicksave confirmation screens after selection.
Fixes #139
2020-10-22 01:01:28 +02:00
Mitchell Richters c98f7ac491 - gameinput.cpp: Don't set a target when serialising `PlayerHorizon` struct.
* Fixes #131.
2020-10-22 09:41:21 +11:00
Mitchell Richters 63cb7dd2bd - Duke: Fix rotscrnang locked when reviving player after death via `DNKROZ` cheat.
* Fixes #138.
2020-10-22 09:21:35 +11:00
Christoph Oelckers 9440bc0c6d - avoid using ptrdiff_t in templated contexts.
Some systems map this to 'long' instead of 'long long' and not everything provides handlers for this type.
2020-10-21 19:19:45 +02:00
Christoph Oelckers 9cdaaff42b - migrated EGS and deletesprite to new actor interface.
Inline wrappers for old code exist.
The backupplayer inline was moved into player.cpp because that's the only place it gets used.
2020-10-21 19:14:41 +02:00
Christoph Oelckers b8b79b6fa9 - renamed a few things. 2020-10-21 18:42:47 +02:00
Christoph Oelckers b1f2475230 - serialize null pointers correctly. 2020-10-21 16:31:18 +02:00
Christoph Oelckers 6f4a0c94e8 - something on player is now a pointer as well 2020-10-21 16:31:18 +02:00
Christoph Oelckers 72329eb01b - wackedbyactor, too. 2020-10-21 16:31:18 +02:00
Christoph Oelckers e94274a543 - holoduke_on is now a pointer as well. 2020-10-21 16:31:18 +02:00
Christoph Oelckers d7604a3160 - made on_crane a pointer as well. 2020-10-21 16:31:17 +02:00
Christoph Oelckers 7c88de0b42 - made player.actorsqu a pointer and added the needed infrastructure for that. 2020-10-21 16:31:17 +02:00
Christoph Oelckers 39c154dc15 - fixed compile errors 2020-10-21 16:31:17 +02:00
Christoph Oelckers 8aca0774dc - adding more helper wrappers. 2020-10-21 16:31:17 +02:00
Christoph Oelckers 0f2c19522e - defined the iterators. 2020-10-21 16:31:17 +02:00
Christoph Oelckers 78afb67c7f - setup for Duke actor data transition to something more scripting friendly.
The main problem here is that there's two data arrays representing an actor - sprite and hittype and the engine only uses indices for reference.
By setting up hittype to contain a sprite reference, the function and iterator interface can be rewritten to use a single pointer instead to represent an actor.
The main objective is to reduce the number of accesses to the global arrays which constitute the biggest refactoring blocker.
2020-10-21 16:31:17 +02:00
Christoph Oelckers 05c095e448 - fixed parameter ordering for WW2GI's change weapon event call.
This happens when variables are ambiguously named... :?
2020-10-21 07:31:21 +02:00