From c055d44dcdb87e8db49fb23e632fc086aa44cce6 Mon Sep 17 00:00:00 2001 From: hybrid Date: Thu, 11 Jun 2026 19:53:22 +0300 Subject: init --- Client/Init/Init_Coin.sqf | 91 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 Client/Init/Init_Coin.sqf (limited to 'Client/Init/Init_Coin.sqf') diff --git a/Client/Init/Init_Coin.sqf b/Client/Init/Init_Coin.sqf new file mode 100644 index 0000000..7bb4caf --- /dev/null +++ b/Client/Init/Init_Coin.sqf @@ -0,0 +1,91 @@ +Private ['_area','_coin','_coinCategories','_coinItemArray','_curId','_d','_defenseCategories','_defenseCosts','_defenseDescriptions','_defenses','_emptyStructures','_extra','_fix','_i','_indexCategory','_isHQdeployed','_structureCosts','_structureDescriptions','_structures','_updateDefenses','_updateStructures']; +_area = _this select 0; +_isHQdeployed = _this select 1; +_coin = _this select 2; +_extra = ""; +if (count _this > 3) then {_extra = _this select 3}; + +_coin setVariable ["BIS_COIN_areasize", _area]; +_coin setVariable ["BIS_COIN_fundsDescription",["$"]]; +if (_extra == "") then { + _coin setVariable ["BIS_COIN_funds",if !(paramMoneyOnly) then {[(sideJoined) Call GetSideSupply, Call GetPlayerFunds]} else {Call GetPlayerFunds}]; + _coin setVariable ["BIS_COIN_fundsDescription",if !(paramMoneyOnly) then {["S ","$ "]} else {["$ "]}]; +}; + +_defenses = []; +_defenseCosts = []; +_defenseDescriptions = []; +_defenseCategories = []; + +_structures = [(Format["WFBE_%1STRUCTURENAMES",sideJoinedText] Call GetNamespace) select 0]; +_structureCosts = [(Format["WFBE_%1STRUCTURECOSTS",sideJoinedText] Call GetNamespace) select 0]; +_structureDescriptions = [(Format["WFBE_%1STRUCTUREDESCRIPTIONS",sideJoinedText] Call GetNamespace) select 0]; + +_i = 0; + +_updateStructures = false; +_updateDefenses = false; +_emptyStructures = false; + +if (_isHQdeployed && _extra == "") then {_i = 1;_updateStructures = true; _updateDefenses = true}; +if (_extra == "REPAIR") then {_updateDefenses = true; _emptyStructures = true;_coin setVariable ["BIS_COIN_funds",Call GetPlayerFunds]}; + +if (_updateStructures) then { + _structures = Format["WFBE_%1STRUCTURENAMES",sideJoinedText] Call GetNamespace; + _structureCosts = Format["WFBE_%1STRUCTURECOSTS",sideJoinedText] Call GetNamespace; + _structureDescriptions = Format["WFBE_%1STRUCTUREDESCRIPTIONS",sideJoinedText] Call GetNamespace; +}; + +if (_updateDefenses) then { + _defenses = Format["WFBE_%1DEFENSENAMES",sideJoinedText] Call GetNamespace; + { + _d = _x Call GetNamespace; + if !(isNil '_d') then { + _defenseCosts = _defenseCosts + [(_d select QUERYUNITPRICE)]; + _defenseDescriptions = _defenseDescriptions + [(_d select QUERYUNITLABEL)]; + _defenseCategories = _defenseCategories + [(_d select QUERYUNITFACTORY)]; + }; + } forEach _defenses; +}; + +if (_emptyStructures) then { + _structures = []; + _structureCosts = []; + _structureDescriptions = []; +}; + +_indexCategory=0; +_coinCategories = []; +_coinItemArray = []; +if (count _structures > 0) then {_coinCategories = _coinCategories + [localize "strwfbase"];_indexCategory =_indexCategory +1;}; +if (count _defenses > 0) then {if (_extra == "REPAIR") then {_coinCategories = []};_coinCategories = _coinCategories + [localize "str_m04t37_0"] + [localize "STR_WF_Fortification"] + [localize "STR_WF_Strategic"] + [localize "STR_WF_Ammo"]}; + +if (_isHQdeployed && _i == 1 && _extra == "") then {_coinItemArray = _coinItemArray + [[_structures select 0,0,[0, _structureCosts select 0], (_structureDescriptions select 0) + " " + localize "strwfhqmobilizeme"]]}; +for [{_i=_i}, {_i