Skip to content

Commit f552c2d

Browse files
authored
Merge pull request #3755 from official-antistasi-community/unstable
Merge unstable into master for 3.10.1
2 parents 2a0b60b + f942485 commit f552c2d

File tree

43 files changed

+303
-62
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+303
-62
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#define MAJOR 3
22
#define MINOR 10
3-
#define PATCHLVL 0
3+
#define PATCHLVL 1
44
#define BUILD 0

A3A/addons/core/Stringtable.xml

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11402,18 +11402,6 @@
1140211402
<Turkish>Karakol - Kontrol Noktası</Turkish>
1140311403
<Chinesesimp>观察哨 - 路障</Chinesesimp>
1140411404
</Key>
11405-
<Key ID="STR_antistasi_dialogs_commander_comm_roadblock_delete">
11406-
<Original>Outpost-Roadblock Delete</Original>
11407-
<Italian>Elimina Punto di osservazione - Posti di Blocco</Italian>
11408-
<Spanish>Borrar P. Observación - Bloqueo</Spanish>
11409-
<French>Suppression de Poste d'Obs. - Barrage routier</French>
11410-
<Korean>감시초소 - 검문소 제거</Korean>
11411-
<Russian>Удалить НП / БП</Russian>
11412-
<Polish>Usuń Stanowisko Obserwacyjne - Blokade Drogową</Polish>
11413-
<Czech>O.Post-Odstranit zátaras</Czech>
11414-
<Turkish>Karakol - Kontrol Noktası Kaldır</Turkish>
11415-
<Chinesesimp>拆除观察哨/路障</Chinesesimp>
11416-
</Key>
1141711405
<Key ID="STR_antistasi_dialogs_commander_comm_roadblock_delete_tooltip">
1141811406
<Original>Remove selected watchpost or roadblock, the money spent will be refunded</Original>
1141911407
<Italian>Rimuovi il posto di osservazione o il posto di blocco selezionato, i soldi verranno rimborsati</Italian>

A3A/addons/core/changelog_briefing.txt

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,23 @@
1-
Version 3.10.0
1+
Version 3.10.1
2+
<br/>
3+
<br/>
4+
<br/>Minor
5+
<br/>
6+
<br/>Make city battles easier for solo players and reduce city battle quantity on some maps
7+
<br/>
8+
<br/>
9+
<br/>Bugfixes
10+
<br/>
11+
<br/>Fixed a bug where some maps had missing dependencies and would fail to launch on some servers
12+
<br/>Fixed a typo in a localization entry for the Mehland map
13+
<br/>Fixed rebuildAssets eating money for live radio towers
14+
<br/>Re-added persistent save button to old UI (commander menu)
15+
<br/>Fixed a bug where you could not access the new UI from the old UI
16+
<br/>Fixed a few minor log spam errors with missing definitions
17+
<br/>
18+
<br/>
19+
<br/>
20+
<br/>Version 3.10.0
221
<br/>
322
<br/>
423
<br/>Major

A3A/addons/core/dialogs.hpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1807,13 +1807,12 @@ class commander_comm {
18071807
class 10slots_L4: A3A_core_BattleMenuRedButton
18081808
{
18091809
idc = -1;
1810-
text = $STR_antistasi_dialogs_commander_comm_roadblock_delete;
1810+
text = $STR_antistasi_dialogs_main_persistent_save_button;
18111811
x = 0.272481 * safezoneW + safezoneX;
18121812
y = 0.562025 * safezoneH + safezoneY;
18131813
w = 0.175015 * safezoneW;
18141814
h = 0.0560125 * safezoneH;
1815-
tooltip = $STR_antistasi_dialogs_commander_comm_roadblock_delete_tooltip;
1816-
action = "if (player == theBoss) then {closeDialog 0; [""delete""] spawn A3A_fnc_outpostDialog} else {[""Outposts/Roadblocks"", ""You're not the Commander!""] call A3A_fnc_customHint;};";
1815+
action = "if (player == theBoss) then {closeDialog 0; [] remoteExecCall ['A3A_fnc_saveLoop', 2];}";
18171816
};
18181817
class 10slots_R4: A3A_core_BattleMenuRedButton
18191818
{

A3A/addons/core/functions/Base/fn_citySupportChange.sqf

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,10 +55,14 @@ A3A_cityData setVariable [_city, [_numCiv, _supportReb, _accumHR, _taskDelay]];
5555
private _citySide = sidesX getVariable _city;
5656
if (_supportReb > 80 and _citySide != teamPlayer) then
5757
{
58-
// Run cityBattle task if it's a significant town
5958
if (_city in A3A_activeCityBattles) exitWith {}; // might be possible?
6059
if (count keys A3A_activeCityBattles > 0) exitWith {}; // don't allow multiple simultaneous city battles for now
61-
if (_numCiv >= 70) exitWith {
60+
61+
// Run cityBattle task if it's a significant town
62+
// Avoid generating city battles in smaller cities if defence resources are low
63+
private _minPop = A3A_minCityBattlePop * linearConversion [0, 1000, A3A_resourcesDefenceOcc, 1.4, 1.0, true];
64+
Trace_3("City %1 numCiv %2, city battle minPop %3", _city, sqrt _numCiv, _minPop);
65+
if (sqrt _numCiv >= _minPop) exitWith {
6266
A3A_activeCityBattles set [_city, true];
6367
[A3A_tasks_fnc_cityBattle, [_city]] spawn A3A_tasks_fnc_runTask;
6468
};

A3A/addons/core/functions/Base/fn_rebuildAssets.sqf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ if (_siteX in _destroyedSites) exitWith {
4141
[0,-5000] remoteExec ["A3A_fnc_resourcesFIA",2];
4242
};
4343

44-
if (_siteX in A3A_antennaMap and !(_siteX in citiesX)) exitWith {
44+
if (_siteX in A3A_antennaMap and !(_siteX in citiesX) and {!alive (A3A_antennaMap get _siteX)}) exitWith {
4545
[_titleStr, localize "STR_A3A_fn_base_rebasset_done_2"] call A3A_fnc_customHint;
4646
[A3A_antennaMap get _siteX] remoteExec ["A3A_fnc_rebuildRadioTower", 2];
4747
[0,-5000] remoteExec ["A3A_fnc_resourcesFIA",2];

A3A/addons/core/functions/CREATE/fn_createAttackForceMixed.sqf

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,6 @@ if (_boatCount > 0 && _target isEqualType "" && (_faction get "vehiclesGunBoats"
5353
_maxSpeed = _speed max _maxSpeed;
5454
} forEach (_faction get "vehiclesGunBoats");
5555
_seaTime = 3600 * 2 / _maxSpeed; // speed in km/h, 2km to travel, convert to seconds
56-
57-
_vehCount = 0 max (_vehCount - _boatCount);
5856
};
5957

6058

@@ -88,7 +86,7 @@ private _landRatio = if ("airboost" in _modifiers) then { // punishment, HQ
8886
};
8987
};
9088
ServerDebug_4("Land ratio %1 out of vehicle count %2 due to lowAir %3 and modifiers %4", _landRatio, _vehCount, _lowAir, _modifiers);
91-
private _landCount = round (_landRatio * _vehCount);
89+
private _landCount = round (_landRatio * (_vehCount - count _vehicles));
9290

9391
if (_landCount > 0) then
9492
{

A3A/addons/core/functions/init/fn_initZones.sqf

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,11 @@ A3A_rebelHRTickMult = 10 / _sumPop;
274274
// Goal for lump sum is to fill garrisons
275275
A3A_rebelHRLumpMult = _reqGarrison / _sumPop;
276276

277+
// Set typical number of city battles equal to number of outposts
278+
private _allPops = citiesX apply { sqrt (A3A_cityPop get _x) };
279+
_allPops sort false; // largest first
280+
A3A_minCityBattlePop = if (count outposts < count citiesX) then { _allPops select count outposts } else { _allPops select -1 };
281+
A3A_minCityBattlePop = A3A_minCityBattlePop max 9; // Set a floor for now, fixes a couple of weird maps
277282

278283
publicVariable "blackListDest";
279284
publicVariable "markersX";

A3A/addons/gui/dialogues/ids.inc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -612,6 +612,7 @@ Maintainer: DoomMetal
612612
#define A3A_IDC_MAPSELECT_DEBUGMAPTITLE 10616
613613
#define A3A_IDC_MAPSELECT_DEBUGIDEDIT 10617
614614
#define A3A_IDC_MAPSELECT_DEBUGMAPTEXT 10618
615+
#define A3A_IDC_MAPSELECT_PICTUREMAPGROUP 10619
615616

616617
// Actual main menu
617618
#define A3A_IDC_MAINMENU_A3A_SP 10701

A3A/addons/gui/dialogues/mapSelectorDialog.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ class A3A_MapSelectorDialog
3939

4040
class MapBoardView : A3A_ControlsGroupNoScrollbars
4141
{
42-
idc = A3A_IDD_MAPSELECTORBOARDVIEW;
42+
idc = A3A_IDC_MAPSELECT_PICTUREMAPGROUP;
4343

4444
x = CENTER_X(41) + 2.5 * GRID_W;
4545
y = CENTER_Y(41) - 13 * GRID_H;
@@ -63,7 +63,7 @@ class A3A_MapSelectorDialog
6363

6464
class MainContent : A3A_DefaultControlsGroup
6565
{
66-
idc = A3A_IDD_MAPSELECTORMAIN;
66+
idc = A3A_IDC_MAPSELECT_MAIN;
6767

6868
x = CENTER_X(110);
6969
y = CENTER_Y(77);

0 commit comments

Comments
 (0)