Lioncash
34eb507a9d
CFactoryMgr: std::move function instances in AddFactory()
...
std::function is allowed to allocate on the heap, so this potentially
prevents unnecessary allocations.
We can also use insert_or_assign() to prevent unnecessary default
initialization of std::function that immediately get overridden.
2020-03-09 12:04:51 -04:00
Phillip Stephens
d93df18a37
Fix `CScriptDistanceFog::AcceptScriptMessage`
2020-03-08 23:18:57 -07:00
Luke Street
7b9a037c95
Merge pull request #203 from lioncash/identical
...
CBallCamera: Collapse identical switch cases within AvoidGeometry()
2020-03-08 23:45:52 -04:00
Luke Street
6e9a80de5d
CVisorFlare: Rename "near" to avoid MSVC conflict
2020-03-08 23:44:44 -04:00
Lioncash
363386cbd9
CBallCamera: Collapse identical switch cases within AvoidGeometry()
...
Same behavior, but less code.
This is identical in behavior to the code within the GM8E v0 binary.
2020-03-08 23:40:22 -04:00
Lioncash
45c1bc9652
CStaticRes: Make use of CAssetId's IsValid() member function within operator bool
...
We should be testing against IsValid() here to handle all cases that
indicate invalid values, as opposed to only handling the zero case.
2020-03-08 22:49:33 -04:00
Lioncash
209cd4a54e
CStaticRes: Make operator bool explicit
...
Prevents potentially error-prone conversions to bool. Similar to the
changes recently made to CToken.
2020-03-08 21:20:08 -04:00
Lioncash
2233a78fe2
CToken: Add HasReference() member function
...
Has the same semantics of operator bool(), but explains at the call site
what is actually being tested for in the relation to the object itself.
Aims to make readability slightly better (and removed the need for
casts).
2020-03-08 21:13:37 -04:00
Phillip Stephens
fc5170ede9
Merge pull request #200 from lioncash/temp
...
CLogBookScreen: Remove unconditional return true in IsScanComplete()
2020-03-08 18:03:54 -07:00
Phillip Stephens
a28b7a8df7
Merge pull request #199 from lioncash/octree
...
CPVSVisOctree: Use static qualifying name for ReadBoundingBoxBig()
2020-03-08 18:03:44 -07:00
Phillip Stephens
f07d4e9630
Merge pull request #198 from lioncash/move
...
CResFactory: Resolve use-after-move in AddToLoadList()
2020-03-08 18:03:28 -07:00
Phillip Stephens
b492c91ccf
Merge pull request #197 from lioncash/cond
...
CFontRenderState: Collapse common switch cases in RefreshColor()
2020-03-08 18:03:17 -07:00
Phillip Stephens
b01fa0c5bf
Merge pull request #196 from lioncash/saveable
...
CSaveableState: Initialize vectors in the constructor initializer list
2020-03-08 18:03:01 -07:00
Phillip Stephens
dd54f93da4
Merge pull request #195 from lioncash/unused
...
CPlayer: Make use of unused CCollidableAABox in ProcessInput()
2020-03-08 18:02:52 -07:00
Phillip Stephens
3011a839eb
Merge pull request #194 from lioncash/init
...
CProjectileInfo: Initialize result variable to false within PredictInterceptPos
2020-03-08 18:02:41 -07:00
Phillip Stephens
51bb2244da
Merge pull request #193 from lioncash/explicit
...
CToken: Make operator bool explicit
2020-03-08 18:02:30 -07:00
Phillip Stephens
3e59f7a455
Prepare for pr-193
2020-03-08 18:01:29 -07:00
Lioncash
2a1df559a9
CLogBookScreen: Remove unconditional return true in IsScanComplete()
...
This was temporarily added in for debugging purposes in the past but was
never removed.
2020-03-08 11:15:13 -04:00
Phillip Stephens
f06c26e7d6
Fix infinite loop in CObjectList, and add an assert to detect invalid assignments
2020-03-07 09:14:07 -08:00
Lioncash
8d42eb4287
CPVSVisOctree: Initialize in-class member variables where applicable
...
Provides a deterministic initial state for the default constructor.
2020-03-07 05:01:29 -05:00
Lioncash
4034e3b31f
CPVSVisOctree: Make use of std::array where applicable
...
Makes the arrays strongly typed.
2020-03-07 04:50:19 -05:00
Lioncash
969bcdba35
CPVSVisOctree: Use static qualifying name for ReadBoundingBoxBig()
...
It looks very odd using the name of the object being initialized to call
through to a static member function. We can disambiguate this by making
use of the qualifying name directly.
2020-03-07 04:46:19 -05:00
Lioncash
0a47e623fd
CResFactory: Resolve use-after-move in AddToLoadList()
...
The behavior on the right hand side would occur before the actual
assignment, making the tag value invalidated. Instead, we copy the tag
before the move is performed to keep the data valid when inserting it
into the map.
2020-03-07 03:56:16 -05:00
Lioncash
a490eaf8ff
CFontRenderState: Collapse common switch cases in RefreshColor()
...
Same behavior, less code.
2020-03-07 03:44:54 -05:00
Lioncash
815a38288a
CSaveableState: Initialize vectors in the constructor initializer list
...
Initializes the vectors in place, rather than constructing them and then
resizing.
2020-03-06 22:47:39 -05:00
Lioncash
830e1c59d2
CPlayer: Make nearby variables const
...
Makes nearby variables from the previous change const to make their
immutability explicit.
2020-03-06 22:08:56 -05:00
Lioncash
a2b6b4515d
CPlayer: Make use of unused CCollidableAABox in ProcessInput()
...
GM8E v0 makes use of the temporary collidable AA box. This amends the
code to make use of it.
2020-03-06 22:06:44 -05:00
Lioncash
27fb2008dc
CProjectileInfo: Initialize result variable to false within PredictInterceptPos()
...
GM8E v0 sets this to false before performing any further calculations.
This also prevents accidental uninitialized usages from occurring if
this is ever changed in the future.
While we're in the same area we can make bracing consistent.
2020-03-06 21:57:39 -05:00
Lioncash
a6367c0688
CToken: Make operator bool explicit
...
Prevents potential error-prone conversions from occurring
2020-03-06 21:42:07 -05:00
Phillip Stephens
4daa8ac374
CModelBoo: Fix missing cast
2020-03-06 16:27:33 -08:00
Phillip Stephens
17f25457c5
CGameArea::CAreaObjectList fix
2020-03-06 16:20:52 -08:00
Phillip Stephens
76e0a1f8f5
Merge pull request #192 from lioncash/init
...
CEyeball: Eliminate unnecessary runtime initializer in Think()
2020-03-06 16:15:15 -08:00
Phillip Stephens
7358570d51
Merge pull request #191 from lioncash/const
...
CObjectList: Make IsQualified() a const member function
2020-03-06 16:14:59 -08:00
Phillip Stephens
24baafb996
Merge pull request #190 from lioncash/render
...
CBooRenderer: Minor cleanup
2020-03-06 16:14:47 -08:00
Phillip Stephens
ae25392d19
Merge pull request #189 from lioncash/model
...
CModelBoo: Make static data constexpr where applicable
2020-03-06 16:14:05 -08:00
Phillip Stephens
f8e40e600f
Merge pull request #188 from lioncash/class
...
CModelShaders: Make EExtendedShader an enum class
2020-03-06 16:13:54 -08:00
Phillip Stephens
b44e43c7c0
Merge pull request #187 from lioncash/make
...
CThardus: Minor tidying changes
2020-03-06 16:13:42 -08:00
Phillip Stephens
ab65fae969
Merge pull request #186 from lioncash/array
...
CInGameGuiManager: Make use of std::array where applicable
2020-03-06 16:13:33 -08:00
Phillip Stephens
c9e7b2c2ff
Merge pull request #185 from lioncash/reference2
...
CParticleGenInfo: Fix missing ampersand in GetParticleSystem() member function
2020-03-06 16:13:22 -08:00
Phillip Stephens
915a0785a5
Merge pull request #184 from lioncash/reference
...
CHierarchyPoseBuilder: Fix missing ampersand in CharLayoutInfo() return value
2020-03-06 16:13:05 -08:00
Phillip Stephens
96af6157bd
Merge pull request #183 from lioncash/move
...
CThardus: std::move vector instances in constructor
2020-03-06 16:12:53 -08:00
Phillip Stephens
4b13f8768b
Merge pull request #181 from lioncash/ref
...
CInGameGuiManager: Take std::shared_ptr by const reference in DoStateTransition()
2020-03-06 16:12:35 -08:00
Lioncash
00ff91eece
CEyeball: Remove unnecessary .get() call
...
Dereferencing is already supported on smart pointers, so we don't need
to call .get() here.
2020-03-06 07:30:27 -05:00
Lioncash
c3809162bf
CEyeball: Eliminate unnecessary runtime initialzer in Think()
...
We can just fold the result into the constant directly, which allows us
to avoid the need for a static runtime initializer. This is bit-exact
with what the result would be, so this is fine.
2020-03-06 07:30:05 -05:00
Lioncash
80e2e97dc4
CObjectList: Make IsQualified() a const member function
...
None of the implementations modify object instance state, so this can be
made const qualified.
2020-03-06 04:36:39 -05:00
Lioncash
b1426867bf
CBooRenderer: Make use of std::array where applicable
...
Makes the data strongly typed and allows eliminating some hardcoded
sizes.
2020-03-06 02:25:40 -05:00
Lioncash
4f7f5cf09a
CBooRenderer: Make Buckets class mostly internal
...
This is only ever functionally used within this translation unit, so we
can hide the class internally.
2020-03-06 01:16:02 -05:00
Lioncash
3c4e25062d
CModelBoo: Make static data constexpr where applicable
...
Gets rid of potential runtime-initializers.
2020-03-06 00:46:30 -05:00
Lioncash
d9664d165f
CModelShaders: Make EExtendedShader an enum class
...
Prevents pollution of the urde namespace with general names like Flat,
etc.
2020-03-06 00:16:31 -05:00
Lioncash
3717480eeb
CThardus: Make use of std::array where applicable
...
Dehardcodes some sizes and gets rid of two instances of implicit sign
conversions.
2020-03-05 23:22:30 -05:00