summaryrefslogtreecommitdiffstats
path: root/Common/Init/Init_Towns.sqf
diff options
context:
space:
mode:
authorhybrid <hybrid@hybridlabs.pro>2026-06-11 19:38:09 +0300
committerhybrid <hybrid@hybridlabs.pro>2026-06-11 19:38:09 +0300
commita3a91d4f45b22fd487ecbc954ad979be5d03efdd (patch)
treea554ab159a347dcd6c00ca1c7c26c1ec3ac0a6bd /Common/Init/Init_Towns.sqf
downloada2wf_chernarus-main.tar.gz
a2wf_chernarus-main.tar.bz2
a2wf_chernarus-main.zip
Diffstat (limited to 'Common/Init/Init_Towns.sqf')
-rw-r--r--Common/Init/Init_Towns.sqf25
1 files changed, 25 insertions, 0 deletions
diff --git a/Common/Init/Init_Towns.sqf b/Common/Init/Init_Towns.sqf
new file mode 100644
index 0000000..4ee8796
--- /dev/null
+++ b/Common/Init/Init_Towns.sqf
@@ -0,0 +1,25 @@
+Private ["_startAt","_txt"];
+
+waitUntil{townModeSet};
+_startAt = time;
+waitUntil {!isNil "totalTowns" || time - _startAt > 120};
+waitUntil {(count towns == totalTowns) || time - _startAt > 120};
+if ((count towns != totalTowns) && local player) then {
+ _txt = Format["DEBUG: \n\n Something might be wrong with the town initialization process... \n\n This could be related to the towns amount set in WF_Logic or to the initialization itself, try to rejoin the game if the auto-fix doesn't work... \n\n Extra Info: \n count towns: %1 \n totalTowns: %2... \n\n The game will now attempt to fix itself...",count towns,totalTowns];
+ _txt Call DebugHint;
+
+ /* Attempt to fix Null over JIP */
+ towns = towns - [objNull];
+ if (count towns == totalTowns) then
+ {
+ townInit = true;
+ }
+ else
+ {
+ diag_log Format["[WFBE (INIT)] Init_Towns: Fail with count towns = %1, totalTowns = %2",count towns, totalTowns];
+ sleep 5;
+ failMission "END1";
+ };
+} else {townInit = true};
+
+diag_log Format["[WFBE (INIT)][frameno:%1 | ticktime:%2] Init_Towns: Towns initialization - [Done]",diag_frameno,diag_tickTime]; \ No newline at end of file