Commit Graph

15 Commits

Author SHA1 Message Date
nmlgc 1e41fa0617 [Maintenance] Remove redundant `#include`s
Part of P0285, funded by [Anonymous] and iruleatgames.
2024-07-09 08:46:51 +02:00
nmlgc 15f89da4ee [Maintenance] master.hpp: Split off all PC-98 graphics-related declarations
Part of P0284, funded by [Anonymous] and Blue Bolt.
2024-07-09 08:41:33 +02:00
nmlgc 3fad323d14 [Maintenance] master.hpp: Move into the master.lib directory
With the upcoming `#include` cleanup, it finally makes sense to split
off all graphics-related code into its own header. In turn, it makes
more sense to store all of these future master.lib headers in, well,
the master.lib directory, which provides a new 8 characters for their
file names. Turns out that the rationale I gave for the root directory
placement in 8266bbd didn't hold up 3½ years later…
(Also, the `pc98.h` declarations will eventually be split into
`game/coords.hpp` and something in `platform/x86real/pc98/`.)

Part of P0284, funded by [Anonymous] and Blue Bolt.
2024-07-09 08:41:24 +02:00
nmlgc 110d0534ed [Maintenance] Move `extern "C"` into the headers it applies to
The translation units were probably a better place back when most of
the codebase was still compiled in C mode, we only had a few C++ TUs,
almost everything needed to be declared as `extern "C"`, and moving
these declarations into the headers would have been really noisy with
all the `#ifdef __cplusplus` / `#endif` required. Nowadays though,
we've greatly reduced that surface area. And given that headers will
include even more headers as part of the upcoming `#include` cleanup,
it makes sense to make the jump now.

Part of P0284, funded by [Anonymous] and Blue Bolt.
2024-07-09 08:40:49 +02:00
nmlgc 610df17856 [Maintenance] [th02] Start a new header for player performance metrics
All of these are scalar values with at most a dependency on
`platform.h`. Since these item-related values are mainly read by
score/skill calculation code, it makes sense to declare them in a
dedicated header along with the upcoming metrics.

Part of P0279, funded by Yanga and Blue Bolt.
2024-04-12 00:29:10 +02:00
nmlgc 61cd04c103 [Maintenance] [th02] Score: Define a single type for score values
No unsigned score values in this game. Yet…

Part of P0278, funded by Yanga.
2024-04-12 00:29:09 +02:00
nmlgc ac33bd292d [Decompilation] [th02] Items: Initialization/reset function
And that's it, items complete!

Completes P0243, funded by Yanga.
2023-06-07 18:53:22 +02:00
nmlgc f5313d14cb [Decompilation] [th02] Items: Semi-random spawn function
Featuring a 1-in-512 chance for a bomb drop… among every 4th call to
this function.

Part of P0243, funded by Yanga.
2023-06-07 18:32:38 +02:00
nmlgc 2a059e2206 [Decompilation] [th02] Items: Spawn function
Hitting exactly 30% RE for TH02.

Part of P0243, funded by Yanga.
2023-06-07 18:32:38 +02:00
nmlgc 310ff3d7df [Decompilation] [th02] Items: Spawning the 5 items when losing a life
Part of P0243, funded by Yanga.
2023-06-07 17:00:35 +02:00
nmlgc 1099383256 [Decompilation] [th02] Items: Tile invalidation
Part of P0243, funded by Yanga.
2023-06-07 16:58:10 +02:00
nmlgc 943da08767 [Decompilation] [th02] Items: Collision detection and collection
Part of P0243, funded by Yanga.
2023-06-07 16:57:41 +02:00
nmlgc 8f7478b108 [Decompilation] [th02] Items: Update and render function
Part of P0243, funded by Yanga.
2023-06-07 16:49:05 +02:00
nmlgc 916992e5d1 [Reverse-engineering] [th02] Items: Shared state
Part of P0243, funded by Yanga.
2023-06-07 15:38:32 +02:00
nmlgc 6ff396f96a [Reverse-engineering] [th02] Items: Structure
Part of P0243, funded by Yanga.
2023-06-07 15:34:49 +02:00