Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions addons/chemical/functions/fnc_applyMustardDamage.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@
params ["_unit"];
if (!alive _unit) exitWith {};

// Lung damage: chemical pneumonitis from inhaled mustard. High chance value
// pushes toward tension hemopneumothorax (the lethal variant).
// Lung damage: chemical pneumonitis from inhaled mustard. Forces a
// hemopneumothorax (bleeding variant)
_unit setVariable [QEGVAR(breathing,pneumothorax), 1, true];
_unit setVariable [QEGVAR(breathing,deepPenetratingInjury), true, true];
_unit setVariable [QEGVAR(breathing,activeChestSeal), false, true];
Expand All @@ -34,7 +34,10 @@ _unit setVariable [QEGVAR(breathing,activeChestSeal), false, true];
[_unit] call EFUNC(breathing,handlePneumothoraxDeterioration);

if (EGVAR(breathing,advPtxEnable)) then {
[_unit, 30, true] call EFUNC(breathing,inflictAdvancedPneumothorax);
[_unit, 0.7] call ACEFUNC(medical_status,adjustPainLevel);
_unit setVariable [QEGVAR(breathing,hemopneumothorax), true, true];
_unit setVariable [QEGVAR(breathing,pneumothorax), 4, true];
[_unit] call EFUNC(circulation,updateInternalBleeding);
};

// Pain spike — pushes past unconscious threshold quickly.
Expand Down
4 changes: 3 additions & 1 deletion addons/chemical/functions/fnc_effect_mustard.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,9 @@ private _eyeMax = missionNamespace getVariable [QGVAR(mustard_eyeOnsetMax), 600]
private _burnMin = missionNamespace getVariable [QGVAR(mustard_burnOnsetMin), 600];
private _burnMax = missionNamespace getVariable [QGVAR(mustard_burnOnsetMax), 1200];

_unit setVariable [QGVAR(mustardDeadline_eye), CBA_missionTime + _eyeMin + random (_eyeMax - _eyeMin), true];
if (EGVAR(ophthalmology,enable)) then {
_unit setVariable [QGVAR(mustardDeadline_eye), CBA_missionTime + _eyeMin + random (_eyeMax - _eyeMin), true];
};
_unit setVariable [QGVAR(mustardDeadline_burn), CBA_missionTime + _burnMin + random (_burnMax - _burnMin), true];

[_unit] call FUNC(addToExposureWatcher);
15 changes: 15 additions & 0 deletions addons/surgery/ACE_Medical_Treatment.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,11 @@ class ACE_Medical_Treatment {
};
class PunctureWoundMedium: PunctureWound {};
class PunctureWoundLarge: PunctureWound {};

class KAT_ChemicalBurn: Abrasion {};
class KAT_ChemicalBurnMinor: AbrasionMinor {};
class KAT_ChemicalBurnMedium: Abrasion {};
class KAT_ChemicalBurnLarge: Abrasion {};
};

class BloodClotMedium: FieldDressing {
Expand Down Expand Up @@ -174,6 +179,11 @@ class ACE_Medical_Treatment {
effectiveness = 1;
};
class PunctureWoundLarge: PunctureWound {};

class KAT_ChemicalBurn: Abrasion {};
class KAT_ChemicalBurnMinor: Abrasion {};
class KAT_ChemicalBurnMedium: AbrasionMedium {};
class KAT_ChemicalBurnLarge: Abrasion {};
};

class BloodClotLarge: FieldDressing {
Expand Down Expand Up @@ -237,6 +247,11 @@ class ACE_Medical_Treatment {
class PunctureWoundLarge: AbrasionLarge {
effectiveness = 1;
};

class KAT_ChemicalBurn: Abrasion {};
class KAT_ChemicalBurnMinor: Abrasion {};
class KAT_ChemicalBurnMedium: Abrasion {};
class KAT_ChemicalBurnLarge: AbrasionLarge {};
};

class BloodClotMinorTXA: BloodClotMinor {
Expand Down
Loading