Commit Graph

65 Commits

Author SHA1 Message Date
Tim Beswick
27c5464654
Common - Add separate blockSpeaking status for acre direct (#8904)
* Add separate blockSPeaking status for acre direct

* Move TFAR code to new blockSpeaking handler

Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2022-05-08 13:20:15 -05:00
GhostIsSpooky
9209fedcf7
Medical Statemachine - Improve edge case death handling (#8788)
* fix #8772

* add WARNING for dead/null units

* fix macro

* improve warnings

* handle scripted death without warnings

Co-authored-by: PabstMirror <pabstmirror@gmail.com>

Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2022-03-07 12:28:51 -06:00
GhostIsSpooky
f7f497f0ac
Medical Status - Add isDamageAllowed check to setDead (#8803)
* add delay & logs

* add remote support

* isDamageAllowed check

* add internal comment to setDead event

* remove remote setDead EH

* remove unnecessary changes

* Add comments and move check below the event
2022-02-06 17:36:28 +01:00
GhostIsSpooky
a9296f66d5
Medical - Update setDead to use setHitpointDamage instigator param (#8397)
* 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>
2021-11-15 09:31:56 -06:00
GhostIsSpooky
0a203fdde4
Medical Feedback - Stop effects on featureCamera (#8373)
Co-authored-by: Kyle Mckay <5459452+kymckay@users.noreply.github.com>
2021-10-10 16:24:10 +02:00
Salluci
48912be73c
Captives - Disallow ACRE/TFAR radio usage on surrender/handcuff (#8388)
* 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>
2021-09-25 11:16:15 -05:00
BaerMitUmlaut
88bbb0dd69
Medical - Add functions to serialize / deserialize the medical state of a unit (#7944) 2021-07-23 15:49:04 +02:00
BaerMitUmlaut
d27122fa16
Medical Status - Fix unconscious AI aiming at enemies (#7977)
* Fix unconscious AI aiming at enemies

* Improve handling when locality changes

Co-authored-by: PabstMirror <pabstmirror@gmail.com>

Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2020-11-08 16:27:10 -06:00
commy2
15b4b98e5b
Medical Status - Fix double execution of killed event (#7561)
* fix double execution of killed event

* revert the execNextFrame change

* make second execution run with null

* make second execution run with null
2020-02-29 16:09:00 -06:00
PabstMirror
c44360bd19
Medical - Unlock air controls when going uncon (#7533)
* Medical - Unlock air controlls when going uncon

* remove unneeded parentheses

* Update addons/medical_status/functions/fnc_setUnconsciousState.sqf

Co-Authored-By: mharis001 <34453221+mharis001@users.noreply.github.com>

Co-authored-by: mharis001 <34453221+mharis001@users.noreply.github.com>
2020-02-19 10:05:05 -06:00
SilentSpike
d1c03cec1a
Only force enable input when player is killed (#7510) 2020-02-05 23:09:58 +00:00
Whigital
cdf02f629e
Only set unconscious upon entering CA (#7503)
Hopefully fix players being able to self interact when transitioning from cardiac arrest -> unconscious
2020-02-04 11:17:25 +00:00
Whigital
3be84e946b
[medical_status] Enable user input between death and respawn (#7502)
Fix being unable to use any menus created while dead
2020-02-04 11:15:45 +00:00
PabstMirror
9ac543aacc
Medical - Rename private version of setUnconscious (#7237) 2019-10-12 09:47:57 -05:00
PabstMirror
d6507cf119
Medical - epiBoostsSpontaneousWakeUp (#7076)
* Medical - epiBoostsSpontaneousWakeUp

* Update initSettings.sqf

* Move setting, add strings

* Update initSettings.sqf

* Update addons/medical/stringtable.xml

Co-Authored-By: mharis001 <34453221+mharis001@users.noreply.github.com>
2019-09-28 16:11:32 -05:00
mharis001
ec9e6c088b Medical - Only stitch wounds on not bleeding body parts (#7044)
* Only stitch wounds on not bleeding body parts
2019-09-28 21:48:19 +01:00
PabstMirror
edd5c44853
Medical - Improve loading/unloading of unconc patients (#7109)
* Medical - Improve loading/unloading of unconc patients

* Update fnc_loadPersonLocal.sqf

* Multi-line

* Formating

* Update fnc_loadUnit.sqf
2019-09-05 15:56:53 -05:00
PabstMirror
d6c39e661f
Medical StateMachine - Tweak dead state handling (#7061)
* 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>
2019-09-05 15:56:14 -05:00
PabstMirror
f5782fd1ff
Medical - Various debugging and fix cpr anim speed (#7122)
* Medical - Various debugging and fix cpr anim speed

* Update fnc_setCardiacArrest.sqf
2019-08-06 08:10:33 -05:00
mharis001
b2f4b8ea20 Medical - Cleanup settings (#7057)
* 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
2019-06-28 11:50:11 -05:00
PabstMirror
de13ab0f47
Medical - Rework CPR and Bleeding in cardiac arrest (#7060)
* Medical - Rework CPR and Bleeding in cardiac arrest

* remove cprCreatesPulse, add cprSuccessChance

* hide cpr for basic diagnose

* Update addons/medical_statemachine/functions/fnc_enteredStateCardiacArrest.sqf

Co-Authored-By: SilentSpike <silentspike100+Github@gmail.com>
2019-06-27 19:01:20 -05:00
SilentSpike
56cb638aff Stop AI firing at unconscious units (#7074)
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
2019-06-27 17:11:51 -05:00
mharis001
08a7d2706e Add wounds var macros (#7058) 2019-06-22 13:36:27 -05:00
PabstMirror
2fc11d38e0
Medical - Fix unconsicous problems with minWaitingTime and fullHealLocal (#7030)
* Medical - Fix setUnconsicous minWaitingTime

* Fix fullHeallocal restoring unconscious with unstable vitals
2019-06-11 19:25:05 -05:00
SilentSpike
8483a4bcdc Medical - Fix severity of wound bleeding and adjust cardiac output calculations (#7010)
* 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>
2019-06-10 11:23:21 -05:00
mharis001
44050df98b Medical Treatment - Modernize and Cleanup (#6933)
* 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>
2019-06-03 10:31:46 -05:00
PabstMirror
e56cc0d74e
Limping / Splint Treatment (#6947)
* 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
2019-05-11 23:13:59 -05:00
PabstMirror
847d2d4179
Medical - Improve adjustment calcs / wound blood loss / medications (#6910)
* 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>
2019-04-27 14:12:11 -05:00
PabstMirror
0d7709673a
Medical Feedback - Fix DISABLE_VANILLA_DAMAGE_EFFECTS (#6966)
* Medical Feedback - Fix DISABLE_VANILLA_DAMAGE_EFFECTS

* Keep compatibilty with old ace_medical_lastDamageSource var name
2019-04-27 14:04:31 -05:00
PabstMirror
f2b9bf3a17 Update headers 2019-03-30 11:07:54 -05:00
Rutger "RedBery" Meijering
15036d7fd8 Fixes to unconsciousness and damageTypes systems (#6589)
* Fixes BleedingCoef having impact on bloodloss KO
Fixes incorrect var in setUnconscious

* Changes method for checking if typeOfDamage is valid
Adds check for if typeOfDamage is valid to extension version of woundsHandler

* Changes collision wound location select to a weighted system to make it more lethal at faster collisions
Adds collision and drowning damage types to config (drowning has no related wounds to prevent wounds being added while drowning).

* Fixes unneeded space

* Fixes minor mistake (body damage chance should go from 1 to 0 without ever becoming negative)
2019-03-21 19:33:51 +01:00
SilentSpike
24846e6f74
Make state change status updates consistent (#6538)
State transitions call respective functions in the status component where unit variables and status are actually handled.
2018-08-25 16:40:22 +01:00
Rutger "RedBery" Meijering
5fbaf426a8 Fix various bugs (#6523)
* 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
2018-08-14 21:34:35 +01:00
SilentSpike
9e5c4a7ed9
Move medical settings into their respective components (#6493)
* Transfer medical AI to CBA setting
* Neuter the old settings module

I've left the entry in CfgVehicles so that it doesn't cause errors on
older missions, but it's just a dumb logic now and does nothing.

* Remove medic setting
* Move increaseTraining setting
* Move fnc_adjustPainlevel to medical_status
* Move pain and bleed coefficients to medical_status
* Move advanced bandages to medical_treatment
* Move advanced medication to medical_treatment
* Move advanced diagnose to medical_treatment
* Move wound reopening and screams settings
* Move damage threshold settings
* Move showPain setting
* Move statemachine settings
* Move pain visualisation setting
* Move all treatment usage settings
* Move self IV setting
* Move remaining settings
* Sort treatment setting string categories
2018-08-06 17:08:43 +01:00
Dedmen Miller
7a0a00ea09 Cleanup using SQFLint (#6485)
* Use private
* Fix wrong spacing
* Fix wrong variable being used
* Cleanup empty line after header
* ace_common_fnc_getCountOfItem
* Remove useless _return variable
* Naming
2018-08-02 15:02:10 +01:00
Dedmen Miller
6bd8542eed Move #includes before function headers (#6484) 2018-07-30 10:22:14 +01:00
Thomas Kooi
c9ad92e92d
Disable debugging (#6482) 2018-07-30 00:07:30 +02:00
Thomas Kooi
36f2c5fcc9 Minor code clean up (#6474)
* 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
2018-07-29 22:43:14 +01:00
Thomas Kooi
e22f35da37 Remove medkit (#6473)
Due to be replaced by an alternative treatment option such as a split
2018-07-26 17:14:11 +01:00
Thomas Kooi
604fa0e4cb
Fix some script errors on medical rewrite (#6450) 2018-07-18 22:50:03 +02:00
SilentSpike
4466f9e785
Strip medical component (#6442)
* Move litter to `treatment`
* Move eden object attributes to `treatment`
* Move treatment items to `treatment`
* Move bodybag handling to `treatment`
* Move state conditions to `statemachine`
* Move radio addon handling to `feedback`
* Move medical macros to `engine`
* Move medical extension to `damage`
* Fix texture and material paths after move
* Remove duplicate medical menu config
* Remove old faction class
* Remove a bunch of old code
2018-07-18 19:13:25 +01:00
SilentSpike
68ff7575eb
Move medical facility, vehicle and unit functions (#6440) 2018-07-18 11:09:48 +01:00
Glowbal
2faa3379ae Fix getBloodloss 2018-07-15 18:29:18 +02:00
Glowbal
f552acd7da Fix incorrect macro usages with whitespace 2018-07-15 16:25:14 +02:00
Glowbal
9d2e76e67a More component name fixes and small clean up 2018-07-15 16:24:04 +02:00
Thomas Kooi
14db38e0f0 Fix various namespace issues with medical 2018-07-15 15:00:16 +02:00
Thomas Kooi
9c00c6ffb5 Fix bunch of script errors related to getVars on start up of game 2018-07-15 13:01:26 +02:00
SilentSpike
54c398a007 Use macros for peripheral resistance 2018-05-23 10:52:47 +01:00
SilentSpike
de2d7f2fb8 Use macros for hemorrhage class tracking 2018-05-22 18:25:50 +01:00
SilentSpike
c9e11e62a1 Use macros for status state variables 2018-05-22 18:06:28 +01:00