feat(content): new voltmeter/bionic scanner CBM #4107
Merged
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.
Purpose of change
This adds that other CBM idea I mentioned earlier. Along the way however, while looking into how power drain for it works, I found myself kinda not really liking how it worked. In particular, it's not really feasible to have the "it dumps power for each CBM detected until it runs out, then deactivates midway through" thing work right in CBM form, far as I could tell.
Describe the solution
C++ changes:
Character::activate_bionic
that calls the use action effects of a voltmeter when a new bionic, shown below, is activated.Character::process_bionic
that mimics the effect of an active bionic scanner if a certain sister bionic is in use.Character::sees_with_specials
so having the electrosense CBM active works for seeing electric zeds.iuse::note_bionics
, on the basis that the device is already active and scanning already, and it flags which bodies have already been scanned either way. Plus it's a good way to just abruptly drain the entire battery on a single pile of bodies.JSON changes:
bionics
,bionics_mil
,bionics_op
,bionics_op2_utl
,bionics_tech
, andscience
.Describe alternatives you've considered
Rigging the voltmeter half of the CBM to not take charges at all, or else having it access charges_per_use of the voltmeter and using that, would be nice but it needs
act_cost
to be able to activate at all.Testing
Additional context
Checklist