Jump to content
Sign in to follow this  
.kju

Community Helicopter Initiative MOD (CHI)

Recommended Posts

Well like Rahonavis shows the approach to go is to modify/enhance the actual chopper (via its config) rather than to modify missions.

Just give it a try yourself - to copy over the minimum set of FM related vales in the littlebird class from the TKOH littlebird and you are basically set. :)

Share this post


Link to post
Share on other sites
Well like Rahonavis shows the approach to go is to modify/enhance the actual chopper (via its config) rather than to modify missions.

Just give it a try yourself - to copy over the minimum set of FM related vales in the littlebird class from the TKOH littlebird and you are basically set. :)

I would do that, but none of the OA missions show up when I run Rearmed. I assumed this was normal, but now I'm not so sure. I've definitely got OA and Arma 2 loaded with Rearmed, but I don't get any of their missions. I do get the PMC campaign though :S

Share this post


Link to post
Share on other sites

I can't even start it up. The actionmenu entry is there but it doesn't works (does nothing if selected). If placed in the air in the editor already it doesn't has a HUD.

Share this post


Link to post
Share on other sites
Guys! I need quick info - can you see the AH-1Z HUD after startup?

You mean the default Arma 2 HUD? I can see that - the one with the compass up top and the fuel and "health" to the left, as well as speed and altitude.

I can't even start it up. The actionmenu entry is there but it doesn't works (does nothing if selected). If placed in the air in the editor already it doesn't has a HUD.

Try raising the collective. That's how all Arma 2 helicopters seem to be started for me.

Share this post


Link to post
Share on other sites
none of the OA missions show up when I run Rearmed

You can (re)move the the disable_xx_missions pbos in Rearmed\addons to make them available. ;)

Not all work unfortunately. The campaigns are all having problems too.

Share this post


Link to post
Share on other sites
You can (re)move the the disable_xx_missions pbos in Rearmed\addons to make them available. ;)

Not all work unfortunately. The campaigns are all having problems too.

Oh ok; I assumed that if they didn't show up, it was because they weren't compatible for whatever reason. Guess I'll copy them over, then :D

Share this post


Link to post
Share on other sites

Hi folks.

I've been trying to fix the bug causing startup/shutdown procedure not working for AH-1Z and Mi-17 in certain missions, including Free Flight. I've tried everything, that came to my mind (including the most retarded and awkward ideas), but nothing worked. Hip and Viper still won't sturtup/shutdown in those mission, though these procedures work for UH-1Y, so I decided to release the most actual versions, I've made, so maybe someone with more knowledge could look on them, compere the original configs of Hip, Viper and Venom, and solve this out, somehow. I've updated previous links too.

AH-1Z

Mi-17

UH-1Y

Changes:

  • AH-1Z is now equipped with HMD unit
  • AH-1Z and UH-1Y now have APU

Share this post


Link to post
Share on other sites

Hello guys. I am interested in making OA littlebird flyable with TOH flight model updated by Fred Naar (http://forums.bistudio.com/showthread.php?145171-Advanced-Flight-Model-based-on-HTR). How exactly do I do it? There are some configs that need to be modified. Where do I find them? Thanks for help!

EDIT: Where do I find Littlebird file? It seems to be absent from airx.pbo files...

Edited by SamB

Share this post


Link to post
Share on other sites

Ok, so I wanted to do it myself. I cannot find LittleBirds PBO/ config etc. Next try would be Huey- I thought of using simly Medium heli and then run it with just one engine on. I couldn't find Hueys PBO either, but I downloaded separate mod consisting of repaint and whole PBO. I opened config, and wanted to copy values from UH-1Y published here. Now I cannot open config from UH-1Y as I get an error opening PBO with ARMA PBO VIEW (I run win8 and cpbo doesn't work for me). Could anyone please upload UH-1Y config so I can use it as a base, or if anyone has done Huey already- whole package would be even better. Thanks!

EDIT: Hello. Is there any way to hide that hud on uh-1y with toh physics mod? It is possible with "hud off" option in arma, but in toh I don't have such selection on action menu anymore.

Also, in mi-8 I get following error making engine startup impossible:

no entry "config.bin/CfgVehicles/Mi17_Base/"RotorLibHelicopterProperties.maxBatteryCharge"

Edited by SamB

Share this post


Link to post
Share on other sites

NVM I give up after two days of trial and error. Maybe I picked a bit too complicated model to begin playing with.

Edited by SamB

Share this post


Link to post
Share on other sites

If you are still having trouble, maybe you could help out by doing research for various heli's that you like? might make someone more confident about taking the project on given that they have a large amount of info to go on. I think people undervalue research when it comes to getting modding going.

Share this post


Link to post
Share on other sites

Hi Dan!

I have contacted Yura Petrov who has made incredible Blackhawk packages for Arma 2. He is doing another version with improved avionics model for TOH and upcoming Arma 3. We already have guys like Fred who have unreal knowledge on physics, all I am trying to do is apply default medium helicopters physics (if I get that first step right, then I, or someone else can modify that default physics values for more blackhawk like behaviuor). I have followed template mentioned on page2, and also examined uh-1y mod posted here. I think I have made a right config, I don't get any errors with TOH, but still it doesn't work- toh crashes when loading a map after setting a helicopter and trying to preview the mission.

So as You can see there is not much info to collect right now, it's just... I have no idea why it doesn't work...

EDIT:

I HAVE A BREAKTHROUGH! I HAVE THE HELICOPTER LOADED AND RECOGNIZING ROTORLIB! STILL CANNOT START THE ENGINE (I MEAN IT IS STARTING, CAN SELECT APU/ BATTERIES/ STARTERS/ THROTTLE ETC, SOUND WORKS GOOD AS WELL)! I AM GOING TO KEEP TRYING.

Edited by SamB

Share this post


Link to post
Share on other sites

Would be nice to have the AH64 with a modified light-helicopter flight model because this kind of helicopter is more agile than medium FM.

@Rahonavis, SamB, kju

thanks very much for your efforts.

Share this post


Link to post
Share on other sites

And here we go. I have managed to make an mi 17 addon use medium heli library (updated by Fred obviously). Gonna contact autor and ask for a permission to post it here tommorow!

Well, basically it's really simple if You follow template from page 2. The only problem I have is making it to work with helicopters which don't have x_base class CfgVehicles. Yura Petrov is going to work on his Blackhawks package to have improved avionics for us, so I started working on configs to see if I can make his Arma 2 birds to fly with TOH physics. The problem is, even if I get helicopter to load and use rotorlib, the engine doesn't want to start. Also every helicopter is ok when You step out of it, but when I am inside it sinks into the ground a bit (no damage taken, I recon xml has some values for contact points). Any ways I just managed to get huey to fly, I don't need much more. Still waiting for a reply from mi17 addon author, if he permits I am going to post a config here. Also guys from Vietnam Unsung mod gave me permission to make their helicopters fly, if only the mod works with TOH and have x_base in cfg, we are going to have some fun flying in Vietnam soon guys! I am so excited:D

Edited by SamB

Share this post


Link to post
Share on other sites

Here is a modified config.cpp for Lennard's SF/Contractor Mi-17 Pack (

http://www.armaholic.com/page.php?id=18499

). It uses medium helicopter xml by Fred Naar (if he ever does heavy helicopter, we might use it instead). Credits go to Lennard for his great mi17, Fred for xml, and guys from this thread for providing a template for modifications (.kju [PvPscene], Rahonavis). KNOWN ISSUES: xml's contact points are written for toh medium model, so mi17 ((along with probably most other helicopters including huey) sinks into the ground when pilot is inside while helicopter is on the ground. Hope to get that fixed eventually. On top of that it should behave like it wasn't actually wheeled frame for the same reason.

Download link:

https://www.dropbox.com/s/pikiar6v8qjblc5/configxml.zip

Ok I am having problems again- this time I can't get Unsung's slick to fly, just as with Yuras Blackhawk. I get libraries loaded, have all the toh options (apu, batteries, throttle etc), but the engine won't start. I have copied all the entries from working mods, and it's still a fail...

You can see what I am trying to do here (unsung huey config) (btw I know I didn't have to put rotorlib entries for each airframe class, but I was just trying everything here;)

// config.bin - 14:43:42 02/19/13, generated in 0.05 seconds
// Generated by unRap v1.06 by Kegetys
// Separate rootclasses: Disabled, Automatic comments: Enabled

#define TEast		0
#define TWest		1
#define TGuerrila		2
#define TCivilian		3
#define TSideUnknown		4
#define TEnemy		5
#define TFriendly		6
#define TLogic		7

#define private		0
#define protected		1
#define public		2

#define true	1
#define false	0

#define VSoft		0
#define VArmor		1
#define VAir		2

class CfgPatches {
class CSJ_UH1Slick {
	units[] = {"CSJ_UH1Slick", "UNS_bullet"};
	weapons[] = {};
	requiredVersion = 0.1;
};
};

class CfgFactionClasses {
class UNSUNG {
	displayName = UNSUNG;
	priority = 1;
	side = TWest;
};
};

class CfgVehicleClasses {
class UNS_AirASHC {
	displayName = "Assault Support Helicopter Co";
};
};

class CfgVehicles {
class AllVehicles;	// External class reference

class Air : AllVehicles {
	class Sounds;	// External class reference
};

class Helicopter : Air {
	class Turrets {
		class MainTurret;	// External class reference
	};
	class NewTurret;	// External class reference
	class ViewPilot;	// External class reference
	class AnimationSources;	// External class reference

	class Sounds : Sounds {
		class Engine;	// External class reference
		class Movement;	// External class reference
	};
};
[b]class Helicopter_Base_H : Helicopter {
	class RotorLibHelicopterProperties;	// External class reference[/b]
};
class CSJ_UH1Slick[b]_Base[/b] : Helicopter[b]_Base_H[/b] {
 [b] class RotorLibHelicopterProperties : RotorLibHelicopterProperties {
		RTDconfig = "csj_uh1slick\uh1h.xml";
		defaultCollective = 0.75;
		starterTime = 10;
		throttleOffToIdle = 10;
		throttleIdleToOff = 10;
		throttleIdleToFull = 8;
		throttleFullToIdle = 15;
		hasAPU = 1;
		APUOn = 5;
		APUOff = 5;
		autoHoverCorrection[] = {5, 2.4, 0};
		maxTorque = 2168;
		maxMainRotorStress = 130000;
		maxTailRotorStress = 10000;
		retreatBladeStallWarningSpeed = 71.597;

		class Procedures {
			class Startup {
				class RotorBrakeOff {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
				};

				class BatteriesOn {
					delayFromCondition = 1;
					condition = "[0, _this] call (uiNamespace getVariable 'BIS_fnc_batteriesOn')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_batteriesOn')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_batteriesOn')";
				};

				class APUOn {
					delayFromCondition = 2;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_APUOn')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_APUOn')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_APUOn')";
				};

				class StarterOn0 {
					delayFromCondition = 2;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_starterOn1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_starterOn1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_starterOn1')";
				};

				class ThrottleIdle0 {
					delayFromCondition = 1;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
				};

				class StarterOff0 {
					delayFromCondition = 0;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_starterOff1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_starterOff1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_starterOff1')";
				};

				class APUOff {
					delayFromCondition = 2;
					condition = "[0, _this] call (uiNamespace getVariable 'BIS_fnc_APUoff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_APUoff')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_APUoff')";
				};

				class WarmupStart {
					delayFromCondition = 2;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_warmupStart')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_warmupStart')";
				};

				class ThrottleFull0 {
					delayFromCondition = 17;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleFull1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_throttleFull1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleFull1')";
				};

				class EnginesOn {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_enginesOn')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_enginesOn')";
				};
			};

			class Shutdown {
				class ThrottleIdle0 {
					delayFromCondition = 0;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
				};

				class CoolDownStart {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_cooldownStart')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_cooldownStart')";
				};

				class ThrottleClosed0 {
					delayFromCondition = 10;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleOff1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_throttleOff1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleOff1')";
				};


				class RotorBrakeOn {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOn')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOn')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOn')";
				};

				class RotorBrakeOff {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
				};

				class BatteriesOff {
					delayFromCondition = 0;
					condition = "[0, _this] call (uiNamespace getVariable 'BIS_fnc_batteriesOff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_batteriesOff')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_batteriesOff')";
				};

				class EnginesOff {
					delayFromCondition = 2;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_enginesOff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_enginesOff')";
				};
			};
		};
	};

	class SoundsExt {
		class Apu {
			startInt[] = {"HSim\Sounds_H\Air\Heli_Heavy\apu-int-heavy-start", 0.00794328, 1};
			startExt[] = {"HSim\Sounds_H\Air\Heli_Heavy\apu-ext-heavy-start", 1, 1, 350};
			stopInt[] = {"HSim\Sounds_H\Air\Heli_Heavy\apu-int-heavy-stop", 0.00794328, 1};
			stopExt[] = {"HSim\Sounds_H\Air\Heli_Heavy\apu-ext-heavy-stop", 1, 1, 350};
		};

		class Starter {
			startInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_starter_start", 0.0562341, 1};
			startExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_starter_start", 1, 1, 200};
			stopInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_starter_stop", 0.0562341, 1};
			stopExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_starter_stop", 1, 1, 200};
			damageInt[] = {"HSim\Sounds_H\Air\Noises\damage_starter_int", 1, 1};
			damageOut[] = {"HSim\Sounds_H\Air\Noises\damage_starter_ext", 1, 1, 300};
		};

		class Starter1 {
			startInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_starter_start_2", 0.0562341, 1};
			startExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_starter_start_2", 1, 1, 200};
			stopInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_starter_stop_2", 0.0562341, 1};
			stopExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_starter_stop_2", 1, 1, 200};
			damageInt[] = {"HSim\Sounds_H\Air\Noises\damage_starter_int", 0.1, 1};
			damageOut[] = {"HSim\Sounds_H\Air\Noises\damage_starter_ext", 1, 1, 300};
		};

		class RotorNoiseExt {
			sound[] = {"HSim\Sounds_H\Air\Noises\swist1-efected-high", 1, 1, 450};
			frequency = 1;
			volume = "(rotorSpeed factor [0.6, 0.85])";
			cone[] = {0.3, 1, 1, 0};
		};
		starterClickInt[] = {"HSim\Sounds_H\Air\Heli_Middle\starter_click2_int", 0.00562341, 1};
		starterClickExt[] = {"HSim\Sounds_H\Air\Heli_Middle\starter_click2", 316.228, 1, 600};
		starterClick[] = {"starterClickInt", "starterClickExt"};
		idleStartInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_idle_start", 0.0112202, 1};
		idleStartExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_idle_start", 1, 1, 600};
		idleThrottle[] = {"idleStartInt", "idleStartExt"};
		transmissionDamageInt[] = {"HSim\Sounds_H\Air\Noises\damage_transmission_int_2", 1, 1};
		transmissionDamageOut[] = {"HSim\Sounds_H\Air\Noises\damage_transmission_ext_2", 1, 1, 300};
		transmissionDamage[] = {"transmissionDamageInt", "transmissionDamageOut"};
		rotorDamageInt[] = {"HSim\Sounds_H\Air\Noises\damage_rotor_int", 1, 1};
		rotorDamageOut[] = {"HSim\Sounds_H\Air\Noises\damage_rotor_ext", 1, 1, 300};
		rotorDamage[] = {"rotorDamageInt", "rotorDamageOut"};
		engineDamageInt[] = {"HSim\Sounds_H\Air\Noises\damage_engine2_int", 1, 1};
		engineDamageOut[] = {"HSim\Sounds_H\Air\Noises\damage_engine2_ext", 1, 1, 300};
		engineDamage[] = {"engineDamageInt", "engineDamageOut"};
		starterDamageInt[] = {"HSim\Sounds_H\Air\Noises\damage_starter_int", 1, 1};
		starterDamageOut[] = {"HSim\Sounds_H\Air\Noises\damage_starter_ext", 1, 1, 300};
		starterDamage[] = {"starterDamageInt", "starterDamageOut"};
		landingSoundInt0[] = {"HSim\Sounds_H\Air\Noises\landing1_int", 1, 1};
		landingSoundInt1[] = {"HSim\Sounds_H\Air\Noises\landing2_int", 1, 1};
		landingSoundInt2[] = {"HSim\Sounds_H\Air\Noises\landing3_int", 1, 1};
		landingSoundInt[] = {"landingSoundInt0", 0.33, "landingSoundInt1", 0.33, "landingSoundInt2", 0.333};
		landingSoundOut0[] = {"HSim\Sounds_H\Air\Noises\landing1_ext", 1, 1, 200};
		landingSoundOut1[] = {"HSim\Sounds_H\Air\Noises\landing2_ext", 1, 1, 200};
		landingSoundOut2[] = {"HSim\Sounds_H\Air\Noises\landing3_ext", 1, 1, 200};
		landingSoundOut[] = {"landingSoundOut0", 0.33, "landingSoundOut1", 0.33, "landingSoundOut2", 0.33};[/b]
	};
	destrType = "DestructWreck";
	scope = public;
	side = TWest;
	faction = UNSUNG;
	hiddenSelections[] = {"0", "1", "2", "3", "4", "5", "6", "7", "num1", "num2", "num3", "num4", "num5", "sigNose", "sigNoseSmall", "sigCDoor", "sigAOband", "sigAO", "sigPdoor", "zasleh", "sig1_lau", "sig2_lau", "22"};
	model = "\CSJ_UH1Slick\CSJ_UH1Slick.p3d";
	displayName = "UH1 Slick";
	mapSize = 14;
	vehicleClass = "UNS_AirASHC";
	picture = "\CSJ_UH1Slick\csjicons\slick2pic.paa";
	Icon = "\CSJ_UH1Slick\csjicons\uh1icon.paa";
	driverAction = "UH60_Pilot";
	maxSpeed = 210;	// max speed on level road, km/h
	nameSound = "chopper";
	crew = "uns_pilot1";
	armor = 60;
	damageResistance = 0.00244;
	gunnerCanSee = 2+8+16;
	driverCanSee = 2+8+16;
	enableGPS = 0;
	gunnerUsesPilotView = true;
	mainRotorSpeed = 1;
	backRotorSpeed = -1;
	transportSoldier = 13;
	cargoAction[] = {"UH60_Cargo02", "UH60_Cargo02", "UH60_Cargo02", "UH60_Cargo02", "UH60_Cargo02", "UH60_Cargo02", "UH60_Cargo02", "UH60_Cargo02", "MH6_Cargo03", "MH6_Cargo02", "MH6_Cargo03", "MH6_Cargo02", "UH60_Cargo02"};
	getInAction = "GetInLOW";
	getOutAction = "GetOutLOW";
	transportAmmo = 0;
	supplyRadius = 2.5;
	initCargoAngleY = 10;
	minCargoAngleY = -60;
	maxCargoAngleY = 120;
	type = VAir;
	formationX = 10;
	formationZ = 10;
	formationY = 0;

	// threat (VSoft, VArmor, VAir), how threatening vehicle is to unit types
	threat[] = {0.3, 1, 0.4};

	extCameraPosition[] = {0, 0, -11};
	driverCompartments = "Compartment1";
	cargoCompartments[] = {"Compartment2"};
	typicalCargo[] = {"USMC_Soldier_Pilot", "USMC_Soldier_Pilot", "USMC_Soldier_Pilot"};
	weapons[] = {"ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
	magazines[] = {};
	transportMaxMagazines = 150;
	transportMaxWeapons = 30;
	forceHideDriver = true;
	castDriverShadow = true;
	castCargoShadow = true;
	soundDammage[] = {"ca\sounds\Air\Mi17\int\alarm_loop1", 0.001, 1};
	soundEngineOnInt[] = {"\CSJ_UH1Slick\sound\CSJ_startup.wss", 0.5, 1};
	soundEngineOnExt[] = {"\CSJ_UH1Slick\sound\CSJ_startup.wss", 0.7, 1, 300};
	soundEngineOffInt[] = {"\CSJ_UH1Slick\sound\uh1_shutdown_out.wss", 1, 1};
	soundEngineOffExt[] = {"\CSJ_UH1Slick\sound\uh1_shutdown_out.wss", 1, 1, 300};

	class Sounds {
		class Engine {
			sound[] = {"\CSJ_UH1Slick\sound\uh1hueyrealv4", 1, 1.0, 1800};
			frequency = "rotorSpeed*0.98";
			volume = "camPos*(0	 max (rotorSpeed - 0.5))";
		};

		class RotorLowOut {
			sound[] = {"\CSJ_UH1Slick\sound\csj_rotor3", 4, 1.0, 3000};
			frequency = "rotorSpeed*0.98";
			volume = "camPos*(0	 max (rotorSpeed+0.05))";
			cone[] = {1.6, 3.14, 2, 0.95};
		};

		class RotorHighOut {
			sound[] = {"\CSJ_UH1Slick\sound\csj_rotor", 4, 1.0, 3000};
			frequency = "rotorSpeed*0.98";
			volume = "camPos*(0	 max (rotorSpeed+0.05))";
			cone[] = {1.6, 3.14, 2, 0.95};
		};

		class EngineIn {
			sound[] = {"\CSJ_UH1Slick\sound\Uh1_rotors_int", 4, 5};
			frequency = "rotorSpeed";
			volume = "(1-camPos)*((rotorSpeed-0.75)*4.5)";
		};

		class RotorLowIn {
			sound[] = {"\CSJ_UH1Slick\sound\CSJ_Rotor", 2, 1};
			frequency = "rotorSpeed";
			volume = "(1-camPos)*(0max(rotorSpeed-0.05))";
		};

		class RotorHighIn {
			sound[] = {"\CSJ_UH1Slick\sound\Uh1_rotors_int", 3, 1};
			frequency = "rotorSpeed";
			volume = "(1-camPos)*3*(rotorThrust-0.3)";
		};
	};

	class MarkerLights {
		class Cabin {
			name = "cab";
			color[] = {0.08, 0, 0, 0.01};
			ambient[] = {0.068, 0, 0, 0.1};
			brightness = 0.005;
			blinking = false;
		};
	};

	class Reflectors {
		class Left {
			color[] = {0.8, 0.8, 1.0, 1.0};
			ambient[] = {0.07, 0.07, 0.07, 1.0};
			position = "L svetlo";
			direction = "konec L svetla";
			hitpoint = "L svetlo";
			selection = "L svetlo";
			size = 1;
			brightness = 1.0;
		};
	};

	// internal camera viewing limitations
	class ViewPilot : ViewPilot {
		initFov = 1.2;
		minFov = 0.3;
		maxFov = 1.2;
		initAngleX = 10;
		minAngleX = -45;
		maxAngleX = 80;
		initAngleY = 0;
		minAngleY = -125;
		maxAngleY = 125;
	};

	class Library {
		libTextDesc = "CSJ_UH1Slick";
	};
	dammageHalf[] = {};
	dammageFull[] = {};

	class Damage {
		tex[] = {};
		mat[] = {};
	};
	damperSize = 4;	// max. damper amplitude
	damperForce = 0.005;	// larger number more stiffness dampers
	damperDamping = 0.005;	// larger number less movement in dampers

	class AnimationSources : AnimationSources {
		class FrontDamper {
			source = "damper";
			selection = "dampers";
		};

		class BackDamper {
			source = "damper";
			selection = "damper_rear";
		};

		class pilotdoor {
			source = "user";
			animPeriod = 0.5;
			initPhase = 0;
		};

		class copilotdoor {
			source = "user";
			animPeriod = 0.5;
			initPhase = 0;
		};

		class reflexgun {
			source = "user";
			animPeriod = 1.5;
			initPhase = 0;
		};

		class reflexpilot {
			source = "user";
			animPeriod = 1.5;
			initPhase = 0;
		};

		class wiperR {
			source = "user";
			animPeriod = 1;
		};

		class wiperL {
			source = "user";
			animPeriod = 1;
		};
	};

	class Turrets : Turrets {
		class LEFT_TURRET : MainTurret {
			body = LEFT_TURRET;
			gun = LEFT_GUN;
			animationSourceBody = LEFT_TURRET;
			animationSourceGun = LEFT_GUN;
			minElev = -75;
			maxElev = 45;
			initElev = 0;
			minTurn = -5;
			maxTurn = 183;
			initTurn = 90;
			soundServo[] = {"", db-40, 1.0};
			animationSourceHatch = "";
			stabilizedInAxes = "StabilizedInAxesNone";
			gunBeg = LHGUN_START;	// endpoint of the gun
			gunEnd = LHGUN_END;	// chamber of the gun
			weapons[] = {"uns_m60_mounted"};
			magazines[] = {"uns_m60_mounted_500rnd", "uns_m60_mounted_500rnd", "uns_m60_mounted_500rnd", "uns_m60_mounted_500rnd"};
			gunnerName = "Door Gunner";
			gunnerOpticsModel = "\ca\weapons\optika_empty";
			gunnerOutOpticsShowCursor = 1;
			gunnerOpticsShowCursor = 1;
			gunnerAction = "UH60_Gunner";
			gunnerInAction = "UH60_Gunner";
			gunnerGetInAction = "GetInLOW";
			gunnerGetOutAction = "GetOutLOW";
			commanding = -2;
			selectionFireAnim = "zasleh_LH";
			primaryGunner = 1;
			memoryPointsGetInGunner = "pos gunner";
			memoryPointsGetInGunnerDir = "pos gunner dir";
			memoryPointGun = "machinegun_LH";
			memoryPointGunnerOptics = "gunnerview_LH";
			crew = "uns_pilot2";

			class ViewOptics {
				initAngleX = 0;
				minAngleX = -30;
				maxAngleX = 30;
				initAngleY = 0;
				minAngleY = -100;
				maxAngleY = 100;
				initFov = 0.7;
				minFov = 0.25;
				maxFov = 1.1;
			};
			gunnerCompartments = "Compartment2";
		};

		class RightDoor_Gun : LEFT_TURRET {
			body = RIGHT_TURRET;
			gun = RIGHT_GUN;
			animationSourceBody = RIGHT_TURRET;
			animationSourceGun = RIGHT_GUN;
			stabilizedInAxes = "StabilizedInAxesNone";
			selectionFireAnim = "zasleh_RH";
			proxyIndex = 2;
			gunnerName = "Crew Chief";
			commanding = -3;
			minElev = -75;
			maxElev = 45;
			initElev = 0;
			minTurn = -183;
			maxTurn = 5;
			initTurn = -90;
			crew = "uns_pilot2";
			weapons[] = {"uns_m60_mounted_2"};
			magazines[] = {"uns_m60_mounted_500rnd", "uns_m60_mounted_500rnd", "uns_m60_mounted_500rnd", "uns_m60_mounted_500rnd"};
			gunBeg = RHGUN_START;	// endpoint of the gun
			gunEnd = RHGUN_END;	// chamber of the gun
			primaryGunner = 0;
			memoryPointsGetInGunner = "pos gunner_2";
			memoryPointsGetInGunnerDir = "pos gunner dir_2";
			memoryPointGun = "machinegun_RH";
			memoryPointGunnerOptics = "gunnerview_RH";
		};

		class CoPilotTurret : LEFT_TURRET {
			stabilizedInAxes = "StabilizedInAxesBoth";
			proxyIndex = 3;
			gunnerName = "Co Pilot";
			gunnerAction = "UH60_Pilot";
			gunnerInAction = "UH60_Gunner02";
			body = "CoPilot_TURRET";
			gun = "CoPilot_GUN";
			animationSourceBody = "CoPilot_TURRET";
			animationSourceGun = "CoPilot_GUN";
			outGunnerMayFire = true;
			gunBeg = "";	// endpoint of the gun
			gunEnd = "";	// chamber of the gun
			memoryPointGun = "";
			commanding = -1;
			weapons[] = {};
			magazines[] = {};
			primaryGunner = 0;
			minElev = -80;
			maxElev = 25;
			initElev = 0;
			minTurn = -180;
			maxTurn = 180;
			initTurn = 0;
			gunnerOpticsModel = "\ca\weapons\optika_empty";
			gunnerForceOptics = false;
			gunnerOpticsShowCursor = 0;

			class ViewOptics {
				initAngleX = 0;
				minAngleX = -30;
				maxAngleX = 30;
				initAngleY = 0;
				minAngleY = -100;
				maxAngleY = 100;
				initFov = 0.8;
				minFov = 0.0083;
				maxFov = 0.8;
			};
			gunnerCompartments = "Compartment2";
			startEngine = false;
			soundServo[] = {"", db-40, 1.0};
			memoryPointsGetInGunner = "pos co_pilot";
			memoryPointsGetInGunnerDir = "pos co_pilot dir";
			memoryPointGunnerOptics = "gunnerview_CP";
			selectionFireAnim = "";
			castGunnerShadow = true;
			viewGunnerShadow = true;
		};
	};

	class UserActions {
		class openpilotdoor {
			displayName = "Open pilot door";
			position = "osa pilotdoor";
			onlyforplayer = 0;
			animPeriod = 1;
			radius = 2;
			condition = "this animationPhase ""pilotdoor"" < 0.5 and (getpos this select 2)<=3";
			statement = "this animate [""pilotdoor"", 1] ";
		};

		class closepilotdoor {
			displayName = "Close pilot door";
			position = "osa pilotdoor";
			onlyforplayer = 0;
			animPeriod = 1;
			radius = 2;
			condition = "this animationPhase ""pilotdoor"" > 0.5";
			statement = "this animate [""pilotdoor"", 0] ";
		};

		class openCopilotdoor {
			displayName = "Open copilot door";
			position = "osa copilotdoor";
			onlyforplayer = 0;
			animPeriod = 1;
			radius = 2;
			condition = "this animationPhase ""copilotdoor"" < 0.5 and (getpos this select 2)<=3";
			statement = "this animate [""copilotdoor"", 1] ";
		};

		class closeCopilotdoor {
			displayName = "Close copilot door";
			position = "osa copilotdoor";
			onlyforplayer = 0;
			animPeriod = 1;
			radius = 2;
			condition = "this animationPhase ""copilotdoor"" > 0.5";
			statement = "this animate [""copilotdoor"", 0] ";
		};

		class PopSmokeP {
			displayName = "Pop smoke";
			position = "cockpit";
			onlyforplayer = 0;
			radius = 4;
			condition = "((getpos this) select 2) >=-0";
			statement = "this execVM ""\CSJ_UH1Slick\scripts\PopSmoke.sqf"" ";
		};

		class ThroGrenade {
			displayName = "Throw grenade";
			position = "cockpit";
			onlyforplayer = 0;
			radius = 4;
			condition = "((getpos this) select 2) >15";
			statement = "this execVM ""\CSJ_UH1Slick\scripts\ThroGrenade.sqf"" ";
		};
	};

	class EventHandlers {
		init = "_this execVM ""\CSJ_UH1slick\scripts\csjidnumH.sqf"";";
		fired = "_this exec ""\CSJ_UH1slick\scripts\mgcs.sqf""";
		engine = "if (_this Select 1) then {_this execVM ""\CSJ_UH1Slick\scripts\wipers.sqf"";";
	};

	class TransportMagazines {
		class _xx_uns_ithaca37mag {
			magazine = "uns_ithaca37mag";
			count = 15;
		};

		class _xx_uns_car15mag_20 {
			magazine = "uns_car15mag_20";
			count = 45;
		};
	};

	class TransportWeapons {
		class _xx_uns_ithaca37 {
			weapon = "uns_ithaca37";
			count = 1;
		};

		class _xx_uns_car15e2_20 {
			weapon = "uns_car15e2_20";
			count = 3;
		};
	};
};

class CSJ_UH1med : CSJ_UH1Slick[b]_Base[/b] {
  [b]class RotorLibHelicopterProperties : RotorLibHelicopterProperties {
		RTDconfig = "csj_uh1slick\uh1h.xml";
		defaultCollective = 0.75;
		starterTime = 10;
		throttleOffToIdle = 10;
		throttleIdleToOff = 10;
		throttleIdleToFull = 8;
		throttleFullToIdle = 15;
		hasAPU = 1;
		APUOn = 5;
		APUOff = 5;
		autoHoverCorrection[] = {5, 2.4, 0};
		maxTorque = 2168;
		maxMainRotorStress = 130000;
		maxTailRotorStress = 10000;
		retreatBladeStallWarningSpeed = 71.597;

		class Procedures {
			class Startup {
				class RotorBrakeOff {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
				};

				class BatteriesOn {
					delayFromCondition = 1;
					condition = "[0, _this] call (uiNamespace getVariable 'BIS_fnc_batteriesOn')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_batteriesOn')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_batteriesOn')";
				};

				class APUOn {
					delayFromCondition = 2;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_APUOn')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_APUOn')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_APUOn')";
				};

				class StarterOn0 {
					delayFromCondition = 2;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_starterOn1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_starterOn1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_starterOn1')";
				};

				class ThrottleIdle0 {
					delayFromCondition = 1;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
				};

				class StarterOff0 {
					delayFromCondition = 0;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_starterOff1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_starterOff1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_starterOff1')";
				};

				class APUOff {
					delayFromCondition = 2;
					condition = "[0, _this] call (uiNamespace getVariable 'BIS_fnc_APUoff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_APUoff')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_APUoff')";
				};

				class WarmupStart {
					delayFromCondition = 2;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_warmupStart')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_warmupStart')";
				};

				class ThrottleFull0 {
					delayFromCondition = 17;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleFull1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_throttleFull1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleFull1')";
				};

				class EnginesOn {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_enginesOn')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_enginesOn')";
				};
			};

			class Shutdown {
				class ThrottleIdle0 {
					delayFromCondition = 0;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleIdle1')";
				};

				class CoolDownStart {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_cooldownStart')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_cooldownStart')";
				};

				class ThrottleClosed0 {
					delayFromCondition = 10;
					condition = "[2, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleOff1')";
					statement = "[3, _this select 0, 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_throttleOff1')";
					bypass = "[4, _this, 0] call (uiNamespace getVariable 'BIS_fnc_throttleOff1')";
				};


				class RotorBrakeOn {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOn')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOn')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOn')";
				};

				class RotorBrakeOff {
					delayFromCondition = 0;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_rotorBrakeOff')";
				};

				class BatteriesOff {
					delayFromCondition = 0;
					condition = "[0, _this] call (uiNamespace getVariable 'BIS_fnc_batteriesOff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_batteriesOff')";
					bypass = "[4, _this] call (uiNamespace getVariable 'BIS_fnc_batteriesOff')";
				};

				class EnginesOff {
					delayFromCondition = 2;
					condition = "[2, _this] call (uiNamespace getVariable 'BIS_fnc_enginesOff')";
					statement = "[3, _this select 0, _this select 1] call (uiNamespace getVariable 'BIS_fnc_enginesOff')";
				};
			};
		};
	};

	class SoundsExt {
		class Apu {
			startInt[] = {"HSim\Sounds_H\Air\Heli_Heavy\apu-int-heavy-start", 0.00794328, 1};
			startExt[] = {"HSim\Sounds_H\Air\Heli_Heavy\apu-ext-heavy-start", 1, 1, 350};
			stopInt[] = {"HSim\Sounds_H\Air\Heli_Heavy\apu-int-heavy-stop", 0.00794328, 1};
			stopExt[] = {"HSim\Sounds_H\Air\Heli_Heavy\apu-ext-heavy-stop", 1, 1, 350};
		};

		class Starter {
			startInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_starter_start", 0.0562341, 1};
			startExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_starter_start", 1, 1, 200};
			stopInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_starter_stop", 0.0562341, 1};
			stopExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_starter_stop", 1, 1, 200};
			damageInt[] = {"HSim\Sounds_H\Air\Noises\damage_starter_int", 1, 1};
			damageOut[] = {"HSim\Sounds_H\Air\Noises\damage_starter_ext", 1, 1, 300};
		};

		class Starter1 {
			startInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_starter_start_2", 0.0562341, 1};
			startExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_starter_start_2", 1, 1, 200};
			stopInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_starter_stop_2", 0.0562341, 1};
			stopExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_starter_stop_2", 1, 1, 200};
			damageInt[] = {"HSim\Sounds_H\Air\Noises\damage_starter_int", 0.1, 1};
			damageOut[] = {"HSim\Sounds_H\Air\Noises\damage_starter_ext", 1, 1, 300};
		};

		class RotorNoiseExt {
			sound[] = {"HSim\Sounds_H\Air\Noises\swist1-efected-high", 1, 1, 450};
			frequency = 1;
			volume = "(rotorSpeed factor [0.6, 0.85])";
			cone[] = {0.3, 1, 1, 0};
		};
		starterClickInt[] = {"HSim\Sounds_H\Air\Heli_Middle\starter_click2_int", 0.00562341, 1};
		starterClickExt[] = {"HSim\Sounds_H\Air\Heli_Middle\starter_click2", 316.228, 1, 600};
		starterClick[] = {"starterClickInt", "starterClickExt"};
		idleStartInt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_int_idle_start", 0.0112202, 1};
		idleStartExt[] = {"HSim\Sounds_H\Air\Heli_Middle\medium_ext_idle_start", 1, 1, 600};
		idleThrottle[] = {"idleStartInt", "idleStartExt"};
		transmissionDamageInt[] = {"HSim\Sounds_H\Air\Noises\damage_transmission_int_2", 1, 1};
		transmissionDamageOut[] = {"HSim\Sounds_H\Air\Noises\damage_transmission_ext_2", 1, 1, 300};
		transmissionDamage[] = {"transmissionDamageInt", "transmissionDamageOut"};
		rotorDamageInt[] = {"HSim\Sounds_H\Air\Noises\damage_rotor_int", 1, 1};
		rotorDamageOut[] = {"HSim\Sounds_H\Air\Noises\damage_rotor_ext", 1, 1, 300};
		rotorDamage[] = {"rotorDamageInt", "rotorDamageOut"};
		engineDamageInt[] = {"HSim\Sounds_H\Air\Noises\damage_engine2_int", 1, 1};
		engineDamageOut[] = {"HSim\Sounds_H\Air\Noises\damage_engine2_ext", 1, 1, 300};
		engineDamage[] = {"engineDamageInt", "engineDamageOut"};
		starterDamageInt[] = {"HSim\Sounds_H\Air\Noises\damage_starter_int", 1, 1};
		starterDamageOut[] = {"HSim\Sounds_H\Air\Noises\damage_starter_ext", 1, 1, 300};
		starterDamage[] = {"starterDamageInt", "starterDamageOut"};
		landingSoundInt0[] = {"HSim\Sounds_H\Air\Noises\landing1_int", 1, 1};
		landingSoundInt1[] = {"HSim\Sounds_H\Air\Noises\landing2_int", 1, 1};
		landingSoundInt2[] = {"HSim\Sounds_H\Air\Noises\landing3_int", 1, 1};
		landingSoundInt[] = {"landingSoundInt0", 0.33, "landingSoundInt1", 0.33, "landingSoundInt2", 0.333};
		landingSoundOut0[] = {"HSim\Sounds_H\Air\Noises\landing1_ext", 1, 1, 200};
		landingSoundOut1[] = {"HSim\Sounds_H\Air\Noises\landing2_ext", 1, 1, 200};
		landingSoundOut2[] = {"HSim\Sounds_H\Air\Noises\landing3_ext", 1, 1, 200};
		landingSoundOut[] = {"landingSoundOut0", 0.33, "landingSoundOut1", 0.33, "landingSoundOut2", 0.33};
	};[/b]
	destrType = "DestructWreck";
	scope = public;
	side = TWest;
	faction = UNSUNG;
	hiddenSelections[] = {"0", "1", "2", "3", "4", "5", "6", "7", "num1", "num2", "num3", "num4", "num5", "sigNose", "sigNoseSmall", "sigCDoor", "sigAOband", "sigAO", "sigPdoor", "zasleh", "sig1_lau", "sig2_lau", "22"};
	model = "\CSJ_UH1Slick\CSJ_UH1med.p3d";
	displayName = "UH1 MedEvac";
	mapSize = 14;
	hideWeaponsCargo = true;
	picture = "\CSJ_UH1Slick\csjicons\USAdustoff.paa";
	cargoAction[] = {"BMP2_Cargo04", "BMP2_Cargo04", "BMP2_Cargo04", "Landrover_Cargo02", "Landrover_Cargo02", "Landrover_Cargo02", "Truck_Cargo01", "Truck_Cargo01", "Truck_Cargo01"};
	transportSoldier = 9;

	// threat (VSoft, VArmor, VAir), how threatening vehicle is to unit types
	threat[] = {0.3, 0.5, 0.4};

	extCameraPosition[] = {0, 0, -11};
	cargoIsCoDriver[] = {0};
	weapons[] = {"ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"};
	magazines[] = {};
	attendant = true;

	class Library {
		libTextDesc = "CSJ_UH1med";
	};

	class UserActions {
		class PopSmokeP {
			displayName = "Pop smoke";
			position = "cockpit";
			onlyforplayer = 0;
			radius = 4;
			condition = "((getpos this) select 2) >=-0";
			statement = "this execVM ""\CSJ_UH1Slick\scripts\PopSmoke.sqf"" ";
		};

		class ThroGrenade {
			displayName = "Throw grenade";
			position = "cockpit";
			onlyforplayer = 0;
			radius = 4;
			condition = "((getpos this) select 2) >15";
			statement = "this execVM ""\CSJ_UH1Slick\scripts\ThroGrenade.sqf"" ";
		};
	};

	class Turrets : Turrets {
		class LEFT_TURRET : NewTurret {
			startEngine = false;
			outGunnerMayFire = false;
			commanding = -1;
			gunnerName = "Medic";
			body = LEFT_TURRET;
			gun = LEFT_GUN;
			animationSourceBody = LEFT_TURRET;
			animationSourceGun = LEFT_GUN;
			animationSourceHatch = "";
			gunBeg = LHGUN_START;	// endpoint of the gun
			gunEnd = LHGUN_END;	// chamber of the gun
			memoryPointsGetInGunner = "pos gunner";
			memoryPointsGetInGunnerDir = "pos gunner dir";
			memoryPointGun = "machinegun_LH";
			memoryPointGunnerOptics = "gunnerview_LH";
			selectionFireAnim = "";
			crew = "uns_pilot2";
			gunnerAction = "D30_Cargo";
			gunnerInAction = "UH60_Gunner";
			weapons[] = {};
			magazines[] = {};
			minElev = -75;
			maxElev = 65;
			initElev = 0;
			minTurn = -183;
			maxTurn = -2;
			initTurn = -130;

			class ViewOptics {
				initAngleX = 0;
				minAngleX = -40;
				maxAngleX = 40;
				initAngleY = 0;
				minAngleY = -100;
				maxAngleY = 100;
				initFov = 0.6;
				minFov = 0.6;
				maxFov = 0.5;
			};
			gunnerOpticsModel = "\ca\weapons\optika_empty";
			gunnerForceOptics = false;
		};

		class RightDoor_Gun : LEFT_TURRET {
			body = RIGHT_TURRET;
			gun = RIGHT_GUN;
			animationSourceBody = RIGHT_TURRET;
			animationSourceGun = RIGHT_GUN;
			animationSourceHatch = "";
			gunBeg = RHGUN_START;	// endpoint of the gun
			gunEnd = RHGUN_END;	// chamber of the gun
			gunnerAction = "Landrover_Cargo01";
			gunnerInAction = "UH60_Gunner";
			crew = "uns_pilot2";
			selectionFireAnim = "";
			proxyIndex = 2;
			gunnerName = "Crew Chief";
			commanding = -2;
			minElev = -75;
			maxElev = 45;
			initElev = 0;
			minTurn = -183;
			maxTurn = 5;
			initTurn = -90;
			weapons[] = {};
			magazines[] = {};
			primary = false;
			memoryPointsGetInGunner = "pos gunner_2";
			memoryPointsGetInGunnerDir = "pos gunner dir_2";
			memoryPointGun = "machinegun_RH";
			memoryPointGunnerOptics = "gunnerview_RH";
		};

		class CoPilot_Gun : LEFT_TURRET {
			body = "CoPilot_TURRET";
			gun = "CoPilot_GUN";
			animationSourceBody = "CoPilot_TURRET";
			animationSourceGun = "CoPilot_GUN";
			animationSourceHatch = "";
			gunBeg = "";	// endpoint of the gun
			gunEnd = "";	// chamber of the gun
			selectionFireAnim = "";
			proxyIndex = 3;
			gunnerName = "Co Pilot";
			commanding = -3;
			minElev = -75;
			maxElev = 45;
			initElev = 0;
			minTurn = -140;
			maxTurn = 140;
			initTurn = 0;
			gunnerAction = "UH60_Pilot";
			weapons[] = {};
			magazines[] = {};
			primary = false;
			memoryPointsGetInGunner = "pos co_pilot";
			memoryPointsGetInGunnerDir = "pos co_pilot dir";
			memoryPointGun = "";
			memoryPointGunnerOptics = "";
		};
	};
};
class TargetBase;	// External class reference

class UNS_bullet : TargetBase {
	model = "\CSJ_UH1slick\12mmcase.p3d";
};
};

Edited by SamB

Share this post


Link to post
Share on other sites

Cheers SamB :bounce3:

Share this post


Link to post
Share on other sites

my pleasure man, please take a look at config I posted- maybe You figure it out:)

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×