PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Elementliste im Array verkürzen


killshot
22.11.2013, 23:00
Abend!

Man kann ja anstatt jedes Objekt einzeln an einen Befehl zu binden auch eine Liste erstellen.

Also anstelle von

Obj1 setDamage 0;
Obj2 setDamage 0;
Obj3 setDamage 0;
...
einfach

{_x setDamage 0} forEach [Obj1,Obj2,Obj3,Obj4,Obj5];Und hier habe ich gesehen, dass man Objektnamen auch fortlaufend nummerieren lassen kann:


for "_doorcount" from 0 to 11 do {
haus1 animate ["door" + str _doorcount,0]
};
Hier werden ja die Türen 0 bis 11 in haus1 geschlossen.

Ich würde gerne 30 Objekte (Pop1 bis Pop30) mit dieser Methode löschen lassen (deleteVehicle), hab's aber nicht hinbekommen, außer natürlich mit der obigen Variante forEach [Pop1,Pop2,Pop3,...,Pop30].

Also irgendwie in diese Richtung


for "_del" from 0 to 30 do {
{deleteVehicle _x} forEach [pop + str _del]
};oder in diese ^^

_array = [for "_del" from 0 to 30 do { pop +str _del}];

{deleteVehicle _x} forEach [_array];
Ansonsten mach ich es auf die Weise oben, hätte ich in der Zeit wo ich gesucht und probiert hab ja eh schon hundert Mal tippen können :D

Aber würde mich mal interessieren!

Danke und Gruß!

Moerderhoschi
22.11.2013, 23:17
for "_del" from 1 to 30 do {call compile format ["deletevehicle pop%1" ,_del]};

gruß
hoschi

killshot
23.11.2013, 01:22
Super, genau was ich gesucht hab! Danke!