Luke Street
a3790c983d
CAnimTreeTransition: Handle negative transTimeRem (workaround)
2020-09-16 14:53:29 -04:00
Luke Street
d7b5587e48
CParticleGenInfoGeneric: Check for kInvalidUniqueId in SetParticleEmission
2020-09-16 04:38:09 -04:00
Luke Street
a9ed8c4329
CAnimData: Actually create CParticleData in InitializeEffects
2020-09-16 04:33:36 -04:00
Luke Street
daad01d129
CBSBiPedLocomotion: Fix strafe type calculation
2020-09-16 01:49:53 -04:00
Luke Street
8b35ff3906
CBSNewFlyerLocomotion: Fix strafe type calculation in UpdateLocomotionAnimation
2020-09-16 01:45:07 -04:00
Luke Street
3e8369d24d
CDrone: Check for normal model in PreRender
2020-09-13 20:07:24 -04:00
Phillip Stephens
fb69ae741d
Fix Thardus' structure and implement basic behavior
2020-09-12 18:40:19 -07:00
Lioncash
d66f534a8c
CParticleDatabase: Simplify insert into emplace call
...
Same behavior, but much more succinct and constructs the std::string in
place.
2020-08-25 18:44:58 -04:00
Luke Street
87437881a0
CCharAnimTime & CPOINode: Fix operator<
2020-08-24 18:42:43 -04:00
Luke Street
3f17c72b30
CCharAnimTime: Fix operator== between Infinity
2020-08-24 02:28:18 -04:00
Lioncash
b88dd6b373
CGroundMovement: Make use of designated initializers
...
Same behavior, less duplication of variable names.
2020-08-02 22:54:34 -04:00
Lioncash
97f2576e2a
CFBStreamedCompression: Eliminate undefined pointer casting
...
Some (but not all pointer casting in this file is undefined behavior).
To rectify this, we can make use of a light wrapper around memcpy to
make all of this well-defined.
2020-08-02 03:34:32 -04:00
Lioncash
4b140d8954
CAnimData: Move variable closer to usage spot
...
Keeps the code localized, and doesn't unnecessarily execute the
constructor until necessary.
2020-08-02 02:20:10 -04:00
Lioncash
4e9b22962c
CModelData: Remove usages of const_cast
...
Allows readers to know that these functions do affect member state.
2020-08-01 23:45:49 -04:00
Lioncash
e9084df80b
CFBStreamedAnimReaderTotals: Remove redundant memset
...
We can just make use of make_unique instead, which does it as part of
the interface.
2020-08-01 06:29:21 -04:00
Luke Street
ca96676057
Merge remote-tracking branch 'origin/icesheegoth'
2020-06-06 16:27:08 -04:00
Lioncash
a0bdb2588f
CParticleDatabase: Make use of heterogenous lookup
...
Resolves a TODO. (Technically this can be done with C++17 only, as
std::map allows heterogenous lookup since that standard).
Reduces number of allocations necessary for lookups.
2020-05-27 06:54:22 -04:00
Lioncash
fecfb14f35
CBodyState: Make references const where applicable
...
The referenced objects aren't modified
2020-05-25 22:21:36 -04:00
Luke Street
6ad1aa79ab
Merge branch 'master' into metroid
2020-05-16 23:12:00 -04:00
Lioncash
4b5074b298
RuntimeCommon: Const qualify auto references where source is const
...
Marks references that would be deduced as const automatically with const
to be explicit to the reader.
2020-05-12 20:32:51 -04:00
Luke Street
9608efc222
CMetroid: Implement KnockBack, TelegraphAttack & more
2020-05-09 18:39:11 -04:00
Luke Street
7759b3f0dc
CBodyStateCmdMgr: constexpr CBodyStateCmds
2020-05-09 18:37:34 -04:00
Luke Street
e8ce4c2e27
CMetroid: More function implementations
2020-05-09 02:51:02 -04:00
Lioncash
579ae79291
General: Mark CMaterialFilter instances constexpr where applicable
...
Allows omission of runtime overhead.
2020-05-07 14:14:18 -04:00
Luke Street
973eb622c7
CAnimTreeSequence: Add EpsilonZero check
2020-04-30 02:17:06 -04:00
Luke Street
abfd5a464f
CGroundMovement: Fix CheckFalling not being called consistently
2020-04-29 02:09:20 -04:00
Phillip Stephens
7b9fecfdc6
CIceSheegoth: Final state implementations
2020-04-24 07:36:49 -07:00
Phillip Stephens
b1a897d246
CIceSheegoth: Implement Think
2020-04-22 15:06:15 -07:00
Lioncash
f24559890a
TSegIdMap: Make use of std::array where applicable
...
Stronger typing and eliminates array to pointer decay.
2020-04-22 01:59:29 -04:00
Lioncash
fa3e639a9d
RuntimeCommon: Make use of bitfield initializers where applicable
...
Continues and finishes the migration towards initializing all bitfield
members where applicable
2020-04-21 17:16:19 -04:00
Luke Street
24acb585f8
MSVC & zeus fixes; update hecl-gui
2020-04-19 21:09:30 -04:00
Luke Street
56cebfbacd
Merge pull request #308 from AxioDL/fmtlib-update
...
Update fmtlib
2020-04-12 03:06:46 -04:00
Lioncash
1fff540102
CAnimPlaybackParms: Make class constexpr constructible
...
Allows for removal of some trivial runtime initializers.
2020-04-11 20:55:46 -04:00
Jack Andersen
5b4441ac36
Update fmtlib
2020-04-11 12:51:39 -10:00
Luke Street
0fc53c91dc
Merge pull request #303 from lioncash/size
...
IAnimReader: Make use of size_t for capacity and iterators
2020-04-11 02:12:41 -04:00
Luke Street
304340bd35
Merge pull request #304 from AxioDL/remove-union-bitfields
...
Runtime: Replace bitfield unions with explicit initializers
2020-04-11 02:12:21 -04:00
Lioncash
0414235e76
CTransitionDatabaseGame: Tidy up GetMetaTrans()
...
We can leverage auto here to make the lambda functions significantly
less verbose.
2020-04-10 23:51:18 -04:00
Lioncash
72370910ad
IAnimReader: Make use of size_t for capacity and iterators
...
Allows using container sizes and capacities without needing to cast
them, allowing for dehardcoding of array sizes in some scenarios.
2020-04-10 23:24:52 -04:00
Luke Street
4a3ce8453f
Runtime/Graphics: Replace bitfield unions with constructor initializers
2020-04-10 15:03:15 -04:00
Luke Street
74bce8458b
Merge pull request #299 from lioncash/const2
...
CGunWeapon: Eliminate usages of const_cast
2020-04-09 10:46:52 -04:00
Lioncash
db9a52fae3
CBodyState: Resolve sign conversion warnings in GetLocoAnimation()
2020-04-07 12:56:29 -04:00
Lioncash
ce710a94f6
CBodyState: Always initialize x3c8_primeTime
...
Provides a deterministic consistent state upon construction
2020-04-07 12:55:41 -04:00
Lioncash
5fe494f683
CLayoutDescription: Always initialize xc_scale
...
Provides a total deterministic initial state for the data member.
2020-04-07 12:34:15 -04:00
Lioncash
c3ddbfae89
CBodyState: Always initialize x8_jumpType
...
Provides a deterministic initial state for the member.
2020-04-07 12:32:06 -04:00
Lioncash
56f48e8745
CAdditiveBodyState: Dehardcode array size
2020-04-07 12:31:33 -04:00
Lioncash
2b1a86794b
CAdditiveBodyState: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-04-07 12:27:47 -04:00
Lioncash
18c0111edb
CModelData: Give all function prototype parameters names
...
Makes the interface more self-documenting and allows IDE introspection
to function better.
2020-04-07 07:13:18 -04:00
Lioncash
f0ff83e39a
CTransitionDatabase: Add virtual destructor
...
Prevents any undefined behavior from occurring through polymorphic
usage.
2020-04-07 06:04:58 -04:00
Lioncash
8182688b34
CAnimationDatabase: Add virtual destructor
...
Given this class is used polymorphically, this is cautionary to prevent
any potential undefined behavior from occurring through refactors over
time.
2020-04-07 06:03:14 -04:00
Lioncash
f96ea81d69
CPASDatabase: Resolve sign-conversion warnings
...
We can leverage size_t here to resolve sign-conversion warnings.
While we're in the same area, we can remove a use of at() for
std::vector, given a bounds check already precedes it.
2020-04-06 13:21:06 -04:00