448 lines
12 KiB
C++
448 lines
12 KiB
C++
class BRAF_VLPV_base_F: Boat_F
|
|
{
|
|
Author="BRAF Team";
|
|
mapSize=4.754;
|
|
scope=0;
|
|
scopeCurator=0;
|
|
side=2;
|
|
class SpeechVariants
|
|
{
|
|
class Default
|
|
{
|
|
speechSingular[]={"veh_ship_boat_s"};
|
|
speechPlural[]={"veh_ship_boat_p"};
|
|
};
|
|
};
|
|
textSingular="$STR_A3_nameSound_veh_ship_boat_s";
|
|
textPlural="$STR_A3_nameSound_veh_ship_boat_p";
|
|
nameSound="veh_ship_boat_s";
|
|
_generalMacro="BRAF_VLPV_base_F";
|
|
model="\braf\braf_boat\braf_VLPV\Braf_VLPVBig.p3d";
|
|
editorSubcategory="EdSubcat_Boats";
|
|
editorPreview="\braf\braf_boat\braf_VLPV\Data\UI\VLPVBig_picture_ca.paa";
|
|
picture="\braf\braf_boat\braf_VLPV\Data\UI\VLPVBig_ui_ca.paa";
|
|
icon="\braf\braf_boat\braf_VLPV\Data\UI\VLPVBig_map_ca.paa";
|
|
cost=5000;
|
|
accuracy=5;
|
|
camouflage=1;
|
|
threat[]={0.1,0,0};
|
|
hideWeaponsDriver=1;
|
|
unitInfoType="RscUnitInfoNoWeapon";
|
|
hiddenSelections[]=
|
|
{
|
|
"camo1",
|
|
"camo2",
|
|
"camo3",
|
|
"camo4",
|
|
"glass"
|
|
};
|
|
hiddenSelectionsTextures[]=
|
|
{
|
|
"\braf\braf_boat\braf_VLPV\Data\Camo1_co.paa",
|
|
"\braf\braf_boat\braf_VLPV\Data\Camo2_co.paa",
|
|
"\braf\braf_boat\braf_VLPV\Data\Camo3_co.paa",
|
|
"\braf\braf_boat\braf_VLPV\Data\Camo4_co.paa",
|
|
"\braf\braf_boat\braf_VLPV\Data\glass_ca.paa"
|
|
};
|
|
memoryPointTaskMarker="TaskMarker_1_pos";
|
|
memoryPointSupply="supply";
|
|
slingLoadCargoMemoryPoints[]=
|
|
{
|
|
"SlingLoadCargo1",
|
|
"SlingLoadCargo2",
|
|
"SlingLoadCargo3",
|
|
"SlingLoadCargo4"
|
|
};
|
|
leftEngineEffect="LEngEffectsSmall";
|
|
rightEngineEffect="REngEffectsSmall";
|
|
memoryPointsLeftWaterEffect="waterEffectR";
|
|
memoryPointsRightWaterEffect="waterEffectL";
|
|
memoryPointsLeftEngineEffect="EngineEffectL";
|
|
memoryPointsRightEngineEffect="EngineEffectR";
|
|
leftFastWaterEffect="LFastWaterEffects";
|
|
rightFastWaterEffect="RFastWaterEffects";
|
|
driverLeftHandAnimName="drivewheel";
|
|
driverRightHandAnimName="drivewheel";
|
|
maxFordingDepth=2;
|
|
waterEffectSpeed=5;
|
|
engineEffectSpeed=5;
|
|
waterFastEffectSpeed=28;
|
|
class TransportItems
|
|
{
|
|
class _xx_FirstAidKit
|
|
{
|
|
name="FirstAidKit";
|
|
count=5;
|
|
};
|
|
class _xx_Toolkit
|
|
{
|
|
name="Toolkit";
|
|
count=1;
|
|
};
|
|
class _xx_ItemGPS
|
|
{
|
|
name="ItemGPS";
|
|
count=1;
|
|
};
|
|
};
|
|
class TransportMagazines {};
|
|
class TransportWeapons
|
|
{
|
|
class _xx_arifle_AKS_F
|
|
{
|
|
weapon="arifle_AKS_F";
|
|
count=1;
|
|
};
|
|
};
|
|
class AnimationSources: AnimationSources
|
|
{
|
|
class openhatch
|
|
{
|
|
source="user";
|
|
initPhase=0;
|
|
animPeriod=2;
|
|
};
|
|
};
|
|
animationList[]=
|
|
{
|
|
"openhatch",0
|
|
};
|
|
armor=50;
|
|
crewExplosionProtection=5;
|
|
class UserActions
|
|
{
|
|
class Open_Hatch
|
|
{
|
|
displayname="Open Hatch";
|
|
position="supply";
|
|
showWindow=1;
|
|
radius=20;
|
|
priority=1;
|
|
onlyForPlayer=0;
|
|
condition="Alive(this) AND this animationphase 'openhatch' < 0.2";
|
|
statement="this animate ['openhatch',1]";
|
|
};
|
|
class Close_Hatch: Open_Hatch
|
|
{
|
|
displayname="Close Hatch";
|
|
condition="Alive(this) AND this animationphase 'openhatch' > 0.8";
|
|
statement="this animate ['openhatch',0]";
|
|
};
|
|
};
|
|
class HitPoints
|
|
{
|
|
class HitBody
|
|
{
|
|
armor=200;
|
|
material=50;
|
|
name="HP_hull";
|
|
visual="camo_1";
|
|
passThrough=true;
|
|
};
|
|
class HitFuel
|
|
{
|
|
armor=10;
|
|
material=50;
|
|
name="HP_Fuel";
|
|
visual="";
|
|
passThrough=true;
|
|
};
|
|
class HitEngine
|
|
{
|
|
armor=150;
|
|
material=-1;
|
|
name="HP_Engine";
|
|
visual="";
|
|
passThrough=true;
|
|
};
|
|
};
|
|
attenuationEffectType="OpenCarAttenuation";
|
|
insideSoundCoef=0.5;
|
|
soundEngineOnInt[]={"A3\Sounds_F\vehicles\boat\Boat_Transport_01\Boat_Transport_01_start", 1.0, 1.0};
|
|
soundEngineOnExt[]={"A3\Sounds_F\vehicles\boat\Boat_Transport_01\Boat_Transport_01_start", 1.0, 1.0, 150};
|
|
soundEngineOffInt[]={"A3\Sounds_F\vehicles\boat\Boat_Transport_01\Boat_Transport_01_stop", 1.0, 1.0};
|
|
soundEngineOffExt[]={"A3\Sounds_F\vehicles\boat\Boat_Transport_01\Boat_Transport_01_stop", 1.0, 1.0, 150};
|
|
buildCrash0[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_building_01", 1.77828, 1, 200};
|
|
buildCrash1[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_building_02", 1.77828, 1, 200};
|
|
buildCrash2[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_building_03", 1.77828, 1, 200};
|
|
soundBuildingCrash[]={"buildCrash0", 0.33, "buildCrash1", 0.33, "buildCrash2", 0.34};
|
|
WoodCrash0[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_wood_01", 1.77828, 1, 200};
|
|
WoodCrash1[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_wood_02", 1.77828, 1, 200};
|
|
WoodCrash2[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_wood_03", 1.77828, 1, 200};
|
|
soundWoodCrash[]={"woodCrash0", 0.33, "woodCrash1", 0.33, "woodCrash2", 0.34};
|
|
ArmorCrash0[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_armor_01", 3.16228, 1, 200};
|
|
ArmorCrash1[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_armor_02", 3.16228, 1, 200};
|
|
ArmorCrash2[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_armor_03", 3.16228, 1, 200};
|
|
soundArmorCrash[]={"ArmorCrash0", 0.33, "ArmorCrash1", 0.33, "ArmorCrash2", 0.34};
|
|
soundGeneralCollision1[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_armor_01", 1.77828, 1, 200};
|
|
soundGeneralCollision2[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_armor_02", 1.77828, 1, 200};
|
|
soundGeneralCollision3[]={"A3\sounds_f\Vehicles\boat\noises\Rubber_boat_crash_armor_03", 1.77828, 1, 200};
|
|
soundCrashes[]={"soundGeneralCollision1", 0.33, "soundGeneralCollision2", 0.33, "soundGeneralCollision3", 0.34};
|
|
class Sounds
|
|
{
|
|
class IdleOut
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\Boat_Transport_01\Boat_Transport_01_idle_1", db-7, 1.0, 150};
|
|
frequency="0.95 + ((rpm/ 1200) factor[(100/ 1200),(200/ 1200)])*0.15";
|
|
volume="engineOn*(((rpm/ 1200) factor[(0/ 1200),(30/ 1200)]) * ((rpm/ 1200) factor[(500/ 1200),(300/ 1200)]))";
|
|
};
|
|
class Engine
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\Boat_Transport_01\Boat_Transport_01_low2", 0.630957, 1.2, 300};
|
|
frequency="0.95 + ((rpm/ 1200) factor[(300/ 1200),(600/ 1200)])*0.2";
|
|
volume="engineOn*(((rpm/ 1200) factor[(200/ 1200),(300/ 1200)]) * ((rpm/ 1200) factor[(600/ 1200),(400/ 1200)]))";
|
|
};
|
|
class EngineMidOut
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\Boat_Transport_01\Boat_Transport_01_mid2", db-1, 0.6, 400};
|
|
frequency="0.95 + ((rpm/ 1200) factor[(600/ 1200),(900/ 1200)])*0.2";
|
|
volume="engineOn*(((rpm/ 1200) factor[(350/ 1200),(500/ 1200)]) * ((rpm/ 1200) factor[(1200/ 1200),(900/ 1200)]))";
|
|
};
|
|
class EngineMaxOut
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\Boat_Transport_01\Boat_Transport_01_high2", db2, 1.0, 500};
|
|
frequency="0.95 + ((rpm/ 1200) factor[(700/ 1200),(1000/ 1200)])*0.3";
|
|
volume="engineOn*((rpm/ 1200) factor[(600/ 1200),(1200/ 1200)])";
|
|
};
|
|
class WaternoiseOutW0
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-0-speed1", db0, 1.0, 100};
|
|
frequency="1";
|
|
volume="(speed factor[4, 1]) * water";
|
|
};
|
|
class WaternoiseOutW1
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-20-speed", db0, 1.0, 150};
|
|
frequency="1";
|
|
volume="((speed factor[2, 6]) min (speed factor[6, 4]))";
|
|
};
|
|
class WaternoiseOutW2
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-50-speed", db0, 1.0, 300};
|
|
frequency="1";
|
|
volume="(speed factor[3, 9])";
|
|
};
|
|
class WaternoiseOutW3
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-0-speed1", db0, 1.0, 100};
|
|
frequency="1";
|
|
volume="(speed factor[-4, -1]) * water";
|
|
};
|
|
class WaternoiseOutW4
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-20-speed", db0, 0.9, 150};
|
|
frequency="1";
|
|
volume="((speed factor[-2, -6]) min (speed factor[-6, -4]))";
|
|
};
|
|
class WaternoiseOutW5
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-50-speed", db0, 0.9, 300};
|
|
frequency="1";
|
|
volume="(speed factor[-3, -9])";
|
|
};
|
|
class scrubLandExt
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\boat\noises\boat_land_on_shallow", db5, 1.0, 100};
|
|
frequency=1;
|
|
volume="(scrubLand factor[0.01, 0.20])";
|
|
};
|
|
class RainExt
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\noises\rain2_ext", db0, 1.0, 100};
|
|
frequency=1;
|
|
volume="camPos * (rain - rotorSpeed/2) * 2";
|
|
};
|
|
class RainInt
|
|
{
|
|
sound[]={"A3\Sounds_F\vehicles\noises\rain2_ext", db0, 1.0, 100};
|
|
frequency=1;
|
|
volume="(1-camPos)*(rain - rotorSpeed/2)*2";
|
|
};
|
|
};
|
|
waterPPInVehicle=0;
|
|
driverAction="driver_boat01";
|
|
crewCrashProtection=0.05;
|
|
cargoAction[]=
|
|
{
|
|
"passenger_low01"
|
|
};
|
|
getInAction="GetInLow";
|
|
getOutAction="GetOutBoat";
|
|
cargoGetInAction[]={"GetInLow"};
|
|
cargoGetOutAction[]={"GetOutBoat"};
|
|
memoryPointsGetInDriver="pos_pilot";
|
|
memoryPointsGetInDriverDir="dir_pilot";
|
|
memoryPointsGetInCargo[]=
|
|
{
|
|
"pos_cargo_R",
|
|
"pos_cargo_C",
|
|
"pos_cargo_L"
|
|
};
|
|
memoryPointsGetInCargoDir[]=
|
|
{
|
|
"dir_cargo_R",
|
|
"dir_cargo_C",
|
|
"dir_cargo_L"
|
|
};
|
|
castDriverShadow=1;
|
|
castCargoShadow=1;
|
|
ejectDeadDriver=0;
|
|
ejectDeadCargo=0;
|
|
maxSpeed=50;
|
|
simulation="shipX";
|
|
overSpeedBrakeCoef=0.80000001;
|
|
fuelExplosionPower=0;
|
|
enginePower=280;
|
|
engineShiftY=0.05;
|
|
waterLeakiness=0.25;
|
|
waterResistanceCoef=0.02;
|
|
thrustDelay=5;
|
|
waterLinearDampingCoefY=5;
|
|
waterLinearDampingCoefX=1.0;
|
|
waterAngularDampingCoef=1.2;
|
|
rudderForceCoef=0.5;
|
|
rudderForceCoefAtMaxSpeed=0.025;
|
|
driverCompartments="Compartment1";
|
|
//class VehicleTransport
|
|
//{
|
|
// class Cargo
|
|
// {
|
|
// parachuteClass="B_Parachute_02_F";
|
|
// parachuteHeightLimit=5;
|
|
// canBeTransported=1;
|
|
// dimensions[]=
|
|
// {
|
|
// "BBox_1_1_pos",
|
|
// "BBox_1_2_pos"
|
|
// };
|
|
// };
|
|
//};
|
|
transportSoldier=5;
|
|
class CargoTurret;
|
|
class Turrets{};
|
|
supplyRadius=3;
|
|
class Exhausts
|
|
{
|
|
class Exhaust1
|
|
{
|
|
position="exhaust1_pos";
|
|
direction="exhaust1_dir";
|
|
effect="ExhaustEffectTankSide";
|
|
};
|
|
class Exhaust2
|
|
{
|
|
position="exhaust2_pos";
|
|
direction="exhaust2_dir";
|
|
effect="ExhaustEffectTankSide";
|
|
};
|
|
};
|
|
class Reflectors
|
|
{
|
|
class Cabin_front
|
|
{
|
|
position="Cabin_Light_1";
|
|
direction="Cabin_Light_1_dir";
|
|
hitpoint="";
|
|
selection="";
|
|
color[]={50,0,0};
|
|
ambient[]={5,0,0};
|
|
intensity=4;
|
|
size=1;
|
|
innerAngle=15;
|
|
outerAngle=150;
|
|
coneFadeCoef=1;
|
|
useFlare=1;
|
|
flareSize=0.1;
|
|
flareMaxDistance=1;
|
|
dayLight=1;
|
|
class Attenuation
|
|
{
|
|
start=0;
|
|
constant=0;
|
|
linear=1;
|
|
quadratic=1;
|
|
hardLimitStart=1;
|
|
hardLimitEnd=2;
|
|
};
|
|
};
|
|
class Cabin_middle: Cabin_front
|
|
{
|
|
position="Cabin_Light_2";
|
|
direction="Cabin_Light_2_dir";
|
|
hitpoint="";
|
|
selection="";
|
|
};
|
|
class Cabin_back: Cabin_front
|
|
{
|
|
position="Cabin_Light_3";
|
|
direction="Cabin_Light_3_dir";
|
|
hitpoint="";
|
|
selection="";
|
|
};
|
|
};
|
|
class Library
|
|
{
|
|
libTextDesc="Riverine light boat used by Brazilian Army";
|
|
};
|
|
extCameraPosition[]={0,3.0,-18};
|
|
//class Damage
|
|
//{
|
|
// tex[]={};
|
|
// mat[]=
|
|
// {
|
|
// "A3\boat_f\Boat_Transport_01\data\Boat_Transport_01.rvmat",
|
|
// "A3\boat_F\Boat_Transport_01\data\Boat_Transport_01_damage.rvmat",
|
|
// "A3\boat_F\Boat_Transport_01\data\Boat_Transport_01_damage.rvmat"
|
|
// };
|
|
//};
|
|
ace_interaction_canPush=1;
|
|
class EventHandlers: EventHandlers
|
|
{
|
|
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle;};";
|
|
};
|
|
};
|
|
class BRAF_VLPV_Big : BRAF_VLPV_base_F
|
|
{
|
|
Author="BRAF Team";
|
|
class SimpleObject
|
|
{
|
|
eden=1;
|
|
animate[]={{"damagehide", 0}, {"damagehide_zbytek", 0}, {"damage_unhide", 0}, {"drivingwheel", 0}, {"propeller", 0}};
|
|
hide[]={"clan"};
|
|
verticalOffset=1.241;
|
|
verticalOffsetWorld=0.115;
|
|
init="''";
|
|
};
|
|
displayName="Narcosubmarino SS Aramia";
|
|
_generalMacro="BRAF_VLPV_Big";
|
|
scope=1;
|
|
scopeArsenal=1;
|
|
scopeCurator=1;
|
|
crew="";
|
|
faction="BRAF_Army";
|
|
side=2;
|
|
typicalCargo[]=
|
|
{
|
|
};
|
|
class UserActions
|
|
{
|
|
class Push_Back
|
|
{
|
|
displayName="<t color='#ff0000'>Push Back</t>";
|
|
displayNameDefault=<img size="3" image="braf\braf_boat\Braf_Voadeira\Data\ui\push_ca.paa"/>;
|
|
priority=6;
|
|
position="bow";
|
|
onlyForPlayer=1.5;
|
|
showWindow=1;
|
|
radius=1;
|
|
condition="Alive (this)";
|
|
statement="this addForce [this vectorModelToWorld [0,-2500,0],[0,0,0]]";
|
|
};
|
|
class Push_Foward: Push_Back
|
|
{
|
|
displayName="<t color='#ff0000'>Push Foward</t>";
|
|
position="stern";
|
|
statement="this addForce [this vectorModelToWorld [0,2500,0],[0,0,0]]";
|
|
};
|
|
};
|
|
}; |