Christoph Oelckers
05d2b90418
- Exhumed: pActor->s() in anubis.cpp
2021-12-30 09:57:26 +01:00
Christoph Oelckers
046ff607dc
- Exhumed: pActor->s() in wasp.cpp
2021-12-30 09:57:26 +01:00
Christoph Oelckers
eda75a38d2
- Exhumed: pActor->s() in snake.cpp
2021-12-30 09:57:26 +01:00
Christoph Oelckers
0fb92e3928
- Exhumed: pActor->s() in set.cpp
2021-12-30 09:57:26 +01:00
Christoph Oelckers
b34a4af15e
- Exhumed: pActor->s() in scorp.cpp
2021-12-30 09:57:26 +01:00
Christoph Oelckers
013cf05042
- Exhumed: pActor->s() in runlist.cpp
2021-12-30 09:57:26 +01:00
Christoph Oelckers
318678b5a1
- Exhumed: pActor->s() in roach.cpp
2021-12-30 09:57:25 +01:00
Christoph Oelckers
a6c592b12c
- Exhumed: pActor->s() in rex.cpp
2021-12-30 09:57:25 +01:00
Christoph Oelckers
b02feec2e8
- Exhumed: pActor->s() in rat.cpp
2021-12-30 09:57:25 +01:00
Christoph Oelckers
430a0263d5
- Exhumed: pActor->s() in ra.cpp
2021-12-30 09:57:25 +01:00
Christoph Oelckers
d162c36113
- Exhumed: pActor->s() in queen.cpp
2021-12-30 09:57:25 +01:00
Christoph Oelckers
b641da3959
- Exhumed: pActor->s() in player.cpp and view.cpp.
2021-12-30 09:57:25 +01:00
Christoph Oelckers
b6d04ffec0
- Exhumed: pActor->s() in object.cpp
2021-12-30 09:57:24 +01:00
Christoph Oelckers
dca478d284
- Exhumed: pActor->s() in mummy.cpp
2021-12-30 09:57:24 +01:00
Christoph Oelckers
23f274120c
- Exhumed: pActor->s() in move.cpp
2021-12-30 09:57:24 +01:00
Christoph Oelckers
ca88e241e1
- Exhumed: pActor->s() in lion.cpp
2021-12-30 09:57:24 +01:00
Christoph Oelckers
5700b8ade6
- Exhumed: pActor->s() in lavadude.cpp
2021-12-30 09:57:24 +01:00
Christoph Oelckers
33918ac554
- Exhumed: pActor->s() in items.cpp
2021-12-30 09:57:24 +01:00
Christoph Oelckers
1d01a6cff7
- Exhumed: pActor->s() in init.cpp + lighting.cpp
2021-12-30 09:57:24 +01:00
Christoph Oelckers
613dd67578
- Exhumed: pActor->s() in grenade.cpp
2021-12-30 09:57:23 +01:00
Christoph Oelckers
79e6412ad5
- Exhumed: pActor->s() in fish.cpp
2021-12-30 09:57:23 +01:00
Christoph Oelckers
a7cebcafbb
- Exhumed: pActor->s() in bullet.cpp
2021-12-30 09:57:23 +01:00
Christoph Oelckers
03759ef73b
- Exhumed: pActor->s() in bubbles.cpp
2021-12-30 09:57:23 +01:00
Christoph Oelckers
89a1fcdfac
- Exhumed: pActor->s() in anims.cpp
2021-12-30 09:57:23 +01:00
Christoph Oelckers
1bb7f3764d
- handle all s() cases in Exhumed using pSprite but not pActor->s().
2021-12-30 09:57:23 +01:00
Christoph Oelckers
6766a5922a
- pass actors to calcChaseCamPos.
2021-12-30 09:57:18 +01:00
Christoph Oelckers
f67e39450e
- deal with a handful of s() uses that do not match the more common patterns.
2021-12-30 09:57:13 +01:00
Christoph Oelckers
a2fc415b30
- fixed Exhumed panning setup.
...
Converted it to floating point and removed the nonsensical & with the texture size that was clearing significant bits.
2021-12-30 09:57:09 +01:00
Mitchell Richters
dd0ff465b0
- Replace spritetypebase
oz
with opos.Z
calls and eliminate spritetypebase
opos
union.
2021-12-30 09:57:07 +01:00
Mitchell Richters
a79b4b5ffc
- Replace spritetypebase
oy
with opos.Y
calls.
2021-12-30 09:57:06 +01:00
Mitchell Richters
e0fb92bb01
- Replace spritetypebase
ox
with opos.X
calls.
2021-12-30 09:57:06 +01:00
Mitchell Richters
baf78848eb
- Replace spritetypebase
z
with pos.Z
calls and eliminate spritetypebase
pos
union.
2021-12-30 09:57:06 +01:00
Mitchell Richters
cecb8dc48e
- Replace spritetypebase
y
with pos.Y
calls.
2021-12-30 09:57:05 +01:00
Mitchell Richters
33ca55023f
- Replace spritetypebase
x
with pos.X
calls.
2021-12-30 09:57:05 +01:00
Mitchell Richters
09e00a69fe
- Replace walltype
y
with pos.Y
calls and eliminate walltype
pos
union.
2021-12-30 09:57:04 +01:00
Mitchell Richters
51b647da87
- Replace walltype
x
with pos.X
calls.
2021-12-30 09:57:04 +01:00
Mitchell Richters
b2ab64bb62
- Capitalise vec3_t
z
variable.
2021-12-30 09:57:03 +01:00
Mitchell Richters
68e2691be7
- Capitalise vec3_t
y
variable.
2021-12-30 09:57:03 +01:00
Mitchell Richters
c549cc5276
- Capitalise vec3_t
x
variable.
2021-12-30 09:57:02 +01:00
Mitchell Richters
118ceb18ca
- Capitalise vec2_t
y
variable.
2021-12-30 09:57:02 +01:00
Mitchell Richters
3c9cd926ba
- Capitalise vec2_t
x
variable.
2021-12-30 09:57:02 +01:00
Christoph Oelckers
e0e6efe0a0
- Exhumed: fixed some sound source issues.
2021-12-30 09:57:01 +01:00
Christoph Oelckers
d9d05e90b5
- globally replaced all occurences of '->s().' with '->spr.'
2021-12-30 09:57:00 +01:00
Christoph Oelckers
c16b090fbe
- Exhumed: clear lasthitsect when starting a new level.
2021-12-30 09:56:55 +01:00
Christoph Oelckers
e42c3afbea
- Exhumed: fixed trap setup.
...
Must clear the structure before the first return and iterate over the walls by reference, otherwise bad pointers will get copied.
2021-12-30 09:56:55 +01:00
Christoph Oelckers
f1c0298825
- replaced numwalls with wall.Size in several places.
2021-12-30 09:56:54 +01:00
Christoph Oelckers
65bc6e6aef
- removed the now redundant wall() and sector() interator helper functions.
...
With both wall and sector now being TArrays they are not needed anymore.
2021-12-30 09:56:53 +01:00
Christoph Oelckers
8039d81467
- the remaining Exhumed flags.
2021-12-30 09:56:50 +01:00
Christoph Oelckers
988a91904a
- a large of Exhumed flags, most search& replace plus a few local variable types.
2021-12-30 09:56:49 +01:00
Christoph Oelckers
82fb03e399
- another batch of search&replace, with smaller results.
2021-12-30 09:56:48 +01:00
Christoph Oelckers
c5ae454207
- another big batch of automatic replacements.
2021-12-30 09:56:48 +01:00
Christoph Oelckers
5b65e214e0
- global search & replace of the more frequent sprite flag patterns.
2021-12-30 09:56:48 +01:00
Christoph Oelckers
b0e3c6b5ec
- some remaining sector flag stuff
2021-12-30 09:56:45 +01:00
Christoph Oelckers
d0a06ae961
- deal with most of CSTAT_SECTOR_SKY and CSTAT_SECTOR_SLOPE
2021-12-30 09:56:45 +01:00
Christoph Oelckers
8d0013128e
- Exhumed: use symbolic constant CSTAT_SPRITE_INVISIBLE
2021-12-30 09:56:45 +01:00
Christoph Oelckers
dddf48fd3e
- cleaned up and renamed buildtypes.h.
...
Content was reordered so that the file can contain the inlines belonging to the map data types that previously had to be stored elsewhere.
Also moved out of the Build folder because virtually everything in here can be traced to content available in Duke Nukem 3D's and Shadow Warrior's source releases.
2021-12-30 09:53:46 +01:00
Christoph Oelckers
46d7487a3b
- SW: clear all pointer variables the player may still hold when terminating a level.
2021-12-30 09:53:10 +01:00
Christoph Oelckers
d1f088a858
- SW/Exhumed fixed sound relinking on actor destruction.
...
This still passed the sprites instead of the actors. Moved the relinking code to DCoreActor::Destroy because it is the same for all games.
Also did a little bit of sound cleanup to ensure the sound backend does not hold stale actor pointers.
2021-12-30 09:53:10 +01:00
Mitchell Richters
2f567bdb74
- Exhumed: Fix two signed/unsigned comparison warnings in PlayFX2()
.
...
* Lines in question:
** 606 | if (chan->SoundID == nSound + 1)
** 621 | if (chan->SoundID == nSound + 1)
* All data sent to `PlayFX2()` and functions that wrap `PlayFX2()` are signed values, so keep signed all the way through.
2021-12-26 23:10:06 +01:00
Christoph Oelckers
d8ccfa1a5f
- cleaned up nextsectorneighborz, added a safe variant and use this in all places where the sector pointer is not validated.
2021-12-26 23:10:05 +01:00
Christoph Oelckers
b8c4354691
- got rid of the MAX... constants and adjusted all places still using them.
2021-12-26 23:10:02 +01:00
Christoph Oelckers
838bed7800
- final cleanup of sectnum related stuff.
...
Made sure that remaining uses of sector indices are safe to be kept and deleted a few redundant functions.
2021-12-26 23:10:01 +01:00
Christoph Oelckers
6d432fca0a
- made spritetype::sectnum a pointer.
2021-12-26 23:10:01 +01:00
Christoph Oelckers
6a43a270fa
- use sectno() access function where we really need a sector index.
2021-12-26 23:10:01 +01:00
Christoph Oelckers
8ee5d1b0d7
- activated the garbage collector
...
This finally gets rid of all static storage for actors - so no more indices ever! :)
2021-12-26 23:10:00 +01:00
Christoph Oelckers
1d371b8cbf
- clear some data on init.
2021-12-26 23:09:59 +01:00
Christoph Oelckers
8dde6a3074
- Added GC support to Exhumed
2021-12-26 23:09:59 +01:00
Christoph Oelckers
588f88c9cc
- migrated the actors to DObjects.
...
No GC yet, only the classes have been altered and some GC-related features been added.
Full switchover will require adding GC support to all data in the game.
2021-12-26 23:09:57 +01:00
Christoph Oelckers
8a2385dd89
- actor clearing cleaned up.
...
We still need this until we can get rid of the static arrays...
2021-12-26 23:09:55 +01:00
Christoph Oelckers
4cecb6f955
- removed the old actor savegame code and instead implemented a virtual Serialize function.
...
This isn't hooked up yet, currently savegames are non-functional. They will come back once the global actor arrays are no longer relevant for maintenance.
2021-12-26 23:09:55 +01:00
Christoph Oelckers
f855b1020f
- actor lists refactored.
...
No more shorts, no more static arrays.
This was one of the biggest blockers for unlimiting the engine.
2021-12-26 23:09:54 +01:00
Christoph Oelckers
eaff9e359f
- refactored the owner index in tspritetype.
...
This is now a separate type from spritetype which contains an actor pointer instead so that sprite display can be handled without requiring a static sprite array.
2021-12-26 23:09:53 +01:00
Christoph Oelckers
e13a275cfc
- got rid of the sole linear sprite iterator in Exhumed and deleted the iterator code entirely.
2021-12-26 23:09:52 +01:00
Christoph Oelckers
6600f55543
- separate map loading from actor spawning for the other games, too.
...
It still uses the horribly messed up original spawn logic, though.
2021-12-26 23:09:51 +01:00
Mitchell Richters
0c6e55d1b8
- Silence all the -Wuninitialized
and -Wmaybe-uninitialized
warnings relating to HitInfo
objects passed through to functions by reference.
2021-12-26 23:09:50 +01:00
Christoph Oelckers
5dfc79bdbe
- MarkSectorSeen
2021-12-26 23:09:48 +01:00
Christoph Oelckers
a22634f228
- sectnum reduction.
2021-12-26 23:09:47 +01:00
Christoph Oelckers
221d9fe28e
- adapted Duke's and Exhumed's sound code to directly work with actors.
...
This was already wrapped so all that needed to be done was removing the wrapper.
2021-12-26 23:09:46 +01:00
Christoph Oelckers
97b19a5cb1
- adapted Blood's sound engine to using actors.
...
Note: Savegames won't work on this commit for the other games!
2021-12-26 23:09:45 +01:00
Christoph Oelckers
b7a5ea8ef6
- moved some common utilities into the backend.
2021-12-26 23:09:44 +01:00
Christoph Oelckers
bbb860ccf3
- consolidate the iterators in the backend.
...
Using a template class that can adapt to the game specific types.
2021-12-26 23:09:44 +01:00
Christoph Oelckers
12f6b05cbe
- use access functions, all done by search & replace.
2021-12-26 23:09:44 +01:00
Christoph Oelckers
6748a39c8f
- deprecate the sector index variant of pushmove
2021-12-26 23:09:43 +01:00
Christoph Oelckers
70d7e81f4f
- adapted getzrange to the new interface.
...
This was mainly removing game side solutions in favor of a common one in the backend.
2021-12-26 23:09:42 +01:00
Christoph Oelckers
729076b79d
- adapted neartag in SW and Exhumed.
2021-12-26 23:09:42 +01:00
Christoph Oelckers
91e2391911
- adapted neartag in Duke.
2021-12-26 23:09:42 +01:00
Christoph Oelckers
b3bbf8932e
- same procedure for Exhumed.
2021-12-26 23:08:58 +01:00
Christoph Oelckers
96b9572905
- moved parts of the HitInfo subclasses into the backend.
...
All the game code now needs to do is a single 'using' statement.
2021-12-26 23:08:57 +01:00
Christoph Oelckers
4bfb03b6b3
- adapted hitscan calls in Exhumed.
2021-12-26 23:08:56 +01:00
Christoph Oelckers
9380819e4e
- initialize actorArray for all games.
...
- the foundation for an actor aware backend.
2021-12-26 23:08:56 +01:00
Christoph Oelckers
52c80f187a
- added coreactor.h
2021-12-26 23:08:55 +01:00
Christoph Oelckers
624ad6a2ad
- cleanup stuff.
...
Removed unneeded prototypes, renamed some variables; no logic changes.
2021-12-25 21:29:05 +01:00
Christoph Oelckers
943641d18e
- renamed all nSector pointers to pSector
...
No logic changes!
2021-12-25 21:29:04 +01:00
Christoph Oelckers
a3ecbe6371
- MoveQS
2021-12-25 21:29:04 +01:00
Christoph Oelckers
b1b7608cf7
- most remaining sectnum references.
2021-12-25 21:29:04 +01:00
Christoph Oelckers
2027c6ebaf
- the last sector[]
2021-12-25 21:29:04 +01:00
Christoph Oelckers
6e786fcf1e
- RadialDamage + DimSector
2021-12-25 21:29:04 +01:00
Christoph Oelckers
24d4680f6e
- sector[] in move.cpp
2021-12-25 21:29:03 +01:00
Christoph Oelckers
80f80ed5e5
- initsect
2021-12-25 21:29:03 +01:00
Christoph Oelckers
f09e7ed32f
- spawn functions.
2021-12-25 21:29:03 +01:00
Christoph Oelckers
40ae38c173
- calcChaseCamPos.
2021-12-25 21:29:03 +01:00
Christoph Oelckers
a3f1821670
- nPlayerViewSect
2021-12-25 21:29:03 +01:00
Christoph Oelckers
eaa155d52e
- various sectnums,
2021-12-25 21:29:02 +01:00
Christoph Oelckers
9b19845dfb
- AddMovingSector/CheckPushBlock
2021-12-25 21:29:02 +01:00
Christoph Oelckers
63d66e95c5
- runlist_ProcessSectorTag
2021-12-25 21:29:02 +01:00
Christoph Oelckers
1163a79da9
- renamed sectp in runlist_ProcessSectorTag
2021-12-25 21:29:02 +01:00
Christoph Oelckers
a58548c2f9
- AIElev
2021-12-25 21:29:02 +01:00
Christoph Oelckers
7713723045
- Bullets and bobs.
2021-12-25 21:29:02 +01:00
Christoph Oelckers
b191bca49e
- BuildAnim
2021-12-25 21:29:01 +01:00
Christoph Oelckers
2394420f48
- quick replacements
2021-12-25 21:29:01 +01:00
Christoph Oelckers
109ff8c3cb
- Above and Below
2021-12-25 21:29:01 +01:00
Christoph Oelckers
7b84a1464c
- don't access invalid sector in DrawView.
...
Old bug exposed by having operator[] assert on bad access to sector[].
2021-12-25 21:29:01 +01:00
Christoph Oelckers
aee560624d
- some more sectors.
2021-12-25 21:29:01 +01:00
Christoph Oelckers
78d9b78193
- most of the rest of the walls.
2021-12-25 21:29:00 +01:00
Christoph Oelckers
5374dafb56
- switches
2021-12-25 21:29:00 +01:00
Christoph Oelckers
ec12eb11f6
- palette loops for renderer.
2021-12-25 21:29:00 +01:00
Christoph Oelckers
cdef530597
- PlayerPushSect
2021-12-25 21:29:00 +01:00
Christoph Oelckers
5e01841f1e
- MoveSector et.al.
2021-12-25 21:29:00 +01:00
Christoph Oelckers
0b254255e2
- sector ambience
2021-12-25 21:28:59 +01:00
Christoph Oelckers
c933eff59f
- Traps
2021-12-25 21:28:59 +01:00
Christoph Oelckers
e57f9e08e9
- slides.
2021-12-25 21:28:59 +01:00
Christoph Oelckers
44639faabb
- Flickers
2021-12-25 21:28:59 +01:00
Christoph Oelckers
e90d1266ae
- Glows.
2021-12-25 21:28:59 +01:00
Christoph Oelckers
dfbb5192fb
- addFlash at.al.
2021-12-25 21:28:59 +01:00
Christoph Oelckers
20891f276d
- use pointers in runlist_ProcessWallTag and all its subfunctions.
2021-12-25 21:28:58 +01:00
Christoph Oelckers
2d937891ac
- 3x twoSided
2021-12-25 21:28:58 +01:00
Christoph Oelckers
2d1f5fc576
- Exhumed: some cleanup.
2021-12-25 21:28:58 +01:00
Christoph Oelckers
61d5680950
more wall loops
2021-12-25 21:28:58 +01:00
Christoph Oelckers
269bac76cd
loop cleanup in SnapSectors
2021-12-25 21:28:58 +01:00
Christoph Oelckers
9203ca425e
Exhumed: ExplodeEnergyBlock
2021-12-25 21:28:57 +01:00
Christoph Oelckers
e179b9332d
- all shorts reviewed.
...
Should be all clear now - the biggest limiter in Exhumed is the run list with ~25000 entries which may need more work if it is to be extended.
2021-12-25 21:28:53 +01:00
Christoph Oelckers
83a928adde
- next 100 shorts reviewed.
...
seq.cpp/seq.h was just renamed to int16_t.
2021-12-25 21:28:52 +01:00
Christoph Oelckers
d73c7aa543
- short review and disasm variable renaming
...
(down to 200 shorts)
2021-12-25 21:28:52 +01:00
Christoph Oelckers
033a73bce0
- Exhumed short review, part 2.
...
Down to 350.
2021-12-25 21:28:52 +01:00
Christoph Oelckers
1790ced1f8
- Exhumed: renamed disassembly fields in player struct.
2021-12-25 21:28:52 +01:00
Christoph Oelckers
30b42d24a0
- Exhumed short review
...
(down to < 550)
2021-12-25 21:28:52 +01:00
Christoph Oelckers
d5c27e6239
- unlimited the bit arrays for the automap and the bunch drawer, removed some leftover constants/declarations.
2021-12-25 21:28:50 +01:00
Christoph Oelckers
a21f6b6240
- migrated Exhumed's sector extensions to the actual struct.
2021-12-25 21:28:49 +01:00
Mitch Richters
c6f2aaf1b7
- Miscellaneous fixes to commit to change sector checks over to validSectorIndex()
.
...
* Fix missed changeover in Blood's `actSpawnSprite()`.
* Fix non-negated check on a `validSectorIndex()` call in Blood's `debrisMove()`.
* Removed a superfluous terminator in Duke's `actor.cpp`.
* Fixed bad call to `validSectorIndex()` in Exhumed's `AIAnim::Tick()`.
2021-12-25 21:28:37 +01:00
Christoph Oelckers
999ec3c95a
use validSectorIndex checks where appropriate.
...
Let’s hope that this sloppiness doesn’t have negative effects with broken maps.
# Conflicts:
# source/games/sw/src/sprite.cpp
# Conflicts:
# source/games/duke/src/prediction.cpp
# source/games/duke/src/render.cpp
2021-12-25 21:28:37 +01:00
Christoph Oelckers
7c4233bcf7
- replaced fallthrough__ with [[fallthrough]] as we are requiring C++17 and don't need workarounds for that.
2021-12-14 12:27:28 +01:00
Christoph Oelckers
7daa501a4d
- removed all #include "compat.h" except the one in build.h
...
Still all compiles fine.
2021-12-14 12:24:10 +01:00
Christoph Oelckers
e104316e75
- fixed bad parameter to getzrange.
...
This originated from 1d39bb371e
where the getzrange_old function was removed
2021-12-13 09:39:57 +01:00
Christoph Oelckers
5bb114ba6e
- fixed two bad actor references in Exhumed's radial damage code.
...
The radial source is passed through pRadialActor, not pObjActor.
2021-11-30 22:44:54 +01:00
Christoph Oelckers
71dfe7ecfe
- fixed handling for cl_capfps and cl_nointerpolate to never use any smoothratio value other than 1.0.
2021-11-29 00:57:11 +01:00
Christoph Oelckers
cd3288860a
- fixed automap player drawing for follpw mode off in all games.
2021-11-29 00:56:32 +01:00
Christoph Oelckers
4e31360fe4
- cleaned up dragpoint
...
This still contained some code for EDuke32's TROR and used a shared static global array.
It now uses the BFSSearch class to manage its bit array to unlimit the size of its working set and to avoid reallocation.
2021-11-29 00:56:25 +01:00
Christoph Oelckers
33a3e0d8bf
- deleted some unused global variables, code simplification plus extended wall index field in Trap
...
Todo: give fields more meaningful names!
2021-11-29 00:56:25 +01:00
Christoph Oelckers
c1c59006bc
- Exhumed: cleaned up disassembly-like code in SnapSectors
2021-11-29 00:56:25 +01:00
Christoph Oelckers
e6682f4489
- Exhumed: some simple wall stuff
2021-11-29 00:56:25 +01:00
Christoph Oelckers
7b1345d3e5
- Exhumed: wall stuff in AddFlash
2021-11-29 00:56:24 +01:00
Christoph Oelckers
6fc43287b3
- redid Exhumed's BelowNear function.
...
Use BFSSearch, only run one iteration of the search and only run the search if the result is actually used.
2021-11-29 00:55:44 +01:00
Christoph Oelckers
269f2580b9
- obsolete prototypes in Exhumed
2021-11-29 00:55:43 +01:00
Christoph Oelckers
4f493d3de1
- Exhumed: made all nPlayer variables ints
...
This looks safe
2021-11-29 00:55:43 +01:00
Christoph Oelckers
b9b4f1e037
- shorts replaced in Exhumed
...
only a small part, the easy stuff
2021-11-29 00:55:42 +01:00
Christoph Oelckers
d63b6cda37
- exhumed: made all nAngle variables full ints
2021-11-29 00:55:42 +01:00
Christoph Oelckers
2fdc2ec00f
- small stuff
2021-11-29 00:55:32 +01:00
Christoph Oelckers
01abe7b2ac
- addressed most unused/uninitialized variable warnings from MSVC.
2021-11-29 00:55:30 +01:00
Christoph Oelckers
c6bd5c04c7
- fixed most warnings GCC pointed out in game code.
2021-11-29 00:55:29 +01:00
Mitch Richters
e491d15ff9
- Move InputScale()
out of inputstate.cpp and into i_time.cpp
as I_GetInputFrac()
to make it available to GZDoom for potential future requirements.
...
* As part of this, feed the output of `I_GetInputFrac()` to `gi->GetInput()` instead of having each game's virtual override calling it locally.
2021-11-29 00:55:01 +01:00
Christoph Oelckers
5a6d4f88d5
- Exhumed: eliminate all remaining MAXSECTORS references
2021-11-11 23:46:50 +01:00
Christoph Oelckers
794c4483ca
-Exhumed: better handling of BuildNear/BelowNear.
...
BuildNear was only called right before calling BelowNear - now both functions are merged and use the global GlobalSectorList array for storage.
Since the data in this is local to this function it is also unnecessary to write it out to a savegame as it will get recereate each time before it is used.
2021-11-11 23:45:59 +01:00
Christoph Oelckers
d70e76e5c6
- Exhumed: use dynamic arrays for the palette backup in DrawView.
2021-11-11 23:34:03 +01:00
Christoph Oelckers
f2e344a235
- removed magic flags added to sector indices in Polymost.
...
These are better done as separate function arguments.
2021-11-11 21:28:53 +01:00
Christoph Oelckers
5465c9976c
- replaced a few chars in Exhumed
2021-11-09 17:46:39 +01:00
Christoph Oelckers
baa3e531d4
- Exhumed: more ints for shorts
2021-11-09 17:32:50 +01:00
Christoph Oelckers
9b52b3b451
- made all nSector variables full ints.
...
This already takes care of most sector[] accesses in Exhumed
2021-11-09 17:27:54 +01:00
Christoph Oelckers
366df9d4b6
- Exhumed: use the sprite's sector() member where possible.
2021-11-09 00:26:46 +01:00
Christoph Oelckers
ef241acda2
- Exhumed: some quick sector[] substitution
2021-11-09 00:12:18 +01:00
Christoph Oelckers
94b2b0af31
- widen sector index in engineLoadBoard to 32 bit
2021-11-09 00:07:00 +01:00
Christoph Oelckers
2d91786516
- changed all sector variables being passed to pushmove to full ints
2021-11-08 23:18:40 +01:00
Christoph Oelckers
3811147f70
- use proper clipmove variant in Blood and Exhumed
...
This merely extends some shorts to full ints to match the desired parameter's size.
2021-11-08 23:11:30 +01:00
Christoph Oelckers
477a2a23e6
- nextSector in runlist
2021-11-08 18:37:21 +01:00
Christoph Oelckers
52389ae02e
- sectp in osdcmd_spawn
2021-11-08 18:37:21 +01:00
Christoph Oelckers
f51cbf31ba
- sectp in runlist_ProcessSectorTag
2021-11-08 18:37:20 +01:00
Christoph Oelckers
afec39aded
- reworked non-functional anim detection when picking up an item.
...
This would not unregister the item's run list entries because the logic was insufficient.
2021-11-08 01:13:54 +01:00
Christoph Oelckers
43fdc1bb56
- Exhumed: fixed uninitialized variable in bullet code.
2021-11-07 23:33:39 +01:00
Christoph Oelckers
0da2250efe
- Exhumed: try to improve timing of the menu plasma.
2021-11-07 22:14:58 +01:00
Christoph Oelckers
60faceaf59
- Exhumed: fixed serialization.
...
The exhumedActors array was not written out, resulting in all kinds of strange effects.
2021-11-07 21:45:51 +01:00
Christoph Oelckers
d20aa47adf
- made sector parameter of updatesectorz an int and deprecated the short version.
2021-11-06 19:27:51 +01:00
Mitch Richters
8f37097e1b
- Exhumed: Revert change from edf54b4b0a
that wasn't meant to be committed.
2021-11-06 19:54:12 +11:00
Mitch Richters
edf54b4b0a
- Exhumed: Remove some dead input code that isn't in any usage.
2021-11-06 19:44:59 +11:00
Mitch Richters
1d39bb371e
- Exhumed: Replace use of getzrange_old()
inline wrapper with getzrange()
.
2021-10-30 17:30:02 +02:00
Mitch Richters
bdbe57a6b6
- Exhumed: Replace use of pushmove_old()
inline wrapper with pushmove()
.
2021-10-30 17:30:02 +02:00
Mitch Richters
0ac63fd663
- Exhumed: Replace use of clipmove_old()
inline wrapper with clipmove()
.
2021-10-30 17:30:01 +02:00
Mitch Richters
b02a6a3ec9
- Replace MIN()
from templates.h
with version provided in STL.
2021-10-30 10:36:15 +02:00
Mitch Richters
9894729fc2
- Replace MAX()
from templates.h
with version provided in STL.
...
# Conflicts:
# source/common/textures/hw_ihwtexture.cpp
# source/common/utility/templates.h
2021-10-30 10:36:02 +02:00
Christoph Oelckers
57b638f26f
- use std::clamp instead of our homegrown version.
2021-10-30 10:35:00 +02:00
Mitch Richters
20d958e0a9
- Exhumed: Don't run through the slopetilting math if the view is locked.
2021-10-30 10:24:14 +02:00
Mitch Richters
738491d9e5
- Exhumed: Repair player look/aim code.
2021-10-30 10:24:14 +02:00
Mitch Richters
8f679ecf61
- Exhumed: Repair math for chase camp gi
functions.
2021-10-30 10:24:14 +02:00
Christoph Oelckers
bb3a141c42
- fixed last commit.
2021-10-28 23:16:03 +02:00
Christoph Oelckers
7e191fb29b
- fixed damage amount in the runlist dispatcher.
2021-10-28 23:04:50 +02:00
Christoph Oelckers
91ecda2fcb
- cleaned up the run list interface.
...
Due to serialization concerns it still isn't optimal, though, because we cannot get rid of the index table yet.
2021-10-28 18:57:50 +02:00
Christoph Oelckers
791240786d
- use a wrapper function to check for the radial damage event.
2021-10-28 18:43:54 +02:00
Christoph Oelckers
7a65cc46d0
- moved AI wrappers out of the main sources.
...
This is mainly to reduce commit noise for what follows. These functions will soon be deleted.
2021-10-28 18:39:49 +02:00
Christoph Oelckers
3842936012
- feebtag.
2021-10-28 14:25:28 +02:00
Christoph Oelckers
07ad50d97c
- sound API
2021-10-28 14:23:31 +02:00
Christoph Oelckers
97b4116f28
- run list API
2021-10-28 14:23:15 +02:00
Christoph Oelckers
4197a7ed84
- BlockInfo
2021-10-28 14:08:53 +02:00
Christoph Oelckers
3a5ea07951
- some smaller changes.
2021-10-28 14:06:36 +02:00
Christoph Oelckers
ee03eb1b3d
- movement and elevators.
2021-10-28 13:54:36 +02:00
Christoph Oelckers
9cfd682c9e
- eliminated Player::nSprite.
2021-10-28 13:54:09 +02:00
Christoph Oelckers
076a995c6e
- besttarget and Player::nTarget.
2021-10-28 13:51:32 +02:00
Christoph Oelckers
8e13bb6e35
- RestartPlayer, plus wrapper removal.
2021-10-28 13:43:39 +02:00
Christoph Oelckers
2195bc0b76
- got rid of several inline wrappers.
2021-10-28 10:51:12 +02:00
Christoph Oelckers
2b8893762c
- movesprite family mostly done.
2021-10-28 10:46:16 +02:00
Christoph Oelckers
30541b09a4
- PlotCourseToSprite, FindPlayer and GetUpAngle.
2021-10-28 09:57:35 +02:00
Christoph Oelckers
49c1163a33
- eliminated AngleChase inline.
2021-10-28 09:54:10 +02:00
Christoph Oelckers
be19dbb2ce
- nDoppleSprite
2021-10-28 09:47:29 +02:00
Christoph Oelckers
eae1d589ec
- playerFloorSprite
2021-10-28 09:25:13 +02:00
Christoph Oelckers
1e10cef556
- PostProcess
2021-10-28 09:21:49 +02:00
Christoph Oelckers
9d642e18e7
- BuildDrip / ProcessTrailSprite
2021-10-28 08:51:50 +02:00
Christoph Oelckers
e6c7e5bc18
- radial stuff.
2021-10-28 08:32:08 +02:00
Christoph Oelckers
df9d1b1ceb
- the rest of object.cpp
2021-10-27 23:04:33 +02:00
Christoph Oelckers
b59cb67f05
- Object, part 1.
2021-10-27 23:03:59 +02:00
Christoph Oelckers
d3e55739c7
- energy blocks.
2021-10-27 23:02:56 +02:00
Christoph Oelckers
51202cba78
- nFinaleSpr.
2021-10-27 20:58:13 +02:00
Christoph Oelckers
b480bb3634
- BuildSpark
2021-10-27 20:56:43 +02:00
Christoph Oelckers
56d0f41a36
- BuildTrap
2021-10-27 20:56:43 +02:00
Christoph Oelckers
11912486de
- moved all loose player related arrays into the Player struct.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
c01c9122de
- slideData cleanup.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
73d415369d
- AddFlow API cleanup.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
6bf6ac5b34
- Flashes
2021-10-27 20:56:42 +02:00
Christoph Oelckers
a4306d9bab
- renamed some fields.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
ca6724a3f5
- make nNetStartSprite an actor array.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
1591d6fbdb
- Regenerates.
...
MP only so not really relevant - the code looked broken anyway.
2021-10-27 20:56:41 +02:00
Christoph Oelckers
2f511b3cff
- UseItem + subfunctions.
2021-10-27 20:56:41 +02:00
Christoph Oelckers
d04d92fd49
- destroyItemAnim, other replacements in AIPlayer::Tick
2021-10-27 20:56:41 +02:00
Christoph Oelckers
587cd09e8e
- BuildItemAnim
2021-10-27 20:56:41 +02:00
Christoph Oelckers
6a1423d92f
- sprite[] in gun.cpp.
2021-10-27 20:56:41 +02:00
Christoph Oelckers
9ef4f0fa99
- Gravity function.
2021-10-27 20:56:41 +02:00
Christoph Oelckers
5234481370
- fixed bad actor conversion.
2021-10-27 20:56:30 +02:00
Christoph Oelckers
14ccb74aac
- for radial damage the 'other' actor is always undefined.
2021-10-27 16:12:56 +02:00
Christoph Oelckers
f60d20b50a
- handle the grenade.
2021-10-27 15:46:18 +02:00
Christoph Oelckers
525ea72bfa
- use pointers for grenades.
2021-10-27 00:37:17 +02:00
Christoph Oelckers
6b3aa44211
- first pass over grenade.cpp.
...
Mainly field renaming.
2021-10-27 00:37:17 +02:00
Christoph Oelckers
c9d391634d
- some missing queen bits.
2021-10-27 00:37:17 +02:00
Christoph Oelckers
2a28908b1a
- pass radial damage inflictor through event struct
2021-10-27 00:30:57 +02:00
Christoph Oelckers
a09f2d8a51
- migrated deletesprite calls in spawn function.
2021-10-27 00:25:00 +02:00
Christoph Oelckers
6d3f9ca0d6
- migrated a few functions to use actors.
2021-10-27 00:24:28 +02:00
Christoph Oelckers
345667f945
- handle the remaining old-style iterators.
2021-10-27 00:18:23 +02:00
Christoph Oelckers
2397bf48f2
- fixed uninitialized ObjectList.
...
This needs to clear each entry each time it is allocated for use.
The object where this frequently caused problems is the drum being spawned by the Anubis drummers.
2021-10-26 23:52:21 +02:00
Christoph Oelckers
75b8a0579e
- elevator stuff.
2021-10-26 22:08:26 +02:00
Christoph Oelckers
c59ec14ba4
- fixed wasp event dispatcher to pass along the damage amount.
2021-10-26 21:55:59 +02:00
Christoph Oelckers
331ba71473
- BuildCreatureChunk wrapper.
2021-10-26 21:15:07 +02:00
Christoph Oelckers
70a7656619
- handle the queen itself.
2021-10-26 21:10:51 +02:00
Christoph Oelckers
52ab800548
- QueenAngleChase.
2021-10-26 20:52:25 +02:00
Christoph Oelckers
ae271b272a
- made QueenEgg use actor pointers.
2021-10-26 20:13:03 +02:00
Christoph Oelckers
47929972c0
- replaced sprite indices in QueenHead.
2021-10-26 19:55:20 +02:00
Christoph Oelckers
839292ac91
- renamed fields in the queen structs to match DExhumedActor.
2021-10-26 18:50:46 +02:00
Christoph Oelckers
3971c8ffd2
- fixed compilation
2021-10-26 08:13:23 +02:00
Christoph Oelckers
ae786bff98
- removed the last references to sprite[] in bullet.cpp.
2021-10-25 23:16:35 +02:00
Christoph Oelckers
99e189fa2b
- IgniteSprite
2021-10-25 23:15:59 +02:00
Christoph Oelckers
c1598185f7
- parameter cleanup of BuildBullet.
2021-10-25 23:09:01 +02:00
Christoph Oelckers
eece69fbbd
- renamed variables in BuildBullet and removed unused parameters.
2021-10-25 23:07:58 +02:00
Christoph Oelckers
fa657e23a3
- bullet.cpp, enemy pointer.
2021-10-25 23:07:42 +02:00
Christoph Oelckers
3d35ceecb0
- bullet.cpp, first part.
2021-10-25 22:24:20 +02:00
Christoph Oelckers
bf1f87eff9
- converted Ra.
2021-10-25 21:19:32 +02:00
Christoph Oelckers
d023f9633a
- converted the snake
2021-10-25 21:09:33 +02:00
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