Commit Graph

3048 Commits

Author SHA1 Message Date
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