* 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>
* Korean Translation 100% done
fixed typos, changing the Korean transliteration of proper nouns, and changing the meaning of the original to a more understandable interpretation without compromising the transmission of the original
* Something Edited
edit incorrect translation and add typo correction
* 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>
* Block radio on captive/surrendered/unconscious via status effect
* missing semicolon
* Don't broadcast setVar if radio addon doesn't exist
Co-authored-by: PabstMirror <pabstmirror@gmail.com>
* Add some translation eng to ita
* Translation eng-ita completed
Translation completed from English to Italian finally completed, I hope there is no problem but I would like to communicate that during the translation I carelessly "translated" and placed two names in objects, I leave you the id
1. STR_ACE_Medical_Blood_EnabledFor_Description
2. STR_ACE_Tracers_100Rnd_580x42_Drum_yellow
I hope I haven't done any damage :)
PS: Thanks again for this wonderful mod
Good luck with all upcoming updates
* Some erros(?)
Some erros(?) Rows 3 to 5 are highlighted red I hope there is no problem XD
* fix tabs first
* re-add moved
* fix merge
* Update stringtable.xml
* fix STR_ACE_Medical_Blood_EnabledFor_Description
Co-authored-by: PabstMirror <pabstmirror@gmail.com>
* Medical StateMachine - Tweak dead state handling
- Don't call setDammage inside HandleDamage EH
- Add death reason on entering death state
* add a getVar disable in case this causes problems
* Cleanup
* cleanup
* Update addons/medical_statemachine/functions/fnc_enteredStateDeath.sqf
Co-Authored-By: Ferran Obon <magnetar5891@gmail.com>
* Cleanup medical settings
* Fix extra [
* Allow giving IV/blood to self by default
* Medical Blood - Settings improvements and cleanup (#7069)
* Add more blood settings and cleanup
* Fix include before header
* Update addons/medical_blood/functions/fnc_init.sqf
Co-Authored-By: PabstMirror <pabstmirror@gmail.com>
* Disable debug
* Cleanup moved settings
* Fix remaining setting descriptions
This just reimplemented the behaviour from #5864
I believe we though using `setUnconscious` command would make this
unnecessary, but testing seems to show that's not the case
* Fix severity of wound bleeding
I'm simplifying the nastiness calculations so that the wound config
specifies the worst wound and we scale it between 25% to 100% based
on the wound damage and number of wounds recieved.
Similarly I've updated the wound configs to more reasonable maximum
bleeding values based on the fact that they're percentages of cardiac
output being bled.
* Limit variance of pain modifier
This is to avoid unexpectedly high pain for small wounds or unexpectedly
small pain for large wounds
* Make more wounds increase chance for nastiness
Rather than guarantee
* Adjust worst damage scaling
This handles torso wounds better as they're typically around 0.3-0.6 for
6.5mm shots which makes them roughly medium sized.
* Fix cardiac output calculation
Previously the calculation didn't make sense as it wasn't outputting
a value in l/s. This method of calculation makes more logical sense and
provides a point of reference for what the bleeding values actually
represent (percentage of the blood being pumped that is lost - which now
has an actual volumetric value).
* Fix blood pressure after change to cardiac output
* Fix heartrate skyrocketing between 5l and 4l blood
Pretty sure someone accidnentally got these conditions the wrong way
around. This way blood pressure will first drop and then heart rate will
later go up to compensate.
* Fix comment typo
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>