Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Medical - Add Vehicle Crashes setting #8149

Merged
merged 7 commits into from
Apr 20, 2021
Merged
Show file tree
Hide file tree
Changes from 1 commit
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: 9 additions & 0 deletions addons/medical_damage/initSettings.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,12 @@
[0, 1, 0.1, 2, true],
true
] call CBA_fnc_addSetting;

[
QEGVAR(medical,enableVehicleCrashes),
"CHECKBOX",
[LSTRING(enableVehicleCrashes_DisplayName), LSTRING(enableVehicleCrashes_Description)],
ELSTRING(medical,Category),
true,
true
] call CBA_fnc_addSetting;
32 changes: 32 additions & 0 deletions addons/medical_damage/stringtable.xml
Original file line number Diff line number Diff line change
Expand Up @@ -697,5 +697,37 @@
<Polish>Szansa że osoba straci przytomność gdy jej ból jest powyżej tolerowalnego progu podczas otrzymywania obrażeń.</Polish>
<Japanese>ユニットがダメージを受けた時に痛みが許容しきい値を超えた場合、気絶をする確立を設定します。</Japanese>
</Key>
<Key ID="STR_ACE_Medical_Damage_enableVehicleCrashes_DisplayName">
<English>Vehicle Crashes</English>
<Russian>Аварии транспорта</Russian>
<Polish>Obrażenia od kolizji</Polish>
<Spanish>Accidentes de vehículos</Spanish>
<German>Fahrzeugunfälle</German>
<Czech>Poškození z kolize</Czech>
<Portuguese>Colisão de veículos</Portuguese>
<French>Accident en véhicule</French>
<Hungarian>Járműbalesetek</Hungarian>
<Italian>Schianto Veicoli</Italian>
<Japanese>車両の衝突</Japanese>
<Korean>차량 사고</Korean>
<Chinesesimp>载具碰撞</Chinesesimp>
<Chinese>載具碰撞</Chinese>
</Key>
<Key ID="STR_ACE_Medical_Damage_enableVehicleCrashes_Description">
<English>Do units take damage from a vehicle crash?</English>
<Russian>Должны ли юниты получать повреждения от аварий на транспорте?</Russian>
<Polish>Czy jednostki otrzymują obrażenia w wyniku kolizji pojazdów?</Polish>
<Spanish>¿Las unidades reciben daño de un accidente de tráfico?</Spanish>
<German>Verursacht ein Fahrzeugunfall Verletzungen</German>
<Czech>Dostane jednotka poškození při autonehodě?</Czech>
<Portuguese>As unidades recebem dano de uma colisão de veículo?</Portuguese>
<French>Les unités subissent des dégats lors d'accident</French>
<Hungarian>Sérülnek-e az egységek autós ütközés során?</Hungarian>
<Italian>Le unità sostengono danni da incidenti con veicoli?</Italian>
<Japanese>ユニットは車両の衝突による損傷を受けるようにしますか?</Japanese>
<Korean>차량 사고시 인원들이 부상을 입습니까?</Korean>
<Chinesesimp>设定人员是否会因为载具冲撞别的物件而产生伤害?</Chinesesimp>
<Chinese>設定人員是否會因為載具衝撞別的物件而產生傷害?</Chinese>
</Key>
</Package>
</Project>
7 changes: 5 additions & 2 deletions addons/medical_engine/functions/fnc_handleDamage.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ if (_hitPoint isEqualTo "ace_hdbracket") exitWith {

// represents all incoming damage for selecting a non-selectionSpecific wound location, (used for selectRandomWeighted [value1,weight1,value2....])
private _damageSelectionArray = [
HITPOINT_INDEX_HEAD, _damageHead select 1, HITPOINT_INDEX_BODY, _damageBody select 1, HITPOINT_INDEX_LARM, _damageLeftArm select 1,
HITPOINT_INDEX_HEAD, _damageHead select 1, HITPOINT_INDEX_BODY, _damageBody select 1, HITPOINT_INDEX_LARM, _damageLeftArm select 1,
HITPOINT_INDEX_RARM, _damageRightArm select 1, HITPOINT_INDEX_LLEG, _damageLeftLeg select 1, HITPOINT_INDEX_RLEG, _damageRightLeg select 1
];

Expand Down Expand Up @@ -211,9 +211,12 @@ if (
// todo: no way to detect if stationary and another vehicle hits you
) exitWith {
private _damageSelectionArray = [
HITPOINT_INDEX_HEAD, 1, HITPOINT_INDEX_BODY, 1, HITPOINT_INDEX_LARM, 1,
HITPOINT_INDEX_HEAD, 1, HITPOINT_INDEX_BODY, 1, HITPOINT_INDEX_LARM, 1,
HITPOINT_INDEX_RARM, 1, HITPOINT_INDEX_LLEG, 1, HITPOINT_INDEX_RLEG, 1
];
if !(EGVAR(medical,enableVehicleCrashes)) then {
_newDamage = 0;
};
[QEGVAR(medical,woundReceived), [_unit, "Body", _newDamage, _unit, "vehiclecrash", _damageSelectionArray]] call CBA_fnc_localEvent;
TRACE_5("Crash",_unit,_shooter,_instigator,_damage,_newDamage);

Expand Down