fix: internal-mag guns that lack RELOAD_ONE
no longer massively inflate reload cost
#5769
+16
−12
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.
Checklist
Required
main
so it won't cause conflict when updatingmain
branch later.Optional
Purpose of change
This fixes weapons like the BB gun saying they only take 500 moves to reload but then taking entire minutes due to weird code stuff.
Describe the solution
C++ changes:
Character::item_reload_cost
now only multiplies the reload rate of an item by how many bullets it has to insert if the item's a magazine. Guns will always use just the reload rate. This doesn't affect guns swapping mags orRELOAD_ONE
guns, but instead the few weapons that still use clip size but reload all ammo at once.JSON changes:
RELOAD_ONE
so it still forces the extra delay of dealing with the (now lower) reload cost per each bolt.Describe alternatives you've considered
Hacking around this by giving relevant guns very low reload rates.
Testing
Additional context