* Refactor medical to use hashmaps for wound storage
- We most frequently want to access wounds by body part, so this makes
that a constant time lookup.
- The body part index is no longer stored in every wound since it's
inherent in the wound storage.
- Using body part names as the keys of the hashmap to improve code
clarity (no more magic numbers).
closes#6468
* Add deserilization migration from old wound arrays
Will migrate from old form array wound storage to the new hashmap
strucutre during deserlization. This is relevant for communities piping
medical state out to a database or similar between sessions.
* fix issue with suture stitching
* change version number in comment
---------
Co-authored-by: Salluci <salluci.lovi@gmail.com>
* Redoing this
* Revert "Redoing this"
This reverts commit 80ff709676.
* Do this properly
* Update fnc_handleKilled.sqf
* use setDead function directly
* Handle scripted camera
* redo #8387
I'm dumb.
* try this
* if construct outside of ctrlSetEventHandler
Co-authored-by: Filip Maciejewski <veteran29@users.noreply.github.com>
* tweak disableUserInput / handleKilled
Co-authored-by: Filip Maciejewski <veteran29@users.noreply.github.com>
Co-authored-by: PabstMirror <pabstmirror@gmail.com>
* Modernize and cleanup medical_treatment
* One line for each old public function
* Fix litterCleanupDelay name
* Improve adjustment calcs / wound blood loss / medications
fix func descriptions
Calc wound blood loss on events
reorder includes so scritpmacroMed has global effect
trivial optimization for getCardiacOutput
Fix var
Fix wounds not reopening (nil _category)
Fix surgical kit inherting canBandage conditional
debug hitpoints
Update ACE_Medical_Treatment_Actions.hpp
Use woundBleeding for IS_BLEEDING macro
rework medication vars
comments
Reset var in init / fullHeal
Update addons/medical_treatment/functions/fnc_onMedicationUsage.sqf
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* Change wound data array
Drop unique id and merge classId and category
* Splinting and treatment and gui
* Add arm fractures and aim effects
* localizations and event
* fix
* fix merge for renamed files
* Fixes and code review changes
* Move medical logs clearing to treatment
* More cleanup work
* cleanup
* Apply suggestions from code review
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* formating, rename bone images
* Fix args for setDead call in actionPlaceInBodyBag
* Apply suggestions from code review
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* disable calls to extension
* Update fnc_onMedicationUsage.sqf
* Medical - Skip unneeded setVars on initUnit (#6949)
* Medical - Transfer state machine state on locality (#6950)
* Medical - Transfer state machine state on locality
* Fix feedback isUnconscious var
* Exclude AI
* Make UAV excludes consistant, formating
* Update fnc_treatmentFullHealLocal.sqf
* reset fractures on respawn
* Fix merge
* Add PAK time coefficient setting
* Fix medication
* Add ace_medical_replacementItems config array
* checkItems performance improvement
* Treatment - cap max animation speed (#6995)
* Treatment - cap max animation speed
and add lock to prevent AF from reseting anim
* Update fnc_getBandageTime.sqf
* Use local version of setAnimSpeedCoef
* Revert "Use local version of setAnimSpeedCoef"
This reverts commit 36c22a9047.
* Move replacementItems compiling to preInit
* Improve replacementItems compiling
* Cleanup splint functions, use macros for fractures
* Rename splintCondition to canSplint
* Add cprCreatesPulse setting
* Cleanup remaining functions
* Capitalize stringtable entry names
* getStitchTime function and fix treatment locations
* Update addons/medical_treatment/functions/fnc_getHealTime.sqf
Co-Authored-By: SilentSpike <silentspike100+Github@gmail.com>
* Improve adjustment calcs / wound blood loss / medications
fix func descriptions
Calc wound blood loss on events
reorder includes so scritpmacroMed has global effect
trivial optimization for getCardiacOutput
Fix var
Fix wounds not reopening (nil _category)
Fix surgical kit inherting canBandage conditional
debug hitpoints
Update ACE_Medical_Treatment_Actions.hpp
Use woundBleeding for IS_BLEEDING macro
rework medication vars
comments
Reset var in init / fullHeal
Update addons/medical_treatment/functions/fnc_onMedicationUsage.sqf
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* Change wound data array
Drop unique id and merge classId and category
* Splinting and treatment and gui
* Add arm fractures and aim effects
* localizations and event
* fix
* cleanup
* Apply suggestions from code review
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* formating, rename bone images
* Apply suggestions from code review
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* disable calls to extension
* Update fnc_onMedicationUsage.sqf
* Medical - Skip unneeded setVars on initUnit (#6949)
* Medical - Transfer state machine state on locality (#6950)
* Medical - Transfer state machine state on locality
* Fix feedback isUnconscious var
* Exclude AI
* Make UAV excludes consistant, formating
* Update fnc_treatmentFullHealLocal.sqf
* reset fractures on respawn
* Improve adjustment calcs / wound blood loss / medications
fix func descriptions
Calc wound blood loss on events
reorder includes so scritpmacroMed has global effect
trivial optimization for getCardiacOutput
Fix var
Fix wounds not reopening (nil _category)
Fix surgical kit inherting canBandage conditional
debug hitpoints
Update ACE_Medical_Treatment_Actions.hpp
Use woundBleeding for IS_BLEEDING macro
rework medication vars
comments
Reset var in init / fullHeal
Update addons/medical_treatment/functions/fnc_onMedicationUsage.sqf
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* Update addons/medical_treatment/functions/fnc_onMedicationUsage.sqf
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* Fix medical menu not reopening regardless of setting
* Ensure no heartrate or bloodpressure on death
* Fix status variables not being reset on respawn
* Fix JIP resetting status variables for all units
* Fix heart rate adjustment overflow and
* Minor code clean up
* refactor(medical): shorten some code
* refactor(medical): use macros for tourniquets
* refactor(medical): pull cache expiry values into script_macros_medical
Improves the way medical is storing variables in object space by having
a common list of variables names as macros. Makes the code a bit cleaner
and ensured consistency across components. Also a handy reference for
when working on medical to see what values are all stored.