Add condition-setter method to ModStore #6825
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Many conditions in
CalcPerform
follow a pattern ofif condition then modDB.conditions[name] = true end
.This is almost the same as
modDB.conditions[name] = condition
, except for:if
-check is thus functionally necessary.if
-check uses slightly less memory.By adding an
AddCondition
method to theModStoreClass
, contributors can writemodDB:AddConditon(name, condition)
, rather than typing out the check explicitly. This can also make it easier to see what conditions are being set at a glance, when many conditions are set in a row.Additionally, sub-calculations of
doActorAttribsConditions
have been extracted into their own functions where relevant.Steps taken to verify a working solution:
Link to a build that showcases this PR:
2 x Varunastra
Omniscience
Cyclopean Coil
Before screenshot:
After screenshot: