Medical - Improve saline infusion handling #300
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.
When merged this pull request will:
ACE_Medical_Dose::CloneDoseandForceExpire()to guarantee per-patient instances.CloneDose()in bolus and infusion to copy subclass fields and reset flags, and addACE_Medical_Infusion::Stop()with expiration based on blood-flow–scaled rate.ACE_Medical_Infusion::ComputeConcentrationusingACE_Medical_GetBloodFlowScale().ACE_Medical_CharacterContextandfloat timeSlicethroughACE_Medical_Medication_SimulationJoband allApplyEffectoverrides to match the engine’sEOnFrame(float timeSlice)processing.ACE_Medical_ConsumableSalineInfusion(subclass ofSCR_ConsumableSalineBag) that clones configured doses server-side and prevents stacking active SALINE infusions (a single saline bag can be administered at the time being).ACE_Medical_SalineBagUserActionto validate consumable availability and wire UI text/icon for starting the infusion.SalineBag_01_base.etto use the new consumable, zero absolute regeneration, and configure a singleACE_Medical_Infusionprototype at 0.83– ml/s for 600 s.ACE_Medical_EDrugType::SALINEand add SALINE pharmacokinetics toSettings.conf(activation/deactivation = 1) so fluid calculations use config.ACE_Medical_MedicationComponent::StopInfusionsForDrugto stop and force-expire SALINE infusions automatically when blood volume reaches capacity.ENABLE_DIAG(viaACE_Medical_Medication_DiagState) to display base/effective ml/s, delivered volume, bag capacity, and patient uptake with smoothed readouts.Documentation not updated