Commit Graph

88 Commits

Author SHA1 Message Date
05c7f84b01 Medical Engine - Allow disabling seat locking on vehicle types (#10123) 2024-07-21 14:31:57 -05:00
d4d69b9141 Medical Engine - Fix death animation hash keys (#10067) 2024-06-13 14:11:21 +02:00
70b0a4c434 Medical - Cleanup refs to hdBracket (#10064) 2024-06-11 14:37:43 -03:00
59af3e1f6d General - Change CBA Namespaces to HashMap (#8801)
* medical_treatment

* advanced_throwing

* common, csw

* Update fnc_replaceRegisteredItems.sqf

* Sanitised numerous components

* Update XEH_postInit.sqf

* Update XEH_postInit.sqf

* FUNC -> LINKFUNC

* Changed tagging hashmap

* Reverted some changes

* Reverted some changes

* Update XEH_clientInit.sqf

* Tweaks and fixes

* Fix number replacements

* Minor cleanup

* Update fnc_getMagazineName.sqf

* Update fnc_getMagazineName.sqf

* Minor improvement

* Made factions case-sensitive and added `toLowerANSI` to be safe

* Update fnc_getDetectedObject.sqf

* Update addons/common/functions/fnc_actionKeysNamesConverted.sqf

Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>

* Throw error if item doesn't exist

---------

Co-authored-by: Salluci <69561145+Salluci@users.noreply.github.com>
Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>
2024-06-11 12:34:32 -03:00
a85074a797 Medical Engine - Remove ACE_HDBracket hitpoint (#9732)
* Medical Engine - Remove ACE_HDBracket hitpoint

* skip context 4

* move checks to vars

* skip uav/logic entities

* add check for arm/leg hitpoints

* Update addons/medical_engine/functions/fnc_handleDamage.sqf

Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>

* don't skip context 2

* clearer custom hitpoint array name

* reenable compile cache

* remove debug mode

* lazy eval

* whitespace

* update comment

* Update fnc_handleDamage.sqf header

* Update addons/medical_engine/functions/fnc_handleDamage.sqf

Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>

* Update addons/medical_engine/XEH_postInit.sqf

Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>

* update hitpoint test

* missing "

* Update addons/medical/dev/test_hitpointConfigs.sqf

Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>

---------

Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>
Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>
2024-06-11 11:11:28 -03:00
cee187adac General - Convert vehicle to objectParent (#9801)
Convert vehicle to objectParent
2024-03-26 09:54:06 -03:00
e06c6f7835 General - Replace toLower with toLowerANSI where applicable (#9790)
* General - Replace toLower with toLowerANSI where applicable

* whoops

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

* Update addons/repair/functions/fnc_setHitPointDamage.sqf

Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>

* Update addons/repair/dev/draw_showRepairInfo.sqf

Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>

* Update addons/tagging/XEH_preStart.sqf

Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>

* Update addons/vehicle_damage/functions/fnc_handleCookoff.sqf

Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>

* Update addons/tagging/XEH_preStart.sqf

Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>

* comparment -> compartment

* Update fnc_showHud.sqf

* Update fnc_registerObjects.sqf

* Update addons/common/functions/fnc_cbaSettings_settingChanged.sqf

---------

Co-authored-by: PabstMirror <pabstmirror@gmail.com>
Co-authored-by: johnb432 <58661205+johnb432@users.noreply.github.com>
2024-03-07 22:08:13 +01:00
a3aef6a066 General - Cleanup spaces in macros (#9769)
Co-authored-by: LinkIsGrim <salluci.lovi@gmail.com>
2024-02-05 14:04:24 -03:00
9eb7e83e59 Medical Engine - Don't skip hdbracket ever (#9738) 2024-01-15 23:41:26 -03:00
a684e874fb Medical Engine - Exit early if incoming damage is 0 (#9733) 2024-01-14 15:16:55 -03:00
1b6b0aaf0b Medical - Fix hanging when vehicle crew receive fatal damage (#9681)
* fix undefined var in trace

* fix high damage hang

* update comment

* Update fnc_woundsHandlerVehiclehit.sqf
2023-12-18 14:02:09 -03:00
0ae00248c5 Medical Engine - Fix script error for 0 overall hitpoint armor (#9633)
* Update fnc_getHitpointArmor.sqf

* Update addons/medical_engine/functions/fnc_getHitpointArmor.sqf

Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>

---------

Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>
2023-11-10 19:49:09 -03:00
be6582ea44 Medical Engine - Disable uniform passthrough scaling, increase passthrough effect on vests (#9524)
* add separate pow for vests

* missing 0.02

* skip uniform scaling

* mathity math mamath
2023-10-24 15:15:47 -04:00
aee47c9bc6 Medical - Add damage handling for explosive damage while inside vehicles (#9246)
* Add vehicle explosion handling

* Missing semicolon

* scale armor damage using passthrough

* add - to comment

Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>

* improve condition

Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>

* remove extra brackets

Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>

* remove extra brackets

* fix damage sorting

* whitespace

* comment

* fix function header

* fix infinite armor when no item equipped

* modify condition & handling for vehicle explosion

* add vehiclehit woundHandler

* finalize

* add vehiclehit woundHandler

* finalize

* cleanup

* more cleanup

* name

* randomize hitpoints

* finalize

* don't scale structural damage

* fix undefined var

* remove _i

* fix script error, tone down scaling

* add AVD checks

* Update addons/medical_damage/functions/fnc_woundsHandlerVehiclehit.sqf

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

* nuke AVD crew damage handling

* get rid of aircraft crash lethality compensation

---------

Co-authored-by: James Woods <pterolatypus@gmail.com>
Co-authored-by: GhostIsSpooky <69561145+Salluci@users.noreply.github.com>
Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>
Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2023-09-24 15:58:59 -04:00
da60a1b39d Medical Engine - Improve damage calculation for explosive-resistant armor (#9216)
* scale armor damage using passthrough

* add - to comment

Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>

* improve condition

Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>

* remove extra brackets

Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>

* remove extra brackets

* fix damage sorting

* whitespace

* comment

* fix function header

* fix infinite armor when no item equipped

* cleanup

* more cleanup

* name

* don't scale structural damage

* add setting

* fix key name

* add cap to passThrough

* fix script error in setting

---------

Co-authored-by: GhostIsSpooky <69561145+Salluci@users.noreply.github.com>
Co-authored-by: Jouni Järvinen <rautamiekka@users.noreply.github.com>
2023-09-23 13:07:06 -04:00
742626ff1a General - Relative script_component.hpp includes (#9378)
Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2023-09-12 20:58:10 +02:00
e47e18001f Docs - Update my display name everywhere (#9330)
* Update display name in team

* Update display name everywhere

* order

https://youtu.be/VYycQTm2HrM

---------

Co-authored-by: BrettMayson <brett@mayson.io>
2023-08-17 12:02:17 +02:00
6fb9161ecc Medical Engine - Fix unloading dead units in vehicles and handle deleted units vehicles (#9283)
* Medical Engine - Unlock when dead

* Update fnc_unloadPersonLocal.sqf

* Update addons/common/functions/fnc_unloadPersonLocal.sqf

Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>

* fix actually unloading people to found emptyPos

* handle deleted units

* handle dead units

ref 179957c39d

* vehicle -> objectParent

---------

Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>
2023-08-02 08:59:46 +03:00
52ed0fc6be Medical Engine - Prevent automatic unloading of dead or unconscious units (#7959)
* Lock seats of unconscious or dead units

* disable pullOutBody if medical is loaded

* fix undefined var and switch to objectParent

---------

Co-authored-by: Salluci <salluci.lovi@gmail.com>
Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>
2023-07-22 09:41:20 +03:00
02365609b5 Medical - Change medical to use hashmaps for wound storage (#8926)
* 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>
2023-06-24 08:11:56 +03:00
73a7dbdc1e Medical - Rework wound handling (#8278)
- Add stackable wound handler system for easy 3rd party extensibility and overriding of default wound handler.
- Change mapping from wound type -> damage types, to damage type -> wound types. Improves the semantics and makes configuration easier to reason about.
- Allow damage types to influence wound properties (bleed, size, etc.) with configurable variance parameters.
- Allow configuration of wound type variance per damage type. Enabling more logically driven variance for sensible but still varied end results.
- Improve handling of non-selection-specific damage events. The wound handler now receives all incoming damages and may apply damage to multiple selections (previously only ever one) if the damage type is not configured to be selection specific (with new config property `selectionSpecific`).
- Add debug script for testing explosion damage events at varied ranges.
- Add custom fire wound handler.
2022-02-17 20:03:12 +00:00
2cd935acbe Medical Engine - Synchronize random unconscious anims (#8671)
* Medical Engine - Synchronize random unconscious anims

* Update addons/medical_engine/functions/fnc_applyAnimAfterRagdoll.sqf

Co-authored-by: mharis001 <34453221+mharis001@users.noreply.github.com>

* Update addons/medical_engine/functions/fnc_applyAnimAfterRagdoll.sqf

Co-authored-by: mharis001 <34453221+mharis001@users.noreply.github.com>

Co-authored-by: mharis001 <34453221+mharis001@users.noreply.github.com>
2021-11-11 16:34:56 -06:00
2441ef493e Medical Engine - Fix unconscious animation state checks (#8623) 2021-11-08 00:15:52 +01:00
7bc6fdfa66 Cleanup - Trim all trailing whitespace (#8651) 2021-10-30 16:42:03 -05:00
c7ff918554 Medical Engine - Disable third party medical systems (#8289)
Co-authored-by: jonpas <jonpas33@gmail.com>
2021-07-23 21:32:36 +02:00
f6cefa76a2 Medical - Add Vehicle Crashes setting (#8149)
Co-authored-by: jonpas <jonpas33@gmail.com>
2021-04-20 13:10:50 +02:00
dd454bdfbe Medical - Allow unconscious unit in Taru pods (#8168)
Co-authored-by: Filip Maciejewski <veteran29@users.noreply.github.com>
2021-04-20 11:59:11 +02:00
e8693c8db9 Various - Use configOf command for faster lookup (#8100)
* configOf

* replace some use of CBA_fnc_getObjectConfig
2021-02-18 12:58:08 -06:00
0f08a18f89 Medical - Add force walk option to fracture setting (#7852)
* Medical - Add force walk option to fracture setting

* Add French translation

Co-authored-by: Elgin675 <elgin675@hotmail.com>

* Reduce calls to statusEffect_set (#7865)

* Reduce calls to statusEffect_set

* statusEffect_addType fracture to forcewalk

Co-authored-by: Elgin675 <elgin675@hotmail.com>
Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2020-08-22 19:37:15 -05:00
46f3c55758 Medical Engine - Prevent issues with respawning and ragdoll animations (#7796) 2020-07-22 10:25:47 -05:00
b16ca5c204 Medical - Add unconscious animations (#7363)
* Add custom anim entries

* Switch to SQF based animation detection

* Add time out to CBA_fnc_waitUntilAndExecute

* Remove unneeded comments or defines

* Restore line break

* Styling and removal of not needed code

* Move waitForAnime and make it local nil

* Extended comment

* Add Kola to authors file

* Small bug fix in terms of animation names

* Add custom anim entries


Switch to SQF based animation detection


Add time out to CBA_fnc_waitUntilAndExecute


Remove unneeded comments or defines


Restore line break


Styling and removal of not needed code


Move waitForAnime and make it local nil


Extended comment


Add Kola to authors file


Small bug fix in terms of animation names

* Move animations into data folder

* add uppercase on sqf command

* Rename animation config names and files

* fix physx uncon fix

* Change initial after ragdoll animation name
2020-07-01 15:08:54 +02:00
79ea841eeb Medical Damage - Determine ammo damage type through config property (#7608)
* Determine ammo damage type through config property

* Tabs

* Add warning when property is missing

Co-Authored-By: PabstMirror <pabstmirror@gmail.com>

* Fixed up inheritance
Some classes were not editable;
changes moved to relevant subclasses instead

* Newlines for readability

* More sensible default value

* Fix mistakes I added

* Update addons/medical_damage/CfgAmmo.hpp

* Pre-cache special values for damage types

* Support # values

For backwards compatibility

Co-Authored-By: PabstMirror <pabstmirror@gmail.com>

Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2020-04-07 21:52:20 -05:00
90338fd893 Fix typo in HandleDamage (#7629) 2020-04-06 16:05:57 +01:00
a84af7ba9a Medical - Improve some error msgs (#7588) 2020-04-05 05:01:51 +02:00
c949a07c83 Medical Engine - Apply damage to the correct hitpoint (#7415)
* HandleDamage uses armour values to determine which hitpoint was damaged

* Tidied up comments

* Newlines

* Tabs? In MY code?!

* Added uniform caching and option to force disable caching

* Review suggestions

* Review suggestions/code style

* Spelling and select

* Removed unnecessary validity check

* Apply suggestions from code review

Co-Authored-By: commy2 <commy-2@gmx.de>

* Tweaks and optimisations, removed _noCache

Also fixed cache nil vs empty

* Different approach with fewer loops
Lookup is now done per-hitpoint and default values cached
fnc_getItemArmor made a helper function as it's now only a few lines

* Tabs & newlines

* Moved uniform logic inside helper function

* Optimisations

* Tweaks & optimisations, improved formatting

* Ignore explosionShielding

* Moved getArmor back to separate func, add per-unit caching

* Formatting

* Review suggestions

Co-authored-by: commy2 <commy-2@gmx.de>
2020-02-28 17:54:53 +01:00
d6753250d1 Fixes typo in splint comparison (#7518) 2020-02-22 14:09:04 -06:00
f9d181c72e Medical - Fix addDamageToUnit (#7247) 2019-10-20 16:48:26 -05:00
a71879ccea Medical - Increase severity of falling damage and Improve non-selectionSpecific wounds (#7214)
* Medical - Increase severity of falling damage

* Improve non-selectionSpecific wounds

* Use macros for hitpoint indexes
2019-10-08 10:44:49 -05:00
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
ded81418e6 Medical Engine - Report any fatal head damage (#7103) 2019-07-16 13:00:28 -05:00
08a7d2706e Add wounds var macros (#7058) 2019-06-22 13:36:27 -05:00
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
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
64e640bcf2 revert a variable 2019-05-03 17:09:16 +02:00
744b9778df temporarily re-allowDamage when using setHit(PointDamage) 2019-05-03 17:03:17 +02:00
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
f2b9bf3a17 Update headers 2019-03-30 11:07:54 -05:00
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
cc11ad051d Formatting. Lazy eval 2019-03-21 14:34:51 +01:00
89927a8b94 Missing privates. Lazy evaluation. 2019-03-17 21:26:15 +01:00