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

2612 Commits

Author SHA1 Message Date
Lioncash
2517fac404 RetroDataSpec: Make member functions const where applicable
Marks member functions that don't modify instance state as const.
2019-08-14 22:25:15 -04:00
fa7785d024 Fix GetAreaFog 2019-08-14 12:56:46 -07:00
ea12a54a41
Merge pull request #42 from lioncash/const
Runtime: Make const/non-const getters have the same name
2019-08-14 12:47:52 -07:00
Lioncash
afab3e0327 Runtime: Make const/non-const getters have the same name
Makes for a more consistent interface, as getters won't have different
names to remember based off whether or not they're const qualified.
2019-08-14 12:45:57 -04:00
6760f78568 Update jbus 2019-08-14 07:12:09 -07:00
5980d11df0 Update submodules 2019-08-14 06:52:46 -07:00
2ace76e3d2
Merge pull request #41 from lioncash/const
RuntimeCommon: Use const on member functions where applicable
2019-08-14 06:36:27 -07:00
bab78f96a5
Merge pull request #40 from lioncash/constexpr
RetroTypes: Make types constexpr where applicable
2019-08-14 06:36:16 -07:00
64489c7461
Merge pull request #39 from lioncash/bind
MP1: Migrate from std::bind to lambdas
2019-08-14 06:36:06 -07:00
Lioncash
d3d629d405 RuntimeCommon: Use const on member functions where applicable
Adds missing const qualifiers on class member functions that don't
modify instance state.
2019-08-14 09:25:39 -04:00
Lioncash
1f8ed5af25 RetroTypes: Make types constexpr where applicable
These are generally used as basic tags and ID types, so these can have a
constexpr interface. This is particularly beneficial, given some of
these types are used in file-static lookup tables.

Without being constexpr, these type's constructors in that case are
technically runtime static constructors. While most compilers will
initialize the type at compile-time, this would be dependent on the
optimizer. By marking them constexpr, we allow it outright. It also
allows those arrays to be made constexpr as well.
2019-08-14 05:20:43 -04:00
Lioncash
8b7945e76f MP1: Migrate from std::bind to lambdas
Provides a more straightforward means of supplying custom behavior in
place. Lambdas also typically optimize better compared to std::bind
objects.
2019-08-14 04:55:21 -04:00
bade450431
Merge pull request #37 from lioncash/conversion
Runtime/Input/CFinalInput: Correct return value of AKey, ASpecialKey and AMouseButton
2019-08-14 01:05:05 -07:00
38ac9c12ba
Merge pull request #38 from lioncash/options
Runtime/CGameOptions: Use std::array where applicable
2019-08-14 01:04:26 -07:00
Lioncash
acb9ac92e7 Runtime/CGameOptions: Use std::array where applicable
Makes the data a little more strongly typed; preventing implicit
array->pointer decay. It also allows simplifying assignments within the
CGameState code.

While we're at it, we can also eliminate several instances of magic
numbers related to the array sizes throughout the code.
2019-08-14 03:24:00 -04:00
Lioncash
27a8274e3b Runtime/Input/CFinalInput: Make comparison operators const
While we're at it, we can also provide an inequality operator for
logical symmetry.
2019-08-14 02:11:50 -04:00
Lioncash
e9e9de26b2 Runtime/Input/CFinalInput: Correct return value of AKey, ASpecialKey and AMouseButton
The other A-prefixed functions all return a float value, however these
are truncating float values to bool. We can amend this to prevent
potential compilation warnings.
2019-08-14 02:07:02 -04:00
cf294db9eb
Merge pull request #36 from lioncash/virt-func
Runtime/Weapon/CGameProjectile: Fix misnamed virtual function
2019-08-13 23:03:40 -07:00
Lioncash
09f917a9aa Runtime/Weapon/CGameProjectile: Fix misnamed virtual function
This has a vaguely equivalent name to FluidFXThink (which has an
uppercase X). Given this function isn't explicitly called anywhere
directly, this is assumed to be a typo.
2019-08-14 02:00:09 -04:00
7eb3bce499 Update submodules, more CMetroidBeta imps 2019-08-13 14:41:15 -07:00
ebdcfb6b51 Initial CMetroidBeta imps 2019-08-11 08:14:52 -07:00
380e44148f Fix missed conflict 2019-08-10 20:28:19 -07:00
21266982ac Merge branch 'master' of ssh+git://git.axiodl.com:6431/AxioDL/urde 2019-08-10 20:03:14 -07:00
a572100176 Add CRipper files 2019-08-10 20:02:54 -07:00
9905496a79 Update specter 2019-08-10 19:59:29 -07:00
ee1d595655
Merge pull request #34 from lioncash/override
Editor: Use override where applicable
2019-08-10 19:57:30 -07:00
Lioncash
d336e1fc00 Editor: Use override where applicable
Continues the override modernization with the Editor code.
2019-08-10 22:18:35 -04:00
edebe93e6d
Merge pull request #35 from lioncash/goto
Editor/ProjectManager: Remove use of goto
2019-08-10 17:51:21 -07:00
ad5e395a51 Fixes for override modernization 2019-08-10 17:49:41 -07:00
Lioncash
a65b32892e Editor/ProjectManager: Make use of std::make_unique
Same thing with a more straightforward syntax.
2019-08-10 05:52:09 -04:00
Lioncash
43e808ff17 Editor/ProjectManager: Remove pointer cast in GetObj()
Pointer casting like this is technically undefined behavior, we can just
use a lambda and forward the arguments over to the athena read handler.
2019-08-10 05:40:52 -04:00
Lioncash
df663359c7 Editor/ProjectManager: Remove use of goto
We can wrap the behavior into a lambda function and then call it where
necessary, removing the need for goto (and allowing non-trivial types in
the codepath).
2019-08-10 05:32:31 -04:00
9d5b21fd63 Merge branch 'lioncash-override' 2019-08-09 23:02:52 -07:00
Lioncash
a5a2516138 RetroDataSpec: Use override where applicable
Continues the override modernizations, applying the keyword where
applicable to the RetroDataSpec target.
2019-08-10 00:24:30 -04:00
1e625e0995 Fix missed override declarations 2019-08-09 15:07:52 -07:00
1d3e5cdb70 Implement Oculus loader 2019-08-09 14:55:59 -07:00
Lioncash
9312eef905 RuntimeCommon: Use override where applicable
Continues the override modernization by applying it to the main
RuntimeCommon target. Resolves around 1100+ cases where override can be
used.
2019-08-09 17:39:42 -04:00
5eaa7a23e8 Merge branch 'override' of https://github.com/lioncash/urde 2019-08-09 06:27:54 -07:00
8089566788 Merge branch 'assign' of https://github.com/lioncash/urde 2019-08-09 06:27:05 -07:00
Lioncash
2059535b55 RuntimeCommonB: Use the override specifier where applicable
Applies the override keyword where applicable to indicate visually where
member function overriding is occurring. This only targets
the RuntimeCommonB target as a starting point, which resolves around
900+ cases where the keyword could be used.
2019-08-09 09:13:26 -04:00
Lioncash
af8731f2d2 GuiSys/CInstruction: Correct erroneous assignment in TestLargestFont
Without this, x20_largestMonoW will never be any value other than zero,
which is indicative of a logic bug.
2019-08-09 07:08:04 -04:00
2f65d6d3a2 Merge branch 'namespace' of https://github.com/lioncash/urde into lioncache-namespace 2019-08-08 20:33:05 -07:00
Lioncash
fc906eec66 MP1/CMFGame: Remove erroneous forward declaration
This type is actually defined within the urde::MP1 namespace, not the
top-level urde namespace.

We remove the namespace itself however, given the header for that type
is already being included.
2019-08-08 23:10:00 -04:00
d648f156b8 Revert original dolphin hash idea completely 2019-08-03 17:05:40 -07:00
ff83dbc676 Minor fixes and cleanup 2019-08-03 17:02:53 -07:00
9d2cbf61ed Add texture cache containing information about textures 2019-08-03 16:44:52 -07:00
Jack Andersen
0ab08daae7 Windows build fixes 2019-07-27 15:21:31 -10:00
Jack Andersen
5acf9ecbcf Graphics debug groups and bug fixes 2019-07-20 22:42:52 -10:00
Jack Andersen
b4fe474de3 Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde 2019-07-19 18:29:06 -10:00
Jack Andersen
7a3da1f7a6 Massive fmtlib refactor 2019-07-19 18:27:21 -10:00