ARMA 3 ilta 7.5.2014

User avatar
JP-9000
Posts: 464
Joined: 08 Aug 2013, 10:51

ARMA 3 ilta 7.5.2014

Post by JP-9000 »

Image

Peli: ARMA 3 [stable]
Aika: Keskiviikko 7.5.2014 klo 19
Paikka: Arma Finlandin A3 serveri
TeamSpeak: ts3.armafinland.fi
Modisetti: [url=pws://kompassi.com/~afi/a3repo/a3armafinland.yml]AFI A3 repo[/url]

Tapahtuman kuvaus

On aika kokeilla, miltä ARMA 3 tuntuu nykyään. Tarkoituksena on yhden illan ajan pelailla Coop ja TvT - tehtäviä Kreikan lomasaarten luonnonkauniissa maisemissa. Modisettinä käytetään [url=pws://kompassi.com/~afi/a3repo/a3armafinland.yml]AFI:n A3 perusrepoa[/url], joka sisältää mm. Kanadan ja Saksan armeijan joukkoja, sekä erinäisiä kapinallisjoukkoja ja jotain venäläisiä.

Tulen itse tekemään tapahtumaan ainakin pari Coop-tehtävää sekä yhden tai kaksi TvT:tä, mutta kannustan myös kaikki muita yhteisön jäseniä tekemään uusia tehtäviä tapahtumaa varten. Lisäksi jos ihmisiltä löytyy jotain aiemmin tehtyjä tehtäviä, niitä voisi myös päivitellä yhteensopivaksi nykyisen modisetin kanssa (pääosin radio-ja medikkijutut). Pelaajamääriä on vaikea arvioida etukäteen, mutta toivottavasti nyt ainakin se kolmisenkymmentä pelaajaa saadaan kasaan, eli 30-50 lienee hyvä lähtökohta pelaajamääräksi tehtäville.

Loppuun vielä mahtavaakin mahtavampi promovideo!

Last edited by JP-9000 on 02 May 2014, 15:35, edited 2 times in total.
User avatar
JP-9000
Posts: 464
Joined: 08 Aug 2013, 10:51

Re: ARMA 3 ilta 7.5.2014

Post by JP-9000 »

Ohjeita tehtäväntekijöille

Olisi toivottavaa, että tapahtuman tehtävien kanssa saataisiin jonkinlaiset yhteiset standardit ainakin lääkintä- ja radiosysteemien osalta. Tämä mielessä, tässä hieman ohjeita ko. moduulien käyttöön.

Lääkintämies! (XMedSys)

Servulla on nykyään käytössä XMedSys - modi, joka toimii pääosin kuten ACE:n lääkintämoduuli. Tehtäväntekijän kannalta XMedSysin käyttö on varsin yksinkertaista: aktivoidaksesi modin tehtävässäsi, tiputa kartalle johonkin XMedSys - moduuli (F7 Modules -> Category: XmedSys, Base module) ja säädä asetukset haluamiksesi (oletusasetukset ovat ihan ok, mutta voit halutessasi jättää esim. veri ja terveysindikaattorit pois).

Sitten tuleekin vastaan ensimmäinen ongelma: oletuksena millään yksiköillä ei ole mitään lääkintätarvikkeita, joten ne on lisättävä käsin. Helpoimmalla pääsee lisäämällä vain lääkintämiehille repun joka on valmiiksi täynnä lääkintätarvikkeita. Tämä onnistuu kirjoittamalla yksikön init - kenttään:

Code: Select all

removeBackpack this; this addBackPack "x39_MedicBackPack";
Jos haluat säätää tarkemmin XMedSysin erinäisten lääkintätarvikkeiden kanssa, niiden luokkanimet ovat:

Code: Select all

x39_defibrillator
x39_bandage
x39_morphine
x39_epinephrine
x39_tourniquet
x39_bloodbag
x39_medikit
x39_medikit2
x39_medikit3
x39_medikit4
x39_medikit5
x39_earplug
Jos haluat lisätä yksikölle esim. sidetarpeita onnistuu se yksinkertaisesti kirjoittamalla inittiin this addItem "x39_bandage"; tai jos haluat laittaa tavaroita nimenomaan reppuun käytä komentoa addItemToBackpack.

Jos haluat säätää XmedSysin asetuksia tarkemmin, ohjeet siihen löytyvät täältä.

"Täällä Kieku, kuuleeko Kaiku?" (Task Force Arrowhead - radiomodi)

TFR:n käyttö on tehtäväntekijän kannalta pääpiirteissään varsin yksinkertaista. Oletusasetuksilla kaikille ryhmänjohtajille tulee automaattisesti pitkät reppuradiot ja kaikki yksiköt joilla on hallussaan ARMA:n oma radio (ItemRadio), saavat tehtävän alussa osapuolelleen ominaisen pikkuradion. Tämän lisäksi kaikki ryhmät ovat automaattisesti omilla kanavillaan. Suurimmassa osassa tehtäviä radiomodi siis toimii käytännössä itsekseen ilman sen kummempaa säätöä, mutta joissakin tapauksissa ryhmänjohtajien repun korvautuminen (tyhjällä) reppuradiolla saattaa aiheuttaa ongelmia (esim. jos ko. ryhmänjohtanan selkäreppuna on laskuvarjo!). Tämä on kuitenkin helposti kierrettävissä lisäämällä tehtävän init.sqf - tiedostoon:

Code: Select all

tf_no_auto_long_range_radio = true;
Tämä rivi estää reppuradioiden automaattisen lisäyksen, joten sinun on lisättävä ne itse käsin. TFR:n pitkien radioiden luokkanimet ovat:

Code: Select all

BLUFOR:
tf_rt1523g

OPFOR:
tf_mr3000

INDEP:
tf_anprc155
Voit lisätä yksikölle radion lisäämällä yksikön init- kenttään:

Code: Select all

this addBackPack "luokkanimi";
Muita skriptinpätkiä

Esimerkki äärimmäisen yksinkertaisesta init.sqf:stä joka antaa kaikille ihmispelaajille lääkintätarpeita, kasvattaa view distancea ja lopuksi ajaa briefingin

Code: Select all

// Poista kommentit jos haluat estää automaattiset reppuradiot
// tf_no_auto_long_range_radio = true;

waitUntil {!isNull player};

if (local player) then
{
	setViewDistance 3000;
	setTerrainGrid 25;
	player addItem "x39_bandage";
	player addItem "x39_bandage";
	player addItem "x39_morphine";
	player addItem "x39_morphine";
	player addItem "x39_earplug";
	execVM "briefing.sqf";
};
Simppeli pohja coop-tehtävän briiffille:

Code: Select all


player createDiaryRecord ["diary", ["Notes","
Lisätiedot / vinkit
"]];

player createDiaryRecord ["diary", ["Command and signal","
Mahdollinen radiokanavia koskeva informaatio
"]];

player createDiaryRecord ["diary", ["Support","
Mahdoliset tukielementit
"]];

player createDiaryRecord ["diary", ["Execution","
Suoritustapa tähän
"]];

player createDiaryRecord ["diary", ["Mission","
Tehtävät tähän
"]];

player createDiaryRecord ["diary", ["Situation","
Taustat tähän
"]];

Jos haluat esim. TvT:tä varten poistaa ajoneuvoista ylitehokkaat lämpökamerat, kirjoita ajoneuvon init - kenttään:

Code: Select all

this disableTIEquipment true;
Last edited by JP-9000 on 06 May 2014, 12:11, edited 11 times in total.
User avatar
JP-9000
Posts: 464
Joined: 08 Aug 2013, 10:51

Re: ARMA 3 ilta 7.5.2014

Post by JP-9000 »

Ohjeita pelaajille

Peliin päästäksesi
  1. Asenna play withSix, jos et ole sitä aiemmin tehnyt. Seuraa ohjeita sen asetusten säätämiseksi (linkatut ohjeet koskevat kakkosta, mutta toimivat pääosin myös kolmosen osalta)
  2. Imuta Arma Finlandin [url=pws://kompassi.com/~afi/a3repo/a3armafinland.yml]A3 repo[/url]. Linkin pitäisi aueta suoraan PWS:ssä
  3. Asenna teamspeakin versio 3.0.12 (32-bit tai 64 -bit)
  4. Muuta play withsixistä TFR vanhempaan versioon näin.
  5. Aktivoi TFR plugin TeamSpeakista. Samalla kannattaa deaktivoida ACREn plugari.
Medikkisysteemi

Voidaksesi käyttää XmedSysin lääkintäjuttuja, sinun pitää bindata kaksi nappulaa. Näillä kahdella napilla sitten hoidat sekä itseäsi, että muita.

Radiosysteemi

Oletuksena olet suoraan oikealla kanavalla eikä mitään säätöä tarvitse tehdä. Tärkeimmät näppäinkomennot ovat:
  • TeamSpeakin Push-to-talk - lähipuhe
  • CAPS LOCK - puhu lyhyeen radioon
  • Ctrl + CAPS LOCK - puhu pitkään radioon
  • Alt + CAPS LOCK - puhu vedenalaiseen radioon
  • Ctrl + p - säädä lyhen radion asetuksia
  • Alt + p - säädä pitkän radion asetuksia
  • Shift + p - säädä vedenalaisen radion asetuksia
  • Ctrl + tab - säädä lähipuheen voimakkuutta
Muuta

Aseiden tukeminen TMR - modissa tapahtuu painamalla tabia kun ruudulle ilmestyy kuvake

Voidaksesi käyttää cTabia, sinun täytyy bindata user action 12 johonkin nappulaan. Tästä napista saat sitten avattua ja suljettua komentajan näkymän.
Last edited by JP-9000 on 07 May 2014, 19:00, edited 12 times in total.
User avatar
Konzig
Posts: 416
Joined: 08 Jan 2014, 07:57

Re: ARMA 3 ilta 7.5.2014

Post by Konzig »

Olen työkoneella, joten en pääse asiaa tarkistamaan, mutta onhan ARMA3 repossa nykyään se VTS Weapon Resting? It's so good...
User avatar
JP-9000
Posts: 464
Joined: 08 Aug 2013, 10:51

Re: ARMA 3 ilta 7.5.2014

Post by JP-9000 »

Konzig wrote:Olen työkoneella, joten en pääse asiaa tarkistamaan, mutta onhan ARMA3 repossa nykyään se VTS Weapon Resting? It's so good...
Ei ole, mutta servulla on kyllä TMR Modular Realism - modi, joka lisää aseiden tukemisen. Eroaako tuo toiminallisuudeltaan jotenkin oleellisesti siitä?
User avatar
Konzig
Posts: 416
Joined: 08 Jan 2014, 07:57

Re: ARMA 3 ilta 7.5.2014

Post by Konzig »

Ach so! Mut toihan on hieno systeemi. En ollut nähnytkään tota esimerkkivideota ennen. Tämä hyvä.
LoranM
Posts: 148
Joined: 04 Mar 2014, 22:53

Re: ARMA 3 ilta 7.5.2014

Post by LoranM »

Oisko MCC4 modi järkevä lisättävä respoon? TAI miksi sitä ei ole lisätty?


Sitä on kehitetty aika piktällle arma 3 käyttöön. Viimeiseen päivitykseen integroitiin myös ZEUS; Kokeilkaa ja nauttikaa !!!
"In any moment of decision, the best thing you can do is the right thing,
the next best thing is the wrong thing, and the worst thing you can do is nothing."

-Theodore Roosevelt
Bummeri
Posts: 3009
Joined: 09 Nov 2013, 14:35

Re: ARMA 3 ilta 7.5.2014

Post by Bummeri »

Sitä ei ole lisätty koska se olisi sitten aina päällä vaikka sitä ei käytettäisikään. Se on mahdollista lisätä repoon väliaikaisesti jos joku haluaa vetää tapahtuman sillä.
"Dataa on saatava." -DataNummi
"Toteutus on pilalla, pelkkää paskaa tilalla." -MyösNummi
Bummeri
Posts: 3009
Joined: 09 Nov 2013, 14:35

Re: ARMA 3 ilta 7.5.2014

Post by Bummeri »

TMR alternate täytyy vaihtaa alkuperäiseen TMR versioon repossa. TIKKAAAA!!!! Sen alkuperäisen kehitystä jatketaan taas.

Xmedsys asetukset

Käyttäkää nuita, niitä on testattu ja hinkattu. Eari hommat voi unohtaa koska siinä on bugeja, näistä asetuksista ne onkin otettu pois.

Siellä on myös medikkien rajaus skripti.

Älkää laittako defibrilaattoreita tai bloodpackeja, yritetään saada mahdollisimman samanlainen systeemi kuin acessa.
"Dataa on saatava." -DataNummi
"Toteutus on pilalla, pelkkää paskaa tilalla." -MyösNummi
Bummeri
Posts: 3009
Joined: 09 Nov 2013, 14:35

Re: ARMA 3 ilta 7.5.2014

Post by Bummeri »

Geari skriptit joita itse käytin (Jippi ongelma on korjattu) :

AAF:
AAFGear.sqf[+] Spoiler

Code: Select all

private ["_type", "_unit", "_fnc_BUMaddweapons", "_fnc_BUMaddmagazines", "_magazines", "_fnc_BUMCheckAddBackpack","_fnc_BUMaddMedicalSupplies"];

_type = _this select 0;
_unit = _this select 1;

if (!(local _unit)) exitwith {}; // Todella tärkeä. Estää skriptin pyörimisen ei locaaleilla uniteilla

if (_unit isKindof "Man") then
{

	removeAllWeapons _unit;
	_unit removeweapon "itemradio";
	_unit addweapon "NVGoggles_INDEP";
};

if (_unit isKindof "LandVehicle" || _unit isKindof "Air" || _unit isKindOf "Ship" || _unit isKindOf "Static") then
{
	clearWeaponCargoGlobal _unit;
	clearItemCargoGlobal _unit;
	clearMagazineCargoGlobal _unit;
	//_unit disableTIEquipment true;
	//_unit setVariable ["tf_side", "guer", true];
};

_fnc_BUMaddweapons = {

	//Adds weapons from list
	//Params [unit,[ListOfWeapons] call _fnc_BUMaddweapons;

	private ["_items", "_unit"];
	_unit = _this select 0;
	_items = _this select 1;
	{_unit addweapon _x;} Foreach _items;
};

_fnc_BUMaddmagazines = {

	//Adds list of magazines
	//Params [unit,[[MagazineClassname,count],[MagazineClassname,count],...]] call _fnc_BUMaddmagazines;

	private ["_item", "_unit", "_elements", "_count"];
	_unit = _this select 0;
	_elements = _this select 1;
	{
		_item = _x select 0;
		_count = _x select 1;
		_unit addmagazines [_item,_count];
	} Foreach _elements;
};

_fnc_BUMCheckAddBackpack = {

	//Run before adding rockets, adds an Backpack if Unit does not have one already
	//Params [unit,"BackpackClassName"] call _fnc_BUMCheckAddBackpack;

	private ["_PackToAdd", "_unit"];
	_unit = _this select 0;
	_PackToAdd = _this select 1;

	If (Backpack _unit == "") then {_unit addbackpack _PackToAdd};

};

_fnc_BUMaddMedicalSupplies = {

	//Add Xmedsys Medical supplies
	//Params [unit, mode] call _fnc_BUMaddMedicalSupplies;
	//mode can be "ltd","full","medic"
	//medic must have backpack

	private ["_mode", "_unit", "_supplies"];
	_unit = _this select 0;
	_mode = _this select 1;

	Switch (_mode) do {

		case "ltd":
		{
			_supplies = [["x39_bandage",2],["x39_morphine",1]];

			{
				_item = _x select 0;
				_count = _x select 1;

				for "_i" from 1 to _count do {_unit additem _item};
			} Foreach _supplies;
		};

		case "full":
		{
			_supplies = [["x39_bandage",3],["x39_morphine",1],["x39_epinephrine",1],["x39_tourniquet",1]];

			{
				_item = _x select 0;
				_count = _x select 1;

				for "_i" from 1 to _count do {_unit additem _item};
			} Foreach _supplies;
		};

		case "medic":
		{
			_supplies = [["x39_bandage",15],["x39_morphine",10],["x39_epinephrine",7],["x39_tourniquet",1],["x39_medikit",10]];

			{
				_item = _x select 0;
				_count = _x select 1;

				for "_i" from 1 to _count do {_unit addItemToBackpack _item};
			} Foreach _supplies;
		};
	};
};


switch (_type) do
{
	case "Co":
	{
		removebackpack _unit;
		_unit addBackpack "tf_anprc155";
		_items = ["Rangefinder", "arifle_Mk20_ACO_F"];
		_magazines = [["30Rnd_556x45_Stanag",6],["HandGrenade",1],["SmokeShell",2],["SmokeShellGreen",2]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Pl":
	{
		removebackpack _unit;
		_unit addBackpack "tf_anprc155";
		_items = ["Rangefinder", "itemradio", "arifle_Mk20_ACO_F"];
		_magazines = [["30Rnd_556x45_Stanag",7],["HandGrenade",1],["SmokeShell",2],["SmokeShellGreen",2]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Ftl":
	{
		_items = ["Binocular", "arifle_Mk20_GL_F", "itemradio"];
		_magazines = [["30Rnd_556x45_Stanag",7],["HandGrenade",1],["SmokeShell",2],["1Rnd_HE_Grenade_shell",6],["1Rnd_SmokeGreen_Grenade_shell",2]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Mg":
	{
		_items = ["LMG_Zafir_F"];
		_magazines = [["150Rnd_762x51_Box",4],["HandGrenade",1],["SmokeShell",1]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Mgasst":
	{
		[_unit, "B_AssaultPack_rgr"] call _fnc_BUMCheckAddBackpack;
		_items = ["arifle_Mk20_ACO_F"];
		_magazines = [["30Rnd_556x45_Stanag",7],["HandGrenade",3],["SmokeShell",2],["150Rnd_762x51_Box",3]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "AT":
	{
		[_unit, "B_AssaultPack_rgr"] call _fnc_BUMCheckAddBackpack;
		_items = ["arifle_Mk20_ACO_F","launch_RPG32_F"];
		_magazines = [["30Rnd_556x45_Stanag",8],["HandGrenade",2],["SmokeShell",2],["RPG32_F",1],["RPG32_HE_F",1]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "ATasst":
	{
		[_unit, "B_AssaultPack_rgr"] call _fnc_BUMCheckAddBackpack;
		_items = ["arifle_Mk20_ACO_F"];
		_magazines = [["30Rnd_556x45_Stanag",8],["HandGrenade",2],["SmokeShell",1],["RPG32_HE_F",1],["RPG32_F",1]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Medic":
	{
		[_unit, "B_AssaultPack_rgr"] call _fnc_BUMCheckAddBackpack;
		_items = ["arifle_Mk20_ACO_F"];
		_magazines = [["30Rnd_556x45_Stanag",6],["HandGrenade",1],["SmokeShell",6]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "medic"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Crew":
	{
		_items = ["arifle_Mk20C_plain_F", "itemradio"];
		_magazines = [["30Rnd_556x45_Stanag",4],["SmokeShell",2],["SmokeShellGreen",2]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Rfl":
	{
		_items = ["arifle_Mk20_GL_F"];
		_magazines = [["30Rnd_556x45_Stanag",8],["HandGrenade",2],["SmokeShell",2],["1Rnd_HE_Grenade_shell",8]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "car":
	{
		_unit addMagazineCargoGlobal ["30Rnd_556x45_Stanag", 10];
		_unit addMagazineCargoGlobal ["RPG32_F",1];
		_unit addMagazineCargoGlobal ["SmokeShell",4];
		_unit addMagazineCargoGlobal ["HandGrenade",4];
		_unit addMagazineCargoGlobal ["150Rnd_762x51_Box",2];
		_unit addMagazineCargoGlobal ["1Rnd_HE_Grenade_shell",6];
	};

	Case "truck":
	{
		_unit addMagazineCargoGlobal ["30Rnd_556x45_Stanag", 10];
		_unit addMagazineCargoGlobal ["RPG32_F",2];
		_unit addMagazineCargoGlobal ["SmokeShell",4];
		_unit addMagazineCargoGlobal ["HandGrenade",4];
		_unit addMagazineCargoGlobal ["150Rnd_762x51_Box",2];
		_unit addMagazineCargoGlobal ["1Rnd_HE_Grenade_shell",6];
	};

	Case "tank":
	{
		_unit addMagazineCargoGlobal ["30Rnd_556x45_Stanag", 10];
		_unit addMagazineCargoGlobal ["SmokeShell",4];
	};

	Case "Heli":
	{
		_unit addMagazineCargoGlobal ["30Rnd_556x45_Stanag", 10];
		_unit addMagazineCargoGlobal ["SmokeShell",4];
		_unit addMagazineCargoGlobal ["SmokeShellGreen",4];
	};
};
NATO:
NATOGear.sqf[+] Spoiler

Code: Select all

private ["_type", "_unit", "_fnc_BUMaddweapons", "_fnc_BUMaddmagazines", "_magazines", "_fnc_BUMCheckAddBackpack","_fnc_BUMaddMedicalSupplies"];

_type = _this select 0;
_unit = _this select 1;

if (!(local _unit)) exitwith {}; // Todella tärkeä. Estää skriptin pyörimisen ei locaaleilla uniteilla

if (_unit isKindof "Man") then
{

	removeAllWeapons _unit;
	_unit removeweapon "itemradio";
	_unit addweapon "NVGoggles";
};

if (_unit isKindof "LandVehicle" || _unit isKindof "Air" || _unit isKindOf "Ship" || _unit isKindOf "Static") then
{
	clearWeaponCargoglobal _unit;
	clearItemCargoGlobal _unit;
	clearMagazineCargoglobal _unit;
	//_unit disableTIEquipment true;
	//_unit setVariable ["tf_side", "west", true];
};

_fnc_BUMaddweapons = {

	//Adds weapons from list
	//Params [unit,[ListOfWeapons] call _fnc_BUMaddweapons;

	private ["_items", "_unit"];
	_unit = _this select 0;
	_items = _this select 1;
	{_unit addweapon _x;} Foreach _items;
};

_fnc_BUMaddmagazines = {

	//Adds list of magazines
	//Params [unit,[[MagazineClassname,count],[MagazineClassname,count],...]] call _fnc_BUMaddmagazines;

	private ["_item", "_unit", "_elements", "_count"];
	_unit = _this select 0;
	_elements = _this select 1;
	{
		_item = _x select 0;
		_count = _x select 1;
		_unit addmagazines [_item,_count];
	} Foreach _elements;
};

_fnc_BUMCheckAddBackpack = {

	//Run before adding rockets, adds an Backpack if Unit does not have one already
	//Params [unit,"BackpackClassName"] call _fnc_BUMCheckAddBackpack;

	private ["_PackToAdd", "_unit"];
	_unit = _this select 0;
	_PackToAdd = _this select 1;

	If (Backpack _unit == "") then {_unit addbackpack _PackToAdd};

};

_fnc_BUMaddMedicalSupplies = {

	//Add Xmedsys Medical supplies
	//Params [unit, mode] call _fnc_BUMaddMedicalSupplies;
	//mode can be "ltd","full","medic"
	//medic must have backpack

	private ["_mode", "_unit", "_supplies"];
	_unit = _this select 0;
	_mode = _this select 1;

	Switch (_mode) do {

		case "ltd":
		{
			_supplies = [["x39_bandage",2],["x39_morphine",1]];

			{
				_item = _x select 0;
				_count = _x select 1;

				for "_i" from 1 to _count do {_unit additem _item};
			} Foreach _supplies;
		};

		case "full":
		{
			_supplies = [["x39_bandage",3],["x39_morphine",1],["x39_epinephrine",1],["x39_tourniquet",1]];

			{
				_item = _x select 0;
				_count = _x select 1;

				for "_i" from 1 to _count do {_unit additem _item};
			} Foreach _supplies;
		};

		case "medic":
		{
			_supplies = [["x39_bandage",15],["x39_morphine",10],["x39_epinephrine",7],["x39_tourniquet",1],["x39_medikit",10]];

			{
				_item = _x select 0;
				_count = _x select 1;

				for "_i" from 1 to _count do {_unit addItemToBackpack _item};
			} Foreach _supplies;
		};
	};
};


switch (_type) do
{
	case "Co":
	{
		removebackpack _unit;
		_unit addBackpack "tf_rt1523g";
		_items = ["Rangefinder", "arifle_MX_ACO_F"];
		_magazines = [["30Rnd_65x39_caseless_mag",6],["HandGrenade",1],["SmokeShell",2],["SmokeShellBlue",2]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Pl":
	{
		removebackpack _unit;
		_unit addBackpack "tf_rt1523g";
		_items = ["Rangefinder", "itemradio", "arifle_MX_ACO_F"];
		_magazines = [["30Rnd_65x39_caseless_mag",8],["HandGrenade",1],["SmokeShell",2],["SmokeShellBlue",2]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Ftl":
	{
		_items = ["Binocular", "arifle_MX_GL_ACO_F", "itemradio"];
		_magazines = [["30Rnd_65x39_caseless_mag",7],["HandGrenade",1],["SmokeShell",2],["1Rnd_HE_Grenade_shell",6],["1Rnd_SmokeBlue_Grenade_shell",2]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Mg":
	{
		_items = ["LMG_Mk200_F"];
		_magazines = [["200Rnd_65x39_cased_Box",3],["HandGrenade",1],["SmokeShell",1]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Mgasst":
	{
		[_unit, "B_TacticalPack_mcamo"] call _fnc_BUMCheckAddBackpack;
		_items = ["arifle_MX_ACO_F"];
		_magazines = [["30Rnd_65x39_caseless_mag",7],["HandGrenade",3],["SmokeShell",2],["200Rnd_65x39_cased_Box",3]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Lmg":
	{
		[_unit, "B_TacticalPack_mcamo"] call _fnc_BUMCheckAddBackpack;
		_items = ["arifle_MX_SW_F"];
		_magazines = [["100Rnd_65x39_caseless_mag",8],["HandGrenade",1],["SmokeShell",1]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "AT":
	{
		[_unit, "B_TacticalPack_mcamo"] call _fnc_BUMCheckAddBackpack;
		_items = ["arifle_MX_ACO_F","launch_NLAW_F"];
		_magazines = [["30Rnd_65x39_caseless_mag",8],["HandGrenade",2],["SmokeShell",2],["NLAW_F",1]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "full"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "Medic":
	{
		[_unit, "B_TacticalPack_mcamo"] call _fnc_BUMCheckAddBackpack;
		_items = ["arifle_MX_ACO_F","itemradio"];
		_magazines = [["30Rnd_65x39_caseless_mag",6],["HandGrenade",1],["SmokeShell",6]];
		[_unit, _magazines] Call _fnc_BUMaddmagazines;
		[_unit, _items] Call _fnc_BUMaddweapons;
		[_unit, "medic"] Call _fnc_BUMaddMedicalSupplies;
	};

	Case "car":
	{
		_unit addMagazineCargoGlobal ["30Rnd_65x39_caseless_mag", 10];
		_unit addWeaponCargoGlobal ["launch_NLAW_F",1];
		_unit addMagazineCargoGlobal ["NLAW_F",1];
		_unit addMagazineCargoGlobal ["SmokeShell",4];
		_unit addMagazineCargoGlobal ["HandGrenade",4];
		_unit addMagazineCargoGlobal ["200Rnd_65x39_cased_Box",2];
		_unit addMagazineCargoGlobal ["1Rnd_HE_Grenade_shell",6];
		_unit addMagazineCargoGlobal ["100Rnd_65x39_caseless_mag",2];
	};

	Case "truck":
	{
		_unit addMagazineCargoGlobal ["30Rnd_65x39_caseless_mag", 10];
		_unit addWeaponCargoGlobal ["launch_NLAW_F",1];
		_unit addMagazineCargoGlobal ["NLAW_F",1];
		_unit addMagazineCargoGlobal ["SmokeShell",4];
		_unit addMagazineCargoGlobal ["HandGrenade",4];
		_unit addMagazineCargoGlobal ["200Rnd_65x39_cased_Box",2];
		_unit addMagazineCargoGlobal ["1Rnd_HE_Grenade_shell",6];
		_unit addMagazineCargoGlobal ["100Rnd_65x39_caseless_mag",2];
	};
};
Muista initoida yksikön initlinissa.

Code: Select all

["Co",this] call compile preprocessFileLineNumbers "NATOgear.sqf";
"Dataa on saatava." -DataNummi
"Toteutus on pilalla, pelkkää paskaa tilalla." -MyösNummi
Post Reply