Luke Street
aba51246d8
CDrone: Remove redundant field
2020-09-09 02:30:11 -04:00
Luke Street
535f44deec
CDrone: Fix UpdateTouchBounds
2020-09-09 02:30:11 -04:00
Luke Street
fbdfdb0fa4
CDrone: Fix CanRenderUnsorted
2020-09-09 02:30:11 -04:00
Luke Street
e0f4128901
CDrone: Fix knockback variant
2020-09-09 02:30:11 -04:00
Luke Street
f93400c8c2
CDrone: AcceptScriptMsg fixes
2020-09-06 18:12:15 -04: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
bd882edee6
ScriptLoader: Fix float ordering for CAtomicBeta
...
Fixes #325
2020-08-24 04:00:30 -04:00
Luke Street
f96a02e7ae
CAtomicBeta: Some member renaming
2020-08-24 03:59:30 -04:00
Luke Street
a224d27043
CAtomicAlpha: Fix DoUserAnimEvent, AggressionCheck
2020-08-24 03:33:26 -04:00
Luke Street
3f17c72b30
CCharAnimTime: Fix operator== between Infinity
2020-08-24 02:28:18 -04:00
Luke Street
a0e1864312
CFlaahgra: Fix stun issues
2020-08-24 01:58:30 -04:00
Luke Street
fb1c2b95a2
CPuddleSpore: Fix CalculateBoundingBox
...
Fixes #348
2020-08-23 20:21:43 -04:00
Lioncash
a32e21df14
General: Resolve -Wcast-qual warnings
...
We can just avoid casting away const in order to resolve these warnings.
2020-08-23 15:54:54 -04:00
Lioncash
cadf85bc58
General: Resolve -Wcomma warnings
...
Resolves compilation warnings by just making the chained statements
their own separate statements.
2020-08-23 15:49:26 -04:00
Lioncash
4dc553e72a
General: Resolve several -Wextra-semi warnings
...
Remove redundant semicolons and also amends some macros to require
semicolon termination.
2020-08-23 15:45:54 -04:00
Luke Street
08a8dd7eeb
CRipperControlledPlatform: Implement Move
...
Fixes #346
2020-08-23 14:54:56 -04:00
Luke Street
4568b2e3f6
CRipper: AddPlatform & KnockBack fixes
2020-08-23 14:08:25 -04:00
Luke Street
6a7b87bea1
CScriptSpecialFunction: SpinnerController fixes
2020-08-23 13:06:01 -04:00
Luke Street
7513b7b9bc
CFlaahgra: Some member renaming
2020-08-23 03:37:22 -04:00
Luke Street
95fa99ce7a
CFlaahgra: Implement ShouldSpecialAttack, ShouldFire
2020-08-23 01:59:59 -04:00
Luke Street
015f9c06ae
CFlaahgra: Remove redundant (non-existent?) method
2020-08-17 03:13:09 -04:00
Luke Street
7833b9532b
CFlaahgra: Add Accept
2020-08-17 03:07:43 -04:00
Luke Street
970aac39a5
CFlaahgra: Finish SpecialAttack implementation
2020-08-17 03:04:40 -04:00
Luke Street
a3484facf8
CFlaahgra: Use std::array in Cover
2020-08-17 03:04:29 -04:00
Luke Street
ab4cf9549a
CFlaahgra: Implement ProjectileAttack Deactivate
2020-08-17 02:51:01 -04:00
Luke Street
bf2d15f6ea
CFlaahgra: Revert a change to Growth
2020-08-17 02:47:38 -04:00
Luke Street
8904528d67
CFlaahgra: Attack fixes
2020-08-17 02:34:34 -04:00
Luke Street
7644149340
CFlaahgra: Growth fixes
2020-08-17 02:01:12 -04:00
Luke Street
848375a939
CFlaahgra: Add NoStaticCollision to SetMaterialProperties exclude
2020-08-15 04:37:14 -04:00
Luke Street
c436ea1405
CFlaahgra: UpdateAimPosition fixes
2020-08-15 04:35:17 -04:00
Luke Street
e6fc0c3b3e
CFlaahgra: UpdateSmallScaleReGrowth fixes
2020-08-15 04:21:07 -04:00
Luke Street
f7b2055ed3
CFlaahgra: Fix references to skFlaahgraDamageColor
2020-08-15 04:17:27 -04:00
Luke Street
1bfb699b48
CFlaahgra: Fix UpdateHeadDamageVulnerability
2020-08-15 04:13:35 -04:00
Luke Street
161a287ae3
CFlaahgra: CalculateFallDirection fixes & renaming
2020-08-15 04:04:49 -04:00
Luke Street
31e2bd6e24
CFlaahgra: SetupCollisionManagers & joint name fixes
2020-08-15 03:50:17 -04:00
Luke Street
3e1dee99f1
CFlaahgra: Fix CFlaahgraPlants origin
2020-08-15 03:34:24 -04:00
Luke Street
30f7716946
CFlaahgra: AcceptScriptMsg Damage fixes
2020-08-15 03:25:13 -04:00
Luke Street
88d5c4c239
CFlaahgra: Fix damageColor, set doTargetDistanceTest
2020-08-15 03:08:53 -04:00
Luke Street
8c2d954a01
CFlaahgraTentacle: Fixes & implement Death
2020-08-14 01:08:11 -04:00
Luke Street
9de84dace3
CFlaahgraPlants: Set xf4_damageInfo in constructor
2020-08-14 00:41:37 -04:00
Luke Street
261544131f
CFlaahgraPlants: AcceptScriptMsg fixes
2020-08-14 00:30:41 -04:00
Luke Street
232619a7d3
CFlaahgraProjectile: Implement AcceptScriptMsg
2020-08-14 00:21:55 -04:00
Luke Street
ab3b9ca803
CFlaahgra: Implement CreateProjectile & EUserEventType::Projectile
2020-08-14 00:13:55 -04:00
Luke Street
b24c748e1a
CFlaahgra: Fix SetCollisionActorBounds args in Attack
2020-08-12 23:58:14 -04:00
Lioncash
6703529445
CInGameGuiManager: Make use of std::all_of in CheckDGRPLoadComplete()
...
When ranges are implemented in all compilers, we can simplify this
significantly.
2020-08-03 01:18:13 -04:00
Lioncash
b6473bd225
CInGameGuiManager: Make DGRP strings string_views
...
Same behavior, but allows eliminating runtime strlen calls.
2020-08-03 01:06:14 -04:00
Lioncash
403ce6a4b7
CMapWorld: Make use of designated initializers
2020-08-03 00:59:26 -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
d9dde388f5
CFireFlea: Mark helper functions as const
...
These don't modify internal member state at all and can be marked as
such.
2020-08-02 05:34:14 -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
c9f5483c59
CLineRendererShaders: Make use of static inline variables
...
Same behavior, less code.
2020-08-02 03:02:08 -04:00
Lioncash
83c2023bbb
CElementGenShaders: Make use of static inline variables
...
Same behavior, less code
2020-08-02 02:57:02 -04:00
Lioncash
4e1ff26f56
CDecalShaders: Make use of static inline variables
...
Same behavior, less code.
2020-08-02 02:53:15 -04:00
Lioncash
1b52070f4f
CActorContraption: Unindent code in CreateFlameThrower() where applicable
...
We can invert a conditional to allow much of the code to be unindented.
2020-08-02 02:28:48 -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
25c017e0cc
CModelBoo: Make use of static inline variables
...
Same behavior, but allows all the initializers to be in one place,
rather than throughout the cpp file.
2020-08-01 23:33:50 -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
Lioncash
88e6a04f13
CCollidable*: Make use of static inline variables where applicable
...
Allows relocating initialization with the rest of the variables.
2020-08-01 05:31:25 -04:00
Lioncash
55da593e59
CCinematicCamera: Unindent code in GetInterpolatedSplinePoint()
...
Puts the empty case into the conditional to allow unindenting most of
the code block.
2020-08-01 05:12:30 -04:00
Lioncash
a746ac45e4
CCinematicCamera: Eliminate some sign conversion warnings
2020-08-01 05:11:32 -04:00
Lioncash
391e97fbd1
CBooRenderer: Eliminate mixed signedness bitwise ANDing
...
Prevents sign mismatch warnings.
2020-08-01 04:42:06 -04:00
Lioncash
cb2fe959a4
CSfxManager: Make use of designated initializers
...
Same behavior, less duplication of variable names.
2020-07-31 22:46:11 -04:00
Luke Street
bc3b6ff274
CFireFlea: Correct CPathFindSearch flags
2020-07-12 23:28:14 -04:00
Luke Street
61577b16d2
CFlyingPirate: Remove useless references
2020-07-12 23:28:03 -04:00
Luke Street
a2bcb4d086
CTryclops: Fixes & cleanup
2020-07-12 23:27:40 -04:00
Luke Street
dbd52f8917
CBomb: Correctly initialize x170_prevLocation
2020-07-12 23:24:07 -04:00
Luke Street
3279ebea9a
CTryclops: Implement sub8025dbd0
2020-07-12 05:58:48 -04:00
Luke Street
97d2c6895f
CStateManager: Fix condition in BuildDynamicLightListForWorld
2020-07-07 06:14:41 -04:00
Luke Street
c001985a79
CPlayer: Remove duplicated function call
2020-07-07 04:36:18 -04:00
shiiion
cf86338a84
initial flamethrower weapon implementation
2020-06-25 22:37:45 -04:00
Luke Street
0d8a766146
CScriptBallTrigger: Apply force fixes
...
Fixes #337
2020-06-25 19:33:43 -04:00
Luke Street
7e8bc8dac8
CIceSheegoth: Remove constexpr from virtual function
2020-06-13 20:22:27 -04:00
Lioncash
17ed0794e9
CIceSheegoth: Add missing reference ampersands to IsClosestSheegoth()
...
Same behavior, but doesn't make copies of the vector and
reserved_vector (the reserved vector in particular is 2056 bytes in size
and this function is called in a loop, so this can have quite an
impact).
2020-06-11 10:28:00 -04:00
Lioncash
5f899b6c6c
CIceSheegoth: Mark IsMouthCollider() as a const member function
...
This doesn't modify internal member state, so we can mark this as const.
2020-06-11 10:23:33 -04:00
Lioncash
3352f0e812
CIceSheegoth: Make use of TCastToConstPtr where applicable
...
Makes the immutability of the data enforced and explicit.
2020-06-11 10:22:13 -04:00
Lioncash
58186ad5df
CIceSheegoth: Make use of in-class initializers for bitfields
...
Same behavior, less code.
2020-06-11 10:18:03 -04:00
Lioncash
2a357a1006
CDrone: Make use of in-class initializers for bitfields
...
Eliminates some code.
2020-06-11 10:16:12 -04:00
Lioncash
76a9d8f0f9
CDrone: Correct Z component calculation in TargetCover()
...
GM8E v0 multiplies by one in this case, not zero
2020-06-11 10:12:45 -04:00
Luke Street
73d6465095
CPlayer: Fix logic in ChooseTransitionToAnimation
2020-06-07 14:12:51 -04:00
Luke Street
932b5587a2
Build fixes & cleanup for CDrone, CIceSheegoth
2020-06-06 16:40:51 -04:00
Luke Street
ca96676057
Merge remote-tracking branch 'origin/icesheegoth'
2020-06-06 16:27:08 -04:00
Luke Street
feb163e107
Merge remote-tracking branch 'origin/drone'
2020-06-06 16:25:48 -04:00
Phillip Stephens
86942c44ef
Merge branch 'master' of ssh+git://git.axiodl.com:6431/AxioDL/urde
2020-06-03 04:12:11 -07:00
Phillip Stephens
9f4663491b
CScriptPlayerActor: Add missing SetActive
2020-06-03 04:11:06 -07:00
Luke Street
8d2d5ef5d5
COmegaPirate: MSVC runtime fix for skeleton asset IDs
2020-05-31 22:05:48 -04:00
Luke Street
ab01cb5f1a
CFrontEndUI: Remove audio group on destruction
2020-05-31 20:27:52 -04:00
Luke Street
eb979c9760
rstl: Check __cpp_lib_concepts for contiguous_iterator_tag
2020-05-27 14:50:12 -04:00
Luke Street
d44eccc386
Runtime: constexpr fixes for gcc
2020-05-27 13:02:20 -04:00
Luke Street
c4ccb1cfce
CStaticInterference: Fix id reference
2020-05-27 12:45:17 -04:00
Luke Street
330eeebf08
CRasterFont: Remove ignored maybe_unused attributes
2020-05-27 12:40:35 -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
055e4a8bec
COmegaPirate: Simplify enum qualifiers
...
The base class doesn't need to be qualified on the enum type.
2020-05-26 18:00:14 -04:00
Lioncash
ff9506b7a9
COmegaPirate: Make use of TCastToConstPtr where applicable
...
Makes read-only intent explicit.
2020-05-26 17:56:23 -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
e1cd1278f6
Update macOS build instructions
2020-05-24 12:03:33 -04:00
Luke Street
a8d62d1cbd
rstl: Add iterator_category workaround for atdna
2020-05-22 04:08:32 -04:00
Luke Street
07bb2d74b5
Merge pull request #321 from lioncash/contiguous
...
rstl: Make iterator tag use std::contiguous_iterator_tag
2020-05-22 03:43:50 -04:00
Luke Street
23870c53aa
Merge remote-tracking branch 'origin/master'
2020-05-22 03:37:08 -04:00
Luke Street
de2996a941
CMetroid: Implement UpdateVolume, IsPlayerUnderwater, IsHunterAttacking
2020-05-22 03:34:48 -04:00
Luke Street
e0866ebdd4
CMetroid: More implementation & fixes
2020-05-21 12:50:17 -04:00
Luke Street
56d31254cd
CKnockBackController: Fix EKnockBackType
2020-05-21 11:32:48 -04:00
Lioncash
1158a171e7
CFontImageDef: Collapse IsLoaded() into a std::all_of call
...
Same behavior, less code. C++20 ranges will allow shortening this in the
future.
2020-05-21 01:40:31 -04:00
Lioncash
6063ec2540
CFontRenderState: Eliminate sign conversion in SetColor()
...
Same behavior, minus a sign conversion warning.
2020-05-21 01:33:39 -04:00
Luke Street
8f56219900
CChozoGhost: Add missing call to SetAnimationStateRange
2020-05-20 23:45:44 -04:00
Lioncash
32a4087f69
CScriptAiJumpPoint: Mark reference as const in AcceptScriptMsg
...
None of the data members of the referenced connections are modified.
2020-05-20 14:32:24 -04:00
Lioncash
5536417474
CScannableObjectInfo: Resolve unused parameter warning
...
This is unused, so we can just not specify it.
2020-05-20 14:03:20 -04:00
Lioncash
47cfaf17bd
CScriptActor: Remove unused printf code
...
Given it's not actively used or tied into the logging system, we can get
rid of this to prevent it from ever bitrotting.
2020-05-20 13:59:21 -04:00
Lioncash
1049a1a590
CScriptActorRotate: Make use of insert_or_assign in UpdateActors()
...
Same behavior, minus potentially avoidable default constructions that
immediately get overwritten.
2020-05-20 13:50:01 -04:00
Lioncash
677ed1ce9a
CScriptSpawnPoint: Resolve sign conversion warnings
...
operator[] takes a size_t, not an int.
2020-05-20 12:19:03 -04:00
Lioncash
38213bae99
CTeamAiMgr: Convert type into an enum class
...
Makes the sorting type explicit at the call site, rather than using
magic values.
2020-05-19 23:50:02 -04:00
Lioncash
96129264a3
CTeamAiMgr: Make use of TCastToConstPtr where applicable
...
Makes mutability explicit.
2020-05-19 23:47:05 -04:00
Lioncash
e1ddabaff8
CTeamAiMgr: Make use of std::any_of in ShouldUpdateRoles()
...
Same behavior, less code.
2020-05-19 23:41:58 -04:00
Lioncash
e73e704d20
CPlayerState: Make GetPickupTotal() a const member function
...
This doesn't modify internal member state.
2020-05-19 22:25:27 -04:00
Lioncash
9ce7c72a1c
CStaticInterference: Shorten some find_if calls
...
While we're at it, we can also const qualify a reference
2020-05-19 22:17:25 -04:00
Lioncash
463e9e9f60
CStaticInterference: Eliminate sign conversion warnings in constructor
...
We can just accept a size_t to prevent warnings from occurring.
2020-05-19 22:14:21 -04:00
Lioncash
f204d43333
rstl: Make iterator tag use std::contiguous_iterator_tag
...
Given we're iterating over a contiguous sequence with iterators like
these, we can use the contiguous_iterator_tag introduced within C++20 to
signify this.
2020-05-19 16:01:02 -04:00
Luke Street
eddaa24b1e
CDamageVulnerability: Fix WeaponHits
2020-05-17 12:25:04 -04:00
Luke Street
74d9bf4abc
CMetroid: More AI impl & fixes
2020-05-17 11:21:52 -04:00
Luke Street
3cafee2abd
CMetroid: Implement SuckEnergyFromTarget
2020-05-17 02:46:23 -04:00
Luke Street
6ad1aa79ab
Merge branch 'master' into metroid
2020-05-16 23:12:00 -04:00
Lioncash
871d3dc6ec
CPatterned: Make skDamageColor fully constexpr
2020-05-15 16:51:20 -04:00
Lioncash
7d3b43712d
CElitePirate: Make IsArmClawCollider internally linked
...
We can fully collapse this into a helper function and simplify the
parameters on it.
2020-05-14 22:21:55 -04:00
Lioncash
d9540c31ce
CElitePirate: Simplify IsArmClawCollider()
...
We can collapse this down into a std::any_of call.
2020-05-14 21:59:14 -04:00
Luke Street
c1f7358d96
CWideScreenFilter: Implement DrawFilter
2020-05-14 19:23:43 -04:00
Luke Street
72880f6286
CScriptDebris: Assign dieOnProjectile
2020-05-14 11:59:34 -04:00
Luke Street
ff62fddc89
CMetaree: Fix Halt delay
2020-05-14 11:27:23 -04:00
Phillip Stephens
47d767c441
CRidley: Various fixes, now you can kick the dragon's ass
2020-05-14 06:06:21 -07:00
Phillip Stephens
6e3370d90f
Merge pull request #320 from lioncash/reverse
...
rstl: Remove need for manual reverse iterators
2020-05-14 04:42:19 -07:00
Phillip Stephens
9c217c9115
Merge branch 'master' of ssh+git://git.axiodl.com:6431/AxioDL/urde
2020-05-13 06:20:52 -07:00
Phillip Stephens
a432a79cd4
Various Ridley fixes
2020-05-13 06:20:40 -07:00
Luke Street
514fc33fd8
CElitePirate: Add missing ShakeCamera function
2020-05-12 23:51:03 -04:00
Lioncash
f2d0939a15
CParticleSwooshShaders: Remove unused file-scope variable
...
Same behavior, one less runtime static constructor.
2020-05-12 20:50:35 -04:00
Lioncash
4e718a805f
CFluidPlaneShader: Replace explicit operator bool calls with the analogous named function
...
Same behavior, more informative to the reader about what is being
checked for.
2020-05-12 20:45:32 -04:00
Lioncash
942b972398
CTweaks: Collapse namespace specifiers into nested namespaces
...
Same behavior, less code.
2020-05-12 20:39:18 -04:00
Lioncash
a17ff08662
CPhazonHealingNodule: It helps to commit your editor changes before pushing
...
Intended to be part of 4b5074b298
2020-05-12 20:33:59 -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
Lioncash
8e77d6175c
CTextureBoo: Make use of std::array where applicable
...
Allows dehardcoding some array sizes.
2020-05-12 20:23:27 -04:00
Lioncash
e0a44bdf45
CTextureBoo: Prevent signed conversion warnings from occurring in Convert* helper functions
2020-05-12 20:03:58 -04:00
Lioncash
fee8d91dca
CTextureBoo: Make use of anonymous namespace
...
Makes some helper functions have internal linkage, silencing some
-Wmissing-declarations warnings, and also allows preventing ODR
violations from ever occurring with the RGBA8 and DXT1Block structs.
2020-05-12 20:01:58 -04:00
Lioncash
bfbb027117
CSlideShow: Collapse loop into std::all_of
...
Same behavior, less code. We can also make this function fully
internally linked, given it doesn't depend on instance state.
2020-05-12 19:53:19 -04:00
Lioncash
fd2f2e146c
CFluidPlaneCPU: Convert define into a typed constant
...
Same behavior, less preprocessor.
2020-05-12 17:00:00 -04:00
Lioncash
75494a501a
CFluidPlaneCPU: Early exit in CTurbulence constructor
...
Allows unindenting code.
2020-05-12 16:58:30 -04:00
Lioncash
dc32bee499
CFluidPlaneCPU: Eliminate sign conversions in CTurbulence constructor
2020-05-12 16:57:42 -04:00
Lioncash
c60290819e
CMorphBall: Collapse common code within ApplyGravity()
...
All that differs between the conditionals is the gravity value used, so
we can collapse all of this down to simply conditionally retrieve that.
2020-05-11 18:42:39 -04:00
Lioncash
0af9b16b92
CMorphBall: Take torque by const reference in SpinToSpeed()
...
Same behavior, minus unnecessary copies and consistency with the rest of
the API.
2020-05-11 18:23:54 -04:00
Lioncash
37138fb584
CMorphBall: Convert TCastToPtr to TCastToConstPtr
...
Same behavior, but makes the read-only intent explicit.
2020-05-11 14:23:15 -04:00
Lioncash
a73a7b22e7
CMorphBall: Brace statements where applicable
...
Makes the code consistent and also makes mutability explicit in large
calculations.
2020-05-10 22:18:33 -04:00
Lioncash
e9ea73ec98
CRidley: Amend formatting of skFloats
...
Makes the formatting less wonky.
2020-05-10 19:47:28 -04:00
Lioncash
c0a0a35f01
CRidley: Collapse for loop into ranged for loop
...
Same behavior, no unnecessary induction variable.
2020-05-10 19:41:13 -04:00
Lioncash
98ce18385a
CRidley: Fix missing comma in skWingEffects
...
Previously all the elements past WingSmokeSmall8 would be off by one.
This corrects that.
2020-05-10 19:32:11 -04:00
Lioncash
8508524479
CRidley: Amend formatting of skSomeStruct
...
Makes it consistent with the other arrays.
2020-05-10 19:30:59 -04:00
Lioncash
a79c42862c
CRidley: Join namespace into nested namespace specifiers
...
Same behavior, less noise.
2020-05-10 19:30:19 -04:00
Lioncash
9929c9ab02
CRidley: Correct breastPlate_LCTR sphere joint radius
...
GM8Ev0 sets this as 0.3.
2020-05-09 23:39:12 -04:00
Lioncash
306b8ad289
CRidley: Mark skDirectNormal and skIceWeakness as constexpr
...
Allows elimination of runtime initializers.
2020-05-09 22:41:32 -04:00
Lioncash
ec79a9de89
CPlayer: Resolve unused variable warnings
2020-05-09 22:35:56 -04:00
Lioncash
f7ce3f2133
CEnvFxManager: Silence unused variable warnings
2020-05-09 22:30:10 -04:00
Lioncash
25ea6d98bc
CFlameThrower: Silence unused variable warning
2020-05-09 22:28:56 -04:00
Lioncash
0f11a00cc0
CBeamProjectile: Silence unused variable warning
2020-05-09 22:27:54 -04:00
Lioncash
5f80504e6e
CCompoundTargetReticle: Silence unused variable warning
2020-05-09 22:26:46 -04:00
Lioncash
b3d6901f56
CGuiPane: Make static resolving of virtual function in ctor explicit
...
virtual functions statically resolve in the constructor and destructor.
This makes it explicit to the user that this static resolving behavior
is indeed what is intended
2020-05-09 22:23:44 -04:00
Lioncash
665b4f496d
CFlameThrower: Assign thermal hot to xe6_27_thermalVisorFlags instead of ORing
...
Previously the code was neglecting to clear the flags entirely before
assigning the new value to it.
2020-05-09 22:05:55 -04:00
Lioncash
77861a9b9f
CWaveBuster: Add AcceptScriptMsg implementation
2020-05-09 21:55:19 -04:00
Lioncash
cd13a49649
CWaveBuster: Add Accept implementation
...
More low hanging fruit that can be resolved.
2020-05-09 21:17:22 -04:00
Lioncash
3dddfa63cf
CWaveBuster: Add AddToRenderer implementation
...
Low hanging fruit and fairly trivial to implement.
2020-05-09 21:12:12 -04:00
Lioncash
5a5c6f76a4
CStateManager: Make bracing explicit
...
Makes one of the most heavily read parts of the codebase fully
consistent across the board.
While we're at it, we can mark variables const where applicable to make
mutability explicit.
2020-05-09 19:34:17 -04:00
Lioncash
439a55ed98
CStateManager: Silence sign conversion and truncation warnings in LoadScriptObjects()
2020-05-09 19:33:33 -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
977912a1be
rstl::reserved_vector: constexpr constructors
2020-05-09 18:36:57 -04:00
Luke Street
e8ce4c2e27
CMetroid: More function implementations
2020-05-09 02:51:02 -04:00
Lioncash
ef15fd5b18
RetroTypes: Eliminate casts where applicable
...
Same behavior, minus any type casting.
2020-05-08 19:39:23 -04:00
Lioncash
fba8849ed3
rstl: Remove need for manual reverse iterators
...
We can make use of std::make_reverse_iterator to automatically create
the reverse iterators. This allows eliminating some code specifically
for handling the reverse iterators.
2020-05-08 19:31:15 -04:00
Lioncash
5d209c8dc8
General: Mark a handful of deduced const variables as const explicitly
...
Same behavior, but makes it explicit to the reader that these are const.
Prevents cases where the reader might assume that just because the
variable isn't const qualified that it must be mutable, when it actually
isn't.
2020-05-08 18:41:29 -04:00
Lioncash
6658be66c2
CTextParser: Mark parameter to u16stof as const
...
The data being pointed to isn't modified.
2020-05-08 18:34:51 -04:00
Lioncash
73bb7c71b4
CGameArea: Make use of [[maybe_unused]] in WarmupShaders()
...
Same behavior, but silences compilation warnings about unused locals.
2020-05-08 17:12:58 -04:00
Lioncash
fef9e6ff2d
CAuxWeapon: Make skComboNames contain std::string_view instances
...
Removes unnecessary runtime strlen calls.
2020-05-08 17:01:49 -04:00
Lioncash
a0c4b6b3ec
CAiFuncMap: Store std::string_view instances instead of std::string
...
We only make use of static string entries, so we can make use of
std::string view to elide several memory allocations.
2020-05-08 16:38:19 -04:00
Lioncash
a9be7b45b2
CAiFuncMap: Reserve containers before adding entries
...
Eliminates some reallocation churn.
2020-05-08 16:30:59 -04:00
Lioncash
10c6c6729f
CParticleSwoosh: Make virtual call in constructor explicit
...
virtual functions statically resolve in constructors and destructors.
This makes it obvious that we want the statically resolving behavior to
the reader.
2020-05-08 16:09:57 -04:00
Lioncash
b495472ee7
CPathFindRegion: Brace statements where applicable
...
Makes code fully consistent across the board. While we're at it, we can
make intended constness explicit.
2020-05-08 16:00:29 -04:00
Lioncash
8baab44a5d
CPathFindRegion: Make const variant of Data() return a const qualified member
...
Enforces read-only pointer semantics
2020-05-08 15:52:17 -04:00
Lioncash
ed37919018
CPathFindRegion: Resolve sign conversion warning
...
The only place this is used is in an unsigned context.
2020-05-08 15:49:29 -04:00
Luke Street
78b364a445
CMetroid: Add EGammaType
2020-05-08 05:22:12 -04:00
Luke Street
ac30616efb
CMetroid: Implement GetDamageVulnerability
2020-05-08 05:05:47 -04:00
Luke Street
ca659bdcbc
CMetroid: Add fields & function definitions
2020-05-08 04:19:51 -04:00
Lioncash
dc8a0d0d88
CRelayTracker: Simplify RemoveRelay()
...
We can make this significantly nicer to read by making use of C++20's
consistent container erasure functions.
2020-05-08 01:16:23 -04:00
Lioncash
49836025f7
CObjectList: Simplify cbegin() and cend()
...
We can just use the const variants of begin() and end() now.
2020-05-08 00:25:20 -04:00
Luke Street
34b2383dfd
MP1/CMain: Add missing fields
2020-05-07 23:20:23 -04:00
Luke Street
1c775a7ea7
CElitePirate/COmegaPirate: Cleanup & renaming
2020-05-07 19:13:43 -04:00
Luke Street
8aef93473e
Merge pull request #319 from lioncash/object
...
CObjectList: Minor interface modifications
2020-05-07 17:38:32 -04:00
Lioncash
579ae79291
General: Mark CMaterialFilter instances constexpr where applicable
...
Allows omission of runtime overhead.
2020-05-07 14:14:18 -04:00
Lioncash
33411ceeca
CScriptDistanceFog: Brace conditionals where applicable
2020-05-07 13:44:13 -04:00
Lioncash
470d649604
CScriptDock: Brace conditionals where applicable
2020-05-07 13:43:08 -04:00
Lioncash
49dd7a874b
CScriptDockAreaChange: Brace conditionals where applicable
2020-05-07 13:38:59 -04:00
Lioncash
269b28f391
CScriptDoor: Brace conditionals where applicable
2020-05-07 13:38:20 -04:00
Lioncash
631c449453
CScriptEffect: Brace conditionals where applicable
2020-05-07 13:33:17 -04:00
Lioncash
e4abedf16f
CScriptEMPulse: Brace conditionals where applicable
2020-05-07 13:29:46 -04:00
Lioncash
51ffc0ef26
CScriptGenerator: Brace conditionals where applicable
2020-05-07 13:28:30 -04:00
Lioncash
bea6709cc4
CScriptGunTurret: Brace conditionals where applicable
2020-05-07 13:25:29 -04:00
Lioncash
34d989c443
CScriptHUDMemo: Brace conditionals where applicable
2020-05-07 13:06:47 -04:00
Lioncash
beb7884b54
CScriptMemoryRelay: Brace conditionals where applicable
2020-05-07 13:05:21 -04:00
Lioncash
c3d6324ea1
CScriptMidi: Brace conditionals where applicable
2020-05-07 13:04:19 -04:00
Lioncash
510778b7cd
CScriptPickup: Brace conditionals where applicable
2020-05-07 13:02:52 -04:00
Lioncash
c3f723007e
CScriptPickupGenerator: Brace conditionals where applicable
2020-05-07 13:00:45 -04:00
Lioncash
8698cc3cd5
CScriptPlayerActor: Brace conditionals where applicable
2020-05-07 12:41:00 -04:00
Lioncash
c308b2e3c5
CScriptPlayerHint: Brace conditionals where applicable
2020-05-07 12:36:06 -04:00
Lioncash
e47d0446b1
CScriptPointOfInterest: Brace conditionals where applicable
2020-05-07 12:35:31 -04:00
Lioncash
192cbd5e14
CScriptRandomRelay: Brace conditionals where applicable
2020-05-07 12:34:57 -04:00
Lioncash
7145917e30
CScriptRelay: Brace conditionals where applicable
2020-05-07 12:33:25 -04:00
Lioncash
1315189990
CScriptRipple: Brace conditionals where applicable
2020-05-07 12:29:43 -04:00
Lioncash
2bf190048d
CScriptRoomAcoustics: Brace conditionals where applicable
2020-05-07 12:28:45 -04:00
Lioncash
e691628289
CScriptShadowProjector: Brace conditionals where applicable
2020-05-07 12:27:49 -04:00
Lioncash
7186e57a9d
CScriptSound: Brace conditionals where applicable
2020-05-07 12:26:05 -04:00
Lioncash
ecbcb86bc5
CScriptSpawnPoint: Brace conditionals where applicable
2020-05-07 12:18:57 -04:00
Lioncash
750e0a8643
CScriptSpecialFunction: Brace conditionals where applicable
2020-05-07 12:16:53 -04:00
Lioncash
568e8c0d88
CScriptSpiderBallWaypoint: Brace conditionals where applicable
2020-05-07 12:03:44 -04:00
Lioncash
90e67898e4
CScriptSpindleCamera: Brace conditionals where applicable
2020-05-07 11:59:29 -04:00
Lioncash
5cc1cd799a
CScriptSteam: Brace conditionals where applicable
2020-05-07 11:50:21 -04:00
Lioncash
52cc84374d
CScriptStreamedMusic: Brace conditionals where applicable
2020-05-07 11:49:31 -04:00
Lioncash
79a25cab5e
CScriptSwitch: Brace conditionals where applicable
2020-05-07 11:48:34 -04:00
Lioncash
0fa7e0a73b
CScriptTargetingPoint: Brace conditionals where applicable
2020-05-07 11:47:59 -04:00
Lioncash
bb578468f4
CScriptTimer: Brace conditionals where applicable
2020-05-07 11:47:05 -04:00
Lioncash
ca718f938e
CScriptTrigger: Brace conditionals where applicable
2020-05-07 11:45:53 -04:00
Lioncash
29f6ef0f76
CScriptVisorFlare: Brace conditionals where applicable
2020-05-07 11:41:56 -04:00
Lioncash
d517db5c5d
CScriptVisorGoo: Brace conditionals where applicable
...
Makes the code consistent.
2020-05-07 11:41:14 -04:00
Lioncash
f78c85f37c
CScriptWaypoint: Brace conditionals where applicable
...
Makes the code consistent.
2020-05-07 11:39:11 -04:00
Lioncash
717d422fc4
CScriptWater: Brace conditionals where applicable
2020-05-07 11:36:17 -04:00
Lioncash
2014854f7c
CObjectList: Provide operator== for iterators
...
Makes the interface logically symmetrical in terms of allowed
comparisons.
2020-05-07 08:25:55 -04:00
Lioncash
762a4634cb
CObjectList: Make constructor explicit
...
Prevents error-prone implicit constructions from taking place.
2020-05-07 08:22:54 -04:00
Lioncash
35fd50ded3
CObjectList: Add const overloads for begin() and end()
...
Allows iterating in a ranged for loop in const contexts.
2020-05-07 08:22:32 -04:00
Lioncash
c81d6632bb
CScriptActor: Brace statements where applicable
...
Makes the code consistent.
2020-05-07 08:19:14 -04:00
Lioncash
63fda8f1c7
CScriptActorRotate: Brace statements where applicable
...
Makes code consistent.
2020-05-07 08:11:09 -04:00
Lioncash
e8dc27bfaa
CScriptAiJumpPoint: Brace statements where applicable
...
Makes the code consistent.
2020-05-07 08:01:38 -04:00
Lioncash
bdcf6dee66
CScriptAreaAttributes: Brace statements where applicable
...
Makes the code consistent.
2020-05-07 07:59:20 -04:00
Lioncash
0bb3fcae3b
CScriptBallTrigger: Brace statements where applicable
...
Makes the code consistent.
2020-05-07 07:58:15 -04:00
Lioncash
ec6416e387
CScriptBeam: Brace statements where applicable
...
Makes the code consistent.
2020-05-07 07:55:24 -04:00
Lioncash
23b14232be
CScriptCamera*Keyframe: Brace statements where applicable
...
Makes the code consistent.
2020-05-07 07:54:19 -04:00
Lioncash
d6ad152a97
CScriptCameraHint: Brace statements where applicable
...
Makes code consistent.
2020-05-07 07:51:50 -04:00
Lioncash
a8fd2a1992
CScriptCameraHintTrigger: Brace statements where applicable
...
Same behavior, more consistent code.
2020-05-07 07:45:08 -04:00
Lioncash
ed231b85e9
CScriptCameraPitchVolume: Brace statements where applicable
...
Makes the code consistent.
2020-05-07 07:43:35 -04:00
Lioncash
dab1784302
CScriptDamageableTrigger: Brace conditions where applicable
...
Makes code consistent.
2020-05-07 07:40:26 -04:00
Lioncash
ff0d14b52d
CScriptDamageableTrigger: Mark helper functions as static where applicable
...
Makes them internally linked.
2020-05-07 07:37:04 -04:00
Lioncash
af61cba8db
CScriptDebris: Brace statements where applicable
...
Makes code fully consistent style-wise.
2020-05-07 07:29:21 -04:00
Lioncash
d3ad8e104b
CScriptDebris: Remove redundant constructor initializers
...
These are initialized within the class definition.
2020-05-07 07:18:09 -04:00
Luke Street
d30ce2b218
CScriptPlatform: Fix breakable behavior; CScriptColorModulate fixes
2020-05-07 02:19:58 -04:00
Lioncash
40ede53949
CScriptWorldTeleporter: Unindent code in StartTransition()
...
We can make use of an early-return to unindent code by one level.
2020-05-03 10:28:28 -04:00
Lioncash
d0233b7767
CTeamAiMgr: Make reference parameters to GetTeamAiMgr() const
...
No modifications to these parameters are being made, so we can make that
explicit in the interface.
2020-05-02 22:39:51 -04:00
Lioncash
21a33b01ad
CTeamAiMgr: Collapse two loops into count_if
...
Same behavior, less code.
Ranges in C++20 will allow us to further simplify this in the future.
2020-05-02 22:09:52 -04:00
Lioncash
748dbb8740
CTargetingManager: Mark CheckLoadComplete() as const
...
This member function doesn't alter internal member state.
2020-05-02 21:56:58 -04:00
Lioncash
d3dbe15fcc
CSpawnSystemKeyframeData: Remove unnecessary includes
2020-05-02 21:28:52 -04:00
Luke Street
973eb622c7
CAnimTreeSequence: Add EpsilonZero check
2020-04-30 02:17:06 -04:00
Luke Street
3570ed8e24
Merge pull request #318 from lioncash/draw
...
CGuiWidgetDrawParms: Make constexpr constructible
2020-04-30 01:28:09 -04:00
Luke Street
1578a9481b
CScriptAiJumpPoint: Fix GetInUse
2020-04-29 03:03:14 -04:00
Luke Street
abfd5a464f
CGroundMovement: Fix CheckFalling not being called consistently
2020-04-29 02:09:20 -04:00
Phillip Stephens
92076a3bd3
Implement CBurrower
2020-04-28 07:16:10 -07:00
Phillip Stephens
9b94dd7c3a
Fix compiling CGameOptionsTouchBar
2020-04-26 18:47:01 -07:00
Phillip Stephens
5724be3294
CIceSheegoth: Implement AddToRenderer and AttractProjectiles
2020-04-26 17:43:22 -07:00
Lioncash
1948ec3274
CWallWalker: Remove unused variables in PreThink
...
We can leave a comment documenting this to make the code itself a little
nicer to read.
2020-04-26 03:28:48 -04:00
Lioncash
d4264b6469
CWallWalker: Eliminate signed->unsigned implicit conversion in header
...
Prevents compiler warnings.
2020-04-26 03:22:03 -04:00
Lioncash
4f56bf8eb6
CWallWalker: Simplify CCollisionSurface initializer
...
Allows it to sit on one line.
2020-04-26 03:20:47 -04:00
Lioncash
deff9d054b
CTimeProvider: Move global instance to cpp file
...
This isn't used anywhere externally, so we can keep it hidden in the cpp
file.
2020-04-26 03:05:57 -04:00
Lioncash
002102c530
RumbleFxTable: Make table constexpr
...
Eliminates any potential runtime initializers.
2020-04-26 01:27:46 -04:00
Lioncash
6c475b6764
CGuiWidgetDrawParms: Make constexpr constructible
...
We can allow this structure to be constructed in a constexpr context.
This also allows us to remove the cpp file, given it's no longer
necessary.
2020-04-26 01:15:04 -04:00
Lioncash
07ebdd364c
CDamageVulnerability: Make constructors constexpr
...
Eliminates any potential runtime initializers related to file-scope
constant instances of this class.
2020-04-26 01:06:26 -04:00
Lioncash
0ad1f8ba42
CDamageVulnerability: Amend typo in parameter name
2020-04-26 00:56:45 -04:00
Lioncash
f1ff48c38b
CDamageVulnerability: Remove unnecessary inline specifiers
...
These functions are already marked static, so they're already a
candidate for inlining.
We can mark them as constexpr though, given how trivial they are.
2020-04-26 00:54:36 -04:00
Lioncash
b76b956339
CElementGen: Give all function prototype parameters names
2020-04-25 03:16:08 -04:00
Lioncash
57d953a045
CElementGen: Eliminate sign conversion warnings with function parameters
...
Makes the expected types explicit.
2020-04-25 03:09:29 -04:00
Lioncash
eb4362a4d4
CDecalDataFactory: Remove unused includes
2020-04-25 02:52:53 -04:00
Lioncash
96070f0c89
CGuiTextPane: Eliminate implicit float->int conversions
2020-04-25 02:28:52 -04:00
Phillip Stephens
4e0b933357
CIceSheegoth: Implement ShakePlayer and minor fixes
2020-04-24 16:34:23 -07:00
Phillip Stephens
86acf6dce7
CIceSheegoth: Call the correct PathFind... I'm an idiot
2020-04-24 07:42:54 -07:00
Phillip Stephens
7b9fecfdc6
CIceSheegoth: Final state implementations
2020-04-24 07:36:49 -07:00
Luke Street
3c48da0cdb
Merge remote-tracking branch 'origin/trim'
2020-04-24 02:43:56 -04:00
Lioncash
d7c9135d27
CBomb: Fix boolean parameter not being used within SetFuseDisabled()
...
Prevents silent logic bugs, particularly given this function is called
with true as well inside CTryclops::InMaxRange.
2020-04-24 01:12:04 -04:00
Lioncash
27861d5c78
CUVElement: Convert stateful structs into classes
...
Avoids exposing the internals of the data by default (since they were
previously fully accessible).
2020-04-24 00:59:51 -04:00
Lioncash
b32bc296ad
CUVElement/CVectorElement: Make use of [[maybe_unused]] where applicable
2020-04-24 00:58:44 -04:00
Lioncash
4a9095a2af
CRealElement: Make use of [[maybe_unused]] where applicable
2020-04-24 00:57:13 -04:00
Lioncash
f620b4325f
CIntElement: Make use of [[maybe_unused]] where applicable
2020-04-24 00:55:43 -04:00
Lioncash
102d62846c
CColorElement: Make use of [[maybe_unused]] where applicable
2020-04-24 00:54:08 -04:00
Lioncash
6d53912770
CStringTable: Make use of [[maybe_unused]] where applicable
2020-04-23 21:24:39 -04:00
Lioncash
ee0762db32
CRasterFont: Make use of [[maybe_unused]] where applicable
2020-04-23 21:23:17 -04:00
Lioncash
5e9bf292d7
CTextureCache: Make use of [[maybe_unused]] where applicable
2020-04-23 21:15:30 -04:00
Lioncash
600076030f
CStateManager: Make use of bool parameter in SetWarping()
...
Allows toggling the warping.
2020-04-23 21:12:52 -04:00
Lioncash
25b0c69818
CSaveWorld: Make use of [[maybe_unused]] where applicable
...
Prevents unused parameter warnings.
2020-04-23 20:51:59 -04:00
Lioncash
301eb24301
CInGameTweakManagerBase: Make internal members of CTweakValue private
2020-04-23 20:48:43 -04:00
Lioncash
e4dedac2b6
CInGameTweakManagerBase: Make use of algorithms where applicable
2020-04-23 20:44:31 -04:00
Lioncash
e1dfe9ff8e
CGameOptionsTouchBar: Make use of [[maybe_unused]] where applicable
...
Silences unused parameter warnings
2020-04-23 20:34:05 -04:00
Lioncash
14e0067a97
CDependencyGroup: Make use of [[maybe_unused]] where applicable
2020-04-23 20:31:29 -04:00
Lioncash
4a6c3cde3c
CWorldLight: Eliminate variable shadowing
...
While we're at it, we can make use of structured bindings.
2020-04-23 07:25:07 -04:00
Lioncash
4e3363a98b
CScriptActorKeyframe: Eliminate variable shadowing
2020-04-23 07:22:10 -04:00
Lioncash
9ec9f42457
CPathFindSearch: Eliminate variable shadowing
2020-04-23 07:19:41 -04:00
Lioncash
078acce378
CMorphBall: Eliminate variable shadowing
2020-04-23 07:18:43 -04:00
Lioncash
31cf98646b
CModVectorElement: Eliminate variable shadowing
...
Prevents "a" from clashing with a local variable.
2020-04-23 07:16:49 -04:00
Lioncash
9fa689a806
CMemoryCardSys: Eliminate variable shadowing
...
Prevents names from clashing with variables from outside the loop scope.
2020-04-23 07:13:22 -04:00
Lioncash
e0bb66f7f0
CParticleElectricDataFactory: Remove unused includes
2020-04-23 03:58:10 -04:00
Lioncash
eefeb5cd0b
CGameArea: Remove undefined behavior type-punning in a few functions
...
We can make use of std::memcpy here to get around this.
2020-04-23 03:06:04 -04:00
Lioncash
df3aed75fe
CGameArea: Eliminate implicit sign conversions in Validate()
2020-04-23 02:53:24 -04:00
Lioncash
419d40051d
CGuiTextSupport: Make enum formatting consistent
2020-04-23 02:41:22 -04:00
Lioncash
b700da547e
CGuiTextSupport: Invert conditionals where applicable
...
Unindents code and allows for easier placement of breakpoints when the
conditions are equal to the early exit path.
2020-04-23 02:39:39 -04:00
Lioncash
787fc3276f
CGuiTextSupport: Use const references where applicable
2020-04-23 02:36:45 -04:00
Lioncash
a21fb1da35
CGuiObject: Remove unused includes
2020-04-23 02:27:11 -04:00
Lioncash
2b2edfa871
CGrappleArm: Invert conditionals where applicable
...
Makes early-exit conditions nicer to follow and also unindents some
code.
2020-04-23 01:57:18 -04:00
Phillip Stephens
1b1907d910
CIceSheegoth: Minor fixes
2020-04-22 16:46:52 -07:00
Phillip Stephens
97a25f01e2
Initial state implementations
2020-04-22 15:06:15 -07:00
Phillip Stephens
b1a897d246
CIceSheegoth: Implement Think
2020-04-22 15:06:15 -07:00
Phillip Stephens
3779b205b7
Initial CIceSheegoth stubout
2020-04-22 15:06:15 -07:00
Phillip Stephens
59f979db67
Actually implement AssetNameMap in DNAMP1
2020-04-22 03:38:48 -07:00
Luke Street
14c92e85ce
Use pas::EAnimationState in CPAS*
2020-04-22 05:09:27 -04:00
Lioncash
535717fbd8
CGameArea: Make use of std::array where applicable
2020-04-22 02:19:14 -04:00
Lioncash
664d08469c
CEnvFxManager: Make use of std::array where applicable
...
Same behavior, less code.
2020-04-22 02:16:37 -04:00
Lioncash
52f51c111a
CAmbientAI: Return std::nullopt in GetTouchBounds()
...
Allows implementations to avoid zeroing out the internal buffer of the
std::optional.
2020-04-22 02:10:55 -04:00
Lioncash
472e97aac0
CAreaOctTree: Make use of std::array where applicable
2020-04-22 02:05:22 -04: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
fe642bde8b
CCameraBlurFilter: Make use of std::array where applicable
...
Same behavior, less hardcoded sizes.
2020-04-22 00:13:43 -04:00
Luke Street
4741172f9f
Merge pull request #316 from lioncash/init2
...
RuntimeCommon: Make use of bitfield initializers where applicable
2020-04-21 22:52:25 -04:00
Luke Street
12d8d534c6
CParticleElectric: Fix CalculatePoints
2020-04-21 22:32:37 -04:00
Luke Street
fc7e8d4993
CElectricBeamProjectile: Finish implementation
2020-04-21 22:04:37 -04:00
Luke Street
8488dca336
CPlayer: Long fall anim/dmg fix
2020-04-21 20:43:34 -04:00
Luke Street
82aa99f858
CScriptCameraWaypoint: Fix Arrived
2020-04-21 20:35:37 -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
1571531cd7
CMagdolite: Renaming
2020-04-21 14:15:17 -04:00
Luke Street
449d8409d8
CMagdolite: Fix lock-on, retreat & loader
2020-04-21 04:46:07 -04:00
Luke Street
b4dad2adf5
CMagdolite: Fix SetupCollisionActors
2020-04-21 02:15:02 -04:00
Luke Street
5f66ab2219
CMagdolite: Minor cleanup
2020-04-21 01:32:16 -04:00
Phillip Stephens
0c96380897
Minor fixes, start renaming member variables
2020-04-21 01:06:52 -04:00
Phillip Stephens
d1c796f2a9
Initial CMagdolite imps
2020-04-21 01:06:52 -04:00
Luke Street
d3a44259c3
Merge pull request #315 from lioncash/init
...
RuntimeCommonB: Make use of bitfield initializers where applicable
2020-04-21 00:56:39 -04:00
Lioncash
554893ef85
RuntimeCommonB: Make use of bitfield initializers where applicable
...
Given that we now target C++20, we can make use of bitfield initializers
where applicable.
2020-04-20 15:57:25 -04:00
Luke Street
7b1e041123
Merge pull request #301 from AxioDL/omegapirate
...
OmegaPirate implementation
2020-04-20 03:21:04 -04:00
Luke Street
2ee2bbc0c1
COmegaPirate: Fix CFlash rendering
2020-04-20 03:20:22 -04:00
Luke Street
3563a1c8c4
COmegaPirate: Fix UpdateScale & Landed; renaming
2020-04-20 02:14:17 -04:00
Lioncash
2103c38f54
CCompoundTargetReticle: Remove unused variable
...
This is only used in COrbitPointMarker.
2020-04-20 00:48:29 -04:00
Lioncash
1d0151ccbc
General: Make use of lock deduction guides
2020-04-20 00:38:10 -04:00
Lioncash
dca87e7dce
CPlayerGun: Convert missed literal to a boolean literal
...
whoops.
2020-04-19 23:39:04 -04:00
Lioncash
1f8f3726e6
CPlayerGun: Make use of bool literal where appropriate
...
Avoids a conversion to bool from int.
2020-04-19 23:35:07 -04:00
Luke Street
32c44cbf05
Merge branch 'master' into omegapirate
...
# Conflicts:
# Runtime/GuiSys/CAuiImagePane.cpp
2020-04-19 22:12:18 -04:00
Luke Street
1fd28d3fc3
CStateMachine: Use logvisor report for state logging
2020-04-19 22:11:09 -04:00
Lioncash
f0133c9eef
CAuiImagePane: Eliminate implicit conversions
...
We can make them explicit instead.
2020-04-19 22:06:30 -04:00
Lioncash
ecdedb5d8f
CActorModelParticles: Make IsMediumOrLarge() parameter a const reference
...
Nothing about the parameter is modified.
2020-04-19 21:44:31 -04:00
Luke Street
2185dc30f1
CStateManager: Fix seek again (I tested it this time)
2020-04-19 21:40:08 -04:00
Luke Street
764432882c
CStateManager: Fix wrong stream position on error
2020-04-19 21:27:08 -04:00
Luke Street
d5fcb4a917
CStateManager: Revert debug commit
2020-04-19 21:20:25 -04:00
Luke Street
24acb585f8
MSVC & zeus fixes; update hecl-gui
2020-04-19 21:09:30 -04:00
Luke Street
de5513e277
COmegaPirate: Renaming & fixes
2020-04-19 19:26:25 -04:00
Luke Street
4e88f503ac
COmegaPirate: Implement CFlash
2020-04-19 02:47:25 -04:00
Lioncash
ec5d680be0
CBurstFire: Unindent conditionals where applicable
...
Makes it nicer to read early-exit conditions.
2020-04-19 00:40:46 -04:00
Luke Street
e50d363e88
CPlayerGun: Rename EMissileState; minor CMotionState::Update fix
2020-04-19 00:26:53 -04:00
Luke Street
a3e0c42794
Merge pull request #312 from lioncash/explicit
...
MkCastTo: Make operator bool instances explicit
2020-04-19 00:24:15 -04:00
Luke Street
025a989e12
CElementGen: Use x338_moduColor in RenderModels
2020-04-18 23:41:35 -04:00
Lioncash
2c3e5e205f
MkCastTo: Make operator bool instances explicit
...
Prevents error prone implicit conversions.
2020-04-18 23:02:11 -04:00
Luke Street
0a2d0bcfe9
Merge pull request #313 from lioncash/bug
...
CToken: Amend incorrect return value of TToken's operator=
2020-04-18 18:16:42 -04:00
Luke Street
30f2ac3f26
Merge branch 'master' into omegapirate
2020-04-18 18:14:51 -04:00
Luke Street
7f15390d4f
Editor: Only create Win32 console & redirect logging if not attached
2020-04-18 03:02:44 -04:00
Phillip Stephens
df75c00203
Fix WideScreenFilter crash
2020-04-17 15:32:26 -07:00
Lioncash
76f0b57340
General: Use bool literals where applicable
...
More indicative of the passed in type compared to raw values.
2020-04-17 17:43:56 -04:00
Lioncash
8e5fc3668c
CToken: Amend incorrect return value of TToken's operator=
...
This should be returning by reference, not the pointer of this.
2020-04-17 17:16:33 -04:00
Lioncash
0b05c906df
CScriptEffect: Eliminate variable shadowing
...
Avoids clashing names.
2020-04-17 16:31:02 -04:00
Luke Street
8f5caca1e5
CMemoryCardSysWin: Add includes
2020-04-17 15:10:52 -04:00
Luke Street
61e656e732
CDvdFile: Remove const from auto type for MSVC
2020-04-17 15:01:31 -04:00
Luke Street
36bbc5004f
CDvdFile: Use auto for string_view::begin
2020-04-17 14:52:25 -04:00
Luke Street
4a8f077d92
MP1: Use _SYS_STR where needed
2020-04-17 14:39:40 -04:00
Luke Street
248e7654fa
MP1: char -> boo::SystemChar
2020-04-17 14:31:29 -04:00
Luke Street
73b9d2024b
MP1: Use SystemStringConv for printing version string
2020-04-17 14:24:06 -04:00
Lioncash
5491f3ff23
CKnockBackController: Simplify initialization of x24_ in constructor
...
Same behavior, less code.
2020-04-17 13:17:27 -04:00
Lioncash
26ac3b166d
CKnockBackController: Make use of braces where applicable
...
Makes code more consistent.
Where applicable we can also unindent code.
2020-04-17 13:17:27 -04:00
Phillip Stephens
acf513c6bf
Merge branch 'master' of ssh+git://git.axiodl.com:6431/AxioDL/urde
2020-04-17 05:54:17 -07:00
Phillip Stephens
a06594f404
Fix CAutoMapper strings, disable saving on non-USA/GC versions
2020-04-17 05:53:22 -07:00
Lioncash
58040eb53d
CKnockBackController: Make CalculateExtraHurlVelocity() a const member function
...
This doesn't modify internal member state, so it can be marked const
While we're at it we can also invert the conditional to unindent the
main calculation.
2020-04-17 01:07:41 -04:00
Lioncash
b55d1e4c77
CKnockBackController: Make use of const references where applicable
...
In many cases the CPatterned& parameter is only used for read-only
querying. We can make this explicit in the interface.
2020-04-17 01:03:12 -04:00
Lioncash
49cc019699
CKnockBackController: Make GetKnockBackCharacterState() a const member function
...
This doesn't modify internal instance state, so this can be made const.
2020-04-17 00:58:29 -04:00
Lioncash
529d7e58bd
CFishCloud: Initialize x230_whichModel on construction
...
Provides a deterministic initial state.
2020-04-17 00:49:06 -04:00
Lioncash
fa9f0fdc61
CFishCloud: Brace statements where applicable
...
Makes the code more uniform and consistent.
While we're in the same area, we can make use of const where applicable.
2020-04-17 00:47:25 -04:00
Lioncash
3715e6dcbb
CFlameWarp: Make use of const where applicable
...
Makes algorithms easier to follow by explicitly marking immutable
state.
2020-04-17 00:27:22 -04:00
Lioncash
ed125031f3
CFluidUVMotion: Collapse separate resize and assignment into a constructor call
...
We can pre-size and insert the elements all at the same time.
2020-04-16 21:11:31 -04:00
Phillip Stephens
c85f1a64dd
Merge branch 'master' of ssh+git://git.axiodl.com:6431/AxioDL/urde
2020-04-16 17:20:25 -07:00
Phillip Stephens
ba3b23edaa
Disable saving on non-NTSC-U versions
2020-04-16 17:19:55 -07:00
Lioncash
20e5595042
CGameState: Always initialize x80_
...
Provides a deterministic initial state.
2020-04-16 20:00:26 -04:00
Lioncash
a551dbc21d
CGameState: Silence implicit truncation warnings
...
Ensures boolean conditions are used where applicable.
2020-04-16 20:00:20 -04:00
Lioncash
f844f2028b
CGameOptions: Give all function prototype parameters a name
...
Makes the interface more self-documenting and also allows better IDE
introspection.
2020-04-16 19:49:35 -04:00
Lioncash
e7ef1e0b5e
CGameOptions: Make TuneScreenBrightness() a const member function
...
This member function doesn't modify internal class state.
2020-04-16 19:42:22 -04:00
Lioncash
c32c42e12b
CGameOptions: Amend wonky formatting of VisorOptsNew
2020-04-16 13:00:08 -04:00
Phillip Stephens
be45be9d67
Fix FrontEnd options screen
2020-04-16 03:35:51 -07:00
Phillip Stephens
9365c35000
Finish fixing STRG indices
2020-04-16 03:25:59 -07:00
Phillip Stephens
8e2636c14c
Undo debug code
2020-04-15 23:58:00 -07:00
Phillip Stephens
c64e3d2ba7
Initial string fixes
2020-04-15 23:57:04 -07:00
Phillip Stephens
582d8a6999
Initial PAL/JP/Trilogy imps, various cleanup
2020-04-15 22:26:14 -07:00
Phillip Stephens
52b4db2f00
Integrate URDEVersionInfo
2020-04-15 06:42:44 -07:00
Phillip Stephens
e553a9022f
Fix CMemoryCardSys
2020-04-15 04:27:06 -07:00
Phillip Stephens
8a974d6e5e
Merge branch 'master' of ssh+git://git.axiodl.com:6431/AxioDL/urde
2020-04-15 00:57:37 -07:00
Phillip Stephens
1eade15395
Add version info to extracted data, clean up MP1.*
2020-04-15 00:56:59 -07:00
Luke Street
b020904e84
Comment out printfs entirely
2020-04-14 22:14:27 -04:00
Luke Street
eb89a17817
CDummyWorld: Fix IGetAreaId
2020-04-14 21:15:38 -04:00
Lioncash
6436184a3f
CWorld: Make use of find_if in GetAreaIdForSaveId()
...
Same behavior minus any explicit mutable state.
2020-04-14 16:40:13 -04:00
Lioncash
86b94ad915
CWorld: Make use of std::find_if in IGetAreaId
...
Removes explicit mutable state. This can be further simplified in the
future with ranges.
2020-04-14 16:31:17 -04:00
Lioncash
655805ffcb
CWorld: Add missing override specifier
2020-04-14 16:17:26 -04:00
Lioncash
8e89ac234f
CElementGen: Initialize x80_timeDeltaScale on construction
...
Provides deterministic state upon construction, which is nicer for
debugging.
2020-04-14 16:11:38 -04:00
Lioncash
384efebf55
CElementGen: Collapse loop into a ranged-for loop
...
Same behavior, nicer syntax.
2020-04-14 16:08:21 -04:00
Lioncash
c14721611b
CEnergyProjectile: Make use of const where applicable
...
While we're at it, make use of consistent bracing, given some
conditionals traveled over one line.
2020-04-14 15:47:45 -04:00
Luke Street
9cf95b5c10
Editor: Move cvars to CVarCommons
2020-04-14 15:20:51 -04:00
Luke Street
94be460a1b
MP1: Convert MP1_VARIABLE_DELTA_TIME to cvar
2020-04-14 14:41:02 -04:00
Lioncash
3c8ce3dc99
CGuiTextSupport: Amend typo in debug group label
...
This is within the Render() function, so we can rename the group name.
2020-04-14 13:34:50 -04:00
Lioncash
5381c011a0
CParticleElectric: Eliminate several sign conversion instances
...
Makes sign conversion cases explicit and eliminates them entirely in
other cases.
2020-04-14 12:30:38 -04:00
Lioncash
4cbf8ef513
CParticleElectric: Mark CGlobalRandom instance as maybe unused
...
This has a stateful destructor, so we mark it as unused to silence
unused variable warnings.
2020-04-14 12:16:25 -04:00
Lioncash
8aef2cf95d
CParticleElectric: Make use of const where applicable
...
Makes it easier to read long functions by knowing which variables are
mutable.
2020-04-14 04:20:03 -04:00
Lioncash
fed72614ef
CParticleSwoosh: Use const where applicable
...
Given the length of some functions, this makes following flow nicer,
since it's easier to visually see which variables get modified.
2020-04-14 03:56:27 -04:00
Lioncash
6fbf6734c2
CParticleSwoosh: Eliminate variable shadowing
2020-04-14 03:31:31 -04:00
Lioncash
480d27e68c
CParticleSwoosh: Initialize class data members
...
Makes for deterministic initial state.
2020-04-14 03:27:15 -04:00
Luke Street
112322be5a
Merge pull request #311 from lioncash/sign
...
CScanDisplay: Eliminate implicit sign conversions
2020-04-14 02:10:13 -04:00
Luke Street
594fe2fcbd
Merge pull request #310 from lioncash/table
...
CFluidPlane: Make use of std::array where applicable
2020-04-14 02:09:19 -04:00
Lioncash
59a788a987
CParticleGlobals: Eliminate implicit type conversions
...
Makes them all explicit for the reader.
2020-04-13 18:44:51 -04:00
Lioncash
2c7d10c4b4
CCompoundTargetReticle: Brace statements where applicable
2020-04-13 17:16:23 -04:00
Lioncash
85f930ef2e
CCompoundTargetReticle: Convert unnecessary floats into bools
...
Using floats here is extremely suspect and almost certainly
unintentional.
2020-04-13 16:54:45 -04:00
Lioncash
1767338aba
CCompoundTargetReticle: Make eliminate hardcoded size
...
We can just query the capacity to dehardcode it.
2020-04-13 16:52:01 -04:00
Lioncash
e26afe887f
CCompoundTargetReticle: Make use of std::array where applicable
...
Same behavior, stronger typing.
While we're at it, we can eliminate a case of variable shadowing.
2020-04-13 16:50:37 -04:00
Lioncash
c6278c0e9f
CCompoundTargetReticle: Initialize all data members
...
Provides deterministic initial state.
2020-04-13 16:41:28 -04:00
Lioncash
2850b7e7fb
CWallCrawlerSwarm: Initialize all CBoid members
...
Provides a deterministic initial state.
2020-04-13 16:36:24 -04:00
Lioncash
7fcd6f41cf
CStateMachine: Initialize data members where applicable
...
Provides a deterministic initial state.
2020-04-13 16:34:18 -04:00
Lioncash
0d97104cf2
CScriptSpindleCamera: Initialize x33c_24_inResetThink in constructor
...
Provides a deterministic initial state.
2020-04-13 16:32:41 -04:00
Lioncash
4341dfae50
CScriptPickup: Initialize x274_tractorTime in constructor
...
Provides a deterministic initial state upon construction.
2020-04-13 16:31:28 -04:00
Lioncash
a554e5d4a6
CPathFindSearch: Initialize xcc_result in constructor
...
Provides a deterministic initial state upon construction.
2020-04-13 16:29:12 -04:00
Lioncash
9f21f8ef55
CFluidPlaneCPU: Initialize m_cachedDoubleLightmapBlend and m_cachedAdditive
...
Provides a deterministic initial state upon construction.
2020-04-13 16:27:21 -04:00
Lioncash
498c940479
CFluidPlane: Initialize all members of SRippleInfo
...
Provides a deterministic initial state, which is useful for debugging.
2020-04-13 16:25:36 -04:00
Lioncash
5b9a689703
CParticleSwoosh: Initialize x68_frame on construction
...
Provides a deterministic initial state, which makes for nicer debugging.
2020-04-13 16:23:07 -04:00
Lioncash
93622d9b4b
CIntElement: Initialize x14_holdVal in CIESampleAndHold
...
Provides a deterministic initial state upon construction, which makes
for nicer debugging.
2020-04-13 16:20:51 -04:00
Lioncash
786675f307
CTextExecuteBuffer: Move initialization of xa8_curWordIt into initializer list
2020-04-13 16:18:38 -04:00
Lioncash
50ba80247b
CTextExecuteBuffer: Initialize xac_curY and xb0_curX in the constructor
...
Provides a deterministic initial state upon construction for easier
debugging.
2020-04-13 16:18:02 -04:00
Luke Street
654e3e705e
Update hecl; disable MP1_VARIABLE_DELTA_TIME
2020-04-13 15:02:07 -04:00
Lioncash
6806d4914c
CHudBossEnergyInterface: Initialize x0_alpha on construction
...
Provides a deterministic initial state which is helpful for debugging.
2020-04-13 15:00:44 -04:00
Lioncash
67786721ff
CHudBossEnergyInterface: Make use of structured bindings in constructor
...
Same behavior, minus a verbose type name.
2020-04-13 14:59:47 -04:00
Lioncash
4e6150acc4
CHudDecoInterface: Make missed virtual call in constructor explicit
...
Missed this one in the previous commit.
2020-04-13 14:54:15 -04:00
Lioncash
c8be142846
CHudDecoInterface: Make virtual calls in constructor explicitly qualified
...
Virtual functions called in a constructor or destructor are statically
resolved. Given this is a potential source of bugs, we qualify these
functions to make it explicit that this is indeed the kind of behavior
desired.
2020-04-13 14:52:34 -04:00
Lioncash
3a5a3e2011
CHudRadarInterface: Make use of const where applicable
...
Same behavior, but makes it obvious some references are only used in a
read-only manner.
2020-04-13 14:25:59 -04:00
Lioncash
29cd228d03
CMorphBall: Eliminate hardcoded sizes
...
We can query the container capacity directly instead of hardcoding it
in.
2020-04-13 14:10:52 -04:00
Lioncash
2ad45e481f
CAuxWeapon: Use names for sound IDs
...
Same behavior, but slightly more self-documenting on what they actually
are.
2020-04-13 10:36:38 -04:00
Phillip Stephens
5aae402149
Merge branch 'master' of ssh+git://git.axiodl.com:6431/AxioDL/urde
2020-04-13 00:48:15 -07:00
Phillip Stephens
6838515d3d
Fix ALPH default value
2020-04-13 00:48:00 -07:00
Lioncash
7d6e466b68
CDecalManager: Make use of std::nullopt where applicable
...
Same thing, less verbose.
2020-04-13 01:43:06 -04:00
Lioncash
6fc32f44df
CRumbleGenerator: Make use of fmt::print instead of printf
...
Less need to care about formatting specifiers.
2020-04-12 22:41:19 -04:00
Lioncash
0a01a30bf5
CScanDisplay: Eliminate implicit sign conversions
...
Removes implicit sign conversions and also dehardcodes quite a bit of
sizes.
2020-04-12 22:05:52 -04:00
Lioncash
8000fb9e42
CScannableObjectInfo: Remove hardcoded capacity size
...
We can just query the container for this.
2020-04-12 21:45:11 -04:00
Lioncash
e91432ebf0
CScannableObjectInfo: Make use of size_t in constructor
...
Gets rid of unnecessary zero extensions and keeps loop variables the
same sized type as the comparison type.
While we're at it we can collapse a loop into a ranged for and get rid
of some avoidable sign conversions.
2020-04-12 21:42:54 -04:00
Lioncash
414c06b33e
CScriptDebris: Make use of std::array
...
Same behavior, stronger typing.
2020-04-12 21:07:17 -04:00
Lioncash
7df73b6f4c
CScriptDock: Get rid of variable shadowing
...
Same behavior, less bug vectors.
2020-04-12 15:29:53 -04:00
Lioncash
7fb2b6ac0b
CScriptDock: Make dock material list constexpr
...
Same behavior, no runtime overhead.
2020-04-12 15:28:18 -04:00
Lioncash
175502cb0d
CScriptMazeNode: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-04-12 15:23:28 -04:00
Lioncash
c84f430852
CScriptPlatform: Simplify IsRider()
...
Same behavior, less code.
2020-04-12 15:11:24 -04:00
Lioncash
fd5c6f9e59
CScriptPlatform: Make use of TCastToConstPtr where applicable
...
Makes the read-only intent more explicit to the reader.
2020-04-12 14:59:59 -04:00
Lioncash
ff847eaf41
CScriptPlatform: Make platform material list constexpr
...
Same behavior, no runtime overhead.
2020-04-12 14:11:11 -04:00
Lioncash
1d112134cf
CScriptPlayerHint: Make use of std::any_of/std::find_if where applicable
...
Same behavior, can be simplified even further with ranges in the future.
2020-04-12 14:00:34 -04:00
Lioncash
ff123f7820
General: Make use of static_cast within point generators
...
The more restrictive static_cast is permissable when casting from void*.
2020-04-12 13:29:34 -04:00
Lioncash
5d85cd496a
CFluidPlane: Make use of std::array where applicable
...
Makes all the arrays strongly typed. We can also use type aliases to
greatly shorten some type definitions.
2020-04-12 12:17:12 -04:00
Lioncash
fa1e4f38df
CScriptWater: Mark SolidFilter as constexpr
...
Same behavior, minus runtime initializers.
2020-04-12 11:59:08 -04:00
Lioncash
dfa206eda9
CScriptSpecialFunction: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-04-12 11:58:08 -04:00
Lioncash
beaccf4f9e
CScriptSound: Mark kSolidFilter as constexpr
...
Same behavior minus runtime initializers.
2020-04-12 11:56:37 -04:00
Lioncash
2e575c184e
CPatterned: Make use of constexpr where applicable
2020-04-12 11:55:40 -04:00
Lioncash
d8e7239bc6
CKnockBackController: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-04-12 11:53:17 -04:00
Lioncash
b2ec3e7eac
CGameArea: Make use of std::array where applicable
...
Same behavior, stronger typing, and optional runtime checking in debug
mode.
2020-04-12 11:36:19 -04:00
Lioncash
a433a7852f
CIceBeam/CPhazonBeam: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-04-12 11:34:59 -04:00
Lioncash
b631b5f3a1
CGunWeapon: Mark skShootAnim as constexpr
...
Enforce it as constexpr. The initializer is likely optimized away
anyways, given the array only contains primitives, but this is more
consistent.
2020-04-12 11:31:28 -04:00
Lioncash
96e3eaf726
CSplashScreen: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-04-12 11:30:09 -04:00
Lioncash
f74471f603
CWarWasp: Make use of std::array where applicable
...
Same behavior, no array to pointer decay.
2020-04-12 11:23:30 -04:00
Lioncash
cb857bd737
CSpankWeed: Make use of std::array where applicable
...
Same behavior, but without array to pointer decay.
2020-04-12 11:21:08 -04:00
Lioncash
23bae06742
CNewIntroBoss: Make use of std::array where applicable
...
Same behavior but without implicit array to pointer decay.
2020-04-12 11:18:57 -04:00
Lioncash
02a684cfdf
CFlaahgra: Migrate static data into the cpp file
...
Same behavior, but completely makes them internally linked.
We can also make use of std::array and dehardcode some array sizes.
2020-04-12 11:16:35 -04:00
Lioncash
f5418d30aa
CEyeBall: Move string_view instance to cpp file
...
Same behavior, but gives the string full internal linkage.
2020-04-12 11:08:20 -04:00
Lioncash
bfea80fc4a
CBabygoth: Mark IsDestinationObstructed() as const
...
This doesn't alter class state, so we can mark it as const.
2020-04-12 11:05:56 -04:00
Lioncash
abd576a43a
CBabygoth: Make use of std::array where applicable
...
Same behavior, no implicit array to pointer decay. We can also move all
this data into the cpp file fully.
2020-04-12 11:03:50 -04:00
Lioncash
f1aca12e6b
CQuitGameScreen: Make use of std::array where applicable
...
Same behavior, but more strongly typed and without any implicit array to
pointer decay.
2020-04-12 10:59:07 -04:00
Lioncash
eba3270c14
CMFGame: Make use of std::array where applicable
2020-04-12 10:55:22 -04:00
Lioncash
c296f0ab8f
CInventoryScreen: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-04-12 10:52:03 -04:00
Lioncash
aee2259972
CTexturedQuadFilter: Mark DefaultRect as constexpr
...
Same behavior, minus runtime initializers.
2020-04-12 10:40:36 -04:00
Lioncash
3efc8486a4
CColoredQuadFilter: Mark DefaultRect as constexpr
...
Same behavior, minus runtime initializers.
2020-04-12 10:39:02 -04:00
Lioncash
e0c187c607
CModelBoo: Make use of std::array where applicable
...
Allows decoding some array sizes.
2020-04-12 10:35:56 -04:00
Lioncash
c203a0de7c
CGraphics: Mark skCubeBasisMats as constexpr
...
Same behavior, minus potential runtime initializers.
2020-04-12 10:31:07 -04:00
Lioncash
66f5685590
CMaterialFilter: Mark skPassEverything as constexpr
...
Removes any potential runtime initializers.
2020-04-12 10:28:02 -04:00
Lioncash
724505e6dc
CAreaOctTree: Make use of std::array where applicable
...
Prevents any implicit array to pointer decay from occurring.
2020-04-12 10:25:41 -04:00
Lioncash
5fc0802373
CPathCamera: Mark kLineOfSightFilter as constexpr
...
Same behavior, minus any potential runtime initializers.
2020-04-12 10:21:35 -04:00
Lioncash
535c02abe8
CCameraShakeData: Mark skChargedShotCameraShakeData as constexpr
...
Same behavior, minus potential runtime initializers.
2020-04-12 10:20:24 -04:00
Lioncash
c662634226
CBallCamera: Mark BallCameraFilter as constexpr
...
Allows removal of runtime initializers.
2020-04-12 10:19:13 -04:00
Lioncash
14f6dd2cd8
CFluidUVMotion: Return std::array by value from CalculateFluidTextureOffset()
...
Same behavior, but allows for easier use of API and makes it harder to
misuse. It also makes it easier for analysis to determine out of bounds,
given we leverage std::array rather than a pointer that causes arrays to
decay and lose their size information.
2020-04-12 09:23:52 -04:00
Lioncash
3c8619ba44
CFluidPlaneManager: Make use of std::array where applicable
...
Eliminates any potential implicit array to pointer decay.
2020-04-12 09:09:18 -04:00
Lioncash
2069694b59
CFluidPlane: Make use of HasReference() instead of operator bool
...
Looks a little less out of place while performing the same behavior.
IDE's can also do lookup more reliably on a regular function as opposed
to a conversion operator.
2020-04-12 08:52:23 -04:00
Lioncash
aa8f17d847
CFire: Return std::nullopt in GetTouchBounds()
...
Avoids unnecessarily zeroing out the entire internal buffer in
std::optional in some implementations (libstdc++/libc++).
2020-04-12 08:46:23 -04:00
Lioncash
9e168d3497
CPlasmaProjectile: Make PlayerEffectResource instances contain CAssetIds
...
Uses the wrapper type instead of the raw type.
2020-04-12 07:30:00 -04:00
Lioncash
976bf0d83e
CGameOption: Mark C-Pad arrays constexpr
...
Allows elision of runtime initializers.
2020-04-12 05:43:14 -04:00
Lioncash
1085600f30
CGameOption: Eliminate truncations to bool
2020-04-12 05:43:14 -04:00
Luke Street
5e748a0d7f
Particle/C*EPulse: Fix implementations
2020-04-12 05:38:44 -04:00
Lioncash
3c9fef492a
CGameOptions: Mark GameOptionsRegistry as constexpr
...
Same behavior but eliminates potential runtime initializers.
2020-04-12 05:27:44 -04:00
Lioncash
d5e57b5348
CCompoundTargetReticle: Make skZeroRenderState constexpr
...
Allows eliding runtime initializers where applicable. Particularly for
the static data.
2020-04-12 04:19:53 -04:00
Luke Street
32134990c3
Merge pull request #309 from lioncash/constexpr8
...
CMorphBall: Make use of constexpr on file-scope arrays
2020-04-12 03:06:59 -04:00
Luke Street
56cebfbacd
Merge pull request #308 from AxioDL/fmtlib-update
...
Update fmtlib
2020-04-12 03:06:46 -04:00
Luke Street
9f8064b4a1
Merge pull request #307 from lioncash/constexpr7
...
CModel: Mark CModelFlag instances as constexpr where applicable
2020-04-12 03:06:12 -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
Lioncash
fef6711ce8
CMorphBall: Make use of constexpr on file-scope arrays
...
Same behavior, but allows elision of runtime initializers.
2020-04-11 20:41:52 -04:00
Lioncash
1b42bda711
CParticleDataFactory: Make operator bool() instances explicit
...
Gets rid of implicit error-prone conversions to bool
2020-04-11 20:33:02 -04:00
Lioncash
d6f2e27d8a
CParticleGlobals: Make use of std::array where applicable
2020-04-11 20:29:36 -04:00
Lioncash
7d42b2d763
CParticleGlobals: Initialize all data members
...
Provides a deterministic initial state.
2020-04-11 20:23:40 -04:00
Lioncash
9d6b9142bb
CParticleSwoosh: Make use of std::array where applicable
...
Same behavior, no implicit array to pointer decay.
2020-04-11 20:20:47 -04:00
Lioncash
76e226f831
CWorldTransManager: Convert one missed array over to std::array
2020-04-11 19:55:23 -04:00
Lioncash
58fdb64ab5
CWorldTransManager: Initialize all members on construction
...
Provides a deterministic initial state upon construction, making
debugging easier.
2020-04-11 19:53:30 -04:00
Lioncash
e72507b20c
CWorldTransManager: Make use of std::array where applicable
...
Provides stronger typing, and eliminates any potential implicit array to
pointer decay.
2020-04-11 19:50:49 -04:00
Lioncash
54dededb9b
CNewFlameThrower: Make constructor take a std::array by reference
...
Same behavior, but enforces the size requirement instead of accepting
any arbitrary const CAssetId* pointer.
2020-04-11 19:37:42 -04:00
Lioncash
fa0dcf5b12
WeaponCommon: Use string_view with get_asset_id_from_name()
...
Internal functions expect a std::string_view, so we can just make the
parameter a string_view as well to push the responsibility outwards into
the caller.
2020-04-11 19:33:00 -04:00
Lioncash
ff6c1fdd3d
IOStreams: Make constructors for CBitStreamReader and CZipInputStream explicit
...
Same behavior minus the error prone implicit constructions.
2020-04-11 19:23:28 -04:00
Jack Andersen
5b4441ac36
Update fmtlib
2020-04-11 12:51:39 -10:00
Lioncash
75c07677ed
CModel: Mark CModelFlag instances as constexpr where applicable
...
Allows more runtime initializes to potentially be elided.
2020-04-11 16:56:13 -04:00
Luke Street
7055b6983f
Merge pull request #306 from lioncash/random
...
CRandom16: Make constructor explicit
2020-04-11 16:36:51 -04:00
Lioncash
4bdcc5efdb
CModel: Make CModelFlags constexpr constructible.
...
Allows initializers to be elided where applicable.
While we're at it, we can make the conditional flag tests more explicit
and eliminate implicit truncation in the case of the second flag test.
2020-04-11 16:16:19 -04:00
Lioncash
75d8988ee8
CRandom16: Make constructor explicit
...
Same behavior, minus the implicit conversions upon construction.
2020-04-11 16:15:05 -04:00
Lioncash
01bb0f3840
CWorld: Separate enum definition from declaration
...
Allows more flexibility if anything ever gets moved around and is
arguably nicer to read.
2020-04-11 15:29:01 -04:00
Lioncash
515103aa92
CWeaponDescription: Make operator bool() explicit
...
Eliminates potential error-prone implicit conversions.
2020-04-11 15:04:55 -04:00
Lioncash
886d951736
CCameraShakeData: Make use of boolean literals where applicable in LoadCameraShakeData
...
Same behavior, minus the implicit conversions to bool.
2020-04-11 14:33:27 -04:00
Phillip Stephens
9375514868
Fix CRipper
2020-04-11 07:29:06 -07:00
Luke Street
072ac0df16
Runtime: Wrap printf calls in #ifndef NDEBUG
2020-04-11 02:35:55 -04:00
Luke Street
e23c3d3705
Runtime: Wrap fmt::print calls in #ifndef NDEBUG
2020-04-11 02:25:41 -04: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
Luke Street
22ac7d8099
CScriptCoverPoint: Fix GetAttackDirection return value
2020-04-11 02:09:58 -04:00
Luke Street
0339c16e20
CScriptCoverPoint: Fix GetAttackDirection
2020-04-11 02:02:28 -04:00
Luke Street
bb7e94f304
Runtime/World: Replace bitfield unions with constructor initializers
2020-04-11 01:50:10 -04:00
Luke Street
22880abb7e
Runtime/Weapon: Replace bitfield unions with constructor initializers
2020-04-11 00:49:02 -04:00
Luke Street
c7ca8dc3a7
Runtime/Particle: Replace bitfield unions with constructor initializers
2020-04-11 00:39:49 -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
f483f5c1e6
CPersistentOptions: Initialize bitfields in default constructor
2020-04-10 15:47:36 -04:00
Luke Street
153004faee
Runtime/MP1/World: Replace bitfield unions with constructor initializers
2020-04-10 15:33:05 -04:00
Luke Street
402e45ecb5
Runtime/MP1: Replace bitfield unions with constructor initializers
2020-04-10 15:25:40 -04:00
Luke Street
d23e76db54
Runtime/Input: Replace bitfield unions with constructor initializers
2020-04-10 15:12:46 -04:00
Luke Street
e38a7f97bd
Runtime/GuiSys: Replace bitfield unions with constructor initializers
2020-04-10 15:11:10 -04:00
Luke Street
232823ae69
Runtime/Graphics: Replace bitfield unions with constructor initializers
2020-04-10 15:03:31 -04:00
Luke Street
f83b970e75
Runtime/Collision: Replace bitfield unions with constructor initializers
2020-04-10 15:03:24 -04:00
Luke Street
4a3ce8453f
Runtime/Graphics: Replace bitfield unions with constructor initializers
2020-04-10 15:03:15 -04:00
Luke Street
496bb3e624
Runtime/Camera: Replace bitfield unions with constructor initializers
2020-04-10 15:03:05 -04:00
Luke Street
8e691d0f73
Runtime/Audio: Replace bitfield unions with constructor initializers
2020-04-10 15:02:55 -04:00
Luke Street
346d110b79
Runtime: Replace bitfield unions with constructor initializers
2020-04-10 15:02:36 -04:00
Lioncash
89e2e65100
CCameraManager: Eliminate variable shadowing
...
We can get rid of shadowing in an inner scope.
2020-04-10 13:43:55 -04:00
Lioncash
8e263ff11b
CMapWorldInfo: Name all function prototype parameters
...
Same thing but is more consistent and allows IDEs to do better parameter
introspection.
2020-04-10 13:25:47 -04:00
Lioncash
f74c2d446f
CEnvFxManager: Remove mutable keywords where applicable
...
We can just make the relevant functions non-const to remove the use of
mutable here.
2020-04-10 13:22:22 -04:00
Lioncash
1e6b6622fe
CGuiFrame: Remove unnecessary mutable specifiers
...
We can just drop the const qualifier on ProcessMouseInput() to make the
mutable specifier unnecessary.
2020-04-10 02:17:50 -04:00
Phillip Stephens
0085f0b16f
Merge branch 'mp2-fixes'
2020-04-09 20:27:22 -07:00
Lioncash
e0a4dc37a4
CPathFindSearch: Remove use of mutable on m_viz
...
We can just drop the const qualifier on DebugDraw() to get rid of the
need to specify this.
2020-04-09 21:50:01 -04:00
Lioncash
549f58d835
CScriptDamageableTrigger: Remove mutable specifier on x254_fluidPlane
...
This is no longer necessary now that Render() is non-const.
2020-04-09 21:46:57 -04:00
Lioncash
124356b4e7
CSimpleShadow: Remove mutable specifier on m_filter
...
This is no longer necessary now that we can remove the const qualifier
on Render().
2020-04-09 21:44:49 -04:00
Lioncash
cd0a3780c0
CRainSplashGenerator: Remove mutable specifier from m_renderer
...
We can just drop the const specifiers on relevant member functions to
get rid of the need for this.
2020-04-09 21:40:48 -04:00
Lioncash
2fadaf544d
CCompoundTargetReticle: Remove mutable specifier on x28_noDrawTicks
...
This is no longer needed at all.
2020-04-09 21:35:16 -04:00
Lioncash
b72d217a68
CCompoundTargetingReticle: Remove mutable specifier on m_scanRetRenderer
...
This can be trivially resolved by dropping const qualifiers on the
necessary member functions.
2020-04-09 21:31:22 -04:00
Lioncash
35ca901784
CHudRadarInterface: Remove mutable specifiers from class members
...
We can just drop the const qualifiers on the relevant member functions
to make these unnecessary.
2020-04-09 21:23:50 -04:00
Lioncash
27813e5fc3
CThardus: Remove mutable specifier from m_flareFilter
...
Now that Render() is non-const, this specifier is no longer necessary.
2020-04-09 21:19:56 -04:00
Lioncash
1bacb69fc2
CPlasmaProjectile: Remove mutable specifier from m_renderObjs
...
Now that Render() is non-const, this is no longer necessary.
2020-04-09 21:17:20 -04:00
Lioncash
061b7f9a98
CCollisionActorManager: Remove usage of const_cast
...
We can just make Destroy() a non-const member function to eliminate the
need for this cast.
2020-04-09 20:33:49 -04:00
Lioncash
b89069e1b8
CBooRenderer: Remove usages of const_cast
...
We can just remove the const qualifier on model here.
2020-04-09 20:22:50 -04:00
Lioncash
57d9e0f294
CFlaahgra: Remove two usages of const_cast
...
These are no longer necessary.
2020-04-09 20:21:04 -04:00
Lioncash
4834720bb0
CGrappleArm: Remove usage of const_cast in RenderXRayModel()
...
This is no longer necessary.
2020-04-09 20:18:45 -04:00
Luke Street
3b0b3a39f9
COmegaPirate/CPhazonHealingNodule/CPhazonPool: Remove usages of const_cast
2020-04-09 20:15:25 -04:00
Lioncash
0c1b47faf8
CProjectileWeapon: Remove usages of const_cast
...
Now that the base Render() function was made non-const, it's trivial to
apply this to the other classes like CProjectileWeapon.
2020-04-09 20:09:14 -04:00
Luke Street
6b814262fc
Merge remote-tracking branch 'origin/master' into omegapirate
2020-04-09 20:06:33 -04:00
Lioncash
a2f7527388
CScriptPlayerActor: Remove two usages of const_cast
...
While we're at it, we can also simplify the implementation of
GetPostConstructed().
2020-04-09 20:05:53 -04:00
Lioncash
c796cf5315
CScriptSpecialFunction: Remove unnecessary const_cast in AcceptScriptMsg()
...
This const_cast isn't required at all any more.
2020-04-09 19:55:31 -04:00
Jack Andersen
e858c929e3
Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde into mp2-fixes
2020-04-09 13:04:37 -10:00
Luke Street
d131d72efa
Merge pull request #302 from lioncash/render2
...
CActor: Make Render() a non-const function
2020-04-09 18:55:51 -04:00
Lioncash
b8afcb42a3
CFlaahgraTentacle: Make use of TCastToConstPtr where applicable
...
Same behavior, but makes the read-only semantics explicit.
2020-04-09 17:43:15 -04:00
Lioncash
ef70d894f5
CFlaahgraTentacle: Make private static data completely internally linked
...
Given these aren't referenced anywhere else, we can make them fully
internally linked. We can also make the joint list fully constexpr.
2020-04-09 17:38:06 -04:00
Lioncash
0e4bd8bf13
MP1: Make use of nullptr where applicable
...
Same behavior, more indicative of what is being passed.
2020-04-09 17:18:38 -04:00
Lioncash
aabc0b7114
CStateManager: Mark material filters and lists as constexpr in TestRayDamage()
...
Allows potential runtime initializers to be elided.
2020-04-09 14:52:52 -04:00
Lioncash
bfd17e4513
CActor: Make Render() a non-const function
...
A few implementations of Render() contain const-casts nested within its
their call hierarchy to get around the fact that this function is marked
const. We can just make the member function non-const to allow removal
of these casts in follow up changes.
2020-04-09 14:32:20 -04:00
Luke Street
7774bc06ca
Merge pull request #297 from lioncash/render
...
CActor: Make AddToRenderer() non-const
2020-04-09 10:55:16 -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
Luke Street
529fced48a
Merge pull request #298 from lioncash/filter
...
CCameraFilter: Make Draw() non-const
2020-04-09 10:46:37 -04:00
Phillip Stephens
244e9febb3
Minor fixes
2020-04-08 12:20:27 -07:00
Phillip Stephens
94dbd091ae
Implement CDroneLaser
2020-04-08 10:54:46 -07:00
Luke Street
416ca4653b
CScriptEffect: Minor fixes
2020-04-07 23:39:01 -04:00
Luke Street
1f55b5f92e
CGrenadeLauncher: Fix UpdateFollowPlayer
2020-04-07 19:26:22 -04:00
Phillip Stephens
784e956819
Drone: Remove redundant include
2020-04-07 16:13:11 -07:00
Phillip Stephens
37c8b9d33c
Drone: Implement Think
2020-04-07 16:11:50 -07:00
Luke Street
1dc90f78d3
CScriptPlatform: Fix AddRider assign to copy
2020-04-07 15:41:26 -04:00
Lioncash
ad1f56bfda
CPowerBeam: Make use of std::array where applicable
...
Same behavior, stronger typing.
We can also narrow the scope of the array.
2020-04-07 13:57:06 -04:00
Lioncash
5405dad069
CWeaponMgr: Make use of size_t in IncrCount()
...
Keeps this function consistent with the previous change.
2020-04-07 13:40:14 -04:00
Lioncash
8ba2af9b5a
CWeaponMgr: Avoid unnecessary repeated std::map lookups
...
Avoids trivial redundant std::map indexes by doing the lookup once and
then referring to the looked up object instead of doing repeated
lookups.
2020-04-07 13:38:36 -04:00
Lioncash
db0091e9cd
CWordBreakTables: Make use of std::array where applicable
...
Same behavior, but allows directly querying iterators. We can also make
these arrays constexpr.
2020-04-07 13:24:23 -04:00
Lioncash
fe32cea8fc
CRainSplashGenerator: Always initialize x24_generateInterval
...
Provides a deterministic consistent initial state.
2020-04-07 13:02:02 -04:00
Lioncash
3ea8eb21cf
CInterpolationCamera: Always initialize x1d8_24_sinusoidal
...
Provides a deterministic consistent initial state.
2020-04-07 12:58:47 -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
45dca4a25b
CStreamAudioManager: Always initialize x74_oneshot
...
Provides deterministic consistent state when constructing the class.
2020-04-07 12:53:05 -04:00
Lioncash
3865dfbfe5
CSfxManager: Always initialize x1a_reverb and x55_cachedMaxVol
...
Provides a deterministic initial state.
2020-04-07 12:49:43 -04:00
Lioncash
2ab59eec52
CSfxManager: Make use of std::array where applicable
...
Same behavior, but with stronger typing.
2020-04-07 12:47:57 -04:00
Lioncash
d677d2ac1d
CSfxManager: Always initialize m_isEmitter
...
Provides a deterministic initial state.
While we're at it, we can remove an unnecessary initializer.
2020-04-07 12:42:03 -04:00
Lioncash
18ad2595cf
CCameraFilter: Always initialize m_shape
...
Provides a deterministic initial state and prevents any potential
uninitialized reads.
2020-04-07 12:36:45 -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
139d290d7d
CWorldTransManager: Mark lightPos as constexpr in UpdateLights()
...
Allows the compiler to optimize the initialization away if it chooses to
do so.
2020-04-07 07:23:14 -04:00
Lioncash
7ba5a5b183
CWorldLight: Explicitly default copy assignment, move assignment and move constructor
...
Makes the interface consistent with how the constructor is specified.
2020-04-07 07:19:50 -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
cf7d5be6c1
CTryclops: Fix incorrect transform being passed to Teleport() in LaunchPlayer()
...
GM8E v0 makes use of tmpXf here with Teleport(), not the passed in
transform.
2020-04-07 06:58:41 -04:00
Lioncash
40f184bfac
ICollisionFilter: Add virtual destructor
...
Prevents any potential undefined behavior from occurring through
polymorphic use.
2020-04-07 06:06:56 -04:00