-
Notifications
You must be signed in to change notification settings - Fork 0
grad_linearSD_fnc_startLinearSD
Aktiviert den Linear-Sectordefense Spielmodus. Funktion muss sowohl auf Clients als auch auf Server ausgeführt werden.
[firstActiveSectorID,roundLength,opforDirection,datesAndTimes] call grad_linearSD_fnc_startLinearSD;
Parameter | Erklärung |
---|---|
firstActiveSectorID | number - Die ID der Sektoren, die zuerst angegriffen werden sollen. |
roundLength | number - Dauer in Sekunden einer Runde. |
opforDirection | number (-1/1) - Angriffsrichtung von Opfor. Beispiel: Blufor besitzt bei Spielstart die Sektoren mit den IDs 0,1 und 2. Opfor besitzt die Sektoren 3,4 und 5. Opfors Angriffsrichtung ist also -1. |
datesAndTimes (optional) | array - Daten und Uhrzeiten der Runden. Erster Eintrag entspricht Datum und Uhrzeit der zweiten Runde. Erste Runde in 3den einstellen! |
weather (optional) | array - Wetter der Runden. Erster Eintrach entspricht dem Wetter der zweiten Runde. Erste Runde in 3den einstellen! |
Um das datesAndTimes Array zu füllen, stellen wir in 3den ein gewünschtes Datum ein und öffnen die Konsole (Strg + D). Dort führen wir den Befehl date
aus und kopieren uns das Ergebnis in unser Array, sodass es am Ende wie im Beispiel unten aussieht.
Achtung: Die jeweils nächste Runde muss immer in der Zukunft liegen!
Um das weather Array zu füllen, stellen wir in 3den ein gewünschtes Wetter ein und öffnen die Konsole (Strg + D). Dort führen wir call grad_linearSD_fnc_getWeather
aus und kopieren uns das Ergebnis in unser Array, sodass es am Ende wie im Beispiel unten aussieht.
Achtung: Es werden derzeit nur Bewölkung und Nebel übertragen. Von der Bewölkung ist gleichzeitig auch der Niederschlag abhängig.
Achtung: Damit die getWeather
Funktion funktioniert, muss die Mission einmal gestartet worden sein.
Sinnvoll ist diese Funktion in der userInit.sqf.
Um den restlichen Systemen etwas Zeit zur Initialisierung zu geben, führen wir sie zeitverzögert aus (CBA_fnc_waitAndExecute), allerdings nur, wenn der ausführende Spieler nicht JIP ist.
([10,0] select didJIP
)
Die Sektoren mit der ID 2 gehören Opfor. DIe Sektoren mit der ID 3 gehören Blufor. Die ID der ersten Agriffssektoren, und damit die Seite die zuerst angreift, soll zufällig ausgewählt werden.
(selectRandom [2,3]
)
Die Rundenlänge beträgt eine halbe Stunde.
(1800
)
[{
_firstActiveSectorID = selectRandom [2,3];
_roundLength = 1800;
_opforDirection = 1;
_dateAndTimeArray = [
[2035,5,28,4,60],
[2035,5,30,10,31],
[2035,6,4,7,35]
];
_weatherArray = [
[0,[0,0.014,0]],
[0.736327,[0.28973,0.014,0]],
[0.319941,[0.132027,0.014,0]]
];
[_firstActiveSectorID, _roundLength, _opforDirection, _dateAndTimeArray, _weatherArray] call grad_linearSD_fnc_startLinearSD;
},[],[10,0] select didJIP] call CBA_fnc_waitAndExecute;