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

6675 Commits

Author SHA1 Message Date
Lioncash
7fbdf384de Console: Reuse iterator in unregisterCommand()
We can use the result of the first lookup to avoid doing another
redundant lookup to perform the erasure.

While we're at it, we can use std::string's std::string_view constructor
in order to avoid an unnecessary strlen() call.
2019-10-21 01:07:41 -04:00
Lioncash
5d2987588b Console: Use emplace in registerCommand()
Allows avoiding a redundant initial element. We can also remove the
const from the std::function rvalue to allow a std::move to take effect.

We can also use the std::string_view constructor for std::string to
avoid an unnecessary strlen() call.
2019-10-21 01:03:30 -04:00
Lioncash
cbd40382bf Console: Convert std::bind to lambda functions
Same behavior, but more efficient than wrapping the function.
2019-10-21 00:53:15 -04:00
0feffbdbb7 Merge pull request #31 from lioncash/empty
CVar: Use std::string::empty where applicable
2019-10-20 18:34:39 -07:00
18382e5bb6
Merge pull request #112 from lioncash/emplace
rstl: Return reference to emplaced element in emplace_back()
2019-10-20 18:33:06 -07:00
ce45cd279c
Merge pull request #111 from lioncash/array
CGunWeapon: Minor changes
2019-10-20 18:32:57 -07:00
Lioncash
23f323b0f7 CVar: Use std::string::empty where applicable
We can use empty() instead of comparing against a default constructed
new instance.
2019-10-19 19:24:06 -04:00
Lioncash
18f64dac8d rstl: Amend unrelated clang-format discrepancies
Avoids others being hit by these if any changes in the header ever need
to be made in the future.
2019-10-19 02:06:33 -04:00
Lioncash
15e856404d rstl: Return reference to emplaced element in emplace_back()
Follows the behavior of the C++17 variant of emplace_back, which returns
a reference to the emplaced element.

This allows eliminating cases like:

container.emplace_back(some, things, arguments);
container.back().blah();

... // subsequent modifications to the element

given we can just retrieve the reference from the emplace_back call.
2019-10-19 02:05:09 -04:00
Lioncash
26a9ceab60 CGunWeapon: Eliminate const_cast usages in DrawMuzzleFx()
We can just make the temporary variable non-const to eliminate the need
for const_casts.
2019-10-19 01:11:19 -04:00
Lioncash
271ee6d8c3 CGunWeapon: Make use of algorithms where applicable
We can leverage these to also eliminate some hardcoded sizes.
2019-10-19 01:11:05 -04:00
Lioncash
c228baf5f7 CGunWeapon: Make use of std::array where applicable
Makes the arrays strongly typed and also allows us to dehardcode some
loop boundary constants.
2019-10-19 01:07:01 -04:00
Lioncash
c36e6a85b9 CGunWeapon: Organize cpp includes
Makes the source file consistent with the header.
2019-10-19 00:03:38 -04:00
Jack Andersen
dfcad01c2f Fix TypedVariant building with MSVC 2019-10-18 15:31:54 -10:00
6a3eba0091
Merge pull request #103 from lioncash/unique
CParticleDataFactory: Use unique_ptr where applicable
2019-10-18 01:01:40 -07:00
c63ee167da
Merge pull request #110 from lioncash/override
MkCastTo: Use override where applicable
2019-10-18 01:00:31 -07:00
07502c7071
Merge pull request #109 from lioncash/log
CLogBookScreen: Minor tidying changes
2019-10-18 01:00:20 -07:00
Lioncash
853df176ed MkCastTo: Use override where applicable
Generates the derived classes with the override specifier to prevent
warnings.
2019-10-17 22:15:25 -04:00
Lioncash
3a0daa3ab9 CLogBookScreen: Use forward declarations where applicable
Allows for avoiding the over exposing of types through the header when
included in other translation units or headers.
2019-10-15 10:25:43 -04:00
Lioncash
5b8f3f6693 CLogBookScreen: Organize cpp includes
Tidies them up to be consistent with its header.
2019-10-15 10:13:30 -04:00
Lioncash
4db0e49851 CLogBookScreen: Invert conditional within UpdateBodyText()
Allows unindenting the contained code by one level.
2019-10-15 10:05:53 -04:00
Lioncash
b93f7a4ceb CLogBookScreen: Use std::u16string's append() member instead of operator+
Appends to the existing buffer instead of constructing a superfluous
temporary.
2019-10-15 10:03:54 -04:00
Lioncash
d64824d3e5 CLogBookScreen: Make use of std::any_of within IsScanCategoryReady()
Same thing but collapses into a single return.
2019-10-15 10:00:15 -04:00
Lioncash
251a2a7723 CLogBookScreen: Make use of structured bindings where applicable
Allows decomposing long pair names into their constituent elements
2019-10-15 09:57:24 -04:00
Lioncash
f21ee0786a CLogBookScreen: Make signed/unsigned/FP conversions explicit
Silences warnings relating to signed/unsigned comparisons and
conversions to floating-point types.
2019-10-15 09:36:10 -04:00
Lioncash
3951a07bfa CLogBookScreen: Dehardcode constants where applicable
We can just query the containers for the iteration value
2019-10-15 09:16:13 -04:00
Lioncash
4b78d51a85 CLogBookScreen: Use emplace_back where applicable
Allows simplifying code and constructing elements in place instead of
copying them (which is what would occur with the defautl move
constructor).
2019-10-15 07:22:01 -04:00
9e2486ba0e
Use std::string::empty rather than string comparison 2019-10-13 19:47:24 -07:00
6260708ba4
Cook/cache fixes for unset original IDs 2019-10-13 19:45:43 -07:00
76f90569ca
Merge pull request #108 from lioncash/case
CAutoMapper: Collapse case statements in ProcessMapZoomInput()
2019-10-13 13:12:20 -07:00
Jack Andersen
3506ee1796 Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/hecl 2019-10-12 18:54:33 -10:00
Jack Andersen
72fabc9329 Minor blender exception detection bug fix 2019-10-12 18:54:07 -10:00
Lioncash
040c724a8a CAutoMapper: Collapse case statements in ProcessMapZoomInput()
Same behavior as the game executable, but without the code duplication.
2019-10-12 13:57:01 -04:00
668f8da97d
Merge pull request #106 from lioncash/find
CCollisionPrimitive: Simplify the InitAdd* member functions
2019-10-12 07:29:13 -07:00
6996ebfbec
Merge pull request #105 from lioncash/collision
CCollisionPrimitive: Minor cleanup
2019-10-12 07:29:04 -07:00
aa956fff55
Merge pull request #104 from lioncash/cuv
CUVElement: Provide initial value for cv in GetValueUV()
2019-10-12 07:28:54 -07:00
59da98b991
Merge pull request #107 from lioncash/ball
CBallCamera: Use bool instead of float for holding boolean value
2019-10-12 07:26:54 -07:00
e1990a686e
Update hecl 2019-10-12 07:13:36 -07:00
8a3b19126a Fix shader generation 2019-10-12 07:12:50 -07:00
Lioncash
21c1ed2940 CBallCamera: Use bool instead of float for holding boolean value
Using a float is very suspect and also more expensive in terms of
code-gen to access and modify the variable.
2019-10-12 02:25:24 -04:00
Lioncash
5f4aba60e1 CCollisionPrimitive: Simplify the InitAdd* member functions
We can extract the duplicated behavior out into its own member function
and then reuse it in order to deduplicate repeated behavior.

This allows simplifying the member functions in a manner that allows
declaring most of the variables const. The lack of mutable behavior
within these functions makes it much nicer to read.
2019-10-12 00:27:18 -04:00
Lioncash
d2a44dbc0b CollidableAABox: Default destructor
Same behavior, but remains consistent with the rest of the codebase.
2019-10-11 22:53:01 -04:00
Lioncash
da4a33f01a CCollisionPrimitive: Default virtual destructor
Same behavior, but more consistent with the existing interface, given
a constructor is defaulted.
2019-10-11 22:39:58 -04:00
Lioncash
9cbe8ba885 CCollisionPrimitive: Use using for type aliases where applicable
Same behavior, better readability.
2019-10-11 22:36:57 -04:00
Lioncash
af7d8e9095 CUVElement: Provide initial value for cv in GetValueUV()
The game executable itself sets this variable to an initial value of 1
prior to calling cycleFrames' GetValue() member function.
2019-10-11 17:05:26 -04:00
Lioncash
35fb0e4911 CUVElement: Use const where applicable
While we're at it, we can also make conversions to float explicit.
2019-10-11 17:05:23 -04:00
Lioncash
7430b70b73 CParticleDataFactory: Use unique_ptr where applicable
Same behavior, but makes the functions a little safer in terms of memory
management.
2019-10-11 15:16:13 -04:00
Jack Andersen
c4ecf972f5
Merge pull request #102 from lioncash/element
CIntElement: Add class to handle RTOI int elements
2019-10-06 12:10:15 -10:00
Lioncash
8b58cdc268 CIntElement: Add class to handle RTOI int elements
Within the int element handling code, there seems to be a missing
implementation (with the FourCC 'RTOI'), which seems to take two 32-bit
floating point values, multiplies them, then converts the result to a 32-bit
integer.
2019-10-06 08:52:41 -04:00
5f0f3ea45c
More tweak CVars 2019-10-05 07:07:13 -07:00