fix(fennec): finalize native EFS buoyancy
Use the integrated Fennec EFS mesh with native water physics, stateful deployment, and the Geometry LOD buoyancy property. Remove the obsolete external cleanup path and document the confirmed sinking fix.
This commit is contained in:
Binary file not shown.
@@ -415,16 +415,28 @@ class BRAF_Fennec_Base: Helicopter_Base_H
|
||||
condition="this animationphase 'NVG_Hide' < 0.1 AND (player in crew this)";
|
||||
statement="this animate ['NVG_Hide',1]";
|
||||
};
|
||||
class Deploy_EFS
|
||||
class Arm_EFS
|
||||
{
|
||||
displayname="<t color='#b31d00'> Deploy EFS </t>";
|
||||
displayname="<t color='#ffaa00'> Arm EFS </t>";
|
||||
position="cabin";
|
||||
showWindow=1;
|
||||
radius=10;
|
||||
priority=1;
|
||||
onlyForPlayer=0;
|
||||
condition="getText (configOf this >> 'faction') == 'BRAF_NAVY' AND this animationphase 'EFS_Hide' < 0.1 AND (player in crew this)";
|
||||
statement="this execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
|
||||
statement="[this, ""arm""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Disarm_EFS: Arm_EFS
|
||||
{
|
||||
displayname="<t color='#ffaa00'> Disarm EFS </t>";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'ARMED')";
|
||||
statement="[this, ""disarm""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Deploy_Floats: Arm_EFS
|
||||
{
|
||||
displayname="<t color='#b31d00'> Deploy Floats </t>";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'ARMED')";
|
||||
statement="[this, ""deployfloats""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
};
|
||||
class Armory
|
||||
@@ -811,7 +823,7 @@ class BRAF_Fennec_Base: Helicopter_Base_H
|
||||
#include "Fennec_sounds.hpp"
|
||||
class EventHandlers: EventHandlers
|
||||
{
|
||||
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle;};";
|
||||
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle; [(_this select 0), ""Init""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf"";};";
|
||||
};
|
||||
ace_cargo_space=2;
|
||||
class TextureSources
|
||||
@@ -1139,6 +1151,18 @@ class BRAF_Fennec_dynamicLoadout_base: BRAF_Fennec_Base
|
||||
animPeriod=0;
|
||||
initPhase=1;
|
||||
};
|
||||
class EFS_Cover_Hide
|
||||
{
|
||||
source="user";
|
||||
animPeriod=0;
|
||||
initPhase=0;
|
||||
};
|
||||
class EFS_Hide
|
||||
{
|
||||
source="user";
|
||||
animPeriod=0;
|
||||
initPhase=0;
|
||||
};
|
||||
};
|
||||
class Turrets: Turrets
|
||||
{
|
||||
@@ -1396,16 +1420,28 @@ class BRAF_Fennec_dynamicLoadout_base: BRAF_Fennec_Base
|
||||
condition="this animationphase 'NVG_Hide' < 0.1 AND (player in crew this)";
|
||||
statement="this animate ['NVG_Hide',1]";
|
||||
};
|
||||
class Deploy_EFS
|
||||
class Arm_EFS
|
||||
{
|
||||
displayname="<t color='#b31d00'> Deploy EFS </t>";
|
||||
displayname="<t color='#ffaa00'> Arm EFS </t>";
|
||||
position="cabin";
|
||||
showWindow=1;
|
||||
radius=10;
|
||||
priority=1;
|
||||
onlyForPlayer=0;
|
||||
condition="getText (configOf this >> 'faction') == 'BRAF_NAVY' AND this animationphase 'EFS_Hide' < 0.1 AND (player in crew this)";
|
||||
statement="this execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
|
||||
statement="[this, ""arm""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Disarm_EFS: Arm_EFS
|
||||
{
|
||||
displayname="<t color='#ffaa00'> Disarm EFS </t>";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'ARMED')";
|
||||
statement="[this, ""disarm""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Deploy_Floats: Arm_EFS
|
||||
{
|
||||
displayname="<t color='#b31d00'> Deploy Floats </t>";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'ARMED')";
|
||||
statement="[this, ""deployfloats""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1485,7 +1521,18 @@ class BRAF_Fennec_SAR_base: BRAF_Fennec_Base
|
||||
source="user";
|
||||
animPeriod=1;
|
||||
initPhase=0;
|
||||
//sound="BRAF_Door";
|
||||
};
|
||||
class EFS_Cover_Hide
|
||||
{
|
||||
source="user";
|
||||
animPeriod=0;
|
||||
initPhase=0;
|
||||
};
|
||||
class EFS_Hide
|
||||
{
|
||||
source="user";
|
||||
animPeriod=0;
|
||||
initPhase=0;
|
||||
};
|
||||
};
|
||||
class Turrets: Turrets
|
||||
@@ -1764,16 +1811,28 @@ class BRAF_Fennec_SAR_base: BRAF_Fennec_Base
|
||||
condition="this animationphase 'NVG_Hide' < 0.1 AND (player in crew this)";
|
||||
statement="this animate ['NVG_Hide',1]";
|
||||
};
|
||||
class Deploy_EFS
|
||||
class Arm_EFS
|
||||
{
|
||||
displayname="<t color='#b31d00'> Deploy EFS </t>";
|
||||
displayname="<t color='#ffaa00'> Arm EFS </t>";
|
||||
position="cabin";
|
||||
showWindow=1;
|
||||
radius=10;
|
||||
priority=1;
|
||||
onlyForPlayer=0;
|
||||
condition="getText (configOf this >> 'faction') == 'BRAF_NAVY' AND this animationphase 'EFS_Hide' < 0.1 AND (player in crew this)";
|
||||
statement="this execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
|
||||
statement="[this, ""arm""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Disarm_EFS: Arm_EFS
|
||||
{
|
||||
displayname="<t color='#ffaa00'> Disarm EFS </t>";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'ARMED')";
|
||||
statement="[this, ""disarm""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Deploy_Floats: Arm_EFS
|
||||
{
|
||||
displayname="<t color='#b31d00'> Deploy Floats </t>";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'ARMED')";
|
||||
statement="[this, ""deployfloats""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Open_Door_Right
|
||||
{
|
||||
@@ -1844,6 +1903,18 @@ class BRAF_Fennec_unarmed_base: BRAF_Fennec_Base
|
||||
source="user";
|
||||
animPeriod=1;
|
||||
initPhase=1;
|
||||
};
|
||||
class EFS_Cover_Hide
|
||||
{
|
||||
source="user";
|
||||
animPeriod=0;
|
||||
initPhase=0;
|
||||
};
|
||||
class EFS_Hide
|
||||
{
|
||||
source="user";
|
||||
animPeriod=0;
|
||||
initPhase=0;
|
||||
};
|
||||
};
|
||||
class UserActions
|
||||
@@ -1865,16 +1936,28 @@ class BRAF_Fennec_unarmed_base: BRAF_Fennec_Base
|
||||
condition="this animationphase 'NVG_Hide' < 0.1 AND (player in crew this)";
|
||||
statement="this animate ['NVG_Hide',1]";
|
||||
};
|
||||
class Deploy_EFS
|
||||
class Arm_EFS
|
||||
{
|
||||
displayname="<t color='#b31d00'> Deploy EFS </t>";
|
||||
displayname="<t color='#ffaa00'> Arm EFS </t>";
|
||||
position="cabin";
|
||||
showWindow=1;
|
||||
radius=10;
|
||||
priority=1;
|
||||
onlyForPlayer=0;
|
||||
condition="getText (configOf this >> 'faction') == 'BRAF_NAVY' AND this animationphase 'EFS_Hide' < 0.1 AND (player in crew this)";
|
||||
statement="this execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
|
||||
statement="[this, ""arm""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Disarm_EFS: Arm_EFS
|
||||
{
|
||||
displayname="<t color='#ffaa00'> Disarm EFS </t>";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'ARMED')";
|
||||
statement="[this, ""disarm""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
class Deploy_Floats: Arm_EFS
|
||||
{
|
||||
displayname="<t color='#b31d00'> Deploy Floats </t>";
|
||||
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'ARMED')";
|
||||
statement="[this, ""deployfloats""] execVM ""braf\braf_sar\Braf_Scripts\EFS_Esquilo.sqf""";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1957,7 +2040,15 @@ class BRAF_Fennec_Unarmed_MB: BRAF_Fennec_unarmed_base
|
||||
_generalMacro="BRAF_Fennec_Unarmed_MB";
|
||||
faction="BRAF_NAVY";
|
||||
canFloat=1;
|
||||
waterLeakiness=10;
|
||||
waterAngularDampingCoef=0;
|
||||
waterDamageEngine=0.2;
|
||||
waterEffect="HeliWater";
|
||||
waterLeakiness=100;
|
||||
waterLinearDampingCoefX=0;
|
||||
waterLinearDampingCoefY=0;
|
||||
waterPPInVehicle=1;
|
||||
waterResistance=1;
|
||||
waterResistanceCoef=0.5;
|
||||
crew="braf_characters_aviation_navy_pilot";
|
||||
editorPreview="\braf\braf_insignia\editorpreview\air\BRAF_Fennec_Unarmed_MB.jpg";
|
||||
scope=2;
|
||||
@@ -2012,6 +2103,16 @@ class BRAF_Fennec_Resort: BRAF_Fennec_cargo_base
|
||||
editorPreview="\braf\braf_insignia\editorpreview\brazilian_civ\Air\BRAF_Fennec_Resort.jpg";
|
||||
scope=2;
|
||||
faction="BRAF_CIV";
|
||||
canFloat=1;
|
||||
waterAngularDampingCoef=0;
|
||||
waterDamageEngine=0.2;
|
||||
waterEffect="HeliWater";
|
||||
waterLeakiness=100;
|
||||
waterLinearDampingCoefX=0;
|
||||
waterLinearDampingCoefY=0;
|
||||
waterPPInVehicle=1;
|
||||
waterResistance=1;
|
||||
waterResistanceCoef=0.5;
|
||||
side=3;
|
||||
scopeCurator=2;
|
||||
scopeArsenal=2;
|
||||
@@ -2026,6 +2127,11 @@ class BRAF_Fennec_Resort: BRAF_Fennec_cargo_base
|
||||
{
|
||||
"Resort",1
|
||||
};
|
||||
animationList[]=
|
||||
{
|
||||
"EFS_Cover_Hide",1,
|
||||
"EFS_Hide",0
|
||||
};
|
||||
};
|
||||
class BRAF_Fennec_80s: BRAF_Fennec_unarmed_base
|
||||
{
|
||||
@@ -2064,7 +2170,15 @@ class BRAF_Fennec_Armed_MB: BRAF_Fennec_dynamicLoadout_base
|
||||
_generalMacro="BRAF_Fennec_Armed_MB";
|
||||
faction="BRAF_NAVY";
|
||||
canFloat=1;
|
||||
waterLeakiness=10;
|
||||
waterAngularDampingCoef=0;
|
||||
waterDamageEngine=0.2;
|
||||
waterEffect="HeliWater";
|
||||
waterLeakiness=100;
|
||||
waterLinearDampingCoefX=0;
|
||||
waterLinearDampingCoefY=0;
|
||||
waterPPInVehicle=1;
|
||||
waterResistance=1;
|
||||
waterResistanceCoef=0.5;
|
||||
crew="braf_characters_aviation_navy_pilot";
|
||||
editorPreview="\braf\braf_insignia\editorpreview\air\BRAF_Fennec_Armed_MB.jpg";
|
||||
scope=2;
|
||||
@@ -2132,7 +2246,15 @@ class BRAF_Fennec_Cargo_MB: BRAF_Fennec_cargo_base
|
||||
_generalMacro="BRAF_Fennec_Cargo_MB";
|
||||
faction="BRAF_NAVY";
|
||||
canFloat=1;
|
||||
waterLeakiness=10;
|
||||
waterAngularDampingCoef=0;
|
||||
waterDamageEngine=0.2;
|
||||
waterEffect="HeliWater";
|
||||
waterLeakiness=100;
|
||||
waterLinearDampingCoefX=0;
|
||||
waterLinearDampingCoefY=0;
|
||||
waterPPInVehicle=1;
|
||||
waterResistance=1;
|
||||
waterResistanceCoef=0.5;
|
||||
crew="braf_characters_aviation_navy_pilot";
|
||||
editorPreview="\braf\braf_insignia\editorpreview\air\BRAF_Fennec_Cargo_MB.jpg";
|
||||
scope=2;
|
||||
@@ -2202,7 +2324,15 @@ class BRAF_Fennec_SAR_MB: BRAF_Fennec_SAR_base
|
||||
crew="braf_characters_aviation_navy_pilot";
|
||||
faction="BRAF_NAVY";
|
||||
canFloat=1;
|
||||
waterLeakiness=10;
|
||||
waterAngularDampingCoef=0;
|
||||
waterDamageEngine=0.2;
|
||||
waterEffect="HeliWater";
|
||||
waterLeakiness=100;
|
||||
waterLinearDampingCoefX=0;
|
||||
waterLinearDampingCoefY=0;
|
||||
waterPPInVehicle=1;
|
||||
waterResistance=1;
|
||||
waterResistanceCoef=0.5;
|
||||
scope=2;
|
||||
side=2;
|
||||
scopeCurator=2;
|
||||
|
||||
@@ -912,4 +912,4 @@ class CfgModels
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user