2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-05-16 07:11:21 +00:00

3234 Commits

Author SHA1 Message Date
56b198838f
Update hecl 2019-09-29 05:44:37 -07:00
bb43821f31
Merge pull request #87 from lioncash/seedling
CSeedling: Convert array of std::string to array of std::string_view
2019-09-28 22:09:08 -07:00
Lioncash
6ad5de497f CSeedling: Make skNeedleLocators an array of std::string_view
Makes the strings non-allocating. This also eliminates 12 runtime static
constructors that need to execute on program start.
2019-09-28 20:22:31 -04:00
Lioncash
3f743d5c9f CSeedling: Use std::array with skNeedleLocators
Makes the array strongly-typed and impervious to implicit array to
pointer decay.
2019-09-28 20:21:24 -04:00
Lioncash
2a34b6be68 CSeedling: Move skNeedleLocators into the cpp file
This can be entirely hidden from external view, making it an
implementation detail.
2019-09-28 20:15:39 -04:00
Lioncash
08d4addc70 CSeedling: Organize source file includes
Tidies it up a little.
2019-09-28 20:08:45 -04:00
00cff89141
Merge pull request #86 from lioncash/header
General: Normalize RuntimeCommon include paths
2019-09-28 08:02:35 -07:00
b60ad339d5
Fix CStringExtras::CompareCaseInsensitive, std::lexicographical_compare does not have the intended behavior 2019-09-28 08:00:49 -07:00
Lioncash
a633b8e8fd General: Normalize RuntimeCommon include paths
Performs the same normalizing done to the RuntimeCommonB target, now all
of the runtime headers have normalized include paths.
2019-09-28 04:14:29 -04:00
4b25d58caf
Update submodules 2019-09-27 20:38:47 -07:00
720a052a6c
Merge pull request #85 from lioncash/constant
CCameraManager: Collapse private static variables into functions
2019-09-27 19:52:05 -07:00
Lioncash
359f505787 CCameraManager: Collapse private static variables into functions
Four of the five variables aren't modified, so they can be specified
directly within the functions and just be reused in place of the
variable names. This allows the constants to be elided or put into
read-only memory if necessary. It also makes the mutable value explicit.
2019-09-27 22:46:59 -04:00
8591787409
Update submodules 2019-09-26 06:55:29 -07:00
3a8d669b68
Merge pull request #84 from lioncash/emplace
CBooRenderer: Use emplace_back() where applicable
2019-09-26 06:54:57 -07:00
a914d5499a
Merge pull request #83 from lioncash/driver
CMemoryCardDriver: Correct erroneous fallthrough within HandleCardError
2019-09-26 06:54:46 -07:00
a735a9f5ce
Merge pull request #82 from lioncash/header2
General: Normalize RuntimeCommonB include paths
2019-09-26 06:54:10 -07:00
Lioncash
178e0e2cbc CBooRenderer: Use emplace_back() where applicable
Given the appended types consist of trivial types, it's more efficient
in this context to construct the data in place over using push_back,
which will cause a redundant copy (move semantics on trivial types are a
copy).
2019-09-24 22:51:38 -04:00
Lioncash
027c10464f CMemoryCardDriver: Correct erroneous fallthrough within HandleCardError()
In the game executable itself, there exists no fallthrough here (which
makes sense, given all IO errors would be reported as character set
errors, otherwise).
2019-09-24 16:36:43 -04:00
Lioncash
36d04456dd General: Normalize RuntimeCommonB include paths
Finishes the normalizing of all of includes within the RuntimeCommonB target's headers.
2019-09-23 17:22:37 -04:00
d6b70f37c2
Merge pull request #81 from lioncash/header
General: Normalize several headers' include paths
2019-09-22 22:05:41 -07:00
Lioncash
06789d1860 General: Normalize several headers' include paths
Normalizes the include paths and makes them consistent. Also adds any
missing includes relevant to the interface.
2019-09-22 20:36:33 -04:00
8cdf7f3af3
Merge pull request #80 from lioncash/burst
CBurstFire: Use std::array where applicable
2019-09-22 13:49:10 -07:00
Lioncash
8dcffbb67f CBurstFire: Use std::array where applicable
Makes the array type strongly typed and prevents implicit array to
pointer decay.
2019-09-22 09:48:07 -04:00
Lioncash
adf9610138 CBurstFire: Tidy up includes
Includes all necessary headers and uses a forward declaration where
applicable. Ensures inclusion changes in other headers don't break the compilation
of these headers and source files.
2019-09-22 09:45:01 -04:00
2e8eec91ea
Missed one 2019-09-21 06:10:54 -07:00
68e2fad74f
Fix TCastTo.hpp inclusions, add comment to warn against modifying include path 2019-09-21 06:07:13 -07:00
79121b6f47
Update submodules 2019-09-21 05:47:22 -07:00
a89852fc46
Merge pull request #79 from lioncash/trunc
CAuiEnergyBarT01: Prevent truncation within DownloadBarCoordFunc
2019-09-21 05:44:27 -07:00
88e057bf11
Merge pull request #78 from lioncash/const2
CGuiWidgetDrawParms: Mark Default instance as const
2019-09-21 05:44:00 -07:00
110f07256d
Merge pull request #77 from lioncash/state
CPlayerState: Make use of std::array where applicable
2019-09-21 05:43:49 -07:00
87497edcf9
Merge pull request #76 from lioncash/player
CPlayer: Make file-scope CMaterialFilter instances constexpr
2019-09-21 05:43:38 -07:00
Lioncash
3f06dd0a64 CAuiEnergyBarT01: Prevent truncation within DownloadBarCoordFunc
Without float literals, the calculation is performed in double precision
and then truncated down to float implicitly.
2019-09-19 22:31:46 -04:00
Lioncash
04cc300019 CGuiWidgetDrawParms: Mark Default instance as const
This isn't ever modified, so it can be made const to prevent
unintentional modification (and allow it to be placed within the RO
segment).
2019-09-19 21:46:11 -04:00
Lioncash
f49c8e9d6c CPlayerState: Use std::array where applicable
Prevents implicit array->pointer decay and makes for a more convenient
data type.
2019-09-19 15:42:50 -04:00
Lioncash
f4fd182741 CPlayerState: Move arrays into an anonymous namespace where applicable
Keeps local arrays together and makes it impossible to accidentally
violate the ODR.
2019-09-19 15:36:39 -04:00
Lioncash
bc285913c8 CPlayerState: Organize includes 2019-09-19 15:27:20 -04:00
Lioncash
019ee29a0c CPlayer: Make file-scope CMaterialFilter instances constexpr
Now that the interface is constexpr, we can mark these as constexpr.
2019-09-19 15:18:44 -04:00
9c2fd54546
Merge pull request #75 from lioncash/matlist
CMaterialFilter/CMaterialList: Make interface constexpr
2019-09-19 01:21:56 -07:00
a4262dc4d2
Merge pull request #74 from lioncash/player
CPlayer: Use std::array where applicable
2019-09-19 01:18:46 -07:00
Lioncash
2d8111531f CMaterialFilter: Make interface constexpr
A few instances of CMaterialFilter are constructed at file-scope using
the Make* functions and the constructor. Given these aren't constexpr,
this means these are technically runtime function calls. We can make
these constexpr to allow the initialization to be done at compile-time,
slightly improving startup time.
2019-09-18 13:00:04 -04:00
Lioncash
0e39c64bfc CMaterialList: Make interface constexpr 2019-09-18 12:45:11 -04:00
Lioncash
1f13fc05a0 CMaterialFilter/CMaterialList: Amend inclusions 2019-09-18 12:38:14 -04:00
Lioncash
6ec903f9ac CPlayer: Use std::array where applicable
Makes the arrays strongly-typed and impervious to implicit
array->pointer decay. We can also eliminate a few hardcoded magic
values.
2019-09-18 12:28:44 -04:00
Lioncash
70fb763180 CPlayer: Enclose translation-unit-local data within an anonymous namespace
Keeps all local data within one spot and prevents any potential ODR
violations related to them from occurring.
2019-09-18 12:27:15 -04:00
Lioncash
33f10e2552 CPlayer: Organize includes 2019-09-18 11:50:26 -04:00
b5d829379e
Merge pull request #73 from lioncash/size
CPlayer: Use size_t with SfxIdFromMaterial
2019-09-18 01:41:47 -07:00
Lioncash
45cdc38ac0 CPlayer: Use size_t with SfxIdFromMaterial
Allows passing in sizes without potential truncation from size_t,
allowing nicer use of std::size() to dehardcode some magic values.
2019-09-17 14:52:42 -04:00
5b4580e5bf
Merge pull request #72 from lioncash/array
CMorphBall: Use std::array where applicable
2019-09-17 01:30:44 -07:00
Lioncash
96f035f24b CMorphBall: Use std::array where applicable
Makes the arrays strongly-typed and impervious to implicit
array->pointer decay.

This also uncovered an out of bounds memory read within UpdateEffects
cause by said array->pointer decay.
2019-09-16 21:11:30 -04:00
Lioncash
e4b22ea9d8 CMorphBall: Place internally linked data within an anonymous namespace
Keeps all internal data within one place and also prevents any potential
ODR violations from occurring in relation to any of these.
2019-09-16 14:53:52 -04:00