Einzelnen Beitrag anzeigen
Alt 19.06.2014, 17:31   #4 (permalink)
JoBro
Newbie
 
Registriert seit: 17.06.2014
Beiträge: 10
Standard

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...

  • Ich habe mehrere Bergwerke in denen Eisen gefördert wird (1 tonne pro Minute)
  • Ich habe mehrere Lager
  • LKWs fahren zum Bergwerk, laden das Eisen auf und bring es zu einem Lager, Ein LKW pro Bergwerk

Also, so gut es geht in SQF:

Die Förderung/Produktion:

Produktion.sqf
Code:
_loop=true;
while {_loop} do {
If (getdammage BergWerk1 == 1) then {

	} else {
	BergWerk1Eisen = BergWerk1Eisen + 1;
		};
If (getdammage BergWerk2 == 1) then {

	} else {
	BergWerk2Eisen = BergWerk2Eisen + 1;
		};
sleep 60;
};
Und der Rohstoff-Transport:

Rohstoff_Transport.sqf
Code:
_beladen=0;
_loop=true;
while {_loop} do {
If (_beladen == 0) then {
If (BergWerk1LKW distance BergWerk1 <= 100) then {
	_beladen = _beladen + BergWerk1Eisen;
	sleep 0.1;
	BergWerk1Eisen = 0;
	};

};
If (_beladen >= 1) then {
If (BergWerk1LKW distance Lager1 <= 100) then {
	Lager1Eisen = Lager1Eisen + _beladen;
	sleep 0.1;
	_beladen = 0;
	};

};
sleep 10;
}
Was aber, wenn es mehrere Lager gibt, die ein LKW anfahren kann.
Ich wurde das mit mindestens [Lager1] oder [Lager2] .. usw. starten

Code:
_lager=_this select 0;
_beladen=0;
_loop=true;
while {_loop} do {
If (_beladen == 0) then {
If (BergWerk1LKW distance BergWerk1 <= 100) then {
	_beladen = _beladen + BergWerk1Eisen;
	sleep 1;
	BergWerk1Eisen = 0;
	};

};
If (_beladen >= 1) then {
If (BergWerk1LKW distance _lager <= 100) then {
	Lager1Eisen = Lager1Eisen + _beladen;
	sleep 1;
	_beladen = 0;
	};

};
sleep 10;
}
aber Lager1Eisen stimmt dann nicht bei Lager2!!!
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.
JoBro ist offline