01.10.2014, 22:51 | #1 (permalink) |
Registriert seit: 16.09.2014
Beiträge: 32
|
Variable und Nummer vereinen
Hi, ich habe ein kleines Problem:
Ich muss in einer Schleife von 1 bis z.B. 100 zählen lassen. for "_count" from 1 to 100 step 1 do {.....} Also Code soll dann bei jedem Durchgang eine Variable mit der Nummer die durch _count entsteht vereint werden. Die Variable ist z.B. _baum. _count liegt bei 24. Das Resultat soll nun _baum24 sein. Mit dieser Variable will ich dann weiter arbeiten. Z.B. die Position von _baum24 ändern, danach die Position von _baum25 ändern u.s.w. Nun hab ich schon einiges ausprobiert und komme nicht drauf, wie ich die Variable und die Nummer kombinieren kann. Wäre super wenn mir da jemand einen Tipp geben könnte (Hintergrund auf Anfrage) MfG HyperStorm |
02.10.2014, 00:45 | #2 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Ein Beispiel wie man einen mit Format erstellten Text mit call compile als Code ausführen kann.
Für lokale Variable müssen diese zuvor mit private "angemeldet" werden. Bei globalen Variablen (den _ Unterstrich weglassen) ist das nicht notwendig. Code:
temp = 20 spawn { private ["_baum1","_baum2","_baum3","_wert"]; _wert = _this; for "_i" from 1 to 3 do { _code = format["_baum%1 = %2",_i,_wert]; call compile _code; _code = format["player groupChat str _baum%1",_i]; call compile _code; _wert = _wert + 5 } } |
02.10.2014, 13:17 | #4 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Wenn es tatsächlich ca. 100 Bäume sind, dann ist eine vernünftige Handhabung nur mit einem Array möglich. Den Bäumen muss man dabei keine Namen geben, Objekte haben eine ID oder man spricht sie über ihre Stelle im Array an.
Was man dabei im Array speichert ist von der beabsichtigten Verwendung der Bäume abhängig. Dabei gibt es mehrere Möglichkeiten die gewünschten Daten automatisch ins Array einzutragen zu lassen. |
02.10.2014, 23:52 | #5 (permalink) |
Registriert seit: 16.09.2014
Beiträge: 32
|
Ok, danke schon mal an alle.
Wie speichere ich denn z.b. 100 objecte in einem Array ab? Also gleiche situation wie mit dem For ... do ... Dass ich dann s.B. sagen kann: (baum select 37) setDamage 1 oder so... Entschuldigt meine Unwissenheit. Manchmal fange ich einfach projekte an, die ich noch nicht ganz stemmen kann und brauche dann Hilfe. Vieles bekomme ich mit versuchen und der Manuel (wiki) hin, aber einiges will dann einfach nicht klappen ^^ |
03.10.2014, 09:28 | #6 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Der Befehl https://community.bistudio.com/wiki/nearestObjects erstellt dir das Array automatisch. Benötigt wird dazu der Class-Name der gewünschten Objekte.
Bei Pflanzen wird das vermutlich nur bei solchen möglich sein, die du selber im Editor aufgestellt hast. hint str typeOf cursorTarget; zeigt dir die Klasse des Objekts an auf die der Spieler z.B. seine Waffe ausgerichtet hat. Teste das mit einem Funk-Auslöser. Du wirst sehen, dass das nicht bei allen Objekten funktioniert. |
03.10.2014, 14:12 | #7 (permalink) |
Registriert seit: 10.10.2006
Beiträge: 263
|
Bei Bäumen kanst du mit der ID Arbeiten die du im Editor siehst um sie Umzuhauen Da sie nicht zugeordnet sind kanst du sie nicht so leicht rausfiltern über nearestobjekts.
Was aber dabei nur geht sind die Einzelnen die Wälder an sich sind wieder ganz anders. Geht vielleicht auch eine Alternative? Code:
{_x setDamage 1;}foreach (nearestObjects [getMarkerPos baume,[],100]) |
03.10.2014, 18:51 | #8 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Das wäre eine Lösung! Anstelle von Markern Logik-Objekte nehmen. Bei denen ist ein automatisiertes Erzeugen eines Arrays mit nearestObjects möglich.
Für einen Baum als Radius nur ca. 2 Meter nehmen und im Skript von der Zerstörung z.B. Personen und Fahrzeuge ausnehmen (mit https://community.bistudio.com/wiki/isKindOf). |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Globale Variable, senden dann rechnen | JoBro | Editing & Scripting | 11 | 25.06.2014 22:19 |
Variable an Server geben zum Zusammenrechnen | Nokman | Editing & Scripting | 3 | 07.04.2014 12:14 |
Lokale Variable per ParamsArray Definieren? | Kingderek | Editing & Scripting | 3 | 03.10.2013 10:15 |
RPT wird mit "Error Undefined variable in expression" überflutet | [GNC]Lord-MDB | Editing & Scripting | 32 | 24.08.2013 15:43 |
Variable auf dem Server ändern sich nicht ! | N939 | Editing & Scripting | 3 | 26.07.2010 14:36 |