Globale Variable, senden dann rechnen
Ich möchte eine Globale Variable festlegen und an eine andere Datei senden und dann mit dieser rechnen, zu dieser Zahl z.B. 1 addieren usw.:
Was ich kann: Code:
MeineVariable=10; Skript.sqs Code:
_zahl = _this select 0; Code:
(_this select 0) = (_this select 0)+1; Mir fallen nur umständliche Sachen ein, wie eine zusätzliche Nummer mit senden: Code:
MeineVariable1=10; Code:
_nr = _this select 0; Ich weiß, dass die eckige Klammer [] ein Array ist! Kann man da nicht was drehen??? Oder gibt es da ein einfachen Trick? Danke im Voraus |
Die globale Variable brauchst du nicht als Parameter übergeben, die kann in jedem Skript direkt angesprochen werden.
z.B. Code:
if (MeineVariable == 10) then {hint "gut";} else {}; |
...und vor allem: Hör auf mit SQS zu scripten!
|
Erst einmal danke für die Antworten.
Sorry, konnte nicht sofort darauf eingehen, weil ich erstmal viel lesen musste. Ich möchte ungerne das Fragen, was andere schon gefragt haben. Ich hab noch nie was mit SQF gemacht. Ich schau mir halt so einige Sachen von anderen an und SQF sah schon fast bedrohlich aus .... z.B. UPS (Unbegreiflicher Psycho Skript) OK Kritik/Vorschlag verdaut - Ab jetzt Kein SQS...
Also, so gut es geht in SQF: Die Förderung/Produktion: Produktion.sqf Code:
_loop=true; Rohstoff_Transport.sqf Code:
_beladen=0; Ich wurde das mit mindestens [Lager1] oder [Lager2] .. usw. starten Code:
_lager=_this select 0; Klar kann man für jedes Lager mit entsprechenden Bergwerk kopieren und einfügen ... Würde man das Ganze nicht anders machen? Ich hoffe, dass da nicht alles Falsch ist und auf eine baldige Antwort. Danke. |
Mit dieser Routine kann jeder LKW jedes Bergwerk und jedes Lager anfahren.
Ein Beispiel für jeweils 3 Objekte, die Anzal kann beliebieg geändert werden. Code:
private ["_lkwName","_lkwLadung"]; |
Cool, danke!
Das ist eine Lösung: mehrdimensionale Array. Ich schau mir das genau an, weil ich da viele Ideen habe, die ich da super einbringen kann. Außerdem brauch ich das Wissen für andere Sachen auch. Kling Komisch, aber auf die schnell verstehe ich die Array mit den Parametern ganz gut, aber: Code:
exitWith Oder Wenn das der Fall ist, beende den Abschnitt mit dem Folgenden??? Bitte erklären. Die andere Fragen versuche ich erstmal selber zu beantworten. PS: Sollte es nicht funktionieren und ich finde den Fehler nicht, dann habe ich das nicht ganz verstanden. Ich schau mal in den nächsten Tagen, wenn ich Zeit habe. (Erinnert mich an Matrizen) |
Bin eben mit der Antwort auf meine Frage aufgewacht! Verrückt!
da steht: Code:
forEach Bergwerke; exitWith Ist plötzlich selbsterklärend, was das da soll!!! |
Das Unterbewustsein arbeitet durchgehend.
Hier eine Liste der Befehle: https://community.bistudio.com/wiki/...Commands_ArmA2 In der Hauptschleife ist ein Fehler! Die Initialisierungszeilen der Arrays gehören aus diesere Schleife natürlich raus. Habe ich oben korrigiert. |
Man kann echt viel machen, nicht nur Geiseln retten usw. sondern was neues.
Auch wenn man nur zwei Sachen, die es schon gibt, kombinieren: Code:
if (PlumpsKloManagerWirtschaft and Arma2taktischesVorgehen) then { Und noch mal danke |
Globale Variable, senden dann rechnen
Senden brauchst du die globalen Variablen nur im Mehrspielermodus, falls erforderlich. Diese Variablen sind nur auf dem jeweiligen PC global. Soll eine Inhaltsänderung einer globalen Variablen auch den anderen PCs mitgeteilt werden, dann geht das z.B. mit:
https://community.bistudio.com/wiki/publicVariable |
Jetzt habe ich grade mit der Array gespiet und da steht ja:
Code:
Lager = [[Lager_A,0],[Lager_B,0],[Lager_C,0]]; Code:
{ Code:
_x set [1,(_x select 1)+1] |
Da hast du Recht! _x ist das jeweilige mehrdimensionale Array, der Index steht im ersten Feld von set.
Ich habe das wieder oben berichtigt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:54 Uhr. |
Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias