Einzelnen Beitrag anzeigen
Alt 07.09.2017, 18:45   #1 (permalink)
Sajiki
50 Beiträge100 Beiträge
 
Registriert seit: 24.02.2014
Beiträge: 100
Standard Script Vereinfachung, wie angehen?

Hallo Leute,

ich bräuchte da mal einen Tipp von euch.

Folgendes:

Ich habe eine Grund Datei in mein Script durch läuft. Nun nutze ich eine weitere die mit #include hinzugefügt wird und Arrys enthaltet.

In meiner Grund Datei habe ich ein Switch laufen und in diesem Switch so einen Code:

Code:
		if (_gewand == "mtp") then {_arry1 = _aC1 select 0; _arry2 = _aC1 select 1; _arry3 = _aC1 select 2; _arry4 = _aC1 select 3; _arry5 = _aC1 select 4; _arry6 = _aC1 select 5;};
		if (_gewand == "wtp") then {_arry1 = _aC1 select 6; _arry2 = _aC1 select 7; _arry3 = _aC1 select 8; _arry4 = _aC1 select 9; _arry5 = _aC1 select 10; _arry6 = _aC1 select 11;};
		if (_gewand == "jtp") then {_arry1 = _aC1 select 12; _arry2 = _aC1 select 13; _arry3 = _aC1 select 14; _arry4 = _aC1 select 15; _arry5 = _aC1 select 16; _arry6 = _aC1 select 17;};
		if (_gewand == "tda") then {_arry1 = _aC1 select 18; _arry2 = _aC1 select 19; _arry3 = _aC1 select 20; _arry4 = _aC1 select 21; _arry5 = _aC1 select 22; _arry6 = _aC1 select 23;};
Am Ende vom Case läuft das dann so ab:

Code:
	player forceAddUniform _arry1; 
	player addVest		_arry2;
	player addHeadgear	_arry3;
	player addBackpack	_arry4;
	player addGoggles	_arry5;
	player linkItem		_arry6;

Meine Überlegung nun war ob man den oberen Code nicht vereinfachen kann? Also das man im case die variable _aC1 ändert und später unten ausgibt?

In etwa so im case:
Zitat:

_v = format ["_a%1", _player];

und danach unten in etwa so:
Code:
		if (_gewand == "mtp") then {_arry1 = _v select 0; _arry2 = _v select 1; _arry3 = _v select 2; _arry4 = _v select 3; _arry5 = _v select 4; _arry6 = _v select 5;};
		if (_gewand == "wtp") then {_arry1 = _v select 6; _arry2 = _v select 7; _arry3 = _v select 8; _arry4 = _v select 9; _arry5 = _v select 10; _arry6 = _v select 11;};
		if (_gewand == "jtp") then {_arry1 = _v select 12; _arry2 = _v select 13; _arry3 = _v select 14; _arry4 = _v select 15; _arry5 = _v select 16; _arry6 = _v select 17;};
		if (_gewand == "tda") then {_arry1 = _v select 18; _arry2 = _v select 19; _arry3 = _v select 20; _arry4 = _v select 21; _arry5 = _v select 22; _arry6 = _v select 23;};
Mein Problem das er dann nicht den Inhalt mit übernimmt wie ich es gerne hätte, gibt es da eine Möglichkeit das select von meinem Arry dort rein zu tragen?

Mein Gedanke war das ich mir das ganze im Case vereinfachen würde falls mal was dazu kommt oder änderungen kommen.

Danke schon mal für eure Hilfe und Gedanken Gänge

Mfg
Sajiki
Sajiki ist offline