mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Medical - Finish splint/fracture (#7045)
* Medical - Finish splint/fracture - Add replacement items * Add splint models * Add fracture sound effects * Add treatment interaction icon
This commit is contained in:
parent
d26fcb6f1a
commit
f04b26b93e
@ -142,7 +142,6 @@ private _bodyPartVisParams = [_unit, false, false, false, false]; // params arra
|
||||
};
|
||||
case (_causeFracture && {EGVAR(medical,fractures) > 0} && {_bodyPartNToAdd > 1} && {_woundDamage > FRACTURE_DAMAGE_THRESHOLD}): {
|
||||
TRACE_1("limb fracture",_bodyPartNToAdd);
|
||||
// todo: play sound?
|
||||
private _fractures = GET_FRACTURES(_unit);
|
||||
_fractures set [_bodyPartNToAdd, 1];
|
||||
_unit setVariable [VAR_FRACTURES, _fractures, true];
|
||||
|
@ -34,4 +34,24 @@ class CfgSounds {
|
||||
sound[] = {QPATHTOF(sounds\slow_2.wav), "db+1", 1};
|
||||
titles[] = {};
|
||||
};
|
||||
class ACE_fracture_1 {
|
||||
name = "ACE_fracture_1";
|
||||
sound[] = {QPATHTOF(sounds\fracture_1.wav), "db+1", 1};
|
||||
titles[] = {};
|
||||
};
|
||||
class ACE_fracture_2 {
|
||||
name = "ACE_fracture_2";
|
||||
sound[] = {QPATHTOF(sounds\fracture_2.wav), "db+1", 1};
|
||||
titles[] = {};
|
||||
};
|
||||
class ACE_fracture_3 {
|
||||
name = "ACE_fracture_3";
|
||||
sound[] = {QPATHTOF(sounds\fracture_3.wav), "db+1", 1};
|
||||
titles[] = {};
|
||||
};
|
||||
class ACE_fracture_4 {
|
||||
name = "ACE_fracture_4";
|
||||
sound[] = {QPATHTOF(sounds\fracture_4.wav), "db+1", 1};
|
||||
titles[] = {};
|
||||
};
|
||||
};
|
||||
|
@ -10,6 +10,14 @@
|
||||
[_unit, "moan", PAIN_TO_MOAN(_painLevel)] call FUNC(playInjuredSound);
|
||||
}] call CBA_fnc_addEventHandler;
|
||||
|
||||
[QEGVAR(medical,fracture), {
|
||||
params ["_unit"];
|
||||
|
||||
if (_unit == ACE_player) then {
|
||||
playSound SND_FRACTURE;
|
||||
};
|
||||
}] call CBA_fnc_addEventHandler;
|
||||
|
||||
if (!hasInterface) exitWith {};
|
||||
|
||||
GVAR(nextFadeIn) = 0;
|
||||
|
@ -34,5 +34,6 @@
|
||||
#define SND_HEARBEAT_FAST (selectRandom ["ACE_heartbeat_fast_1", "ACE_heartbeat_fast_2", "ACE_heartbeat_fast_3"])
|
||||
#define SND_HEARBEAT_NORMAL (selectRandom ["ACE_heartbeat_norm_1", "ACE_heartbeat_norm_2"])
|
||||
#define SND_HEARBEAT_SLOW (selectRandom ["ACE_heartbeat_slow_1", "ACE_heartbeat_slow_2"])
|
||||
#define SND_FRACTURE (selectRandom ["ACE_fracture_1", "ACE_fracture_2", "ACE_fracture_3", "ACE_fracture_4"])
|
||||
|
||||
#define VOL_UNCONSCIOUS 0.25
|
||||
|
BIN
addons/medical_feedback/sounds/fracture_1.wav
Normal file
BIN
addons/medical_feedback/sounds/fracture_1.wav
Normal file
Binary file not shown.
BIN
addons/medical_feedback/sounds/fracture_2.wav
Normal file
BIN
addons/medical_feedback/sounds/fracture_2.wav
Normal file
Binary file not shown.
BIN
addons/medical_feedback/sounds/fracture_3.wav
Normal file
BIN
addons/medical_feedback/sounds/fracture_3.wav
Normal file
Binary file not shown.
BIN
addons/medical_feedback/sounds/fracture_4.wav
Normal file
BIN
addons/medical_feedback/sounds/fracture_4.wav
Normal file
Binary file not shown.
Binary file not shown.
@ -103,7 +103,9 @@ class GVAR(actions) {
|
||||
treatmentTime = 7;
|
||||
callbackSuccess = QFUNC(splint);
|
||||
condition = QFUNC(canSplint);
|
||||
litter[] = {};
|
||||
litter[] = {
|
||||
{"ACE_MedicalLitter_splint"}, {}, {}
|
||||
};
|
||||
};
|
||||
|
||||
// - Syringes -------------------------------------------------------------
|
||||
|
@ -11,7 +11,8 @@ class EGVAR(medical,replacementItems) {
|
||||
{"ACE_epinephrine", 1},
|
||||
{"ACE_morphine", 1},
|
||||
{"ACE_salineIV_250", 1},
|
||||
{"ACE_tourniquet", 1}
|
||||
{"ACE_tourniquet", 1},
|
||||
{"ACE_splint", 2}
|
||||
};
|
||||
// todo: add GM medical items
|
||||
};
|
||||
|
@ -74,6 +74,9 @@ class CfgVehicles {
|
||||
class ACE_MedicalLitter_QuickClot: ACE_MedicalLitterBase {
|
||||
model = QPATHTOF(data\littergeneric_Quikclot.p3d);
|
||||
};
|
||||
class ACE_MedicalLitter_splint: ACE_MedicalLitterBase {
|
||||
model = QPATHTOF(data\littergeneric_splint.p3d);
|
||||
};
|
||||
|
||||
// Treatment items
|
||||
class Item_Base_F;
|
||||
@ -117,6 +120,16 @@ class CfgVehicles {
|
||||
MACRO_ADDITEM(ACE_tourniquet,1);
|
||||
};
|
||||
};
|
||||
class ACE_splintItem: Item_Base_F {
|
||||
scope = 2;
|
||||
scopeCurator = 2;
|
||||
displayName = CSTRING(splint_Display);
|
||||
author = ECSTRING(common,ACETeam);
|
||||
vehicleClass = "Items";
|
||||
class TransportItems {
|
||||
MACRO_ADDITEM(ACE_splint,1);
|
||||
};
|
||||
};
|
||||
class ACE_morphineItem: Item_Base_F {
|
||||
scope = 2;
|
||||
scopeCurator = 2;
|
||||
@ -292,6 +305,7 @@ class CfgVehicles {
|
||||
MACRO_ADDITEM(ACE_packingBandage,25);
|
||||
MACRO_ADDITEM(ACE_elasticBandage,25);
|
||||
MACRO_ADDITEM(ACE_tourniquet,15);
|
||||
MACRO_ADDITEM(ACE_splint,15);
|
||||
MACRO_ADDITEM(ACE_morphine,15);
|
||||
MACRO_ADDITEM(ACE_adenosine,15);
|
||||
MACRO_ADDITEM(ACE_atropine,15);
|
||||
|
@ -71,8 +71,8 @@ class CfgWeapons {
|
||||
scope = 2;
|
||||
author = ECSTRING(common,ACETeam);
|
||||
displayName = CSTRING(splint_Display);
|
||||
picture = QPATHTOF(ui\tourniquet_ca.paa);
|
||||
model = QPATHTOF(data\tourniquet.p3d);
|
||||
picture = QPATHTOF(ui\splint_ca.paa);
|
||||
model = QPATHTOF(data\splint.p3d);
|
||||
descriptionShort = CSTRING(splint_Desc_Short);
|
||||
class ItemInfo: CBA_MiscItem_ItemInfo {
|
||||
mass = 2;
|
||||
|
BIN
addons/medical_treatment/data/littergeneric_splint.p3d
Normal file
BIN
addons/medical_treatment/data/littergeneric_splint.p3d
Normal file
Binary file not shown.
@ -47,6 +47,7 @@ class CfgModels {
|
||||
class bandage: Default {};
|
||||
class bodybagItem: Default {};
|
||||
class epinephrine: Default {};
|
||||
class splint: Default {};
|
||||
|
||||
class IVBagBase: Default {
|
||||
sectionsInherit = "";
|
||||
@ -69,6 +70,7 @@ class CfgModels {
|
||||
class littergeneric_morphine: Default {};
|
||||
class littergeneric_packingbandage: Default {};
|
||||
class littergeneric_Quikclot: Default {};
|
||||
class littergeneric_splint: Default {};
|
||||
class morphine: Default {};
|
||||
class packingbandage: Default {};
|
||||
class QuikClot: Default {};
|
||||
|
BIN
addons/medical_treatment/data/splint.p3d
Normal file
BIN
addons/medical_treatment/data/splint.p3d
Normal file
Binary file not shown.
92
addons/medical_treatment/data/splint.rvmat
Normal file
92
addons/medical_treatment/data/splint.rvmat
Normal file
@ -0,0 +1,92 @@
|
||||
ambient[]={1,1,1,1};
|
||||
diffuse[]={1,1,1,1};
|
||||
forcedDiffuse[]={0,0,0,0};
|
||||
emmisive[]={0,0,0,1};
|
||||
specular[]={1,1,1,0};
|
||||
specularPower=50;
|
||||
PixelShaderID="Super";
|
||||
VertexShaderID="Super";
|
||||
class Stage1
|
||||
{
|
||||
texture="z\ace\addons\medical_treatment\data\splint_nohq.paa";
|
||||
uvSource="tex";
|
||||
class uvTransform
|
||||
{
|
||||
aside[]={1,0,0};
|
||||
up[]={0,1,0};
|
||||
dir[]={0,0,0};
|
||||
pos[]={0,0,0};
|
||||
};
|
||||
};
|
||||
class Stage2
|
||||
{
|
||||
texture="#(argb,8,8,3)color(0.5,0.5,0.5,1,DT)";
|
||||
uvSource="tex";
|
||||
class uvTransform
|
||||
{
|
||||
aside[]={1,0,0};
|
||||
up[]={0,1,0};
|
||||
dir[]={0,0,0};
|
||||
pos[]={0,0,0};
|
||||
};
|
||||
};
|
||||
class Stage3
|
||||
{
|
||||
texture="#(argb,8,8,3)color(0,0,0,0,MC)";
|
||||
uvSource="tex";
|
||||
class uvTransform
|
||||
{
|
||||
aside[]={1,0,0};
|
||||
up[]={0,1,0};
|
||||
dir[]={0,0,0};
|
||||
pos[]={0,0,0};
|
||||
};
|
||||
};
|
||||
class Stage4
|
||||
{
|
||||
texture="z\ace\addons\medical_treatment\data\splint_as.paa";
|
||||
uvSource="tex";
|
||||
class uvTransform
|
||||
{
|
||||
aside[]={1,0,0};
|
||||
up[]={0,1,0};
|
||||
dir[]={0,0,0};
|
||||
pos[]={0,0,0};
|
||||
};
|
||||
};
|
||||
class Stage5
|
||||
{
|
||||
texture="z\ace\addons\medical_treatment\data\splint_smdi.paa";
|
||||
uvSource="tex";
|
||||
class uvTransform
|
||||
{
|
||||
aside[]={1,0,0};
|
||||
up[]={0,1,0};
|
||||
dir[]={0,0,0};
|
||||
pos[]={0,0,0};
|
||||
};
|
||||
};
|
||||
class Stage6
|
||||
{
|
||||
texture="#(ai,64,64,1)fresnel(2,0.1)";
|
||||
uvSource="tex";
|
||||
class uvTransform
|
||||
{
|
||||
aside[]={1,0,0};
|
||||
up[]={0,1,0};
|
||||
dir[]={0,0,0};
|
||||
pos[]={0,0,0};
|
||||
};
|
||||
};
|
||||
class Stage7
|
||||
{
|
||||
texture="a3\data_f\env_land_co.paa";
|
||||
uvSource="tex";
|
||||
class uvTransform
|
||||
{
|
||||
aside[]={1,0,0};
|
||||
up[]={0,1,0};
|
||||
dir[]={0,0,0};
|
||||
pos[]={0,0,0};
|
||||
};
|
||||
};
|
BIN
addons/medical_treatment/data/splint_as.paa
Normal file
BIN
addons/medical_treatment/data/splint_as.paa
Normal file
Binary file not shown.
BIN
addons/medical_treatment/data/splint_ca.paa
Normal file
BIN
addons/medical_treatment/data/splint_ca.paa
Normal file
Binary file not shown.
BIN
addons/medical_treatment/data/splint_nohq.paa
Normal file
BIN
addons/medical_treatment/data/splint_nohq.paa
Normal file
Binary file not shown.
BIN
addons/medical_treatment/data/splint_smdi.paa
Normal file
BIN
addons/medical_treatment/data/splint_smdi.paa
Normal file
Binary file not shown.
BIN
addons/medical_treatment/ui/splint_ca.paa
Normal file
BIN
addons/medical_treatment/ui/splint_ca.paa
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user