Commit Graph

3571 Commits

Author SHA1 Message Date
Luke Street c7f301b485 CMemoryCardDriver: Avoid crash with corrupt/empty file 2021-04-12 12:22:57 -04:00
Luke Street fb9ea9092a Merge branch 'massive-rename' 2021-04-10 09:38:42 -04:00
Henrique Gemignani Passos Lima d6f19d26e7 Using optick, linked from boo 2021-04-10 09:21:34 -04:00
Henrique Gemignani Passos Lima e3896bdee9 Combine CommitResources for CBooRenderer::UpdateAreaUniforms.
This shares the IGraphicsDataFactory::Context over many functions, to avoid
the overhead of calling CGraphics::CommitResources multiple times.
2021-04-10 09:18:45 -04:00
Phillip Stephens 9bae2f943e
Rename everything 2021-04-10 01:42:06 -07:00
Luke Street 53fb23fc17 CMemoryCardSys: Fix -Wstringop-truncation issue 2021-04-05 13:32:29 -04:00
Phillip Stephens 845f84f8a4
Merge pull request #383 from henriquegemignani/feature/optimize-CrossTouchActors
Don't recreate the nearList for each entity
2021-04-03 10:26:40 -07:00
Henrique Gemignani Passos Lima eed6022a15 Improve CFileDvdRequest::PostCancelRequest
Do nothing if either m_complete or m_cancel is set, avoiding waiting for the mutex for no reason.
2021-04-03 20:07:14 +03:00
Henrique Gemignani Passos Lima 483e25bff3 Don't recreate the nearList for each entity 2021-04-03 04:32:26 +03:00
Phillip Stephens cefe6bb232 Remove old test code 2021-04-02 16:46:16 -07:00
Luke Street 286efb5609 CFBStreamedPairOfTotals: Fix end keyframe logic 2021-04-02 10:50:20 -04:00
Luke Street c3c88a434f CScriptBallTrigger: Fix force calculation 2021-04-02 07:56:24 -04:00
Luke Street 0d934cf608 CAutoMapper: Fix world switch for hints 2021-04-01 23:58:22 -04:00
Luke Street f956e6e618 COmegaPirate: Remove debug print 2021-03-30 22:03:18 -04:00
Phillip Stephens fbf1e26eda Let's not blow up our memory usage plzkthxbai 2021-03-30 14:29:03 -07:00
Phillip Stephens 879cf852c3 CElementGen: Hacky fix for memory corruption, need to dynamically reallocate buffers when MAXP changes 2021-03-28 18:26:50 -07:00
Luke Street c467c608a7 CFBStreamedPairOfTotals: Properly set x78_t at end 2021-03-28 13:00:07 -04:00
Luke Street ee590e670d CFBStreamedPairOfTotals: Fix jumping to end of animation 2021-03-27 18:48:31 -04:00
Phillip Stephens 02af2c32c0
Merge pull request #371 from AxioDL/particle-fixes
Particle fixes
2021-03-26 22:45:01 -07:00
Phillip Stephens 72b5706400
Fix crash in CAutoMapper 2021-03-17 02:55:00 -07:00
Phillip Stephens 087bd51693
CElementGen: ADV Parameter fixes 2021-03-16 23:33:05 -07:00
Phillip Stephens 0a3bcf3ab8
Revert "Revert "Remove arbitrary particle limit of 256, unfortunately this breaks various particle systems including Essence Shockwave and flamethrower particles""
This reverts commit 732831de9a.
2021-03-16 21:49:18 -07:00
Henrique Gemignani Passos Lima bad8b35ae6 Fix typo in CPlayerState::ReInitializePowerUp 2021-03-16 01:33:17 +02:00
Phillip Stephens 55dd197e67
CPuddleSpore fixes 2021-03-07 06:25:27 -08:00
Phillip Stephens 267f9fc63e
Fix CBSBiPedLocomotion 2021-03-07 01:43:03 -08:00
Luke Street 09d23ef519 CIceSheegoth/CMetroid: Use pas::EAnimationState 2021-03-01 23:55:55 -05:00
Luke Street bb4bdfa1ee Merge remote-tracking branch 'origin/animationstate'
# Conflicts:
#	Runtime/MP1/World/CFlyingPirate.cpp
#	Runtime/World/CScriptGunTurret.cpp
2021-03-01 23:45:21 -05:00
Luke Street 1144df0ea8 CTweakGame: Add CVar definitions in header 2021-02-27 23:45:23 -05:00
Phillip Stephens 9a0d51ad05
Wire up the rest of CTweakGame to CVars 2021-02-27 15:30:06 -08:00
Phillip Stephens 172eae4a61
Don't differentiate export path between standalone and Trilogy extracts, minor fix in CMetroidPrimeEssence, update submodules 2021-02-26 01:35:54 -08:00
Phillip Stephens e39fee8154
Allow specifying memory card image path for slot A and B 2021-02-25 21:07:41 -08:00
Luke Street 483f8ed97b Change CResFactory::AsyncIdle timeout to 5ms 2021-02-15 22:03:40 -05:00
Luke Street 732831de9a Revert "Remove arbitrary particle limit of 256, unfortunately this breaks various particle systems including Essence Shockwave and flamethrower particles"
This reverts commit 35482529
2021-02-15 21:54:44 -05:00
Phillip Stephens 0781307c49 Add debug rendering for CScriptPlatform (CVar: debugTool.drawPlatformCollision) 2021-01-16 19:33:03 -08:00
Phillip Stephens dc270ced7e
Remove debug print 2021-01-14 15:57:16 -08:00
Phillip Stephens 3548252931
Remove arbitrary particle limit of 256, unfortunately this breaks various particle systems including Essence Shockwave and flamethrower particles 2021-01-14 15:52:26 -08:00
Phillip Stephens 44f5fe4684
Merge pull request #364 from SirMangler/fpscounter
CGraphics: FPS Counter and debug overlay
2021-01-14 13:43:59 -08:00
Phillip Stephens cede47be4d
Add debugging tool CVars 2021-01-10 18:44:42 -08:00
SirMangler 7fb4c45046 FPS Counter and debug overlay CVAR 2021-01-10 16:10:55 +00:00
SirMangler 0e093baf67 Removed constexpr from lambdas to fix compiler error 2021-01-03 19:20:48 +00:00
Phillip Stephens 0cdacb1f37 Merge branch 'master' of https://gitlab.axiodl.com/AxioDL/urde 2020-12-31 14:00:39 -08:00
Phillip Stephens c6593760b1 Update submodules, add room timer 2020-12-31 14:00:10 -08:00
Phillip Stephens 9d78305360
Minor correction in CBallCamera 2020-12-27 16:01:42 -08:00
Phillip Stephens 27990a344a Merge commit 'f06ec91fa14ba653e58c4ee96ec85cfe1af43462' of https://github.com/AxioDL/urde 2020-12-25 21:06:51 -08:00
Phillip Stephens 914335275b Temporary fix for Phazon Suit crash on windows 2020-12-25 21:03:29 -08:00
PhazonJim f86e570ef4 fix for build error in Xcode relating to non-reference types in a for loop 2020-12-21 02:09:54 -05:00
Luke Street cec1610847 CThardus: Temporary comment (GCC unused fix) 2020-12-18 06:29:10 -05:00
Luke Street dcdfd58715 CScriptGunTurret: Fix health check in AcceptScriptMsg Damage 2020-12-18 06:28:20 -05:00
Luke Street b05460da42 CStateManager: Move collision debug drawing into NDEBUG condition 2020-12-18 06:08:54 -05:00
Luke Street 168eb6ac39 CModelShaders: Split Thermal into ThermalModel, ThermalStatic extended shaders
This semi-hacky approach will be replaced with future hsh work
2020-12-18 06:08:25 -05:00
Luke Street 1e0bdce5a3 CScriptActor: Set noZTest flags appropriately 2020-12-18 06:06:31 -05:00
Luke Street cc79ba3d09 CBouncyGrenade: Element gen renaming 2020-12-18 06:05:22 -05:00
Phillip Stephens 3f49b06070
Merge branch 'prime-exo' 2020-12-15 14:52:47 -08:00
Phillip Stephens 1e8aa2581e
Minor CPhysicsActor fixes 2020-12-13 14:57:21 -08:00
Phillip Stephens df0d21a03e
Fix Metroid Prime essence 2020-12-13 12:09:26 -08:00
Phillip Stephens b59bf39924
I feex 2020-12-13 10:57:45 -08:00
Phillip Stephens 4e51795fa6
Essence fixes 2020-12-13 10:57:45 -08:00
Phillip Stephens e5daca0899
More CMetroidPrimeExo imps 2020-12-13 10:57:45 -08:00
Phillip Stephens abbacad46b
More state implementations 2020-12-13 10:57:45 -08:00
Phillip Stephens 215eedc013
Fix inconsistent state causing Exo to fling herself off into the void 2020-12-13 10:57:45 -08:00
Phillip Stephens 2d56e56411
Fix zeus::close_enough call prevent AI from advancing 2020-12-13 10:57:45 -08:00
Phillip Stephens 8633bbddec
More CMetroidPrimeExo imps 2020-12-13 10:57:44 -08:00
Phillip Stephens 0903b478f6
More MetroidPrimeExo imps 2020-12-13 10:57:44 -08:00
Phillip Stephens bc60a237a4
More imps, initial AI execution 2020-12-13 10:57:43 -08:00
Phillip Stephens c4d4a937ec
Initial CMetroidPrimeExo imps 2020-12-13 10:56:51 -08:00
Phillip Stephens 0d11dd1476
Finish CMetroidPrimeEssence imps 2020-12-13 10:55:56 -08:00
Phillip Stephens 5598558265
Teh maymays 2020-12-13 10:55:56 -08:00
Phillip Stephens 543a24ea9e
Initial CMetroidPrimeEssence behavior 2020-12-13 10:55:56 -08:00
Phillip Stephens 130c60ccc8
Initial CMetroidPrimeExo imps 2020-12-13 10:55:50 -08:00
Phillip Stephens 28561081d7
Add light visualization (requires custom models) 2020-12-12 23:39:55 -08:00
Phillip Stephens 39e9ff5593
Cleanup CPatterned 2020-11-06 22:06:17 -08:00
Phillip Stephens fdd41d87c4
Fix CScriptSound favoring the right speaker, cleanup CBallCamera, update amuse 2020-10-24 16:00:39 -07:00
Phillip Stephens b963ce1e85
Attempt 4 to fix ScriptLayerController for Tom 2020-10-21 15:55:45 -07:00
Phillip Stephens 528c96b2c0
I am teh dumb, fix CGameArea 2020-10-20 15:26:08 -07:00
Phillip Stephens 9ac44921a6
Correct return type 2020-10-20 03:04:17 -07:00
Phillip Stephens a8d8eb0dde
Fix IGetAreaId and rename GetAreaId to GetAreaIndex 2020-10-20 03:03:11 -07:00
Phillip Stephens 3ffa15cfa3
Implement CMemoryCardSys::GetAreaAndWorldIdForSave 2020-10-20 02:40:02 -07:00
Phillip Stephens 01d94367dc
Add ability to disable AI 2020-10-02 23:28:05 -07:00
Luke Street ad6cabed7b DataSpec: Fix MREA mesh visor flags when cooking 2020-09-27 15:43:51 -04:00
Luke Street 9e5f28ba80 CModelShaders: Check noZWrite for thermal depth test
Adds back LightingAlphaWrite extended shader
2020-09-27 12:59:56 -04:00
Luke Street 6ff305da06 CModelShaders: Disable Z-test for LightingAlphaWrite
Permits static thermal hot objects to render properly
2020-09-27 12:23:54 -04:00
Luke Street 9a7bceb637 CMetroidAreaCollider: Correct g_DupVertexList and g_DupEdgeList size 2020-09-27 03:04:30 -04:00
Luke Street cfe1507fc7 CRidley: DoUserAnimEvent projectile fixes 2020-09-26 11:16:59 -04:00
Luke Street dad16bf59b CEnergyProjectile: Properly set hitProjectileOwner
Fixes #359
2020-09-26 10:38:22 -04:00
Luke Street 902b5644f7 CEnergyProjectile: Minor cleanup 2020-09-26 09:41:50 -04:00
Luke Street 6b51f32f99 CBloodFlower: Use GetLctrTransform for projectile pos 2020-09-26 09:41:28 -04:00
Luke Street 732be1f7ea CEnergyProjectile: Mark functions as override 2020-09-26 01:48:18 -04:00
Luke Street edea2e3745 CGameProjectile: Implement Render 2020-09-26 01:34:13 -04:00
Luke Street e305fbffab CBloodFlower: LaunchPollenProjectile fixes 2020-09-26 01:34:09 -04:00
Luke Street c474b19b9d CTargetableProjectile: Implement ResolveCollisionWithActor & fixes 2020-09-25 14:14:24 -04:00
Luke Street 8b597112be ParticleCommon: Fix IESampleAndHold element ordering 2020-09-24 03:17:17 -04:00
Luke Street 6e3d94483c Note CMVEFastConstant bug in 0-00 2020-09-24 03:00:15 -04:00
Luke Street d5596e6430 Fix VEAngleSphere element ordering & calculations 2020-09-24 02:42:25 -04:00
Phillip Stephens 5bfdb4312f
Fix incorrect zMomentum usage in CScriptActor 2020-09-23 17:38:47 -07:00
Phillip Stephens 9ab8c4cd8b
Fix PowerBomb radius derp 2020-09-23 16:32:15 -07:00
Luke Street 3d01549af3 CElementGen: Render PMAB models with ForcedAdditiveNoZWrite
Fixes rendering for missile impacts, charge beam & more
2020-09-23 03:24:33 -04:00
Luke Street 9ca0d2afb0 CScriptMazeNode: Remove unused <ranges> include 2020-09-21 21:11:06 -04:00
Luke Street 1fd481a020 CScriptMazeNode: Remove debug logvisor instance 2020-09-21 20:58:01 -04:00
Luke Street dbbb3cdc4e CScriptMazeNode: Always free CMazeState 2020-09-21 20:56:44 -04:00
Luke Street a35bfc49b5 CScriptMazeNode: Fix reversed enter/target & add debug rendering 2020-09-21 20:42:54 -04:00
Luke Street df2d191be8 CScriptMazeNode: Renaming & more cleanup 2020-09-21 18:38:11 -04:00
Luke Street c23a047a93 CScriptMazeNode: Signed fixes & cleanup 2020-09-20 16:36:24 -04:00
Luke Street eb124a9470 CScriptMazeNode: Working implementation 2020-09-20 03:25:56 -04:00
Luke Street 2cca2b8513 CScriptMazeNode: Finish initial implementation 2020-09-20 01:47:12 -04:00
Luke Street a533ee3538 CScriptMazeNode: Initial implementation of sub_802899c8 2020-09-19 16:32:23 -04:00
Luke Street cf68c7dd9d CScriptMazeNode: Finish initial implementation of Reset 2020-09-19 15:52:15 -04:00
Luke Street 47f456e4e7 CScriptMazeNode: Start implementing AcceptScriptMsg 2020-09-19 14:52:43 -04:00
Luke Street 529e8f6a07 CScriptMazeNode: Implement Reset 2020-09-19 13:44:32 -04:00
Luke Street e486e01b2a CScriptMazeNode: Implement GenerateObjects & more structures 2020-09-19 13:30:44 -04:00
Luke Street 995f3bb356 CDrone: Death fixes 2020-09-19 12:13:02 -04:00
Luke Street 76de1541f2 Runtime: Resolve -Wrange-loop-analysis warnings (part 2) 2020-09-18 17:04:50 -04:00
Luke Street 834fe39074 Runtime: Resolve -Wrange-loop-analysis warnings 2020-09-18 16:47:59 -04:00
Luke Street ee2e75b861 CElementGen: Don't use redToAlpha pipelines without a texture
Fixes Thermal Visor crashes for Super Missile & Elite Pirate grenades
2020-09-18 02:43:55 -04:00
Luke Street 325e955354 MP1: Load Strings pak as well 2020-09-17 20:04:06 -04:00
Luke Street ce7b94a2ed MP1: Load RS5 pak if exists 2020-09-17 19:50:36 -04:00
Luke Street a3790c983d CAnimTreeTransition: Handle negative transTimeRem (workaround) 2020-09-16 14:53:29 -04:00
Luke Street 2361916614 CBooRenderer: Don't smash the stack 2020-09-16 13:07:53 -04:00
Luke Street bc8135e896 CBooRenderer: Fix light count in ActivateLightsForModel 2020-09-16 13:01:06 -04:00
Luke Street d7b5587e48 CParticleGenInfoGeneric: Check for kInvalidUniqueId in SetParticleEmission 2020-09-16 04:38:09 -04:00
Luke Street 3d68fc0bfc CChozoGhost: Add call to RenderSystemsToBeDrawnFirst 2020-09-16 04:34:06 -04:00
Luke Street a9ed8c4329 CAnimData: Actually create CParticleData in InitializeEffects 2020-09-16 04:33:36 -04:00
Luke Street ab296ff97e CFlyingPirate: Remove GroundCollider in Jump 2020-09-16 02:19:22 -04:00
Luke Street 5b44ac143d CPatterned: ApproachDest fixes 2020-09-16 02:18:03 -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 69ded7eca8 Fix bitfield check in CPatterned::PathFind & update zeus (CVector3f::isZero fix) 2020-09-16 00:42:44 -04:00
Luke Street 7d418581cf CSaveGameScreen: Fix MSVC compilation 2020-09-15 19:35:22 -04:00
Luke Street df56ed5651 Update hecl; fix uint -> u32 2020-09-15 19:31:29 -04:00
Luke Street 169bc66d40 CDrone: Fix bitfield checks in Dead 2020-09-15 02:59:34 -04:00
Luke Street 5b166b7be5 CDrone: Implement Dead 2020-09-15 02:40:42 -04:00
Luke Street 5f4335c861 CDrone: Implement UpdateLasers (sub_80163c40) 2020-09-15 02:14:27 -04:00
Phillip Stephens 803acd9ac6
Fix Drone crashing by loading a model as a particle 2020-09-14 22:49:10 -07:00
Luke Street 2d8d90f39a CDroneLaser: Implement sub_80167754 2020-09-15 01:35:29 -04:00
Luke Street ec83a227de CDrone: Finish Attack 2020-09-15 01:35:22 -04:00
Luke Street 230a8ff946 CDrone: Implement sub_80165984 & sub_801656d4 2020-09-15 00:46:32 -04:00
Luke Street edadcbef17 CDrone: Implement SetVisorFlareEnabled, UpdateVisorFlare 2020-09-14 01:22:11 -04:00
Luke Street b3397116db CDrone: UpdateScanner fixes 2020-09-14 01:02:49 -04:00
Luke Street 51bb242af9 CDrone: Implement UpdateLaser 2020-09-14 00:49:10 -04:00
Luke Street 8d45dc6da9 CDrone: Think fixes 2020-09-14 00:35:17 -04:00
Luke Street 8dc190b04d CDrone: TargetPlayer fixes 2020-09-13 23:15:57 -04:00
Luke Street 979b0278da CDrone: StrafeFromCompanions fixes 2020-09-13 22:47:21 -04:00
Luke Street 3659bedad1 CDrone: Fix detection range in SpotPlayer 2020-09-13 22:40:51 -04:00
Luke Street 04a377c68e CDrone: Fix vector in SpecialAttack 2020-09-13 22:37:10 -04:00
Luke Street 9489bd3812 CDrone: Implement ShouldFire 2020-09-13 20:49:46 -04:00
Luke Street 21b04bf40d CDrone: ShouldAttack uses return value of AddRangedAttacker 2020-09-13 20:40:00 -04:00
Luke Street a1019e2c94 CBouncyGrenade: Set SubtractBlend, MoveRedToAlphaBuffer in Render 2020-09-13 20:35:35 -04:00
Luke Street 9e0c42103c CDrone: Render fixes 2020-09-13 20:32:05 -04:00
Luke Street c8edf200de CChozoGhost: Render uses SetMoveRedToAlphaBuffer 2020-09-13 20:28:12 -04:00
Luke Street 3e8369d24d CDrone: Check for normal model in PreRender 2020-09-13 20:07:24 -04:00
Luke Street 8a4cda9d98 CDrone: Don't return early in Patrol 2020-09-13 20:02:09 -04:00
Luke Street a2fe44afe1 CDrone: PathFindEx target fix 2020-09-13 19:56:55 -04:00
Luke Street 754321314e CDrone: PathFind fixes 2020-09-13 19:55:20 -04:00
Luke Street 3780671ff6 CDrone: Check minAttackRange in InRange 2020-09-13 19:36:28 -04:00
Luke Street ecc8b73ead CDrone: Use std::any_of in HearShot 2020-09-13 19:34:34 -04:00
Luke Street 3bf5a6fc83 CDrone: GetDamageVulnerability fixes 2020-09-13 19:32:52 -04:00
Luke Street a0d7f126e9 CDrone: Reset shieldTime in GetCollisionResponseType 2020-09-13 19:30:21 -04:00
Luke Street ffe0cf7ca2 CDrone: Minor fixes in Flee, HitShield 2020-09-13 19:24:34 -04:00
Luke Street 8af397cacc CDrone: Rename x824_activeLasers & define sub_80165984 2020-09-13 19:15:57 -04:00
Luke Street 7efaadac80 CDrone: Rename x58c_prevDodgeDir 2020-09-13 19:04:24 -04:00
Phillip Stephens 4c3d7193b1
Thardus: fix locking onto destroyed rocks 2020-09-13 13:24:16 -07:00
Phillip Stephens 545a6d691c
CThardus: roll baby roll 2020-09-13 13:00:13 -07:00
Phillip Stephens 2d2063632c
CThardus: fix variable assignments in constructor 2020-09-13 12:17:50 -07:00
Phillip Stephens 1cc574ed11
CThardus: cleanup and minor fixes 2020-09-13 12:03:49 -07:00
Phillip Stephens e64591bbf8
CThardus: Fix knee collider, attempt to fix healthbar 2020-09-12 21:08:14 -07:00
Phillip Stephens e512ba1336
More CThardus imps 2020-09-12 18:40:19 -07:00
Phillip Stephens fb69ae741d
Fix Thardus' structure and implement basic behavior 2020-09-12 18:40:19 -07:00
Phillip Stephens 2ca0cd2bdd
Final CThardusRockProjectile imps, cleanup needed 2020-09-12 18:40:19 -07:00
Phillip Stephens 2c59420177
Finish implement AI behavior for CThardusRockProjectile 2020-09-12 18:40:19 -07:00
Phillip Stephens 1ba68175e9
More CThardus imps, add CRandom16 stats 2020-09-12 18:40:19 -07:00
Phillip Stephens 7ba02f28c0
More fixes 2020-09-12 18:40:18 -07:00
Phillip Stephens 773d5cd673
Thardus: Minor fixes 2020-09-12 18:40:18 -07:00
Phillip Stephens 7847b59705
More CThardus imps 2020-09-12 18:40:15 -07:00
Phillip Stephens b68af83fb3
Implement CAutoSave 2020-09-12 18:13:38 -07:00
Phillip Stephens dc4b79eec3
Merge branch 'new-flamethrower' of https://github.com/shiiion/urde into shiiion-new-flamethrower 2020-09-10 11:03:28 -07:00
Luke Street 9b5d1a6ba6 CDrone: Rename x690_colSphere, x834_31_attackOver 2020-09-09 02:31:38 -04:00
Luke Street fb7e8cd65a CDrone: Implement AttackOver 2020-09-09 02:30:11 -04:00
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