Page MenuHomeWildfire Games

Allow to limit unit count per match.
ClosedPublic

Authored by Freagarach on Nov 7 2019, 8:56 PM.

Details

Reviewers
wraitii
Group Reviewers
Restricted Owners Package(Owns No Changed Paths)
Commits
rP24468: Allow to limit unit count per match.
Summary

This diff allows to specify that an entity may only be created a limited time per match. E.g. once per match for a hero.

PossibleExtension:

  • Allow to modify the limit during a match.

Part of: https://wildfiregames.com/forum/index.php?/topic/27214-borg-expansion-pack-mod-implementation-in-0ad-alpha-24-release/
Refs. https://wildfiregames.com/forum/topic/24682-champions-and-civilisations-balance-mod-for-a23/

Test Plan

Verify that the hero can be trained only once in this match and that other training/building restrictions apply as intended.

Diff Detail

Repository
rP 0 A.D. Public Repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Freagarach created this revision.Nov 7 2019, 8:56 PM
Freagarach created this object with visibility "No One".

Mod version.

Freagarach updated this revision to Diff 10287.Nov 8 2019, 8:36 AM
Freagarach edited the summary of this revision. (Show Details)
Freagarach edited the test plan for this revision. (Show Details)
Freagarach changed the visibility from "No One" to "Public (No Login Required)".

Exteded.

Owners added a subscriber: Restricted Owners Package.Nov 8 2019, 8:36 AM
Vulcan added a comment.Nov 8 2019, 8:43 AM

Successful build - Chance fights ever on the side of the prudent.

Linter detected issues:
Executing section Source...
Executing section JS...
|    | [NORMAL] ESLintBear (operator-linebreak):
|    | '||' should be placed at the end of the line.
|----|    | /zpool0/trunk/binaries/data/mods/public/globalscripts/Templates.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/globalscripts/Templates.js
|  87|  87| 		// If the elements are still strings, split them by space or by '+'
|  88|  88| 		if (typeof sublist == "string")
|  89|  89| 			sublist = sublist.split(/[+\s]+/);
|  90|    |-		if (sublist.every(c => (c[0] == "!" && classes.indexOf(c.substr(1)) == -1)
|  91|    |-		                    || (c[0] != "!" && classes.indexOf(c) != -1)))
|    |  90|+		if (sublist.every(c => (c[0] == "!" && classes.indexOf(c.substr(1)) == -1) ||
|    |  91|+		                    (c[0] != "!" && classes.indexOf(c) != -1)))
|  92|  92| 			return true;
|  93|  93| 	}
|  94|  94| 

binaries/data/mods/public/globalscripts/Templates.js
|  91| »   »   ····················||·(c[0]·!=·"!"·&&·classes.indexOf(c)·!=·-1)))
|    | [NORMAL] JSHintBear:
|    | Misleading line break before '||'; readers may interpret this as an expression boundary.
|    | [NORMAL] ESLintBear (space-before-function-paren):
|    | Unexpected space before function parentheses.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/selection_panels.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/selection_panels.js
| 762| 762| 				addResearchToQueue(data.item.researchFacilityId, t);
| 763| 763| 			})(tech);
| 764| 764| 
| 765|    |-			button.onPressRight = (t => function () {
|    | 765|+			button.onPressRight = (t => function() {
| 766| 766| 				showTemplateDetails(
| 767| 767| 					t,
| 768| 768| 					GetTemplateData(data.unitEntStates.find(state => state.id == data.item.researchFacilityId).template).nativeCiv);

binaries/data/mods/public/gui/session/selection_panels.js
|  50| »   »   »   switch·(data.item)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/selection_panels.js
|  61| »   »   switch·(data.item)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/selection_panels.js
| 730| »   »   »   »   »   »   switch·(entity.check)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 2 tabs but found 3.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
| 822| 822| 		updateEntityColor(data.showAllStatusBars && (i == player || player == -1) ?
| 823| 823| 			[IID_Minimap, IID_RangeOverlayRenderer, IID_RallyPointRenderer, IID_StatusBars] :
| 824| 824| 			[IID_Minimap, IID_RangeOverlayRenderer, IID_RallyPointRenderer],
| 825|    |-			cmpRangeManager.GetEntitiesByPlayer(i));
|    | 825|+		cmpRangeManager.GetEntitiesByPlayer(i));
| 826| 826| 	}
| 827| 827| 	updateEntityColor([IID_Selectable, IID_StatusBars], data.selected);
| 828| 828| 	Engine.QueryInterface(SYSTEM_ENTITY, IID_TerritoryManager).UpdateColors();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|1655|1655| 			{
|1656|1656| 				minDist2 = dist2;
|1657|1657| 				minDistEntitySnapData = {
|1658|    |-						"x": pos.x,
|    |1658|+					"x": pos.x,
|1659|1659| 						"z": pos.z,
|1660|1660| 						"angle": cmpPosition.GetRotation().y,
|1661|1661| 						"ent": ent
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|1656|1656| 				minDist2 = dist2;
|1657|1657| 				minDistEntitySnapData = {
|1658|1658| 						"x": pos.x,
|1659|    |-						"z": pos.z,
|    |1659|+					"z": pos.z,
|1660|1660| 						"angle": cmpPosition.GetRotation().y,
|1661|1661| 						"ent": ent
|1662|1662| 				};
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|1657|1657| 				minDistEntitySnapData = {
|1658|1658| 						"x": pos.x,
|1659|1659| 						"z": pos.z,
|1660|    |-						"angle": cmpPosition.GetRotation().y,
|    |1660|+					"angle": cmpPosition.GetRotation().y,
|1661|1661| 						"ent": ent
|1662|1662| 				};
|1663|1663| 			}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|1658|1658| 						"x": pos.x,
|1659|1659| 						"z": pos.z,
|1660|1660| 						"angle": cmpPosition.GetRotation().y,
|1661|    |-						"ent": ent
|    |1661|+					"ent": ent
|1662|1662| 				};
|1663|1663| 			}
|1664|1664| 		}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 3.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  48|  48| 	"GetResource": resource => ({
|  49|  49| 		"aiAnalysisInfluenceGroup":
|  50|  50| 			resource == "food" ? "ignore" :
|  51|    |-			resource == "wood" ? "abundant" : "sparse"
|    |  51|+				resource == "wood" ? "abundant" : "sparse"
|  52|  52| 	})
|  53|  53| };
|  54|  54| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPrices' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  56|  56| 
|  57|  57| 
|  58|  58| AddMock(SYSTEM_ENTITY, IID_Barter, {
|  59|    |-	GetPrices: function() {
|    |  59|+	"GetPrices": function() {
|  60|  60| 		return {
|  61|  61| 			"buy": { "food": 150 },
|  62|  62| 			"sell": { "food": 25 }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'PlayerHasMarket' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  62|  62| 			"sell": { "food": 25 }
|  63|  63| 		};
|  64|  64| 	},
|  65|    |-	PlayerHasMarket: function () { return false; }
|    |  65|+	"PlayerHasMarket": function () { return false; }
|  66|  66| });
|  67|  67| 
|  68|  68| AddMock(SYSTEM_ENTITY, IID_EndGameManager, {
|    | [NORMAL] ESLintBear (space-before-function-paren):
|    | Unexpected space before function parentheses.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  62|  62| 			"sell": { "food": 25 }
|  63|  63| 		};
|  64|  64| 	},
|  65|    |-	PlayerHasMarket: function () { return false; }
|    |  65|+	PlayerHasMarket: function() { return false; }
|  66|  66| });
|  67|  67| 
|  68|  68| AddMock(SYSTEM_ENTITY, IID_EndGameManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetVictoryConditions' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  66|  66| });
|  67|  67| 
|  68|  68| AddMock(SYSTEM_ENTITY, IID_EndGameManager, {
|  69|    |-	GetVictoryConditions: () => ["conquest", "wonder"],
|    |  69|+	"GetVictoryConditions": () => ["conquest", "wonder"],
|  70|  70| 	GetAlliedVictory: function() { return false; }
|  71|  71| });
|  72|  72| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetAlliedVictory' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  67|  67| 
|  68|  68| AddMock(SYSTEM_ENTITY, IID_EndGameManager, {
|  69|  69| 	GetVictoryConditions: () => ["conquest", "wonder"],
|  70|    |-	GetAlliedVictory: function() { return false; }
|    |  70|+	"GetAlliedVictory": function() { return false; }
|  71|  71| });
|  72|  72| 
|  73|  73| AddMock(SYSTEM_ENTITY, IID_PlayerManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetNumPlayers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  71|  71| });
|  72|  72| 
|  73|  73| AddMock(SYSTEM_ENTITY, IID_PlayerManager, {
|  74|    |-	GetNumPlayers: function() { return 2; },
|    |  74|+	"GetNumPlayers": function() { return 2; },
|  75|  75| 	GetPlayerByID: function(id) { TS_ASSERT(id === 0 || id === 1); return 100+id; }
|  76|  76| });
|  77|  77| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPlayerByID' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  72|  72| 
|  73|  73| AddMock(SYSTEM_ENTITY, IID_PlayerManager, {
|  74|  74| 	GetNumPlayers: function() { return 2; },
|  75|    |-	GetPlayerByID: function(id) { TS_ASSERT(id === 0 || id === 1); return 100+id; }
|    |  75|+	"GetPlayerByID": function(id) { TS_ASSERT(id === 0 || id === 1); return 100+id; }
|  76|  76| });
|  77|  77| 
|  78|  78| AddMock(SYSTEM_ENTITY, IID_RangeManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLosVisibility' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  76|  76| });
|  77|  77| 
|  78|  78| AddMock(SYSTEM_ENTITY, IID_RangeManager, {
|  79|    |-	GetLosVisibility: function(ent, player) { return "visible"; },
|    |  79|+	"GetLosVisibility": function(ent, player) { return "visible"; },
|  80|  80| 	GetLosCircular: function() { return false; }
|  81|  81| });
|  82|  82| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLosCircular' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  77|  77| 
|  78|  78| AddMock(SYSTEM_ENTITY, IID_RangeManager, {
|  79|  79| 	GetLosVisibility: function(ent, player) { return "visible"; },
|  80|    |-	GetLosCircular: function() { return false; }
|    |  80|+	"GetLosCircular": function() { return false; }
|  81|  81| });
|  82|  82| 
|  83|  83| AddMock(SYSTEM_ENTITY, IID_TemplateManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCurrentTemplateName' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  81|  81| });
|  82|  82| 
|  83|  83| AddMock(SYSTEM_ENTITY, IID_TemplateManager, {
|  84|    |-	GetCurrentTemplateName: function(ent) { return "example"; },
|    |  84|+	"GetCurrentTemplateName": function(ent) { return "example"; },
|  85|  85| 	GetTemplate: function(name) { return ""; }
|  86|  86| });
|  87|  87| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTemplate' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  82|  82| 
|  83|  83| AddMock(SYSTEM_ENTITY, IID_TemplateManager, {
|  84|  84| 	GetCurrentTemplateName: function(ent) { return "example"; },
|  85|    |-	GetTemplate: function(name) { return ""; }
|    |  85|+	"GetTemplate": function(name) { return ""; }
|  86|  86| });
|  87|  87| 
|  88|  88| AddMock(SYSTEM_ENTITY, IID_Timer, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTime' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  86|  86| });
|  87|  87| 
|  88|  88| AddMock(SYSTEM_ENTITY, IID_Timer, {
|  89|    |-	GetTime: function() { return 0; },
|    |  89|+	"GetTime": function() { return 0; },
|  90|  90| 	SetTimeout: function(ent, iid, funcname, time, data) { return 0; }
|  91|  91| });
|  92|  92| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'SetTimeout' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  87|  87| 
|  88|  88| AddMock(SYSTEM_ENTITY, IID_Timer, {
|  89|  89| 	GetTime: function() { return 0; },
|  90|    |-	SetTimeout: function(ent, iid, funcname, time, data) { return 0; }
|    |  90|+	"SetTimeout": function(ent, iid, funcname, time, data) { return 0; }
|  91|  91| });
|  92|  92| 
|  93|  93| AddMock(100, IID_Player, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetName' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  91|  91| });
|  92|  92| 
|  93|  93| AddMock(100, IID_Player, {
|  94|    |-	GetName: function() { return "Player 1"; },
|    |  94|+	"GetName": function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCiv' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  92|  92| 
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|    |-	GetCiv: function() { return "gaia"; },
|    |  95|+	"GetCiv": function() { return "gaia"; },
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetColor' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	"GetColor": function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'r' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { "r": 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'g' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { r: 1, "g": 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'b' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { r: 1, g: 1, "b": 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'a' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { r: 1, g: 1, b: 1, "a": 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1 }; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'CanControlAllUnits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|    |-	CanControlAllUnits: function() { return false; },
|    |  97|+	"CanControlAllUnits": function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPopulationCount' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|    |-	GetPopulationCount: function() { return 10; },
|    |  98|+	"GetPopulationCount": function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPopulationLimit' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|    |-	GetPopulationLimit: function() { return 20; },
|    |  99|+	"GetPopulationLimit": function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetMaxPopulation' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100|    |-	GetMaxPopulation: function() { return 200; },
|    | 100|+	"GetMaxPopulation": function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetResourceCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101|    |-	GetResourceCounts: function() { return { food: 100 }; },
|    | 101|+	"GetResourceCounts": function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101|    |-	GetResourceCounts: function() { return { food: 100 }; },
|    | 101|+	GetResourceCounts: function() { return { "food": 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPanelEntities' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102|    |-	GetPanelEntities: function() { return []; },
|    | 102|+	"GetPanelEntities": function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsTrainingBlocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103|    |-	IsTrainingBlocked: function() { return false; },
|    | 103|+	"IsTrainingBlocked": function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetState' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104|    |-	GetState: function() { return "active"; },
|    | 104|+	"GetState": function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTeam' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
| 105|    |-	GetTeam: function() { return -1; },
|    | 105|+	"GetTeam": function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLockTeams' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
| 106|    |-	GetLockTeams: function() { return false; },
|    | 106|+	"GetLockTeams": function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCheatsEnabled' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 104| 104| 	GetState: function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
| 107|    |-	GetCheatsEnabled: function() { return false; },
|    | 107|+	"GetCheatsEnabled": function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDiplomacy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 105| 105| 	GetTeam: function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108|    |-	GetDiplomacy: function() { return [-1, 1]; },
|    | 108|+	"GetDiplomacy": function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 106| 106| 	GetLockTeams: function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109|    |-	IsAlly: function() { return false; },
|    | 109|+	"IsAlly": function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsMutualAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
| 110|    |-	IsMutualAlly: function() { return false; },
|    | 110|+	"IsMutualAlly": function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsNeutral' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111|    |-	IsNeutral: function() { return false; },
|    | 111|+	"IsNeutral": function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsEnemy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 109| 109| 	IsAlly: function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
| 112|    |-	IsEnemy: function() { return true; },
|    | 112|+	"IsEnemy": function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDisabledTemplates' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
| 113|    |-	GetDisabledTemplates: function() { return {}; },
|    | 113|+	"GetDisabledTemplates": function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
| 116| 116| 	HasSharedDropsites: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDisabledTechnologies' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 111| 111| 	IsNeutral: function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114|    |-	GetDisabledTechnologies: function() { return {}; },
|    | 114|+	"GetDisabledTechnologies": function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
| 116| 116| 	HasSharedDropsites: function() { return false; },
| 117| 117| 	HasSharedLos: function() { return false; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSpyCostMultiplier' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 112| 112| 	IsEnemy: function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115|    |-	GetSpyCostMultiplier: function() { return 1; },
|    | 115|+	"GetSpyCostMultiplier": function() { return 1; },
| 116| 116| 	HasSharedDropsites: function() { return false; },
| 117| 117| 	HasSharedLos: function() { return false; }
| 118| 118| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasSharedDropsites' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
| 116|    |-	HasSharedDropsites: function() { return false; },
|    | 116|+	"HasSharedDropsites": function() { return false; },
| 117| 117| 	HasSharedLos: function() { return false; }
| 118| 118| });
| 119| 119| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasSharedLos' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
| 116| 116| 	HasSharedDropsites: function() { return false; },
| 117|    |-	HasSharedLos: function() { return false; }
|    | 117|+	"HasSharedLos": function() { return false; }
| 118| 118| });
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLimits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 118| 118| });
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121|    |-	GetLimits: function() { return {"Foo": 10}; },
|    | 121|+	"GetLimits": function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 118| 118| });
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121|    |-	GetLimits: function() { return {"Foo": 10}; },
|    | 121|+	GetLimits: function() { return { "Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 118| 118| });
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121|    |-	GetLimits: function() { return {"Foo": 10}; },
|    | 121|+	GetLimits: function() { return {"Foo": 10 }; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122|    |-	GetCounts: function() { return {"Foo": 5}; },
|    | 122|+	"GetCounts": function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
| 125| 125| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122|    |-	GetCounts: function() { return {"Foo": 5}; },
|    | 122|+	GetCounts: function() { return { "Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
| 125| 125| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122|    |-	GetCounts: function() { return {"Foo": 5}; },
|    | 122|+	GetCounts: function() { return {"Foo": 5 }; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
| 125| 125| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLimitChangers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123|    |-	GetLimitChangers: function() {return {"Foo": {}}; },
|    | 123|+	"GetLimitChangers": function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
| 125| 125| });
| 126| 126| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123|    |-	GetLimitChangers: function() {return {"Foo": {}}; },
|    | 123|+	GetLimitChangers: function() {return { "Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
| 125| 125| });
| 126| 126| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123|    |-	GetLimitChangers: function() {return {"Foo": {}}; },
|    | 123|+	GetLimitChangers: function() {return {"Foo": {} }; },
| 124| 124| 	GetPersistentCounts: function() { return {"Bar": 0}; }
| 125| 125| });
| 126| 126| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPersistentCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124|    |-	GetPersistentCounts: function() { return {"Bar": 0}; }
|    | 124|+	"GetPersistentCounts": function() { return {"Bar": 0}; }
| 125| 125| });
| 126| 126| 
| 127| 127| AddMock(100, IID_TechnologyManager, {
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124|    |-	GetPersistentCounts: function() { return {"Bar": 0}; }
|    | 124|+	GetPersistentCounts: function() { return { "Bar": 0}; }
| 125| 125| });
| 126| 126| 
| 127| 127| AddMock(100, IID_TechnologyManager, {
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124|    |-	GetPersistentCounts: function() { return {"Bar": 0}; }
|    | 124|+	GetPersistentCounts: function() { return {"Bar": 0 }; }
| 125| 125| });
| 126| 126| 
| 127| 127| AddMock(100, IID_TechnologyManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetBasicStatistics' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 134| 134| });
| 135| 135| 
| 136| 136| AddMock(100, IID_StatisticsTracker, {
| 137|    |-	GetBasicStatistics: function() {
|    | 137|+	"GetBasicStatistics": function() {
| 138| 138| 		return {
| 139| 139| 			"resourcesGathered": {
| 140| 140| 				"food": 100,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSequences' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 146| 146| 			"percentMapExplored": 10
| 147| 147| 		};
| 148| 148| 	},
| 149|    |-	GetSequences: function() {
|    | 149|+	"GetSequences": function() {
| 150| 150| 		return {
| 151| 151| 			"unitsTrained": [0, 10],
| 152| 152| 			"unitsLost": [0, 42],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseTrainedUnitsCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 171| 171| 			"teamPeakPercentOfMapControlled": [0, 10]
| 172| 172| 		};
| 173| 173| 	},
| 174|    |-	IncreaseTrainedUnitsCounter: function() { return 1; },
|    | 174|+	"IncreaseTrainedUnitsCounter": function() { return 1; },
| 175| 175| 	IncreaseConstructedBuildingsCounter: function() { return 1; },
| 176| 176| 	IncreaseBuiltCivCentresCounter: function() { return 1; }
| 177| 177| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseConstructedBuildingsCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 172| 172| 		};
| 173| 173| 	},
| 174| 174| 	IncreaseTrainedUnitsCounter: function() { return 1; },
| 175|    |-	IncreaseConstructedBuildingsCounter: function() { return 1; },
|    | 175|+	"IncreaseConstructedBuildingsCounter": function() { return 1; },
| 176| 176| 	IncreaseBuiltCivCentresCounter: function() { return 1; }
| 177| 177| });
| 178| 178| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseBuiltCivCentresCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 173| 173| 	},
| 174| 174| 	IncreaseTrainedUnitsCounter: function() { return 1; },
| 175| 175| 	IncreaseConstructedBuildingsCounter: function() { return 1; },
| 176|    |-	IncreaseBuiltCivCentresCounter: function() { return 1; }
|    | 176|+	"IncreaseBuiltCivCentresCounter": function() { return 1; }
| 177| 177| });
| 178| 178| 
| 179| 179| AddMock(101, IID_Player, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetName' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 177| 177| });
| 178| 178| 
| 179| 179| AddMock(101, IID_Player, {
| 180|    |-	GetName: function() { return "Player 2"; },
|    | 180|+	"GetName": function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCiv' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 178| 178| 
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181|    |-	GetCiv: function() { return "mace"; },
|    | 181|+	"GetCiv": function() { return "mace"; },
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetColor' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	"GetColor": function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'r' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { "r": 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'g' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { r: 1, "g": 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'b' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { r: 1, g: 0, "b": 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'a' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { r: 1, g: 0, b: 0, "a": 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1 }; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'CanControlAllUnits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183|    |-	CanControlAllUnits: function() { return true; },
|    | 183|+	"CanControlAllUnits": function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPopulationCount' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184|    |-	GetPopulationCount: function() { return 40; },
|    | 184|+	"GetPopulationCount": function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPopulationLimit' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185|    |-	GetPopulationLimit: function() { return 30; },
|    | 185|+	"GetPopulationLimit": function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetMaxPopulation' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186|    |-	GetMaxPopulation: function() { return 300; },
|    | 186|+	"GetMaxPopulation": function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetResourceCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187|    |-	GetResourceCounts: function() { return { food: 200 }; },
|    | 187|+	"GetResourceCounts": function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187|    |-	GetResourceCounts: function() { return { food: 200 }; },
|    | 187|+	GetResourceCounts: function() { return { "food": 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPanelEntities' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188|    |-	GetPanelEntities: function() { return []; },
|    | 188|+	"GetPanelEntities": function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsTrainingBlocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189|    |-	IsTrainingBlocked: function() { return false; },
|    | 189|+	"IsTrainingBlocked": function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetState' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190|    |-	GetState: function() { return "active"; },
|    | 190|+	"GetState": function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTeam' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
| 191|    |-	GetTeam: function() { return -1; },
|    | 191|+	"GetTeam": function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLockTeams' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
| 192|    |-	GetLockTeams: function() {return false; },
|    | 192|+	"GetLockTeams": function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCheatsEnabled' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 190| 190| 	GetState: function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
| 193|    |-	GetCheatsEnabled: function() { return false; },
|    | 193|+	"GetCheatsEnabled": function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDiplomacy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 191| 191| 	GetTeam: function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194|    |-	GetDiplomacy: function() { return [-1, 1]; },
|    | 194|+	"GetDiplomacy": function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 192| 192| 	GetLockTeams: function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195|    |-	IsAlly: function() { return true; },
|    | 195|+	"IsAlly": function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsMutualAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
| 196|    |-	IsMutualAlly: function() {return false; },
|    | 196|+	"IsMutualAlly": function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsNeutral' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197|    |-	IsNeutral: function() { return false; },
|    | 197|+	"IsNeutral": function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsEnemy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 195| 195| 	IsAlly: function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
| 198|    |-	IsEnemy: function() { return false; },
|    | 198|+	"IsEnemy": function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDisabledTemplates' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
| 199|    |-	GetDisabledTemplates: function() { return {}; },
|    | 199|+	"GetDisabledTemplates": function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
| 202| 202| 	HasSharedDropsites: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDisabledTechnologies' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 197| 197| 	IsNeutral: function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200|    |-	GetDisabledTechnologies: function() { return {}; },
|    | 200|+	"GetDisabledTechnologies": function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
| 202| 202| 	HasSharedDropsites: function() { return false; },
| 203| 203| 	HasSharedLos: function() { return false; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSpyCostMultiplier' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 198| 198| 	IsEnemy: function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201|    |-	GetSpyCostMultiplier: function() { return 1; },
|    | 201|+	"GetSpyCostMultiplier": function() { return 1; },
| 202| 202| 	HasSharedDropsites: function() { return false; },
| 203| 203| 	HasSharedLos: function() { return false; }
| 204| 204| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasSharedDropsites' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
| 202|    |-	HasSharedDropsites: function() { return false; },
|    | 202|+	"HasSharedDropsites": function() { return false; },
| 203| 203| 	HasSharedLos: function() { return false; }
| 204| 204| });
| 205| 205| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasSharedLos' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
| 202| 202| 	HasSharedDropsites: function() { return false; },
| 203|    |-	HasSharedLos: function() { return false; }
|    | 203|+	"HasSharedLos": function() { return false; }
| 204| 204| });
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLimits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 204| 204| });
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207|    |-	GetLimits: function() { return {"Bar": 20}; },
|    | 207|+	"GetLimits": function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 204| 204| });
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207|    |-	GetLimits: function() { return {"Bar": 20}; },
|    | 207|+	GetLimits: function() { return { "Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 204| 204| });
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207|    |-	GetLimits: function() { return {"Bar": 20}; },
|    | 207|+	GetLimits: function() { return {"Bar": 20 }; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208|    |-	GetCounts: function() { return {"Bar": 0}; },
|    | 208|+	"GetCounts": function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
| 211| 211| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208|    |-	GetCounts: function() { return {"Bar": 0}; },
|    | 208|+	GetCounts: function() { return { "Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
| 211| 211| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208|    |-	GetCounts: function() { return {"Bar": 0}; },
|    | 208|+	GetCounts: function() { return {"Bar": 0 }; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
| 211| 211| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLimitChangers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209|    |-	GetLimitChangers: function() {return {"Bar": {}}; },
|    | 209|+	"GetLimitChangers": function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
| 211| 211| });
| 212| 212| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209|    |-	GetLimitChangers: function() {return {"Bar": {}}; },
|    | 209|+	GetLimitChangers: function() {return { "Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
| 211| 211| });
| 212| 212| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209|    |-	GetLimitChangers: function() {return {"Bar": {}}; },
|    | 209|+	GetLimitChangers: function() {return {"Bar": {} }; },
| 210| 210| 	GetPersistentCounts: function() { return {"Foo": 0}; }
| 211| 211| });
| 212| 212| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPersistentCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210|    |-	GetPersistentCounts: function() { return {"Foo": 0}; }
|    | 210|+	"GetPersistentCounts": function() { return {"Foo": 0}; }
| 211| 211| });
| 212| 212| 
| 213| 213| AddMock(101, IID_TechnologyManager, {
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210|    |-	GetPersistentCounts: function() { return {"Foo": 0}; }
|    | 210|+	GetPersistentCounts: function() { return { "Foo": 0}; }
| 211| 211| });
| 212| 212| 
| 213| 213| AddMock(101, IID_TechnologyManager, {
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210|    |-	GetPersistentCounts: function() { return {"Foo": 0}; }
|    | 210|+	GetPersistentCounts: function() { return {"Foo": 0 }; }
| 211| 211| });
| 212| 212| 
| 213| 213| AddMock(101, IID_TechnologyManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetBasicStatistics' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 220| 220| });
| 221| 221| 
| 222| 222| AddMock(101, IID_StatisticsTracker, {
| 223|    |-	GetBasicStatistics: function() {
|    | 223|+	"GetBasicStatistics": function() {
| 224| 224| 		return {
| 225| 225| 			"resourcesGathered": {
| 226| 226| 				"food": 100,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSequences' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 232| 232| 			"percentMapExplored": 10
| 233| 233| 		};
| 234| 234| 	},
| 235|    |-	GetSequences: function() {
|    | 235|+	"GetSequences": function() {
| 236| 236| 		return {
| 237| 237| 			"unitsTrained": [0, 10],
| 238| 238| 			"unitsLost": [0, 9],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseTrainedUnitsCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 257| 257| 			"teamPeakPercentOfMapControlled": [0, 10]
| 258| 258| 		};
| 259| 259| 	},
| 260|    |-	IncreaseTrainedUnitsCounter: function() { return 1; },
|    | 260|+	"IncreaseTrainedUnitsCounter": function() { return 1; },
| 261| 261| 	IncreaseConstructedBuildingsCounter: function() { return 1; },
| 262| 262| 	IncreaseBuiltCivCentresCounter: function() { return 1; }
| 263| 263| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseConstructedBuildingsCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 258| 258| 		};
| 259| 259| 	},
| 260| 260| 	IncreaseTrainedUnitsCounter: function() { return 1; },
| 261|    |-	IncreaseConstructedBuildingsCounter: function() { return 1; },
|    | 261|+	"IncreaseConstructedBuildingsCounter": function() { return 1; },
| 262| 262| 	IncreaseBuiltCivCentresCounter: function() { return 1; }
| 263| 263| });
| 264| 264| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseBuiltCivCentresCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 259| 259| 	},
| 260| 260| 	IncreaseTrainedUnitsCounter: function() { return 1; },
| 261| 261| 	IncreaseConstructedBuildingsCounter: function() { return 1; },
| 262|    |-	IncreaseBuiltCivCentresCounter: function() { return 1; }
|    | 262|+	"IncreaseBuiltCivCentresCounter": function() { return 1; }
| 263| 263| });
| 264| 264| 
| 265| 265| // Note: property order matters when using TS_ASSERT_UNEVAL_EQUALS,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'players' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 266| 266| //	because uneval preserves property order. So make sure this object
| 267| 267| //	matches the ordering in GuiInterface.
| 268| 268| TS_ASSERT_UNEVAL_EQUALS(cmp.GetSimulationState(), {
| 269|    |-	players: [
|    | 269|+	"players": [
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'name' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 268| 268| TS_ASSERT_UNEVAL_EQUALS(cmp.GetSimulationState(), {
| 269| 269| 	players: [
| 270| 270| 		{
| 271|    |-			name: "Player 1",
|    | 271|+			"name": "Player 1",
| 272| 272| 			civ: "gaia",
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'civ' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 269| 269| 	players: [
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272|    |-			civ: "gaia",
|    | 272|+			"civ": "gaia",
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'color' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			"color": { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'r' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { "r":1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'r'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r: 1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'g' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, "g":1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'g'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g: 1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'b' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g:1, "b":1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'b'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g:1, b: 1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'a' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g:1, b:1, "a":1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'a'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g:1, b:1, a: 1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'controlsAll' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274|    |-			controlsAll: false,
|    | 274|+			"controlsAll": false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popCount' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 272| 272| 			civ: "gaia",
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275|    |-			popCount: 10,
|    | 275|+			"popCount": 10,
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popLimit' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276|    |-			popLimit: 20,
|    | 276|+			"popLimit": 20,
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
| 279| 279| 			resourceCounts: { food: 100 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popMax' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
| 277|    |-			popMax: 200,
|    | 277|+			"popMax": 200,
| 278| 278| 			panelEntities: [],
| 279| 279| 			resourceCounts: { food: 100 },
| 280| 280| 			trainingBlocked: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'panelEntities' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
| 278|    |-			panelEntities: [],
|    | 278|+			"panelEntities": [],
| 279| 279| 			resourceCounts: { food: 100 },
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'resourceCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
| 279|    |-			resourceCounts: { food: 100 },
|    | 279|+			"resourceCounts": { food: 100 },
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
| 279|    |-			resourceCounts: { food: 100 },
|    | 279|+			resourceCounts: { "food": 100 },
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'trainingBlocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
| 279| 279| 			resourceCounts: { food: 100 },
| 280|    |-			trainingBlocked: false,
|    | 280|+			"trainingBlocked": false,
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
| 283| 283| 			teamsLocked: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'state' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 278| 278| 			panelEntities: [],
| 279| 279| 			resourceCounts: { food: 100 },
| 280| 280| 			trainingBlocked: false,
| 281|    |-			state: "active",
|    | 281|+			"state": "active",
| 282| 282| 			team: -1,
| 283| 283| 			teamsLocked: false,
| 284| 284| 			cheatsEnabled: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'team' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 279| 279| 			resourceCounts: { food: 100 },
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
| 282|    |-			team: -1,
|    | 282|+			"team": -1,
| 283| 283| 			teamsLocked: false,
| 284| 284| 			cheatsEnabled: false,
| 285| 285| 			disabledTemplates: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'teamsLocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
| 283|    |-			teamsLocked: false,
|    | 283|+			"teamsLocked": false,
| 284| 284| 			cheatsEnabled: false,
| 285| 285| 			disabledTemplates: {},
| 286| 286| 			disabledTechnologies: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'cheatsEnabled' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
| 283| 283| 			teamsLocked: false,
| 284|    |-			cheatsEnabled: false,
|    | 284|+			"cheatsEnabled": false,
| 285| 285| 			disabledTemplates: {},
| 286| 286| 			disabledTechnologies: {},
| 287| 287| 			hasSharedDropsites: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'disabledTemplates' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 282| 282| 			team: -1,
| 283| 283| 			teamsLocked: false,
| 284| 284| 			cheatsEnabled: false,
| 285|    |-			disabledTemplates: {},
|    | 285|+			"disabledTemplates": {},
| 286| 286| 			disabledTechnologies: {},
| 287| 287| 			hasSharedDropsites: false,
| 288| 288| 			hasSharedLos: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'disabledTechnologies' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 283| 283| 			teamsLocked: false,
| 284| 284| 			cheatsEnabled: false,
| 285| 285| 			disabledTemplates: {},
| 286|    |-			disabledTechnologies: {},
|    | 286|+			"disabledTechnologies": {},
| 287| 287| 			hasSharedDropsites: false,
| 288| 288| 			hasSharedLos: false,
| 289| 289| 			spyCostMultiplier: 1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'hasSharedDropsites' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 284| 284| 			cheatsEnabled: false,
| 285| 285| 			disabledTemplates: {},
| 286| 286| 			disabledTechnologies: {},
| 287|    |-			hasSharedDropsites: false,
|    | 287|+			"hasSharedDropsites": false,
| 288| 288| 			hasSharedLos: false,
| 289| 289| 			spyCostMultiplier: 1,
| 290| 290| 			phase: "village",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'hasSharedLos' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 285| 285| 			disabledTemplates: {},
| 286| 286| 			disabledTechnologies: {},
| 287| 287| 			hasSharedDropsites: false,
| 288|    |-			hasSharedLos: false,
|    | 288|+			"hasSharedLos": false,
| 289| 289| 			spyCostMultiplier: 1,
| 290| 290| 			phase: "village",
| 291| 291| 			isAlly: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'spyCostMultiplier' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 286| 286| 			disabledTechnologies: {},
| 287| 287| 			hasSharedDropsites: false,
| 288| 288| 			hasSharedLos: false,
| 289|    |-			spyCostMultiplier: 1,
|    | 289|+			"spyCostMultiplier": 1,
| 290| 290| 			phase: "village",
| 291| 291| 			isAlly: [false, false],
| 292| 292| 			isMutualAlly: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'phase' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 287| 287| 			hasSharedDropsites: false,
| 288| 288| 			hasSharedLos: false,
| 289| 289| 			spyCostMultiplier: 1,
| 290|    |-			phase: "village",
|    | 290|+			"phase": "village",
| 291| 291| 			isAlly: [false, false],
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 288| 288| 			hasSharedLos: false,
| 289| 289| 			spyCostMultiplier: 1,
| 290| 290| 			phase: "village",
| 291|    |-			isAlly: [false, false],
|    | 291|+			"isAlly": [false, false],
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isMutualAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 289| 289| 			spyCostMultiplier: 1,
| 290| 290| 			phase: "village",
| 291| 291| 			isAlly: [false, false],
| 292|    |-			isMutualAlly: [false, false],
|    | 292|+			"isMutualAlly": [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isNeutral' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 290| 290| 			phase: "village",
| 291| 291| 			isAlly: [false, false],
| 292| 292| 			isMutualAlly: [false, false],
| 293|    |-			isNeutral: [false, false],
|    | 293|+			"isNeutral": [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isEnemy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 291| 291| 			isAlly: [false, false],
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294|    |-			isEnemy: [true, true],
|    | 294|+			"isEnemy": [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityLimits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295|    |-			entityLimits: {"Foo": 10},
|    | 295|+			"entityLimits": {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295|    |-			entityLimits: {"Foo": 10},
|    | 295|+			entityLimits: { "Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295|    |-			entityLimits: {"Foo": 10},
|    | 295|+			entityLimits: {"Foo": 10 },
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296|    |-			entityCounts: {"Foo": 5},
|    | 296|+			"entityCounts": {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296|    |-			entityCounts: {"Foo": 5},
|    | 296|+			entityCounts: { "Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296|    |-			entityCounts: {"Foo": 5},
|    | 296|+			entityCounts: {"Foo": 5 },
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityLimitChangers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297|    |-			entityLimitChangers: {"Foo": {}},
|    | 297|+			"entityLimitChangers": {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297|    |-			entityLimitChangers: {"Foo": {}},
|    | 297|+			entityLimitChangers: { "Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297|    |-			entityLimitChangers: {"Foo": {}},
|    | 297|+			entityLimitChangers: {"Foo": {} },
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'persistentEntityCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298|    |-			persistentEntityCounts: {"Bar": 0},
|    | 298|+			"persistentEntityCounts": {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298|    |-			persistentEntityCounts: {"Bar": 0},
|    | 298|+			persistentEntityCounts: { "Bar": 0},
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298|    |-			persistentEntityCounts: {"Bar": 0},
|    | 298|+			persistentEntityCounts: {"Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchQueued' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299|    |-			researchQueued: new Map(),
|    | 299|+			"researchQueued": new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
| 302| 302| 			classCounts: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchStarted' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
| 300|    |-			researchStarted: new Set(),
|    | 300|+			"researchStarted": new Set(),
| 301| 301| 			researchedTechs: new Set(),
| 302| 302| 			classCounts: {},
| 303| 303| 			typeCountsByClass: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchedTechs' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 298| 298| 			persistentEntityCounts: {"Bar": 0},
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301|    |-			researchedTechs: new Set(),
|    | 301|+			"researchedTechs": new Set(),
| 302| 302| 			classCounts: {},
| 303| 303| 			typeCountsByClass: {},
| 304| 304| 			canBarter: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'classCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
| 302|    |-			classCounts: {},
|    | 302|+			"classCounts": {},
| 303| 303| 			typeCountsByClass: {},
| 304| 304| 			canBarter: false,
| 305| 305| 			barterPrices: {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'typeCountsByClass' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
| 302| 302| 			classCounts: {},
| 303|    |-			typeCountsByClass: {},
|    | 303|+			"typeCountsByClass": {},
| 304| 304| 			canBarter: false,
| 305| 305| 			barterPrices: {
| 306| 306| 				"buy": { "food": 150 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'canBarter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 301| 301| 			researchedTechs: new Set(),
| 302| 302| 			classCounts: {},
| 303| 303| 			typeCountsByClass: {},
| 304|    |-			canBarter: false,
|    | 304|+			"canBarter": false,
| 305| 305| 			barterPrices: {
| 306| 306| 				"buy": { "food": 150 },
| 307| 307| 				"sell": { "food": 25 }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'barterPrices' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 302| 302| 			classCounts: {},
| 303| 303| 			typeCountsByClass: {},
| 304| 304| 			canBarter: false,
| 305|    |-			barterPrices: {
|    | 305|+			"barterPrices": {
| 306| 306| 				"buy": { "food": 150 },
| 307| 307| 				"sell": { "food": 25 }
| 308| 308| 			},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'statistics' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 306| 306| 				"buy": { "food": 150 },
| 307| 307| 				"sell": { "food": 25 }
| 308| 308| 			},
| 309|    |-			statistics: {
|    | 309|+			"statistics": {
| 310| 310| 				resourcesGathered: {
| 311| 311| 					food: 100,
| 312| 312| 					wood: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'resourcesGathered' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 307| 307| 				"sell": { "food": 25 }
| 308| 308| 			},
| 309| 309| 			statistics: {
| 310|    |-				resourcesGathered: {
|    | 310|+				"resourcesGathered": {
| 311| 311| 					food: 100,
| 312| 312| 					wood: 0,
| 313| 313| 					metal: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 308| 308| 			},
| 309| 309| 			statistics: {
| 310| 310| 				resourcesGathered: {
| 311|    |-					food: 100,
|    | 311|+					"food": 100,
| 312| 312| 					wood: 0,
| 313| 313| 					metal: 0,
| 314| 314| 					stone: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'wood' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 309| 309| 			statistics: {
| 310| 310| 				resourcesGathered: {
| 311| 311| 					food: 100,
| 312|    |-					wood: 0,
|    | 312|+					"wood": 0,
| 313| 313| 					metal: 0,
| 314| 314| 					stone: 0,
| 315| 315| 					vegetarianFood: 0
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'metal' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 310| 310| 				resourcesGathered: {
| 311| 311| 					food: 100,
| 312| 312| 					wood: 0,
| 313|    |-					metal: 0,
|    | 313|+					"metal": 0,
| 314| 314| 					stone: 0,
| 315| 315| 					vegetarianFood: 0
| 316| 316| 				},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'stone' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 311| 311| 					food: 100,
| 312| 312| 					wood: 0,
| 313| 313| 					metal: 0,
| 314|    |-					stone: 0,
|    | 314|+					"stone": 0,
| 315| 315| 					vegetarianFood: 0
| 316| 316| 				},
| 317| 317| 				percentMapExplored: 10
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'vegetarianFood' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 312| 312| 					wood: 0,
| 313| 313| 					metal: 0,
| 314| 314| 					stone: 0,
| 315|    |-					vegetarianFood: 0
|    | 315|+					"vegetarianFood": 0
| 316| 316| 				},
| 317| 317| 				percentMapExplored: 10
| 318| 318| 			}
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'percentMapExplored' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 314| 314| 					stone: 0,
| 315| 315| 					vegetarianFood: 0
| 316| 316| 				},
| 317|    |-				percentMapExplored: 10
|    | 317|+				"percentMapExplored": 10
| 318| 318| 			}
| 319| 319| 		},
| 320| 320| 		{
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'name' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 318| 318| 			}
| 319| 319| 		},
| 320| 320| 		{
| 321|    |-			name: "Player 2",
|    | 321|+			"name": "Player 2",
| 322| 322| 			civ: "mace",
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'civ' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 319| 319| 		},
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322|    |-			civ: "mace",
|    | 322|+			"civ": "mace",
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'color' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			"color": { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'r' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { "r":1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'r'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r: 1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'g' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, "g":0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'g'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g: 0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'b' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g:0, "b":0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'b'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g:0, b: 0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'a' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g:0, b:0, "a":1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'a'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g:0, b:0, a: 1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'controlsAll' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324|    |-			controlsAll: true,
|    | 324|+			"controlsAll": true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popCount' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 322| 322| 			civ: "mace",
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325|    |-			popCount: 40,
|    | 325|+			"popCount": 40,
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popLimit' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326|    |-			popLimit: 30,
|    | 326|+			"popLimit": 30,
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
| 329| 329| 			resourceCounts: { food: 200 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popMax' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
| 327|    |-			popMax: 300,
|    | 327|+			"popMax": 300,
| 328| 328| 			panelEntities: [],
| 329| 329| 			resourceCounts: { food: 200 },
| 330| 330| 			trainingBlocked: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'panelEntities' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
| 328|    |-			panelEntities: [],
|    | 328|+			"panelEntities": [],
| 329| 329| 			resourceCounts: { food: 200 },
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'resourceCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
| 329|    |-			resourceCounts: { food: 200 },
|    | 329|+			"resourceCounts": { food: 200 },
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
| 329|    |-			resourceCounts: { food: 200 },
|    | 329|+			resourceCounts: { "food": 200 },
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'trainingBlocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
| 329| 329| 			resourceCounts: { food: 200 },
| 330|    |-			trainingBlocked: false,
|    | 330|+			"trainingBlocked": false,
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
| 333| 333| 			teamsLocked: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'state' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 328| 328| 			panelEntities: [],
| 329| 329| 			resourceCounts: { food: 200 },
| 330| 330| 			trainingBlocked: false,
| 331|    |-			state: "active",
|    | 331|+			"state": "active",
| 332| 332| 			team: -1,
| 333| 333| 			teamsLocked: false,
| 334| 334| 			cheatsEnabled: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'team' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 329| 329| 			resourceCounts: { food: 200 },
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
| 332|    |-			team: -1,
|    | 332|+			"team": -1,
| 333| 333| 			teamsLocked: false,
| 334| 334| 			cheatsEnabled: false,
| 335| 335| 			disabledTemplates: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'teamsLocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
| 333|    |-			teamsLocked: false,
|    | 333|+			"teamsLocked": false,
| 334| 334| 			cheatsEnabled: false,
| 335| 335| 			disabledTemplates: {},
| 336| 336| 			disabledTechnologies: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'cheatsEnabled' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
| 333| 333| 			teamsLocked: false,
| 334|    |-			cheatsEnabled: false,
|    | 334|+			"cheatsEnabled": false,
| 335| 335| 			disabledTemplates: {},
| 336| 336| 			disabledTechnologies: {},
| 337| 337| 			hasSharedDropsites: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'disabledTemplates' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 332| 332| 			team: -1,
| 333| 333| 			teamsLocked: false,
| 334| 334| 			cheatsEnabled: false,
| 335|    |-			disabledTemplates: {},
|    | 335|+			"disabledTemplates": {},
| 336| 336| 			disabledTechnologies: {},
| 337| 337| 			hasSharedDropsites: false,
| 338| 338| 			hasSharedLos: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'disabledTechnologies' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 333| 333| 			teamsLocked: false,
| 334| 334| 			cheatsEnabled: false,
| 335| 335| 			disabledTemplates: {},
| 336|    |-			disabledTechnologies: {},
|    | 336|+			"disabledTechnologies": {},
| 337| 337| 			hasSharedDropsites: false,
| 338| 338| 			hasSharedLos: false,
| 339| 339| 			spyCostMultiplier: 1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'hasSharedDropsites' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 334| 334| 			cheatsEnabled: false,
| 335| 335| 			disabledTemplates: {},
| 336| 336| 			disabledTechnologies: {},
| 337|    |-			hasSharedDropsites: false,
|    | 337|+			"hasSharedDropsites": false,
| 338| 338| 			hasSharedLos: false,
| 339| 339| 			spyCostMultiplier: 1,
| 340| 340| 			phase: "village",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'hasSharedLos' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 335| 335| 			disabledTemplates: {},
| 336| 336| 			disabledTechnologies: {},
| 337| 337| 			hasSharedDropsites: false,
| 338|    |-			hasSharedLos: false,
|    | 338|+			"hasSharedLos": false,
| 339| 339| 			spyCostMultiplier: 1,
| 340| 340| 			phase: "village",
| 341| 341| 			isAlly: [true, true],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'spyCostMultiplier' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 336| 336| 			disabledTechnologies: {},
| 337| 337| 			hasSharedDropsites: false,
| 338| 338| 			hasSharedLos: false,
| 339|    |-			spyCostMultiplier: 1,
|    | 339|+			"spyCostMultiplier": 1,
| 340| 340| 			phase: "village",
| 341| 341| 			isAlly: [true, true],
| 342| 342| 			isMutualAlly: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'phase' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 337| 337| 			hasSharedDropsites: false,
| 338| 338| 			hasSharedLos: false,
| 339| 339| 			spyCostMultiplier: 1,
| 340|    |-			phase: "village",
|    | 340|+			"phase": "village",
| 341| 341| 			isAlly: [true, true],
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 338| 338| 			hasSharedLos: false,
| 339| 339| 			spyCostMultiplier: 1,
| 340| 340| 			phase: "village",
| 341|    |-			isAlly: [true, true],
|    | 341|+			"isAlly": [true, true],
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isMutualAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 339| 339| 			spyCostMultiplier: 1,
| 340| 340| 			phase: "village",
| 341| 341| 			isAlly: [true, true],
| 342|    |-			isMutualAlly: [false, false],
|    | 342|+			"isMutualAlly": [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isNeutral' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 340| 340| 			phase: "village",
| 341| 341| 			isAlly: [true, true],
| 342| 342| 			isMutualAlly: [false, false],
| 343|    |-			isNeutral: [false, false],
|    | 343|+			"isNeutral": [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isEnemy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 341| 341| 			isAlly: [true, true],
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344|    |-			isEnemy: [false, false],
|    | 344|+			"isEnemy": [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityLimits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345|    |-			entityLimits: {"Bar": 20},
|    | 345|+			"entityLimits": {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345|    |-			entityLimits: {"Bar": 20},
|    | 345|+			entityLimits: { "Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345|    |-			entityLimits: {"Bar": 20},
|    | 345|+			entityLimits: {"Bar": 20 },
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346|    |-			entityCounts: {"Bar": 0},
|    | 346|+			"entityCounts": {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346|    |-			entityCounts: {"Bar": 0},
|    | 346|+			entityCounts: { "Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346|    |-			entityCounts: {"Bar": 0},
|    | 346|+			entityCounts: {"Bar": 0 },
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityLimitChangers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347|    |-			entityLimitChangers: {"Bar": {}},
|    | 347|+			"entityLimitChangers": {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347|    |-			entityLimitChangers: {"Bar": {}},
|    | 347|+			entityLimitChangers: { "Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347|    |-			entityLimitChangers: {"Bar": {}},
|    | 347|+			entityLimitChangers: {"Bar": {} },
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'persistentEntityCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348|    |-			persistentEntityCounts: {"Foo": 0},
|    | 348|+			"persistentEntityCounts": {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348|    |-			persistentEntityCounts: {"Foo": 0},
|    | 348|+			persistentEntityCounts: { "Foo": 0},
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348|    |-			persistentEntityCounts: {"Foo": 0},
|    | 348|+			persistentEntityCounts: {"Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchQueued' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349|    |-			researchQueued: new Map(),
|    | 349|+			"researchQueued": new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
| 352| 352| 			classCounts: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchStarted' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
| 350|    |-			researchStarted: new Set(),
|    | 350|+			"researchStarted": new Set(),
| 351| 351| 			researchedTechs: new Set(),
| 352| 352| 			classCounts: {},
| 353| 353| 			typeCountsByClass: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchedTechs' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 348| 348| 			persistentEntityCounts: {"Foo": 0},
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351|    |-			researchedTechs: new Set(),
|    | 351|+			"researchedTechs": new Set(),
| 352| 352| 			classCounts: {},
| 353| 353| 			typeCountsByClass: {},
| 354| 354| 			canBarter: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'classCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
| 352|    |-			classCounts: {},
|    | 352|+			"classCounts": {},
| 353| 353| 			typeCountsByClass: {},
| 354| 354| 			canBarter: false,
| 355| 355| 			barterPrices: {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'typeCountsByClass' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
| 352| 352| 			classCounts: {},
| 353|    |-			typeCountsByClass: {},
|    | 353|+			"typeCountsByClass": {},
| 354| 354| 			canBarter: false,
| 355| 355| 			barterPrices: {
| 356| 356| 				"buy": { "food": 150 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'canBarter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 351| 351| 			researchedTechs: new Set(),
| 352| 352| 			classCounts: {},
| 353| 353| 			typeCountsByClass: {},
| 354|    |-			canBarter: false,
|    | 354|+			"canBarter": false,
| 355| 355| 			barterPrices: {
| 356| 356| 				"buy": { "food": 150 },
| 357| 357| 				"sell": { "food": 25 }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'barterPrices' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 352| 352| 			classCounts: {},
| 353| 353| 			typeCountsByClass: {},
| 354| 354| 			canBarter: false,
| 355|    |-			barterPrices: {
|    | 355|+			"barterPrices": {
| 356| 356| 				"buy": { "food": 150 },
| 357| 357| 				"sell": { "food": 25 }
| 358| 358| 			},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'statistics' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 356| 356| 				"buy": { "food": 150 },
| 357| 357| 				"sell": { "food": 25 }
| 358| 358| 			},
| 359|    |-			statistics: {
|    | 359|+			"statistics": {
| 360| 360| 				resourcesGathered: {
| 361| 361| 					food: 100,
| 362| 362| 					wood: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'resourcesGathered' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 357| 357| 				"sell": { "food": 25 }
| 358| 358| 			},
| 359| 359| 			statistics: {
| 360|    |-				resourcesGathered: {
|    | 360|+				"resourcesGathered": {
| 361| 361| 					food: 100,
| 362| 362| 					wood: 0,
| 363| 363| 					metal: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 358| 358| 			},
| 359| 359| 			statistics: {
| 360| 360| 				resourcesGathered: {
| 361|    |-					food: 100,
|    | 361|+					"food": 100,
| 362| 362| 					wood: 0,
| 363| 363| 					metal: 0,
| 364| 364| 					stone: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'wood' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 359| 359| 			statistics: {
| 360| 360| 				resourcesGathered: {
| 361| 361| 					food: 100,
| 362|    |-					wood: 0,
|    | 362|+					"wood": 0,
| 363| 363| 					metal: 0,
| 364| 364| 					stone: 0,
| 365| 365| 					vegetarianFood: 0
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'metal' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 360| 360| 				resourcesGathered: {
| 361| 361| 					food: 100,
| 362| 362| 					wood: 0,
| 363|    |-					metal: 0,
|    | 363|+					"metal": 0,
| 364| 364| 					stone: 0,
| 365| 365| 					vegetarianFood: 0
| 366| 366| 				},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'stone' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 361| 361| 					food: 100,
| 362| 362| 					wood: 0,
| 363| 363| 					metal: 0,
| 364|    |-					stone: 0,
|    | 364|+					"stone": 0,
| 365| 365| 					vegetarianFood: 0
| 366| 366| 				},
| 367| 367| 				percentMapExplored: 10
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'vegetarianFood' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 362| 362| 					wood: 0,
| 363| 363| 					metal: 0,
| 364| 364| 					stone: 0,
| 365|    |-					vegetarianFood: 0
|    | 365|+					"vegetarianFood": 0
| 366| 366| 				},
| 367| 367| 				percentMapExplored: 10
| 368| 368| 			}
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'percentMapExplored' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 364| 364| 					stone: 0,
| 365| 365| 					vegetarianFood: 0
| 366| 366| 				},
| 367|    |-				percentMapExplored: 10
|    | 367|+				"percentMapExplored": 10
| 368| 368| 			}
| 369| 369| 		}
| 370| 370| 	],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'circularMap' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 368| 368| 			}
| 369| 369| 		}
| 370| 370| 	],
| 371|    |-	circularMap: false,
|    | 371|+	"circularMap": false,
| 372| 372| 	timeElapsed: 0,
| 373| 373| 	"victoryConditions": ["conquest", "wonder"],
| 374| 374| 	alliedVictory: false
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'timeElapsed' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 369| 369| 		}
| 370| 370| 	],
| 371| 371| 	circularMap: false,
| 372|    |-	timeElapsed: 0,
|    | 372|+	"timeElapsed": 0,
| 373| 373| 	"victoryConditions": ["conquest", "wonder"],
| 374| 374| 	alliedVictory: false
| 375| 375| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'alliedVictory' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 371| 371| 	circularMap: false,
| 372| 372| 	timeElapsed: 0,
| 373| 373| 	"victoryConditions": ["conquest", "wonder"],
| 374|    |-	alliedVictory: false
|    | 374|+	"alliedVictory": false
| 375| 375| });
| 376| 376| 
| 377| 377| TS_ASSERT_UNEVAL_EQUALS(cmp.GetExtendedSimulationState(), {
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'r'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 379| 379| 		{
| 380| 380| 			"name": "Player 1",
| 381| 381| 			"civ": "gaia",
| 382|    |-			"color": { "r":1, "g":1, "b":1, "a":1 },
|    | 382|+			"color": { "r": 1, "g":1, "b":1, "a":1 },
| 383| 383| 			"controlsAll": false,
| 384| 384| 			"popCount": 10,
| 385| 385| 			"popLimit": 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'g'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 379| 379| 		{
| 380| 380| 			"name": "Player 1",
| 381| 381| 			"civ": "gaia",
| 382|    |-			"color": { "r":1, "g":1, "b":1, "a":1 },
|    | 382|+			"color": { "r":1, "g": 1, "b":1, "a":1 },
| 383| 383| 			"controlsAll": false,
| 384| 384| 			"popCount": 10,
| 385| 385| 			"popLimit": 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'b'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 379| 379| 		{
| 380| 380| 			"name": "Player 1",
| 381| 381| 			"civ": "gaia",
| 382|    |-			"color": { "r":1, "g":1, "b":1, "a":1 },
|    | 382|+			"color": { "r":1, "g":1, "b": 1, "a":1 },
| 383| 383| 			"controlsAll": false,
| 384| 384| 			"popCount": 10,
| 385| 385| 			"popLimit": 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'a'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 379| 379| 		{
| 380| 380| 			"name": "Player 1",
| 381| 381| 			"civ": "gaia",
| 382|    |-			"color": { "r":1, "g":1, "b":1, "a":1 },
|    | 382|+			"color": { "r":1, "g":1, "b":1, "a": 1 },
| 383| 383| 			"controlsAll": false,
| 384| 384| 			"popCount": 10,
| 385| 385| 			"popLimit": 20,
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 401| 401| 			"isMutualAlly": [false, false],
| 402| 402| 			"isNeutral": [false, false],
| 403| 403| 			"isEnemy": [true, true],
| 404|    |-			"entityLimits": {"Foo": 10},
|    | 404|+			"entityLimits": { "Foo": 10},
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407| 407| 			"persistentEntityCounts": {"Bar": 0},
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 401| 401| 			"isMutualAlly": [false, false],
| 402| 402| 			"isNeutral": [false, false],
| 403| 403| 			"isEnemy": [true, true],
| 404|    |-			"entityLimits": {"Foo": 10},
|    | 404|+			"entityLimits": {"Foo": 10 },
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407| 407| 			"persistentEntityCounts": {"Bar": 0},
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 402| 402| 			"isNeutral": [false, false],
| 403| 403| 			"isEnemy": [true, true],
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405|    |-			"entityCounts": {"Foo": 5},
|    | 405|+			"entityCounts": { "Foo": 5},
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407| 407| 			"persistentEntityCounts": {"Bar": 0},
| 408| 408| 			"researchQueued": new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 402| 402| 			"isNeutral": [false, false],
| 403| 403| 			"isEnemy": [true, true],
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405|    |-			"entityCounts": {"Foo": 5},
|    | 405|+			"entityCounts": {"Foo": 5 },
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407| 407| 			"persistentEntityCounts": {"Bar": 0},
| 408| 408| 			"researchQueued": new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 403| 403| 			"isEnemy": [true, true],
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406|    |-			"entityLimitChangers": {"Foo": {}},
|    | 406|+			"entityLimitChangers": { "Foo": {}},
| 407| 407| 			"persistentEntityCounts": {"Bar": 0},
| 408| 408| 			"researchQueued": new Map(),
| 409| 409| 			"researchStarted": new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 403| 403| 			"isEnemy": [true, true],
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406|    |-			"entityLimitChangers": {"Foo": {}},
|    | 406|+			"entityLimitChangers": {"Foo": {} },
| 407| 407| 			"persistentEntityCounts": {"Bar": 0},
| 408| 408| 			"researchQueued": new Map(),
| 409| 409| 			"researchStarted": new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407|    |-			"persistentEntityCounts": {"Bar": 0},
|    | 407|+			"persistentEntityCounts": { "Bar": 0},
| 408| 408| 			"researchQueued": new Map(),
| 409| 409| 			"researchStarted": new Set(),
| 410| 410| 			"researchedTechs": new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407|    |-			"persistentEntityCounts": {"Bar": 0},
|    | 407|+			"persistentEntityCounts": {"Bar": 0 },
| 408| 408| 			"researchQueued": new Map(),
| 409| 409| 			"researchStarted": new Set(),
| 410| 410| 			"researchedTechs": new Set(),
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'r'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 452| 452| 		{
| 453| 453| 			"name": "Player 2",
| 454| 454| 			"civ": "mace",
| 455|    |-			"color": { "r":1, "g":0, "b":0, "a":1 },
|    | 455|+			"color": { "r": 1, "g":0, "b":0, "a":1 },
| 456| 456| 			"controlsAll": true,
| 457| 457| 			"popCount": 40,
| 458| 458| 			"popLimit": 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'g'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 452| 452| 		{
| 453| 453| 			"name": "Player 2",
| 454| 454| 			"civ": "mace",
| 455|    |-			"color": { "r":1, "g":0, "b":0, "a":1 },
|    | 455|+			"color": { "r":1, "g": 0, "b":0, "a":1 },
| 456| 456| 			"controlsAll": true,
| 457| 457| 			"popCount": 40,
| 458| 458| 			"popLimit": 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'b'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 452| 452| 		{
| 453| 453| 			"name": "Player 2",
| 454| 454| 			"civ": "mace",
| 455|    |-			"color": { "r":1, "g":0, "b":0, "a":1 },
|    | 455|+			"color": { "r":1, "g":0, "b": 0, "a":1 },
| 456| 456| 			"controlsAll": true,
| 457| 457| 			"popCount": 40,
| 458| 458| 			"popLimit": 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'a'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 452| 452| 		{
| 453| 453| 			"name": "Player 2",
| 454| 454| 			"civ": "mace",
| 455|    |-			"color": { "r":1, "g":0, "b":0, "a":1 },
|    | 455|+			"color": { "r":1, "g":0, "b":0, "a": 1 },
| 456| 456| 			"controlsAll": true,
| 457| 457| 			"popCount": 40,
| 458| 458| 			"popLimit": 30,
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 474| 474| 			"isMutualAlly": [false, false],
| 475| 475| 			"isNeutral": [false, false],
| 476| 476| 			"isEnemy": [false, false],
| 477|    |-			"entityLimits": {"Bar": 20},
|    | 477|+			"entityLimits": { "Bar": 20},
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480| 480| 			"persistentEntityCounts": {"Foo": 0},
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 474| 474| 			"isMutualAlly": [false, false],
| 475| 475| 			"isNeutral": [false, false],
| 476| 476| 			"isEnemy": [false, false],
| 477|    |-			"entityLimits": {"Bar": 20},
|    | 477|+			"entityLimits": {"Bar": 20 },
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480| 480| 			"persistentEntityCounts": {"Foo": 0},
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 475| 475| 			"isNeutral": [false, false],
| 476| 476| 			"isEnemy": [false, false],
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478|    |-			"entityCounts": {"Bar": 0},
|    | 478|+			"entityCounts": { "Bar": 0},
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480| 480| 			"persistentEntityCounts": {"Foo": 0},
| 481| 481| 			"researchQueued": new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 475| 475| 			"isNeutral": [false, false],
| 476| 476| 			"isEnemy": [false, false],
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478|    |-			"entityCounts": {"Bar": 0},
|    | 478|+			"entityCounts": {"Bar": 0 },
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480| 480| 			"persistentEntityCounts": {"Foo": 0},
| 481| 481| 			"researchQueued": new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 476| 476| 			"isEnemy": [false, false],
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479|    |-			"entityLimitChangers": {"Bar": {}},
|    | 479|+			"entityLimitChangers": { "Bar": {}},
| 480| 480| 			"persistentEntityCounts": {"Foo": 0},
| 481| 481| 			"researchQueued": new Map(),
| 482| 482| 			"researchStarted": new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 476| 476| 			"isEnemy": [false, false],
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479|    |-			"entityLimitChangers": {"Bar": {}},
|    | 479|+			"entityLimitChangers": {"Bar": {} },
| 480| 480| 			"persistentEntityCounts": {"Foo": 0},
| 481| 481| 			"researchQueued": new Map(),
| 482| 482| 			"researchStarted": new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480|    |-			"persistentEntityCounts": {"Foo": 0},
|    | 480|+			"persistentEntityCounts": { "Foo": 0},
| 481| 481| 			"researchQueued": new Map(),
| 482| 482| 			"researchStarted": new Set(),
| 483| 483| 			"researchedTechs": new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480|    |-			"persistentEntityCounts": {"Foo": 0},
|    | 480|+			"persistentEntityCounts": {"Foo": 0 },
| 481| 481| 			"researchQueued": new Map(),
| 482| 482| 			"researchStarted": new Set(),
| 483| 483| 			"researchedTechs": new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetEntitiesList' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 531| 531| 
| 532| 532| 
| 533| 533| AddMock(10, IID_Builder, {
| 534|    |-	GetEntitiesList: function() {
|    | 534|+	"GetEntitiesList": function() {
| 535| 535| 		return ["test1", "test2"];
| 536| 536| 	},
| 537| 537| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetHitpoints' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 537| 537| });
| 538| 538| 
| 539| 539| AddMock(10, IID_Health, {
| 540|    |-	GetHitpoints: function() { return 50; },
|    | 540|+	"GetHitpoints": function() { return 50; },
| 541| 541| 	GetMaxHitpoints: function() { return 60; },
| 542| 542| 	IsRepairable: function() { return false; },
| 543| 543| 	IsUnhealable: function() { return false; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetMaxHitpoints' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 538| 538| 
| 539| 539| AddMock(10, IID_Health, {
| 540| 540| 	GetHitpoints: function() { return 50; },
| 541|    |-	GetMaxHitpoints: function() { return 60; },
|    | 541|+	"GetMaxHitpoints": function() { return 60; },
| 542| 542| 	IsRepairable: function() { return false; },
| 543| 543| 	IsUnhealable: function() { return false; }
| 544| 544| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsRepairable' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 539| 539| AddMock(10, IID_Health, {
| 540| 540| 	GetHitpoints: function() { return 50; },
| 541| 541| 	GetMaxHitpoints: function() { return 60; },
| 542|    |-	IsRepairable: function() { return false; },
|    | 542|+	"IsRepairable": function() { return false; },
| 543| 543| 	IsUnhealable: function() { return false; }
| 544| 544| });
| 545| 545| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsUnhealable' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 540| 540| 	GetHitpoints: function() { return 50; },
| 541| 541| 	GetMaxHitpoints: function() { return 60; },
| 542| 542| 	IsRepairable: function() { return false; },
| 543|    |-	IsUnhealable: function() { return false; }
|    | 543|+	"IsUnhealable": function() { return false; }
| 544| 544| });
| 545| 545| 
| 546| 546| AddMock(10, IID_Identity, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetClassesList' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 544| 544| });
| 545| 545| 
| 546| 546| AddMock(10, IID_Identity, {
| 547|    |-	GetClassesList: function() { return ["class1", "class2"]; },
|    | 547|+	"GetClassesList": function() { return ["class1", "class2"]; },
| 548| 548| 	GetVisibleClassesList: function() { return ["class3", "class4"]; },
| 549| 549| 	GetRank: function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetVisibleClassesList' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 545| 545| 
| 546| 546| AddMock(10, IID_Identity, {
| 547| 547| 	GetClassesList: function() { return ["class1", "class2"]; },
| 548|    |-	GetVisibleClassesList: function() { return ["class3", "class4"]; },
|    | 548|+	"GetVisibleClassesList": function() { return ["class3", "class4"]; },
| 549| 549| 	GetRank: function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
| 551| 551| 	HasClass: function() { return true; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetRank' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 546| 546| AddMock(10, IID_Identity, {
| 547| 547| 	GetClassesList: function() { return ["class1", "class2"]; },
| 548| 548| 	GetVisibleClassesList: function() { return ["class3", "class4"]; },
| 549|    |-	GetRank: function() { return "foo"; },
|    | 549|+	"GetRank": function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
| 551| 551| 	HasClass: function() { return true; },
| 552| 552| 	IsUndeletable: function() { return false; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSelectionGroupName' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 547| 547| 	GetClassesList: function() { return ["class1", "class2"]; },
| 548| 548| 	GetVisibleClassesList: function() { return ["class3", "class4"]; },
| 549| 549| 	GetRank: function() { return "foo"; },
| 550|    |-	GetSelectionGroupName: function() { return "Selection Group Name"; },
|    | 550|+	"GetSelectionGroupName": function() { return "Selection Group Name"; },
| 551| 551| 	HasClass: function() { return true; },
| 552| 552| 	IsUndeletable: function() { return false; }
| 553| 553| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasClass' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 548| 548| 	GetVisibleClassesList: function() { return ["class3", "class4"]; },
| 549| 549| 	GetRank: function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
| 551|    |-	HasClass: function() { return true; },
|    | 551|+	"HasClass": function() { return true; },
| 552| 552| 	IsUndeletable: function() { return false; }
| 553| 553| });
| 554| 554| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsUndeletable' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 549| 549| 	GetRank: function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
| 551| 551| 	HasClass: function() { return true; },
| 552|    |-	IsUndeletable: function() { return false; }
|    | 552|+	"IsUndeletable": function() { return false; }
| 553| 553| });
| 554| 554| 
| 555| 555| AddMock(10, IID_Position, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTurretParent' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 553| 553| });
| 554| 554| 
| 555| 555| AddMock(10, IID_Position, {
| 556|    |-	GetTurretParent: function() {return INVALID_ENTITY;},
|    | 556|+	"GetTurretParent": function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558| 558| 		return {x:1, y:2, z:3};
| 559| 559| 	},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPosition' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 554| 554| 
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557|    |-	GetPosition: function() {
|    | 557|+	"GetPosition": function() {
| 558| 558| 		return {x:1, y:2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return { x:1, y:2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'x' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {"x":1, y:2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'x'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x: 1, y:2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'y' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, "y":2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'y'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, y: 2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'z' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, y:2, "z":3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'z'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, y:2, z: 3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, y:2, z:3 };
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsInWorld' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 557| 557| 	GetPosition: function() {
| 558| 558| 		return {x:1, y:2, z:3};
| 559| 559| 	},
| 560|    |-	IsInWorld: function() {
|    | 560|+	"IsInWorld": function() {
| 561| 561| 		return true;
| 562| 562| 	}
| 563| 563| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": { x:1, y:2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'x' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {"x":1, y:2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'x'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x: 1, y:2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'y' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, "y":2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'y'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, y: 2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'z' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, y:2, "z":3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'z'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, y:2, z: 3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, y:2, z:3 },
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'isBarterMarket'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 589| 589| 	"builder": true,
| 590| 590| 	"canGarrison": false,
| 591| 591| 	"visibility": "visible",
| 592|    |-	"isBarterMarket":true,
|    | 592|+	"isBarterMarket": true,
| 593| 593| 	"resourceTrickle": {
| 594| 594| 		"interval": 1250,
| 595| 595| 		"rates": { "food": 2, "wood": 3, "stone": 5, "metal": 9 }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 219| 219| 		result.message = markForTranslation("%(name)s cannot be built in %(territoryType)s territory. Valid territories: %(validTerritories)s");
| 220| 220| 		result.translateParameters.push("territoryType");
| 221| 221| 		result.translateParameters.push("validTerritories");
| 222|    |-		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory};
|    | 222|+		result.parameters.territoryType = { "context": "Territory type", "message": invalidTerritory};
| 223| 223| 		// gui code will join this array to a string
| 224| 224| 		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories()};
| 225| 225| 		return result;	// Fail
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 219| 219| 		result.message = markForTranslation("%(name)s cannot be built in %(territoryType)s territory. Valid territories: %(validTerritories)s");
| 220| 220| 		result.translateParameters.push("territoryType");
| 221| 221| 		result.translateParameters.push("validTerritories");
| 222|    |-		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory};
|    | 222|+		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory };
| 223| 223| 		// gui code will join this array to a string
| 224| 224| 		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories()};
| 225| 225| 		return result;	// Fail
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 221| 221| 		result.translateParameters.push("validTerritories");
| 222| 222| 		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory};
| 223| 223| 		// gui code will join this array to a string
| 224|    |-		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories()};
|    | 224|+		result.parameters.validTerritories = { "context": "Territory type list", "list": this.GetTerritories()};
| 225| 225| 		return result;	// Fail
| 226| 226| 	}
| 227| 227| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 221| 221| 		result.translateParameters.push("validTerritories");
| 222| 222| 		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory};
| 223| 223| 		// gui code will join this array to a string
| 224|    |-		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories()};
|    | 224|+		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories() };
| 225| 225| 		return result;	// Fail
| 226| 226| 	}
| 227| 227| 

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 154| »   »   switch·(ret)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 252| »   »   »   var·cmpIdentity·=·Engine.QueryInterface(id,·IID_Identity);
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'cmpIdentity' is already declared in the upper scope.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 261| »   »   »   »   let·result·=·markForPluralTranslation(
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'result' is already declared in the upper scope.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 282| »   »   »   »   let·result·=·markForPluralTranslation(
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'result' is already declared in the upper scope.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 149| »   »   var·ret·=·cmpObstruction.CheckFoundation(passClassName,·false);
|    | [NORMAL] JSHintBear:
|    | 'ret' is already defined.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 172| »   var·cmpPlayer·=·QueryOwnerInterface(this.entity,·IID_Player);
|    | [NORMAL] JSHintBear:
|    | 'cmpPlayer' is already defined.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 246| »   »   var·cmpRangeManager·=·Engine.QueryInterface(SYSTEM_ENTITY,·IID_RangeManager);
|    | [NORMAL] JSHintBear:
|    | 'cmpRangeManager' is already defined.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 247| »   »   var·cmpPlayer·=·QueryOwnerInterface(this.entity,·IID_Player);
|    | [NORMAL] JSHintBear:
|    | 'cmpPlayer' is already defined.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 152| »   if·(ret·!=·"success")
|    | [NORMAL] JSHintBear:
|    | 'ret' used out of scope.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 154| »   »   switch·(ret)
|    | [NORMAL] JSHintBear:
|    | 'ret' used out of scope.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 771| »   »   »   let·template·=·TechnologyTemplates.Get(item.technologyTemplate);
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'template' is already declared in the upper scope.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 190| »   for·(var·i·in·techList)
|    | [NORMAL] JSHintBear:
|    | 'i' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 192| »   »   var·tech·=·techList[i];
|    | [NORMAL] JSHintBear:
|    | 'tech' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 202| »   for·(var·i·=·0;·i·<·techList.length;·i++)
|    | [NORMAL] JSHintBear:
|    | 'i' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 204| »   »   var·tech·=·techList[i];
|    | [NORMAL] JSHintBear:
|    | 'tech' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 757| »   »   »   »   »   var·cmpPlayer·=·QueryOwnerInterface(this.entity);
|    | [NORMAL] JSHintBear:
|    | 'cmpPlayer' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 768| »   »   »   var·cmpTechnologyManager·=·QueryOwnerInterface(this.entity,·IID_TechnologyManager);
|    | [NORMAL] JSHintBear:
|    | 'cmpTechnologyManager' is already defined.
|    | [NORMAL] ESLintBear (space-unary-ops):
|    | Unary word operator 'typeof' must be followed by whitespace.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 329| 329| 	}
| 330| 330| 
| 331| 331| 	var wallPlacementInfo = updateBuildingPlacementPreview(); // entities making up the wall (wall segments, towers, ...)
| 332|    |-	if (!(wallPlacementInfo === false || typeof(wallPlacementInfo) === "object"))
|    | 332|+	if (!(wallPlacementInfo === false || typeof (wallPlacementInfo) === "object"))
| 333| 333| 	{
| 334| 334| 		error("Invalid updateBuildingPlacementPreview return value: " + uneval(wallPlacementInfo));
| 335| 335| 		return false;
|    | [NORMAL] ESLintBear (operator-linebreak):
|    | '&&' should be placed at the end of the line.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 479| 479| 	mouseIsOverObject = (hoveredObject != null);
| 480| 480| 
| 481| 481| 	// Close the menu when interacting with the game world
| 482|    |-	if (!mouseIsOverObject && (ev.type =="mousebuttonup" || ev.type == "mousebuttondown")
| 483|    |-		&& (ev.button == SDL_BUTTON_LEFT || ev.button == SDL_BUTTON_RIGHT))
|    | 482|+	if (!mouseIsOverObject && (ev.type =="mousebuttonup" || ev.type == "mousebuttondown") &&
|    | 483|+		(ev.button == SDL_BUTTON_LEFT || ev.button == SDL_BUTTON_RIGHT))
| 484| 484| 		g_Menu.close();
| 485| 485| 
| 486| 486| 	// State-machine processing:
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 2 tabs but found 3.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 640| 640| 		// user to continue building walls.
| 641| 641| 		switch (ev.type)
| 642| 642| 		{
| 643|    |-			case "mousemotion":
|    | 643|+		case "mousemotion":
| 644| 644| 				placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
| 645| 645| 
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 641| 641| 		switch (ev.type)
| 642| 642| 		{
| 643| 643| 			case "mousemotion":
| 644|    |-				placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
|    | 644|+			placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
| 645| 645| 
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647| 647| 				// the ending point and the starting point to snap to.
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 643| 643| 			case "mousemotion":
| 644| 644| 				placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
| 645| 645| 
| 646|    |-				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
|    | 646|+			// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647| 647| 				// the ending point and the starting point to snap to.
| 648| 648| 				//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 644| 644| 				placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
| 645| 645| 
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647|    |-				// the ending point and the starting point to snap to.
|    | 647|+			// the ending point and the starting point to snap to.
| 648| 648| 				//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 645| 645| 
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647| 647| 				// the ending point and the starting point to snap to.
| 648|    |-				//
|    | 648|+			//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647| 647| 				// the ending point and the starting point to snap to.
| 648| 648| 				//
| 649|    |-				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
|    | 649|+			// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 647| 647| 				// the ending point and the starting point to snap to.
| 648| 648| 				//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650|    |-				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
|    | 650|+			// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 648| 648| 				//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651|    |-				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
|    | 651|+			// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654| 654| 				// points.
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652|    |-				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
|    | 652|+			// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654| 654| 				// points.
| 655| 655| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653|    |-				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
|    | 653|+			// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654| 654| 				// points.
| 655| 655| 
| 656| 656| 				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654|    |-				// points.
|    | 654|+			// points.
| 655| 655| 
| 656| 656| 				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
| 657| 657| 				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654| 654| 				// points.
| 655| 655| 
| 656|    |-				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
|    | 656|+			placementSupport.wallSnapEntitiesIncludeOffscreen = true;
| 657| 657| 				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
| 658| 658| 
| 659| 659| 				if (result && result.cost)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 654| 654| 				// points.
| 655| 655| 
| 656| 656| 				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
| 657|    |-				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
|    | 657|+			var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
| 658| 658| 
| 659| 659| 				if (result && result.cost)
| 660| 660| 				{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 656| 656| 				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
| 657| 657| 				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
| 658| 658| 
| 659|    |-				if (result && result.cost)
|    | 659|+			if (result && result.cost)
| 660| 660| 				{
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 657| 657| 				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
| 658| 658| 
| 659| 659| 				if (result && result.cost)
| 660|    |-				{
|    | 660|+			{
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 658| 658| 
| 659| 659| 				if (result && result.cost)
| 660| 660| 				{
| 661|    |-					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
|    | 661|+				var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 659| 659| 				if (result && result.cost)
| 660| 660| 				{
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662|    |-					placementSupport.tooltipMessage = [
|    | 662|+				placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
| 665| 665| 					].filter(tip => tip).join("\n");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 660| 660| 				{
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
| 663|    |-						getEntityCostTooltip(result),
|    | 663|+					getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
| 665| 665| 					].filter(tip => tip).join("\n");
| 666| 666| 				}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
| 664|    |-						getNeededResourcesTooltip(neededResources)
|    | 664|+					getNeededResourcesTooltip(neededResources)
| 665| 665| 					].filter(tip => tip).join("\n");
| 666| 666| 				}
| 667| 667| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 662| 662| 					placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
| 665|    |-					].filter(tip => tip).join("\n");
|    | 665|+				].filter(tip => tip).join("\n");
| 666| 666| 				}
| 667| 667| 
| 668| 668| 				break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 663| 663| 						getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
| 665| 665| 					].filter(tip => tip).join("\n");
| 666|    |-				}
|    | 666|+			}
| 667| 667| 
| 668| 668| 				break;
| 669| 669| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 665| 665| 					].filter(tip => tip).join("\n");
| 666| 666| 				}
| 667| 667| 
| 668|    |-				break;
|    | 668|+			break;
| 669| 669| 
| 670| 670| 			case "mousebuttondown":
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 2 tabs but found 3.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 667| 667| 
| 668| 668| 				break;
| 669| 669| 
| 670|    |-			case "mousebuttondown":
|    | 670|+		case "mousebuttondown":
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
| 672| 672| 				{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 668| 668| 				break;
| 669| 669| 
| 670| 670| 			case "mousebuttondown":
| 671|    |-				if (ev.button == SDL_BUTTON_LEFT)
|    | 671|+			if (ev.button == SDL_BUTTON_LEFT)
| 672| 672| 				{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 669| 669| 
| 670| 670| 			case "mousebuttondown":
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
| 672|    |-				{
|    | 672|+			{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
| 675| 675| 					{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 670| 670| 			case "mousebuttondown":
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
| 672| 672| 				{
| 673|    |-					var queued = Engine.HotkeyIsPressed("session.queue");
|    | 673|+				var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
| 675| 675| 					{
| 676| 676| 						if (queued)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
| 672| 672| 				{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674|    |-					if (tryPlaceWall(queued))
|    | 674|+				if (tryPlaceWall(queued))
| 675| 675| 					{
| 676| 676| 						if (queued)
| 677| 677| 						{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 672| 672| 				{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
| 675|    |-					{
|    | 675|+				{
| 676| 676| 						if (queued)
| 677| 677| 						{
| 678| 678| 							// continue building, just set a new starting position where we left off
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
| 675| 675| 					{
| 676|    |-						if (queued)
|    | 676|+					if (queued)
| 677| 677| 						{
| 678| 678| 							// continue building, just set a new starting position where we left off
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 674| 674| 					if (tryPlaceWall(queued))
| 675| 675| 					{
| 676| 676| 						if (queued)
| 677|    |-						{
|    | 677|+					{
| 678| 678| 							// continue building, just set a new starting position where we left off
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
| 680| 680| 							placementSupport.wallEndPosition = undefined;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 675| 675| 					{
| 676| 676| 						if (queued)
| 677| 677| 						{
| 678|    |-							// continue building, just set a new starting position where we left off
|    | 678|+						// continue building, just set a new starting position where we left off
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
| 680| 680| 							placementSupport.wallEndPosition = undefined;
| 681| 681| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 676| 676| 						if (queued)
| 677| 677| 						{
| 678| 678| 							// continue building, just set a new starting position where we left off
| 679|    |-							placementSupport.position = placementSupport.wallEndPosition;
|    | 679|+						placementSupport.position = placementSupport.wallEndPosition;
| 680| 680| 							placementSupport.wallEndPosition = undefined;
| 681| 681| 
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 677| 677| 						{
| 678| 678| 							// continue building, just set a new starting position where we left off
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
| 680|    |-							placementSupport.wallEndPosition = undefined;
|    | 680|+						placementSupport.wallEndPosition = undefined;
| 681| 681| 
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
| 683| 683| 						}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
| 680| 680| 							placementSupport.wallEndPosition = undefined;
| 681| 681| 
| 682|    |-							inputState = INPUT_BUILDING_WALL_CLICK;
|    | 682|+						inputState = INPUT_BUILDING_WALL_CLICK;
| 683| 683| 						}
| 684| 684| 						else
| 685| 685| 						{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 680| 680| 							placementSupport.wallEndPosition = undefined;
| 681| 681| 
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
| 683|    |-						}
|    | 683|+					}
| 684| 684| 						else
| 685| 685| 						{
| 686| 686| 							placementSupport.Reset();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 681| 681| 
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
| 683| 683| 						}
| 684|    |-						else
|    | 684|+					else
| 685| 685| 						{
| 686| 686| 							placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
| 683| 683| 						}
| 684| 684| 						else
| 685|    |-						{
|    | 685|+					{
| 686| 686| 							placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
| 688| 688| 						}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 683| 683| 						}
| 684| 684| 						else
| 685| 685| 						{
| 686|    |-							placementSupport.Reset();
|    | 686|+						placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
| 688| 688| 						}
| 689| 689| 					}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 684| 684| 						else
| 685| 685| 						{
| 686| 686| 							placementSupport.Reset();
| 687|    |-							inputState = INPUT_NORMAL;
|    | 687|+						inputState = INPUT_NORMAL;
| 688| 688| 						}
| 689| 689| 					}
| 690| 690| 					else
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 685| 685| 						{
| 686| 686| 							placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
| 688|    |-						}
|    | 688|+					}
| 689| 689| 					}
| 690| 690| 					else
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 686| 686| 							placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
| 688| 688| 						}
| 689|    |-					}
|    | 689|+				}
| 690| 690| 					else
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 687| 687| 							inputState = INPUT_NORMAL;
| 688| 688| 						}
| 689| 689| 					}
| 690|    |-					else
|    | 690|+				else
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
| 693| 693| 					updateBuildingPlacementPreview();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 688| 688| 						}
| 689| 689| 					}
| 690| 690| 					else
| 691|    |-						placementSupport.tooltipMessage = translate("Cannot build wall here!");
|    | 691|+					placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
| 693| 693| 					updateBuildingPlacementPreview();
| 694| 694| 					return true;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 690| 690| 					else
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
| 693|    |-					updateBuildingPlacementPreview();
|    | 693|+				updateBuildingPlacementPreview();
| 694| 694| 					return true;
| 695| 695| 				}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
| 693| 693| 					updateBuildingPlacementPreview();
| 694|    |-					return true;
|    | 694|+				return true;
| 695| 695| 				}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 692| 692| 
| 693| 693| 					updateBuildingPlacementPreview();
| 694| 694| 					return true;
| 695|    |-				}
|    | 695|+			}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
| 698| 698| 					// reset to normal input mode
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 693| 693| 					updateBuildingPlacementPreview();
| 694| 694| 					return true;
| 695| 695| 				}
| 696|    |-				else if (ev.button == SDL_BUTTON_RIGHT)
|    | 696|+			else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
| 698| 698| 					// reset to normal input mode
| 699| 699| 					placementSupport.Reset();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 694| 694| 					return true;
| 695| 695| 				}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697|    |-				{
|    | 697|+			{
| 698| 698| 					// reset to normal input mode
| 699| 699| 					placementSupport.Reset();
| 700| 700| 					updateBuildingPlacementPreview();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 695| 695| 				}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
| 698|    |-					// reset to normal input mode
|    | 698|+				// reset to normal input mode
| 699| 699| 					placementSupport.Reset();
| 700| 700| 					updateBuildingPlacementPreview();
| 701| 701| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
| 698| 698| 					// reset to normal input mode
| 699|    |-					placementSupport.Reset();
|    | 699|+				placementSupport.Reset();
| 700| 700| 					updateBuildingPlacementPreview();
| 701| 701| 
| 702| 702| 					inputState = INPUT_NORMAL;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 697| 697| 				{
| 698| 698| 					// reset to normal input mode
| 699| 699| 					placementSupport.Reset();
| 700|    |-					updateBuildingPlacementPreview();
|    | 700|+				updateBuildingPlacementPreview();
| 701| 701| 
| 702| 702| 					inputState = INPUT_NORMAL;
| 703| 703| 					return true;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 699| 699| 					placementSupport.Reset();
| 700| 700| 					updateBuildingPlacementPreview();
| 701| 701| 
| 702|    |-					inputState = INPUT_NORMAL;
|    | 702|+				inputState = INPUT_NORMAL;
| 703| 703| 					return true;
| 704| 704| 				}
| 705| 705| 				break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 700| 700| 					updateBuildingPlacementPreview();
| 701| 701| 
| 702| 702| 					inputState = INPUT_NORMAL;
| 703|    |-					return true;
|    | 703|+				return true;
| 704| 704| 				}
| 705| 705| 				break;
| 706| 706| 		}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 701| 701| 
| 702| 702| 					inputState = INPUT_NORMAL;
| 703| 703| 					return true;
| 704|    |-				}
|    | 704|+			}
| 705| 705| 				break;
| 706| 706| 		}
| 707| 707| 		break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 702| 702| 					inputState = INPUT_NORMAL;
| 703| 703| 					return true;
| 704| 704| 				}
| 705|    |-				break;
|    | 705|+			break;
| 706| 706| 		}
| 707| 707| 		break;
| 708| 708| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 841| 841| 			break;
| 842| 842| 
| 843| 843| 		case "hotkeydown":
| 844|    |-				if (ev.hotkey.indexOf("selection.group.") == 0)
|    | 844|+			if (ev.hotkey.indexOf("selection.group.") == 0)
| 845| 845| 				{
| 846| 846| 					let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 842| 842| 
| 843| 843| 		case "hotkeydown":
| 844| 844| 				if (ev.hotkey.indexOf("selection.group.") == 0)
| 845|    |-				{
|    | 845|+			{
| 846| 846| 					let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 843| 843| 		case "hotkeydown":
| 844| 844| 				if (ev.hotkey.indexOf("selection.group.") == 0)
| 845| 845| 				{
| 846|    |-					let now = Date.now();
|    | 846|+				let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 844| 844| 				if (ev.hotkey.indexOf("selection.group.") == 0)
| 845| 845| 				{
| 846| 846| 					let now = Date.now();
| 847|    |-					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
|    | 847|+				if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 845| 845| 				{
| 846| 846| 					let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848|    |-					{
|    | 848|+				{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
| 851| 851| 							var sptr = ev.hotkey.split(".");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 846| 846| 					let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
| 849|    |-						if (ev.hotkey.indexOf("selection.group.select.") == 0)
|    | 849|+					if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850|    |-						{
|    | 850|+					{
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
| 853| 853| 						}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 848| 848| 					{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
| 851|    |-							var sptr = ev.hotkey.split(".");
|    | 851|+						var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
| 853| 853| 						}
| 854| 854| 					}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852|    |-							performGroup("snap", sptr[3]);
|    | 852|+						performGroup("snap", sptr[3]);
| 853| 853| 						}
| 854| 854| 					}
| 855| 855| 					else
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 850| 850| 						{
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
| 853|    |-						}
|    | 853|+					}
| 854| 854| 					}
| 855| 855| 					else
| 856| 856| 					{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
| 853| 853| 						}
| 854|    |-					}
|    | 854|+				}
| 855| 855| 					else
| 856| 856| 					{
| 857| 857| 						var sptr = ev.hotkey.split(".");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 852| 852| 							performGroup("snap", sptr[3]);
| 853| 853| 						}
| 854| 854| 					}
| 855|    |-					else
|    | 855|+				else
| 856| 856| 					{
| 857| 857| 						var sptr = ev.hotkey.split(".");
| 858| 858| 						performGroup(sptr[2], sptr[3]);
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 853| 853| 						}
| 854| 854| 					}
| 855| 855| 					else
| 856|    |-					{
|    | 856|+				{
| 857| 857| 						var sptr = ev.hotkey.split(".");
| 858| 858| 						performGroup(sptr[2], sptr[3]);
| 859| 859| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 854| 854| 					}
| 855| 855| 					else
| 856| 856| 					{
| 857|    |-						var sptr = ev.hotkey.split(".");
|    | 857|+					var sptr = ev.hotkey.split(".");
| 858| 858| 						performGroup(sptr[2], sptr[3]);
| 859| 859| 
| 860| 860| 						doublePressTimer = now;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 855| 855| 					else
| 856| 856| 					{
| 857| 857| 						var sptr = ev.hotkey.split(".");
| 858|    |-						performGroup(sptr[2], sptr[3]);
|    | 858|+					performGroup(sptr[2], sptr[3]);
| 859| 859| 
| 860| 860| 						doublePressTimer = now;
| 861| 861| 						prevHotkey = ev.hotkey;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 857| 857| 						var sptr = ev.hotkey.split(".");
| 858| 858| 						performGroup(sptr[2], sptr[3]);
| 859| 859| 
| 860|    |-						doublePressTimer = now;
|    | 860|+					doublePressTimer = now;
| 861| 861| 						prevHotkey = ev.hotkey;
| 862| 862| 					}
| 863| 863| 				}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 858| 858| 						performGroup(sptr[2], sptr[3]);
| 859| 859| 
| 860| 860| 						doublePressTimer = now;
| 861|    |-						prevHotkey = ev.hotkey;
|    | 861|+					prevHotkey = ev.hotkey;
| 862| 862| 					}
| 863| 863| 				}
| 864| 864| 				break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 859| 859| 
| 860| 860| 						doublePressTimer = now;
| 861| 861| 						prevHotkey = ev.hotkey;
| 862|    |-					}
|    | 862|+				}
| 863| 863| 				}
| 864| 864| 				break;
| 865| 865| 		}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 860| 860| 						doublePressTimer = now;
| 861| 861| 						prevHotkey = ev.hotkey;
| 862| 862| 					}
| 863|    |-				}
|    | 863|+			}
| 864| 864| 				break;
| 865| 865| 		}
| 866| 866| 		break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 861| 861| 						prevHotkey = ev.hotkey;
| 862| 862| 					}
| 863| 863| 				}
| 864|    |-				break;
|    | 864|+			break;
| 865| 865| 		}
| 866| 866| 		break;
| 867| 867| 
|    | [NORMAL] ESLintBear (space-in-parens):
|    | There should be no spaces inside this paren.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|1505|1505| 		g_BatchTrainingEntityAllowedCount < batchedSize * appropriateBuildings.length)
|1506|1506| 	{
|1507|1507| 		// Train as many full batches as we can
|1508|    |-		let buildingsCountToTrainFullBatch = Math.floor( g_BatchTrainingEntityAllowedCount / batchedSize);
|    |1508|+		let buildingsCountToTrainFullBatch = Math.floor(g_BatchTrainingEntityAllowedCount / batchedSize);
|1509|1509| 		Engine.PostNetworkCommand({
|1510|1510| 			"type": "train",
|1511|1511| 			"entities": appropriateBuildings.slice(0, buildingsCountToTrainFullBatch),
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|1584|1584| 	var selectall = Engine.HotkeyIsPressed("selection.offscreen");
|1585|1585| 
|1586|1586| 	// Reset the last idle unit, etc., if the selection type has changed.
|1587|    |-	if (selectall || classes.length != lastIdleClasses.length || !classes.every((v,i) => v === lastIdleClasses[i]))
|    |1587|+	if (selectall || classes.length != lastIdleClasses.length || !classes.every((v, i) => v === lastIdleClasses[i]))
|1588|1588| 		resetIdleUnit();
|1589|1589| 	lastIdleClasses = classes;
|1590|1590| 

binaries/data/mods/public/gui/session/input.js
| 231| »   var·target·=·undefined;
|    | [NORMAL] ESLintBear (no-undef-init):
|    | It's not necessary to initialize 'target' to undefined.

binaries/data/mods/public/gui/session/input.js
| 245| »   var·actionInfo·=·undefined;
|    | [NORMAL] ESLintBear (no-undef-init):
|    | It's not necessary to initialize 'actionInfo' to undefined.

binaries/data/mods/public/gui/session/input.js
| 468| »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 495| »   switch·(inputState)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 499| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 554| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 564| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 612| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 641| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 710| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 808| »   switch·(inputState)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 811| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 913| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
|1002| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
|1016| »   »   »   »   let·action·=·determineAction(ev.x,·ev.y);
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'action' is already declared in the upper scope.

binaries/data/mods/public/gui/session/input.js
|1025| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
|1094| »   »   »   switch·(ev.hotkey)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
|1535| »   switch·(action)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 231| »   var·target·=·undefined;
|    | [NORMAL] JSHintBear:
|    | It's not necessary to initialize 'target' to 'undefined'.

binaries/data/mods/public/gui/session/input.js
| 245| »   var·actionInfo·=·undefined;
|    | [NORMAL] JSHintBear:
|    | It's not necessary to initialize 'actionInfo' to 'undefined'.

binaries/data/mods/public/gui/session/input.js
| 259| »   for·(var·action·of·actions)
|    | [NORMAL] JSHintBear:
|    | 'action' is already defined.

binaries/data/mods/public/gui/session/input.js
| 262| »   »   »   var·r·=·g_UnitActions[action].hotkeyActionCheck(target,·selection);
|    | [NORMAL] JSHintBear:
|    | 'r' is already defined.

binaries/data/mods/public/gui/session/input.js
| 267| »   for·(var·action·of·actions)
|    | [NORMAL] JSHintBear:
|    | 'action' is already defined.

binaries/data/mods/public/gui/session/input.js
| 270| »   »   »   var·r·=·g_UnitActions[action].actionCheck(target,·selection);
|    | [NORMAL] JSHintBear:
|    | 'r' is already defined.

binaries/data/mods/public/gui/session/input.js
| 483| »   »   &&·(ev.button·==·SDL_BUTTON_LEFT·||·ev.button·==·SDL_BUTTON_RIGHT))
|    | [NORMAL] JSHintBear:
|    | Misleading line break before '&&'; readers may interpret this as an expression boundary.

binaries/data/mods/public/gui/session/input.js
| 513| »   »   »   »   var·rect·=·updateBandbox(bandbox,·ev,·true);
|    | [NORMAL] JSHintBear:
|    | 'rect' is already defined.

binaries/data/mods/public/gui/session/input.js
| 516| »   »   »   »   var·ents·=·getPreferredEntities(Engine.PickPlayerEntitiesInRect(rect[0],·rect[1],·rect[2],·rect[3],·g_ViewedPlayer));
|    | [NORMAL] JSHintBear:
|    | 'ents' is already defined.

binaries/data/mods/public/gui/session/input.js
| 673| »   »   »   »   »   var·queued·=·Engine.HotkeyIsPressed("session.queue");
|    | [NORMAL] JSHintBear:
|    | 'queued' is already defined.

binaries/data/mods/public/gui/session/input.js
| 744| »   »   »   »   var·queued·=·Engine.HotkeyIsPressed("session.queue");
|    | [NORMAL] JSHintBear:
|    | 'queued' is already defined.

binaries/data/mods/public/gui/session/input.js
| 857| »   »   »   »   »   »   var·sptr·=·ev.hotkey.split(".");
|    | [NORMAL] JSHintBear:
|    | 'sptr' is already defined.

binaries/data/mods/public/gui/session/input.js
| 873| »   »   »   var·ent·=·Engine.PickEntityAtPoint(ev.x,·ev.y);
|    | [NORMAL] JSHintBear:
|    | 'ent' is already defined.

binaries/data/mods/public/gui/session/input.js
| 899| »   »   »   }
|    | [NORMAL] JSHintBear:
|    | Expected a 'break' statement before 'default'.

binaries/data/mods/public/gui/session/input.js
| 923| »   »   »   var·ent·=·Engine.PickEntityAtPoint(ev.x,·ev.y);
|    | [NORMAL] JSHintBear:
|    | 'ent' is already defined.
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredTechs"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 135| 135| EntityLimits.prototype.UpdateLimitsFromTech = function(tech)
| 136| 136| {
| 137| 137| 	for (var category in this.removers)
| 138|    |-		if ("RequiredTechs" in this.removers[category] && this.removers[category]["RequiredTechs"].indexOf(tech) !== -1)
|    | 138|+		if ("RequiredTechs" in this.removers[category] && this.removers[category].RequiredTechs.indexOf(tech) !== -1)
| 139| 139| 			this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech), 1);
| 140| 140| 
| 141| 141| 	this.UpdateLimitRemoval();
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredTechs"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 136| 136| {
| 137| 137| 	for (var category in this.removers)
| 138| 138| 		if ("RequiredTechs" in this.removers[category] && this.removers[category]["RequiredTechs"].indexOf(tech) !== -1)
| 139|    |-			this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech), 1);
|    | 139|+			this.removers[category].RequiredTechs.splice(this.removers[category]["RequiredTechs"].indexOf(tech), 1);
| 140| 140| 
| 141| 141| 	this.UpdateLimitRemoval();
| 142| 142| };
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredTechs"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 136| 136| {
| 137| 137| 	for (var category in this.removers)
| 138| 138| 		if ("RequiredTechs" in this.removers[category] && this.removers[category]["RequiredTechs"].indexOf(tech) !== -1)
| 139|    |-			this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech), 1);
|    | 139|+			this.removers[category]["RequiredTechs"].splice(this.removers[category].RequiredTechs.indexOf(tech), 1);
| 140| 140| 
| 141| 141| 	this.UpdateLimitRemoval();
| 142| 142| };
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredTechs"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 147| 147| 	{
| 148| 148| 		var nolimit = true;
| 149| 149| 		if ("RequiredTechs" in this.removers[category])
| 150|    |-			nolimit = !this.removers[category]["RequiredTechs"].length;
|    | 150|+			nolimit = !this.removers[category].RequiredTechs.length;
| 151| 151| 		if (nolimit && "RequiredClasses" in this.removers[category])
| 152| 152| 			for (var cls of this.removers[category]["RequiredClasses"])
| 153| 153| 				nolimit = nolimit && this.classCount[cls] > 0;
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredClasses"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 149| 149| 		if ("RequiredTechs" in this.removers[category])
| 150| 150| 			nolimit = !this.removers[category]["RequiredTechs"].length;
| 151| 151| 		if (nolimit && "RequiredClasses" in this.removers[category])
| 152|    |-			for (var cls of this.removers[category]["RequiredClasses"])
|    | 152|+			for (var cls of this.removers[category].RequiredClasses)
| 153| 153| 				nolimit = nolimit && this.classCount[cls] > 0;
| 154| 154| 
| 155| 155| 		if (nolimit && this.limit[category] !== undefined)
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 172| 172| 			"players": [cmpPlayer.GetPlayerID()],
| 173| 173| 			"translateMessage": true,
| 174| 174| 			"translateParameters": ["category"],
| 175|    |-			"parameters": {"category": category, "limit": this.limit[category]},
|    | 175|+			"parameters": { "category": category, "limit": this.limit[category]},
| 176| 176| 		};
| 177| 177| 
| 178| 178| 		if (limitType == BUILD)
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 172| 172| 			"players": [cmpPlayer.GetPlayerID()],
| 173| 173| 			"translateMessage": true,
| 174| 174| 			"translateParameters": ["category"],
| 175|    |-			"parameters": {"category": category, "limit": this.limit[category]},
|    | 175|+			"parameters": {"category": category, "limit": this.limit[category] },
| 176| 176| 		};
| 177| 177| 
| 178| 178| 		if (limitType == BUILD)
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredClasses"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 280| 280| 
| 281| 281| 	for (var category in this.removers)
| 282| 282| 		if ("RequiredClasses" in this.removers[category])
| 283|    |-			for (var cls of this.removers[category]["RequiredClasses"])
|    | 283|+			for (var cls of this.removers[category].RequiredClasses)
| 284| 284| 				if (classes.indexOf(cls) !== -1)
| 285| 285| 					this.classCount[cls] += modifier;
| 286| 286| 

binaries/data/mods/public/simulation/components/EntityLimits.js
|  90| »   »   »   for·(var·c·in·this.template.LimitRemovers[category])
|    | [NORMAL] JSHintBear:
|    | 'c' is already defined.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 138| »   »   if·("RequiredTechs"·in·this.removers[category]·&&·this.removers[category]["RequiredTechs"].indexOf(tech)·!==·-1)
|    | [NORMAL] JSHintBear:
|    | ['RequiredTechs'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 139| »   »   »   this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech),·1);
|    | [NORMAL] JSHintBear:
|    | ['RequiredTechs'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 139| »   »   »   this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech),·1);
|    | [NORMAL] JSHintBear:
|    | ['RequiredTechs'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 150| »   »   »   nolimit·=·!this.removers[category]["RequiredTechs"].length;
|    | [NORMAL] JSHintBear:
|    | ['RequiredTechs'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 152| »   »   »   for·(var·cls·of·this.removers[category]["RequiredClasses"])
|    | [NORMAL] JSHintBear:
|    | ['RequiredClasses'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 246| »   »   var·modifier·=·1;
|    | [NORMAL] JSHintBear:
|    | 'modifier' is already defined.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 271| »   for·(var·category·in·this.changers)
|    | [NORMAL] JSHintBear:
|    | 'category' is already defined.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 281| »   for·(var·category·in·this.removers)
|    | [NORMAL] JSHintBear:
|    | 'category' is already defined.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 283| »   »   »   for·(var·cls·of·this.removers[category]["RequiredClasses"])
|    | [NORMAL] JSHintBear:
|    | ['RequiredClasses'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 259| »   »   this.ChangeCount(category,·modifier);
|    | [NORMAL] JSHintBear:
|    | 'modifier' used out of scope.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 276| »   »   »   »   »   this.limit[category]·+=·modifier·*·this.changers[category][c];
|    | [NORMAL] JSHintBear:
|    | 'modifier' used out of scope.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 278| »   »   »   »   »   this.removedLimit[category]·+=·modifier·*·this.changers[category][c];
|    | [NORMAL] JSHintBear:
|    | 'modifier' used out of scope.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 285| »   »   »   »   »   this.classCount[cls]·+=·modifier;
|    | [NORMAL] JSHintBear:
|    | 'modifier' used out of scope.
Executing section cli...

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/1061/display/redirect

Vulcan added a comment.Nov 8 2019, 8:45 AM

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/547/display/redirect

Silier added inline comments.Nov 8 2019, 9:28 AM
binaries/data/mods/public/gui/session/selection_panels_helpers.js
126 ↗(On Diff #10287)

for units here should be used "trained" :)

Stan added inline comments.Nov 8 2019, 9:57 AM
binaries/data/mods/public/gui/session/selection_panels_helpers.js
131 ↗(On Diff #10287)

ternary ?

Freagarach updated this revision to Diff 10299.Nov 11 2019, 3:38 PM
Freagarach edited the summary of this revision. (Show Details)
Freagarach edited the test plan for this revision. (Show Details)
  • Units: "trained", buildings: "build".
  • Ternary return.
  • Extended test.

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/559/display/redirect

Successful build - Chance fights ever on the side of the prudent.

Linter detected issues:
Executing section Source...
Executing section JS...
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredTechs"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 135| 135| EntityLimits.prototype.UpdateLimitsFromTech = function(tech)
| 136| 136| {
| 137| 137| 	for (var category in this.removers)
| 138|    |-		if ("RequiredTechs" in this.removers[category] && this.removers[category]["RequiredTechs"].indexOf(tech) !== -1)
|    | 138|+		if ("RequiredTechs" in this.removers[category] && this.removers[category].RequiredTechs.indexOf(tech) !== -1)
| 139| 139| 			this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech), 1);
| 140| 140| 
| 141| 141| 	this.UpdateLimitRemoval();
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredTechs"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 136| 136| {
| 137| 137| 	for (var category in this.removers)
| 138| 138| 		if ("RequiredTechs" in this.removers[category] && this.removers[category]["RequiredTechs"].indexOf(tech) !== -1)
| 139|    |-			this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech), 1);
|    | 139|+			this.removers[category].RequiredTechs.splice(this.removers[category]["RequiredTechs"].indexOf(tech), 1);
| 140| 140| 
| 141| 141| 	this.UpdateLimitRemoval();
| 142| 142| };
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredTechs"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 136| 136| {
| 137| 137| 	for (var category in this.removers)
| 138| 138| 		if ("RequiredTechs" in this.removers[category] && this.removers[category]["RequiredTechs"].indexOf(tech) !== -1)
| 139|    |-			this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech), 1);
|    | 139|+			this.removers[category]["RequiredTechs"].splice(this.removers[category].RequiredTechs.indexOf(tech), 1);
| 140| 140| 
| 141| 141| 	this.UpdateLimitRemoval();
| 142| 142| };
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredTechs"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 147| 147| 	{
| 148| 148| 		var nolimit = true;
| 149| 149| 		if ("RequiredTechs" in this.removers[category])
| 150|    |-			nolimit = !this.removers[category]["RequiredTechs"].length;
|    | 150|+			nolimit = !this.removers[category].RequiredTechs.length;
| 151| 151| 		if (nolimit && "RequiredClasses" in this.removers[category])
| 152| 152| 			for (var cls of this.removers[category]["RequiredClasses"])
| 153| 153| 				nolimit = nolimit && this.classCount[cls] > 0;
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredClasses"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 149| 149| 		if ("RequiredTechs" in this.removers[category])
| 150| 150| 			nolimit = !this.removers[category]["RequiredTechs"].length;
| 151| 151| 		if (nolimit && "RequiredClasses" in this.removers[category])
| 152|    |-			for (var cls of this.removers[category]["RequiredClasses"])
|    | 152|+			for (var cls of this.removers[category].RequiredClasses)
| 153| 153| 				nolimit = nolimit && this.classCount[cls] > 0;
| 154| 154| 
| 155| 155| 		if (nolimit && this.limit[category] !== undefined)
|    | [NORMAL] ESLintBear (semi):
|    | Missing semicolon.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 205| 205| 	}
| 206| 206| 	let cmpGUIInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
| 207| 207| 	cmpGUIInterface.PushNotification(notification);
| 208|    |-}
|    | 208|+};
| 209| 209| 
| 210| 210| EntityLimits.prototype.AllowedToBuild = function(category)
| 211| 211| {
|    | [NORMAL] ESLintBear (dot-notation):
|    | ["RequiredClasses"] is better written in dot notation.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/EntityLimits.js
| 294| 294| 
| 295| 295| 	for (var category in this.removers)
| 296| 296| 		if ("RequiredClasses" in this.removers[category])
| 297|    |-			for (var cls of this.removers[category]["RequiredClasses"])
|    | 297|+			for (var cls of this.removers[category].RequiredClasses)
| 298| 298| 				if (classes.indexOf(cls) !== -1)
| 299| 299| 					this.classCount[cls] += modifier;
| 300| 300| 

binaries/data/mods/public/simulation/components/EntityLimits.js
|  90| »   »   »   for·(var·c·in·this.template.LimitRemovers[category])
|    | [NORMAL] JSHintBear:
|    | 'c' is already defined.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 138| »   »   if·("RequiredTechs"·in·this.removers[category]·&&·this.removers[category]["RequiredTechs"].indexOf(tech)·!==·-1)
|    | [NORMAL] JSHintBear:
|    | ['RequiredTechs'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 139| »   »   »   this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech),·1);
|    | [NORMAL] JSHintBear:
|    | ['RequiredTechs'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 139| »   »   »   this.removers[category]["RequiredTechs"].splice(this.removers[category]["RequiredTechs"].indexOf(tech),·1);
|    | [NORMAL] JSHintBear:
|    | ['RequiredTechs'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 150| »   »   »   nolimit·=·!this.removers[category]["RequiredTechs"].length;
|    | [NORMAL] JSHintBear:
|    | ['RequiredTechs'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 152| »   »   »   for·(var·cls·of·this.removers[category]["RequiredClasses"])
|    | [NORMAL] JSHintBear:
|    | ['RequiredClasses'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 208| }
|    | [NORMAL] JSHintBear:
|    | Missing semicolon.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 260| »   »   var·modifier·=·1;
|    | [NORMAL] JSHintBear:
|    | 'modifier' is already defined.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 285| »   for·(var·category·in·this.changers)
|    | [NORMAL] JSHintBear:
|    | 'category' is already defined.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 295| »   for·(var·category·in·this.removers)
|    | [NORMAL] JSHintBear:
|    | 'category' is already defined.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 297| »   »   »   for·(var·cls·of·this.removers[category]["RequiredClasses"])
|    | [NORMAL] JSHintBear:
|    | ['RequiredClasses'] is better written in dot notation.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 273| »   »   this.ChangeCount(category,·modifier);
|    | [NORMAL] JSHintBear:
|    | 'modifier' used out of scope.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 290| »   »   »   »   »   this.limit[category]·+=·modifier·*·this.changers[category][c];
|    | [NORMAL] JSHintBear:
|    | 'modifier' used out of scope.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 292| »   »   »   »   »   this.removedLimit[category]·+=·modifier·*·this.changers[category][c];
|    | [NORMAL] JSHintBear:
|    | 'modifier' used out of scope.

binaries/data/mods/public/simulation/components/EntityLimits.js
| 299| »   »   »   »   »   this.classCount[cls]·+=·modifier;
|    | [NORMAL] JSHintBear:
|    | 'modifier' used out of scope.
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 219| 219| 		result.message = markForTranslation("%(name)s cannot be built in %(territoryType)s territory. Valid territories: %(validTerritories)s");
| 220| 220| 		result.translateParameters.push("territoryType");
| 221| 221| 		result.translateParameters.push("validTerritories");
| 222|    |-		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory};
|    | 222|+		result.parameters.territoryType = { "context": "Territory type", "message": invalidTerritory};
| 223| 223| 		// gui code will join this array to a string
| 224| 224| 		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories()};
| 225| 225| 		return result;	// Fail
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 219| 219| 		result.message = markForTranslation("%(name)s cannot be built in %(territoryType)s territory. Valid territories: %(validTerritories)s");
| 220| 220| 		result.translateParameters.push("territoryType");
| 221| 221| 		result.translateParameters.push("validTerritories");
| 222|    |-		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory};
|    | 222|+		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory };
| 223| 223| 		// gui code will join this array to a string
| 224| 224| 		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories()};
| 225| 225| 		return result;	// Fail
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 221| 221| 		result.translateParameters.push("validTerritories");
| 222| 222| 		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory};
| 223| 223| 		// gui code will join this array to a string
| 224|    |-		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories()};
|    | 224|+		result.parameters.validTerritories = { "context": "Territory type list", "list": this.GetTerritories()};
| 225| 225| 		return result;	// Fail
| 226| 226| 	}
| 227| 227| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 221| 221| 		result.translateParameters.push("validTerritories");
| 222| 222| 		result.parameters.territoryType = {"context": "Territory type", "message": invalidTerritory};
| 223| 223| 		// gui code will join this array to a string
| 224|    |-		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories()};
|    | 224|+		result.parameters.validTerritories = {"context": "Territory type list", "list": this.GetTerritories() };
| 225| 225| 		return result;	// Fail
| 226| 226| 	}
| 227| 227| 

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 154| »   »   switch·(ret)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 252| »   »   »   var·cmpIdentity·=·Engine.QueryInterface(id,·IID_Identity);
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'cmpIdentity' is already declared in the upper scope.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 261| »   »   »   »   let·result·=·markForPluralTranslation(
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'result' is already declared in the upper scope.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 282| »   »   »   »   let·result·=·markForPluralTranslation(
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'result' is already declared in the upper scope.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 149| »   »   var·ret·=·cmpObstruction.CheckFoundation(passClassName,·false);
|    | [NORMAL] JSHintBear:
|    | 'ret' is already defined.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 172| »   var·cmpPlayer·=·QueryOwnerInterface(this.entity,·IID_Player);
|    | [NORMAL] JSHintBear:
|    | 'cmpPlayer' is already defined.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 246| »   »   var·cmpRangeManager·=·Engine.QueryInterface(SYSTEM_ENTITY,·IID_RangeManager);
|    | [NORMAL] JSHintBear:
|    | 'cmpRangeManager' is already defined.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 247| »   »   var·cmpPlayer·=·QueryOwnerInterface(this.entity,·IID_Player);
|    | [NORMAL] JSHintBear:
|    | 'cmpPlayer' is already defined.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 152| »   if·(ret·!=·"success")
|    | [NORMAL] JSHintBear:
|    | 'ret' used out of scope.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
| 154| »   »   switch·(ret)
|    | [NORMAL] JSHintBear:
|    | 'ret' used out of scope.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 771| »   »   »   let·template·=·TechnologyTemplates.Get(item.technologyTemplate);
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'template' is already declared in the upper scope.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 190| »   for·(var·i·in·techList)
|    | [NORMAL] JSHintBear:
|    | 'i' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 192| »   »   var·tech·=·techList[i];
|    | [NORMAL] JSHintBear:
|    | 'tech' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 202| »   for·(var·i·=·0;·i·<·techList.length;·i++)
|    | [NORMAL] JSHintBear:
|    | 'i' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 204| »   »   var·tech·=·techList[i];
|    | [NORMAL] JSHintBear:
|    | 'tech' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 757| »   »   »   »   »   var·cmpPlayer·=·QueryOwnerInterface(this.entity);
|    | [NORMAL] JSHintBear:
|    | 'cmpPlayer' is already defined.

binaries/data/mods/public/simulation/components/ProductionQueue.js
| 768| »   »   »   var·cmpTechnologyManager·=·QueryOwnerInterface(this.entity,·IID_TechnologyManager);
|    | [NORMAL] JSHintBear:
|    | 'cmpTechnologyManager' is already defined.
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 3.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  48|  48| 	"GetResource": resource => ({
|  49|  49| 		"aiAnalysisInfluenceGroup":
|  50|  50| 			resource == "food" ? "ignore" :
|  51|    |-			resource == "wood" ? "abundant" : "sparse"
|    |  51|+				resource == "wood" ? "abundant" : "sparse"
|  52|  52| 	})
|  53|  53| };
|  54|  54| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPrices' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  56|  56| 
|  57|  57| 
|  58|  58| AddMock(SYSTEM_ENTITY, IID_Barter, {
|  59|    |-	GetPrices: function() {
|    |  59|+	"GetPrices": function() {
|  60|  60| 		return {
|  61|  61| 			"buy": { "food": 150 },
|  62|  62| 			"sell": { "food": 25 }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'PlayerHasMarket' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  62|  62| 			"sell": { "food": 25 }
|  63|  63| 		};
|  64|  64| 	},
|  65|    |-	PlayerHasMarket: function () { return false; }
|    |  65|+	"PlayerHasMarket": function () { return false; }
|  66|  66| });
|  67|  67| 
|  68|  68| AddMock(SYSTEM_ENTITY, IID_EndGameManager, {
|    | [NORMAL] ESLintBear (space-before-function-paren):
|    | Unexpected space before function parentheses.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  62|  62| 			"sell": { "food": 25 }
|  63|  63| 		};
|  64|  64| 	},
|  65|    |-	PlayerHasMarket: function () { return false; }
|    |  65|+	PlayerHasMarket: function() { return false; }
|  66|  66| });
|  67|  67| 
|  68|  68| AddMock(SYSTEM_ENTITY, IID_EndGameManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetVictoryConditions' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  66|  66| });
|  67|  67| 
|  68|  68| AddMock(SYSTEM_ENTITY, IID_EndGameManager, {
|  69|    |-	GetVictoryConditions: () => ["conquest", "wonder"],
|    |  69|+	"GetVictoryConditions": () => ["conquest", "wonder"],
|  70|  70| 	GetAlliedVictory: function() { return false; }
|  71|  71| });
|  72|  72| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetAlliedVictory' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  67|  67| 
|  68|  68| AddMock(SYSTEM_ENTITY, IID_EndGameManager, {
|  69|  69| 	GetVictoryConditions: () => ["conquest", "wonder"],
|  70|    |-	GetAlliedVictory: function() { return false; }
|    |  70|+	"GetAlliedVictory": function() { return false; }
|  71|  71| });
|  72|  72| 
|  73|  73| AddMock(SYSTEM_ENTITY, IID_PlayerManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetNumPlayers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  71|  71| });
|  72|  72| 
|  73|  73| AddMock(SYSTEM_ENTITY, IID_PlayerManager, {
|  74|    |-	GetNumPlayers: function() { return 2; },
|    |  74|+	"GetNumPlayers": function() { return 2; },
|  75|  75| 	GetPlayerByID: function(id) { TS_ASSERT(id === 0 || id === 1); return 100+id; }
|  76|  76| });
|  77|  77| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPlayerByID' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  72|  72| 
|  73|  73| AddMock(SYSTEM_ENTITY, IID_PlayerManager, {
|  74|  74| 	GetNumPlayers: function() { return 2; },
|  75|    |-	GetPlayerByID: function(id) { TS_ASSERT(id === 0 || id === 1); return 100+id; }
|    |  75|+	"GetPlayerByID": function(id) { TS_ASSERT(id === 0 || id === 1); return 100+id; }
|  76|  76| });
|  77|  77| 
|  78|  78| AddMock(SYSTEM_ENTITY, IID_RangeManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLosVisibility' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  76|  76| });
|  77|  77| 
|  78|  78| AddMock(SYSTEM_ENTITY, IID_RangeManager, {
|  79|    |-	GetLosVisibility: function(ent, player) { return "visible"; },
|    |  79|+	"GetLosVisibility": function(ent, player) { return "visible"; },
|  80|  80| 	GetLosCircular: function() { return false; }
|  81|  81| });
|  82|  82| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLosCircular' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  77|  77| 
|  78|  78| AddMock(SYSTEM_ENTITY, IID_RangeManager, {
|  79|  79| 	GetLosVisibility: function(ent, player) { return "visible"; },
|  80|    |-	GetLosCircular: function() { return false; }
|    |  80|+	"GetLosCircular": function() { return false; }
|  81|  81| });
|  82|  82| 
|  83|  83| AddMock(SYSTEM_ENTITY, IID_TemplateManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCurrentTemplateName' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  81|  81| });
|  82|  82| 
|  83|  83| AddMock(SYSTEM_ENTITY, IID_TemplateManager, {
|  84|    |-	GetCurrentTemplateName: function(ent) { return "example"; },
|    |  84|+	"GetCurrentTemplateName": function(ent) { return "example"; },
|  85|  85| 	GetTemplate: function(name) { return ""; }
|  86|  86| });
|  87|  87| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTemplate' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  82|  82| 
|  83|  83| AddMock(SYSTEM_ENTITY, IID_TemplateManager, {
|  84|  84| 	GetCurrentTemplateName: function(ent) { return "example"; },
|  85|    |-	GetTemplate: function(name) { return ""; }
|    |  85|+	"GetTemplate": function(name) { return ""; }
|  86|  86| });
|  87|  87| 
|  88|  88| AddMock(SYSTEM_ENTITY, IID_Timer, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTime' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  86|  86| });
|  87|  87| 
|  88|  88| AddMock(SYSTEM_ENTITY, IID_Timer, {
|  89|    |-	GetTime: function() { return 0; },
|    |  89|+	"GetTime": function() { return 0; },
|  90|  90| 	SetTimeout: function(ent, iid, funcname, time, data) { return 0; }
|  91|  91| });
|  92|  92| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'SetTimeout' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  87|  87| 
|  88|  88| AddMock(SYSTEM_ENTITY, IID_Timer, {
|  89|  89| 	GetTime: function() { return 0; },
|  90|    |-	SetTimeout: function(ent, iid, funcname, time, data) { return 0; }
|    |  90|+	"SetTimeout": function(ent, iid, funcname, time, data) { return 0; }
|  91|  91| });
|  92|  92| 
|  93|  93| AddMock(100, IID_Player, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetName' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  91|  91| });
|  92|  92| 
|  93|  93| AddMock(100, IID_Player, {
|  94|    |-	GetName: function() { return "Player 1"; },
|    |  94|+	"GetName": function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCiv' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  92|  92| 
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|    |-	GetCiv: function() { return "gaia"; },
|    |  95|+	"GetCiv": function() { return "gaia"; },
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetColor' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	"GetColor": function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'r' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { "r": 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'g' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { r: 1, "g": 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'b' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { r: 1, g: 1, "b": 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'a' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { r: 1, g: 1, b: 1, "a": 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  93|  93| AddMock(100, IID_Player, {
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|    |-	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|    |  96|+	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1 }; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'CanControlAllUnits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  94|  94| 	GetName: function() { return "Player 1"; },
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|    |-	CanControlAllUnits: function() { return false; },
|    |  97|+	"CanControlAllUnits": function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPopulationCount' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  95|  95| 	GetCiv: function() { return "gaia"; },
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|    |-	GetPopulationCount: function() { return 10; },
|    |  98|+	"GetPopulationCount": function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPopulationLimit' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  96|  96| 	GetColor: function() { return { r: 1, g: 1, b: 1, a: 1}; },
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|    |-	GetPopulationLimit: function() { return 20; },
|    |  99|+	"GetPopulationLimit": function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetMaxPopulation' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  97|  97| 	CanControlAllUnits: function() { return false; },
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100|    |-	GetMaxPopulation: function() { return 200; },
|    | 100|+	"GetMaxPopulation": function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetResourceCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101|    |-	GetResourceCounts: function() { return { food: 100 }; },
|    | 101|+	"GetResourceCounts": function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  98|  98| 	GetPopulationCount: function() { return 10; },
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101|    |-	GetResourceCounts: function() { return { food: 100 }; },
|    | 101|+	GetResourceCounts: function() { return { "food": 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPanelEntities' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|  99|  99| 	GetPopulationLimit: function() { return 20; },
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102|    |-	GetPanelEntities: function() { return []; },
|    | 102|+	"GetPanelEntities": function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsTrainingBlocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 100| 100| 	GetMaxPopulation: function() { return 200; },
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103|    |-	IsTrainingBlocked: function() { return false; },
|    | 103|+	"IsTrainingBlocked": function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetState' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 101| 101| 	GetResourceCounts: function() { return { food: 100 }; },
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104|    |-	GetState: function() { return "active"; },
|    | 104|+	"GetState": function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTeam' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 102| 102| 	GetPanelEntities: function() { return []; },
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
| 105|    |-	GetTeam: function() { return -1; },
|    | 105|+	"GetTeam": function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLockTeams' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 103| 103| 	IsTrainingBlocked: function() { return false; },
| 104| 104| 	GetState: function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
| 106|    |-	GetLockTeams: function() { return false; },
|    | 106|+	"GetLockTeams": function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCheatsEnabled' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 104| 104| 	GetState: function() { return "active"; },
| 105| 105| 	GetTeam: function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
| 107|    |-	GetCheatsEnabled: function() { return false; },
|    | 107|+	"GetCheatsEnabled": function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDiplomacy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 105| 105| 	GetTeam: function() { return -1; },
| 106| 106| 	GetLockTeams: function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108|    |-	GetDiplomacy: function() { return [-1, 1]; },
|    | 108|+	"GetDiplomacy": function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 106| 106| 	GetLockTeams: function() { return false; },
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109|    |-	IsAlly: function() { return false; },
|    | 109|+	"IsAlly": function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsMutualAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 107| 107| 	GetCheatsEnabled: function() { return false; },
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
| 110|    |-	IsMutualAlly: function() { return false; },
|    | 110|+	"IsMutualAlly": function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsNeutral' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 108| 108| 	GetDiplomacy: function() { return [-1, 1]; },
| 109| 109| 	IsAlly: function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111|    |-	IsNeutral: function() { return false; },
|    | 111|+	"IsNeutral": function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsEnemy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 109| 109| 	IsAlly: function() { return false; },
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
| 112|    |-	IsEnemy: function() { return true; },
|    | 112|+	"IsEnemy": function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDisabledTemplates' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 110| 110| 	IsMutualAlly: function() { return false; },
| 111| 111| 	IsNeutral: function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
| 113|    |-	GetDisabledTemplates: function() { return {}; },
|    | 113|+	"GetDisabledTemplates": function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
| 116| 116| 	HasSharedDropsites: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDisabledTechnologies' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 111| 111| 	IsNeutral: function() { return false; },
| 112| 112| 	IsEnemy: function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114|    |-	GetDisabledTechnologies: function() { return {}; },
|    | 114|+	"GetDisabledTechnologies": function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
| 116| 116| 	HasSharedDropsites: function() { return false; },
| 117| 117| 	HasSharedLos: function() { return false; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSpyCostMultiplier' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 112| 112| 	IsEnemy: function() { return true; },
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115|    |-	GetSpyCostMultiplier: function() { return 1; },
|    | 115|+	"GetSpyCostMultiplier": function() { return 1; },
| 116| 116| 	HasSharedDropsites: function() { return false; },
| 117| 117| 	HasSharedLos: function() { return false; }
| 118| 118| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasSharedDropsites' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 113| 113| 	GetDisabledTemplates: function() { return {}; },
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
| 116|    |-	HasSharedDropsites: function() { return false; },
|    | 116|+	"HasSharedDropsites": function() { return false; },
| 117| 117| 	HasSharedLos: function() { return false; }
| 118| 118| });
| 119| 119| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasSharedLos' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 114| 114| 	GetDisabledTechnologies: function() { return {}; },
| 115| 115| 	GetSpyCostMultiplier: function() { return 1; },
| 116| 116| 	HasSharedDropsites: function() { return false; },
| 117|    |-	HasSharedLos: function() { return false; }
|    | 117|+	"HasSharedLos": function() { return false; }
| 118| 118| });
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLimits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 118| 118| });
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121|    |-	GetLimits: function() { return {"Foo": 10}; },
|    | 121|+	"GetLimits": function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 118| 118| });
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121|    |-	GetLimits: function() { return {"Foo": 10}; },
|    | 121|+	GetLimits: function() { return { "Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 118| 118| });
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121|    |-	GetLimits: function() { return {"Foo": 10}; },
|    | 121|+	GetLimits: function() { return {"Foo": 10 }; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122|    |-	GetCounts: function() { return {"Foo": 5}; },
|    | 122|+	"GetCounts": function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
| 125| 125| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122|    |-	GetCounts: function() { return {"Foo": 5}; },
|    | 122|+	GetCounts: function() { return { "Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
| 125| 125| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 119| 119| 
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122|    |-	GetCounts: function() { return {"Foo": 5}; },
|    | 122|+	GetCounts: function() { return {"Foo": 5 }; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
| 125| 125| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLimitChangers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123|    |-	GetLimitChangers: function() {return {"Foo": {}}; },
|    | 123|+	"GetLimitChangers": function() {return {"Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
| 125| 125| });
| 126| 126| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123|    |-	GetLimitChangers: function() {return {"Foo": {}}; },
|    | 123|+	GetLimitChangers: function() {return { "Foo": {}}; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
| 125| 125| });
| 126| 126| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 120| 120| AddMock(100, IID_EntityLimits, {
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123|    |-	GetLimitChangers: function() {return {"Foo": {}}; },
|    | 123|+	GetLimitChangers: function() {return {"Foo": {} }; },
| 124| 124| 	GetPersistentCounts: function() { return { "Bar": 0 }; }
| 125| 125| });
| 126| 126| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPersistentCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 121| 121| 	GetLimits: function() { return {"Foo": 10}; },
| 122| 122| 	GetCounts: function() { return {"Foo": 5}; },
| 123| 123| 	GetLimitChangers: function() {return {"Foo": {}}; },
| 124|    |-	GetPersistentCounts: function() { return { "Bar": 0 }; }
|    | 124|+	"GetPersistentCounts": function() { return { "Bar": 0 }; }
| 125| 125| });
| 126| 126| 
| 127| 127| AddMock(100, IID_TechnologyManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetBasicStatistics' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 134| 134| });
| 135| 135| 
| 136| 136| AddMock(100, IID_StatisticsTracker, {
| 137|    |-	GetBasicStatistics: function() {
|    | 137|+	"GetBasicStatistics": function() {
| 138| 138| 		return {
| 139| 139| 			"resourcesGathered": {
| 140| 140| 				"food": 100,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSequences' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 146| 146| 			"percentMapExplored": 10
| 147| 147| 		};
| 148| 148| 	},
| 149|    |-	GetSequences: function() {
|    | 149|+	"GetSequences": function() {
| 150| 150| 		return {
| 151| 151| 			"unitsTrained": [0, 10],
| 152| 152| 			"unitsLost": [0, 42],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseTrainedUnitsCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 171| 171| 			"teamPeakPercentOfMapControlled": [0, 10]
| 172| 172| 		};
| 173| 173| 	},
| 174|    |-	IncreaseTrainedUnitsCounter: function() { return 1; },
|    | 174|+	"IncreaseTrainedUnitsCounter": function() { return 1; },
| 175| 175| 	IncreaseConstructedBuildingsCounter: function() { return 1; },
| 176| 176| 	IncreaseBuiltCivCentresCounter: function() { return 1; }
| 177| 177| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseConstructedBuildingsCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 172| 172| 		};
| 173| 173| 	},
| 174| 174| 	IncreaseTrainedUnitsCounter: function() { return 1; },
| 175|    |-	IncreaseConstructedBuildingsCounter: function() { return 1; },
|    | 175|+	"IncreaseConstructedBuildingsCounter": function() { return 1; },
| 176| 176| 	IncreaseBuiltCivCentresCounter: function() { return 1; }
| 177| 177| });
| 178| 178| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseBuiltCivCentresCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 173| 173| 	},
| 174| 174| 	IncreaseTrainedUnitsCounter: function() { return 1; },
| 175| 175| 	IncreaseConstructedBuildingsCounter: function() { return 1; },
| 176|    |-	IncreaseBuiltCivCentresCounter: function() { return 1; }
|    | 176|+	"IncreaseBuiltCivCentresCounter": function() { return 1; }
| 177| 177| });
| 178| 178| 
| 179| 179| AddMock(101, IID_Player, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetName' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 177| 177| });
| 178| 178| 
| 179| 179| AddMock(101, IID_Player, {
| 180|    |-	GetName: function() { return "Player 2"; },
|    | 180|+	"GetName": function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCiv' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 178| 178| 
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181|    |-	GetCiv: function() { return "mace"; },
|    | 181|+	"GetCiv": function() { return "mace"; },
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetColor' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	"GetColor": function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'r' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { "r": 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'g' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { r: 1, "g": 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'b' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { r: 1, g: 0, "b": 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'a' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { r: 1, g: 0, b: 0, "a": 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 179| 179| AddMock(101, IID_Player, {
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182|    |-	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
|    | 182|+	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1 }; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'CanControlAllUnits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 180| 180| 	GetName: function() { return "Player 2"; },
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183|    |-	CanControlAllUnits: function() { return true; },
|    | 183|+	"CanControlAllUnits": function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPopulationCount' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 181| 181| 	GetCiv: function() { return "mace"; },
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184|    |-	GetPopulationCount: function() { return 40; },
|    | 184|+	"GetPopulationCount": function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPopulationLimit' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 182| 182| 	GetColor: function() { return { r: 1, g: 0, b: 0, a: 1}; },
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185|    |-	GetPopulationLimit: function() { return 30; },
|    | 185|+	"GetPopulationLimit": function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetMaxPopulation' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 183| 183| 	CanControlAllUnits: function() { return true; },
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186|    |-	GetMaxPopulation: function() { return 300; },
|    | 186|+	"GetMaxPopulation": function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetResourceCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187|    |-	GetResourceCounts: function() { return { food: 200 }; },
|    | 187|+	"GetResourceCounts": function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 184| 184| 	GetPopulationCount: function() { return 40; },
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187|    |-	GetResourceCounts: function() { return { food: 200 }; },
|    | 187|+	GetResourceCounts: function() { return { "food": 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPanelEntities' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 185| 185| 	GetPopulationLimit: function() { return 30; },
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188|    |-	GetPanelEntities: function() { return []; },
|    | 188|+	"GetPanelEntities": function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsTrainingBlocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 186| 186| 	GetMaxPopulation: function() { return 300; },
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189|    |-	IsTrainingBlocked: function() { return false; },
|    | 189|+	"IsTrainingBlocked": function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetState' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 187| 187| 	GetResourceCounts: function() { return { food: 200 }; },
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190|    |-	GetState: function() { return "active"; },
|    | 190|+	"GetState": function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTeam' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 188| 188| 	GetPanelEntities: function() { return []; },
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
| 191|    |-	GetTeam: function() { return -1; },
|    | 191|+	"GetTeam": function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLockTeams' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 189| 189| 	IsTrainingBlocked: function() { return false; },
| 190| 190| 	GetState: function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
| 192|    |-	GetLockTeams: function() {return false; },
|    | 192|+	"GetLockTeams": function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCheatsEnabled' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 190| 190| 	GetState: function() { return "active"; },
| 191| 191| 	GetTeam: function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
| 193|    |-	GetCheatsEnabled: function() { return false; },
|    | 193|+	"GetCheatsEnabled": function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDiplomacy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 191| 191| 	GetTeam: function() { return -1; },
| 192| 192| 	GetLockTeams: function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194|    |-	GetDiplomacy: function() { return [-1, 1]; },
|    | 194|+	"GetDiplomacy": function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 192| 192| 	GetLockTeams: function() {return false; },
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195|    |-	IsAlly: function() { return true; },
|    | 195|+	"IsAlly": function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsMutualAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 193| 193| 	GetCheatsEnabled: function() { return false; },
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
| 196|    |-	IsMutualAlly: function() {return false; },
|    | 196|+	"IsMutualAlly": function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsNeutral' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 194| 194| 	GetDiplomacy: function() { return [-1, 1]; },
| 195| 195| 	IsAlly: function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197|    |-	IsNeutral: function() { return false; },
|    | 197|+	"IsNeutral": function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsEnemy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 195| 195| 	IsAlly: function() { return true; },
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
| 198|    |-	IsEnemy: function() { return false; },
|    | 198|+	"IsEnemy": function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDisabledTemplates' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 196| 196| 	IsMutualAlly: function() {return false; },
| 197| 197| 	IsNeutral: function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
| 199|    |-	GetDisabledTemplates: function() { return {}; },
|    | 199|+	"GetDisabledTemplates": function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
| 202| 202| 	HasSharedDropsites: function() { return false; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetDisabledTechnologies' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 197| 197| 	IsNeutral: function() { return false; },
| 198| 198| 	IsEnemy: function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200|    |-	GetDisabledTechnologies: function() { return {}; },
|    | 200|+	"GetDisabledTechnologies": function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
| 202| 202| 	HasSharedDropsites: function() { return false; },
| 203| 203| 	HasSharedLos: function() { return false; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSpyCostMultiplier' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 198| 198| 	IsEnemy: function() { return false; },
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201|    |-	GetSpyCostMultiplier: function() { return 1; },
|    | 201|+	"GetSpyCostMultiplier": function() { return 1; },
| 202| 202| 	HasSharedDropsites: function() { return false; },
| 203| 203| 	HasSharedLos: function() { return false; }
| 204| 204| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasSharedDropsites' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 199| 199| 	GetDisabledTemplates: function() { return {}; },
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
| 202|    |-	HasSharedDropsites: function() { return false; },
|    | 202|+	"HasSharedDropsites": function() { return false; },
| 203| 203| 	HasSharedLos: function() { return false; }
| 204| 204| });
| 205| 205| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasSharedLos' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 200| 200| 	GetDisabledTechnologies: function() { return {}; },
| 201| 201| 	GetSpyCostMultiplier: function() { return 1; },
| 202| 202| 	HasSharedDropsites: function() { return false; },
| 203|    |-	HasSharedLos: function() { return false; }
|    | 203|+	"HasSharedLos": function() { return false; }
| 204| 204| });
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLimits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 204| 204| });
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207|    |-	GetLimits: function() { return {"Bar": 20}; },
|    | 207|+	"GetLimits": function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 204| 204| });
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207|    |-	GetLimits: function() { return {"Bar": 20}; },
|    | 207|+	GetLimits: function() { return { "Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 204| 204| });
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207|    |-	GetLimits: function() { return {"Bar": 20}; },
|    | 207|+	GetLimits: function() { return {"Bar": 20 }; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208|    |-	GetCounts: function() { return {"Bar": 0}; },
|    | 208|+	"GetCounts": function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
| 211| 211| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208|    |-	GetCounts: function() { return {"Bar": 0}; },
|    | 208|+	GetCounts: function() { return { "Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
| 211| 211| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 205| 205| 
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208|    |-	GetCounts: function() { return {"Bar": 0}; },
|    | 208|+	GetCounts: function() { return {"Bar": 0 }; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
| 211| 211| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetLimitChangers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209|    |-	GetLimitChangers: function() {return {"Bar": {}}; },
|    | 209|+	"GetLimitChangers": function() {return {"Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
| 211| 211| });
| 212| 212| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209|    |-	GetLimitChangers: function() {return {"Bar": {}}; },
|    | 209|+	GetLimitChangers: function() {return { "Bar": {}}; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
| 211| 211| });
| 212| 212| 
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 206| 206| AddMock(101, IID_EntityLimits, {
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209|    |-	GetLimitChangers: function() {return {"Bar": {}}; },
|    | 209|+	GetLimitChangers: function() {return {"Bar": {} }; },
| 210| 210| 	GetPersistentCounts: function() { return { "Foo": 0 }; }
| 211| 211| });
| 212| 212| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPersistentCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 207| 207| 	GetLimits: function() { return {"Bar": 20}; },
| 208| 208| 	GetCounts: function() { return {"Bar": 0}; },
| 209| 209| 	GetLimitChangers: function() {return {"Bar": {}}; },
| 210|    |-	GetPersistentCounts: function() { return { "Foo": 0 }; }
|    | 210|+	"GetPersistentCounts": function() { return { "Foo": 0 }; }
| 211| 211| });
| 212| 212| 
| 213| 213| AddMock(101, IID_TechnologyManager, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetBasicStatistics' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 220| 220| });
| 221| 221| 
| 222| 222| AddMock(101, IID_StatisticsTracker, {
| 223|    |-	GetBasicStatistics: function() {
|    | 223|+	"GetBasicStatistics": function() {
| 224| 224| 		return {
| 225| 225| 			"resourcesGathered": {
| 226| 226| 				"food": 100,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSequences' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 232| 232| 			"percentMapExplored": 10
| 233| 233| 		};
| 234| 234| 	},
| 235|    |-	GetSequences: function() {
|    | 235|+	"GetSequences": function() {
| 236| 236| 		return {
| 237| 237| 			"unitsTrained": [0, 10],
| 238| 238| 			"unitsLost": [0, 9],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseTrainedUnitsCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 257| 257| 			"teamPeakPercentOfMapControlled": [0, 10]
| 258| 258| 		};
| 259| 259| 	},
| 260|    |-	IncreaseTrainedUnitsCounter: function() { return 1; },
|    | 260|+	"IncreaseTrainedUnitsCounter": function() { return 1; },
| 261| 261| 	IncreaseConstructedBuildingsCounter: function() { return 1; },
| 262| 262| 	IncreaseBuiltCivCentresCounter: function() { return 1; }
| 263| 263| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseConstructedBuildingsCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 258| 258| 		};
| 259| 259| 	},
| 260| 260| 	IncreaseTrainedUnitsCounter: function() { return 1; },
| 261|    |-	IncreaseConstructedBuildingsCounter: function() { return 1; },
|    | 261|+	"IncreaseConstructedBuildingsCounter": function() { return 1; },
| 262| 262| 	IncreaseBuiltCivCentresCounter: function() { return 1; }
| 263| 263| });
| 264| 264| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IncreaseBuiltCivCentresCounter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 259| 259| 	},
| 260| 260| 	IncreaseTrainedUnitsCounter: function() { return 1; },
| 261| 261| 	IncreaseConstructedBuildingsCounter: function() { return 1; },
| 262|    |-	IncreaseBuiltCivCentresCounter: function() { return 1; }
|    | 262|+	"IncreaseBuiltCivCentresCounter": function() { return 1; }
| 263| 263| });
| 264| 264| 
| 265| 265| // Note: property order matters when using TS_ASSERT_UNEVAL_EQUALS,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'players' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 266| 266| //	because uneval preserves property order. So make sure this object
| 267| 267| //	matches the ordering in GuiInterface.
| 268| 268| TS_ASSERT_UNEVAL_EQUALS(cmp.GetSimulationState(), {
| 269|    |-	players: [
|    | 269|+	"players": [
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'name' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 268| 268| TS_ASSERT_UNEVAL_EQUALS(cmp.GetSimulationState(), {
| 269| 269| 	players: [
| 270| 270| 		{
| 271|    |-			name: "Player 1",
|    | 271|+			"name": "Player 1",
| 272| 272| 			civ: "gaia",
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'civ' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 269| 269| 	players: [
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272|    |-			civ: "gaia",
|    | 272|+			"civ": "gaia",
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'color' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			"color": { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'r' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { "r":1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'r'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r: 1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'g' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, "g":1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'g'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g: 1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'b' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g:1, "b":1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'b'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g:1, b: 1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'a' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g:1, b:1, "a":1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'a'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 270| 270| 		{
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273|    |-			color: { r:1, g:1, b:1, a:1 },
|    | 273|+			color: { r:1, g:1, b:1, a: 1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'controlsAll' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 271| 271| 			name: "Player 1",
| 272| 272| 			civ: "gaia",
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274|    |-			controlsAll: false,
|    | 274|+			"controlsAll": false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popCount' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 272| 272| 			civ: "gaia",
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275|    |-			popCount: 10,
|    | 275|+			"popCount": 10,
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popLimit' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 273| 273| 			color: { r:1, g:1, b:1, a:1 },
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276|    |-			popLimit: 20,
|    | 276|+			"popLimit": 20,
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
| 279| 279| 			resourceCounts: { food: 100 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popMax' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 274| 274| 			controlsAll: false,
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
| 277|    |-			popMax: 200,
|    | 277|+			"popMax": 200,
| 278| 278| 			panelEntities: [],
| 279| 279| 			resourceCounts: { food: 100 },
| 280| 280| 			trainingBlocked: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'panelEntities' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 275| 275| 			popCount: 10,
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
| 278|    |-			panelEntities: [],
|    | 278|+			"panelEntities": [],
| 279| 279| 			resourceCounts: { food: 100 },
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'resourceCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
| 279|    |-			resourceCounts: { food: 100 },
|    | 279|+			"resourceCounts": { food: 100 },
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 276| 276| 			popLimit: 20,
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
| 279|    |-			resourceCounts: { food: 100 },
|    | 279|+			resourceCounts: { "food": 100 },
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'trainingBlocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 277| 277| 			popMax: 200,
| 278| 278| 			panelEntities: [],
| 279| 279| 			resourceCounts: { food: 100 },
| 280|    |-			trainingBlocked: false,
|    | 280|+			"trainingBlocked": false,
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
| 283| 283| 			teamsLocked: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'state' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 278| 278| 			panelEntities: [],
| 279| 279| 			resourceCounts: { food: 100 },
| 280| 280| 			trainingBlocked: false,
| 281|    |-			state: "active",
|    | 281|+			"state": "active",
| 282| 282| 			team: -1,
| 283| 283| 			teamsLocked: false,
| 284| 284| 			cheatsEnabled: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'team' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 279| 279| 			resourceCounts: { food: 100 },
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
| 282|    |-			team: -1,
|    | 282|+			"team": -1,
| 283| 283| 			teamsLocked: false,
| 284| 284| 			cheatsEnabled: false,
| 285| 285| 			disabledTemplates: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'teamsLocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 280| 280| 			trainingBlocked: false,
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
| 283|    |-			teamsLocked: false,
|    | 283|+			"teamsLocked": false,
| 284| 284| 			cheatsEnabled: false,
| 285| 285| 			disabledTemplates: {},
| 286| 286| 			disabledTechnologies: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'cheatsEnabled' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 281| 281| 			state: "active",
| 282| 282| 			team: -1,
| 283| 283| 			teamsLocked: false,
| 284|    |-			cheatsEnabled: false,
|    | 284|+			"cheatsEnabled": false,
| 285| 285| 			disabledTemplates: {},
| 286| 286| 			disabledTechnologies: {},
| 287| 287| 			hasSharedDropsites: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'disabledTemplates' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 282| 282| 			team: -1,
| 283| 283| 			teamsLocked: false,
| 284| 284| 			cheatsEnabled: false,
| 285|    |-			disabledTemplates: {},
|    | 285|+			"disabledTemplates": {},
| 286| 286| 			disabledTechnologies: {},
| 287| 287| 			hasSharedDropsites: false,
| 288| 288| 			hasSharedLos: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'disabledTechnologies' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 283| 283| 			teamsLocked: false,
| 284| 284| 			cheatsEnabled: false,
| 285| 285| 			disabledTemplates: {},
| 286|    |-			disabledTechnologies: {},
|    | 286|+			"disabledTechnologies": {},
| 287| 287| 			hasSharedDropsites: false,
| 288| 288| 			hasSharedLos: false,
| 289| 289| 			spyCostMultiplier: 1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'hasSharedDropsites' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 284| 284| 			cheatsEnabled: false,
| 285| 285| 			disabledTemplates: {},
| 286| 286| 			disabledTechnologies: {},
| 287|    |-			hasSharedDropsites: false,
|    | 287|+			"hasSharedDropsites": false,
| 288| 288| 			hasSharedLos: false,
| 289| 289| 			spyCostMultiplier: 1,
| 290| 290| 			phase: "village",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'hasSharedLos' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 285| 285| 			disabledTemplates: {},
| 286| 286| 			disabledTechnologies: {},
| 287| 287| 			hasSharedDropsites: false,
| 288|    |-			hasSharedLos: false,
|    | 288|+			"hasSharedLos": false,
| 289| 289| 			spyCostMultiplier: 1,
| 290| 290| 			phase: "village",
| 291| 291| 			isAlly: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'spyCostMultiplier' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 286| 286| 			disabledTechnologies: {},
| 287| 287| 			hasSharedDropsites: false,
| 288| 288| 			hasSharedLos: false,
| 289|    |-			spyCostMultiplier: 1,
|    | 289|+			"spyCostMultiplier": 1,
| 290| 290| 			phase: "village",
| 291| 291| 			isAlly: [false, false],
| 292| 292| 			isMutualAlly: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'phase' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 287| 287| 			hasSharedDropsites: false,
| 288| 288| 			hasSharedLos: false,
| 289| 289| 			spyCostMultiplier: 1,
| 290|    |-			phase: "village",
|    | 290|+			"phase": "village",
| 291| 291| 			isAlly: [false, false],
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 288| 288| 			hasSharedLos: false,
| 289| 289| 			spyCostMultiplier: 1,
| 290| 290| 			phase: "village",
| 291|    |-			isAlly: [false, false],
|    | 291|+			"isAlly": [false, false],
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isMutualAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 289| 289| 			spyCostMultiplier: 1,
| 290| 290| 			phase: "village",
| 291| 291| 			isAlly: [false, false],
| 292|    |-			isMutualAlly: [false, false],
|    | 292|+			"isMutualAlly": [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isNeutral' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 290| 290| 			phase: "village",
| 291| 291| 			isAlly: [false, false],
| 292| 292| 			isMutualAlly: [false, false],
| 293|    |-			isNeutral: [false, false],
|    | 293|+			"isNeutral": [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isEnemy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 291| 291| 			isAlly: [false, false],
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294|    |-			isEnemy: [true, true],
|    | 294|+			"isEnemy": [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityLimits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295|    |-			entityLimits: {"Foo": 10},
|    | 295|+			"entityLimits": {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295|    |-			entityLimits: {"Foo": 10},
|    | 295|+			entityLimits: { "Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 292| 292| 			isMutualAlly: [false, false],
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295|    |-			entityLimits: {"Foo": 10},
|    | 295|+			entityLimits: {"Foo": 10 },
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296|    |-			entityCounts: {"Foo": 5},
|    | 296|+			"entityCounts": {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296|    |-			entityCounts: {"Foo": 5},
|    | 296|+			entityCounts: { "Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 293| 293| 			isNeutral: [false, false],
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296|    |-			entityCounts: {"Foo": 5},
|    | 296|+			entityCounts: {"Foo": 5 },
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityLimitChangers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297|    |-			entityLimitChangers: {"Foo": {}},
|    | 297|+			"entityLimitChangers": {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297|    |-			entityLimitChangers: {"Foo": {}},
|    | 297|+			entityLimitChangers: { "Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 294| 294| 			isEnemy: [true, true],
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297|    |-			entityLimitChangers: {"Foo": {}},
|    | 297|+			entityLimitChangers: {"Foo": {} },
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'persistentEntityCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 295| 295| 			entityLimits: {"Foo": 10},
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298|    |-			persistentEntityCounts: { "Bar": 0 },
|    | 298|+			"persistentEntityCounts": { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchQueued' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 296| 296| 			entityCounts: {"Foo": 5},
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299|    |-			researchQueued: new Map(),
|    | 299|+			"researchQueued": new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
| 302| 302| 			classCounts: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchStarted' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 297| 297| 			entityLimitChangers: {"Foo": {}},
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
| 300|    |-			researchStarted: new Set(),
|    | 300|+			"researchStarted": new Set(),
| 301| 301| 			researchedTechs: new Set(),
| 302| 302| 			classCounts: {},
| 303| 303| 			typeCountsByClass: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchedTechs' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 298| 298| 			persistentEntityCounts: { "Bar": 0 },
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301|    |-			researchedTechs: new Set(),
|    | 301|+			"researchedTechs": new Set(),
| 302| 302| 			classCounts: {},
| 303| 303| 			typeCountsByClass: {},
| 304| 304| 			canBarter: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'classCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 299| 299| 			researchQueued: new Map(),
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
| 302|    |-			classCounts: {},
|    | 302|+			"classCounts": {},
| 303| 303| 			typeCountsByClass: {},
| 304| 304| 			canBarter: false,
| 305| 305| 			barterPrices: {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'typeCountsByClass' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 300| 300| 			researchStarted: new Set(),
| 301| 301| 			researchedTechs: new Set(),
| 302| 302| 			classCounts: {},
| 303|    |-			typeCountsByClass: {},
|    | 303|+			"typeCountsByClass": {},
| 304| 304| 			canBarter: false,
| 305| 305| 			barterPrices: {
| 306| 306| 				"buy": { "food": 150 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'canBarter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 301| 301| 			researchedTechs: new Set(),
| 302| 302| 			classCounts: {},
| 303| 303| 			typeCountsByClass: {},
| 304|    |-			canBarter: false,
|    | 304|+			"canBarter": false,
| 305| 305| 			barterPrices: {
| 306| 306| 				"buy": { "food": 150 },
| 307| 307| 				"sell": { "food": 25 }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'barterPrices' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 302| 302| 			classCounts: {},
| 303| 303| 			typeCountsByClass: {},
| 304| 304| 			canBarter: false,
| 305|    |-			barterPrices: {
|    | 305|+			"barterPrices": {
| 306| 306| 				"buy": { "food": 150 },
| 307| 307| 				"sell": { "food": 25 }
| 308| 308| 			},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'statistics' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 306| 306| 				"buy": { "food": 150 },
| 307| 307| 				"sell": { "food": 25 }
| 308| 308| 			},
| 309|    |-			statistics: {
|    | 309|+			"statistics": {
| 310| 310| 				resourcesGathered: {
| 311| 311| 					food: 100,
| 312| 312| 					wood: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'resourcesGathered' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 307| 307| 				"sell": { "food": 25 }
| 308| 308| 			},
| 309| 309| 			statistics: {
| 310|    |-				resourcesGathered: {
|    | 310|+				"resourcesGathered": {
| 311| 311| 					food: 100,
| 312| 312| 					wood: 0,
| 313| 313| 					metal: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 308| 308| 			},
| 309| 309| 			statistics: {
| 310| 310| 				resourcesGathered: {
| 311|    |-					food: 100,
|    | 311|+					"food": 100,
| 312| 312| 					wood: 0,
| 313| 313| 					metal: 0,
| 314| 314| 					stone: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'wood' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 309| 309| 			statistics: {
| 310| 310| 				resourcesGathered: {
| 311| 311| 					food: 100,
| 312|    |-					wood: 0,
|    | 312|+					"wood": 0,
| 313| 313| 					metal: 0,
| 314| 314| 					stone: 0,
| 315| 315| 					vegetarianFood: 0
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'metal' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 310| 310| 				resourcesGathered: {
| 311| 311| 					food: 100,
| 312| 312| 					wood: 0,
| 313|    |-					metal: 0,
|    | 313|+					"metal": 0,
| 314| 314| 					stone: 0,
| 315| 315| 					vegetarianFood: 0
| 316| 316| 				},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'stone' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 311| 311| 					food: 100,
| 312| 312| 					wood: 0,
| 313| 313| 					metal: 0,
| 314|    |-					stone: 0,
|    | 314|+					"stone": 0,
| 315| 315| 					vegetarianFood: 0
| 316| 316| 				},
| 317| 317| 				percentMapExplored: 10
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'vegetarianFood' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 312| 312| 					wood: 0,
| 313| 313| 					metal: 0,
| 314| 314| 					stone: 0,
| 315|    |-					vegetarianFood: 0
|    | 315|+					"vegetarianFood": 0
| 316| 316| 				},
| 317| 317| 				percentMapExplored: 10
| 318| 318| 			}
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'percentMapExplored' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 314| 314| 					stone: 0,
| 315| 315| 					vegetarianFood: 0
| 316| 316| 				},
| 317|    |-				percentMapExplored: 10
|    | 317|+				"percentMapExplored": 10
| 318| 318| 			}
| 319| 319| 		},
| 320| 320| 		{
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'name' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 318| 318| 			}
| 319| 319| 		},
| 320| 320| 		{
| 321|    |-			name: "Player 2",
|    | 321|+			"name": "Player 2",
| 322| 322| 			civ: "mace",
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'civ' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 319| 319| 		},
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322|    |-			civ: "mace",
|    | 322|+			"civ": "mace",
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'color' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			"color": { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'r' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { "r":1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'r'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r: 1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'g' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, "g":0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'g'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g: 0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'b' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g:0, "b":0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'b'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g:0, b: 0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'a' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g:0, b:0, "a":1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'a'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 320| 320| 		{
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323|    |-			color: { r:1, g:0, b:0, a:1 },
|    | 323|+			color: { r:1, g:0, b:0, a: 1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'controlsAll' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 321| 321| 			name: "Player 2",
| 322| 322| 			civ: "mace",
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324|    |-			controlsAll: true,
|    | 324|+			"controlsAll": true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popCount' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 322| 322| 			civ: "mace",
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325|    |-			popCount: 40,
|    | 325|+			"popCount": 40,
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popLimit' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 323| 323| 			color: { r:1, g:0, b:0, a:1 },
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326|    |-			popLimit: 30,
|    | 326|+			"popLimit": 30,
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
| 329| 329| 			resourceCounts: { food: 200 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'popMax' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 324| 324| 			controlsAll: true,
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
| 327|    |-			popMax: 300,
|    | 327|+			"popMax": 300,
| 328| 328| 			panelEntities: [],
| 329| 329| 			resourceCounts: { food: 200 },
| 330| 330| 			trainingBlocked: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'panelEntities' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 325| 325| 			popCount: 40,
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
| 328|    |-			panelEntities: [],
|    | 328|+			"panelEntities": [],
| 329| 329| 			resourceCounts: { food: 200 },
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'resourceCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
| 329|    |-			resourceCounts: { food: 200 },
|    | 329|+			"resourceCounts": { food: 200 },
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 326| 326| 			popLimit: 30,
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
| 329|    |-			resourceCounts: { food: 200 },
|    | 329|+			resourceCounts: { "food": 200 },
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'trainingBlocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 327| 327| 			popMax: 300,
| 328| 328| 			panelEntities: [],
| 329| 329| 			resourceCounts: { food: 200 },
| 330|    |-			trainingBlocked: false,
|    | 330|+			"trainingBlocked": false,
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
| 333| 333| 			teamsLocked: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'state' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 328| 328| 			panelEntities: [],
| 329| 329| 			resourceCounts: { food: 200 },
| 330| 330| 			trainingBlocked: false,
| 331|    |-			state: "active",
|    | 331|+			"state": "active",
| 332| 332| 			team: -1,
| 333| 333| 			teamsLocked: false,
| 334| 334| 			cheatsEnabled: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'team' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 329| 329| 			resourceCounts: { food: 200 },
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
| 332|    |-			team: -1,
|    | 332|+			"team": -1,
| 333| 333| 			teamsLocked: false,
| 334| 334| 			cheatsEnabled: false,
| 335| 335| 			disabledTemplates: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'teamsLocked' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 330| 330| 			trainingBlocked: false,
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
| 333|    |-			teamsLocked: false,
|    | 333|+			"teamsLocked": false,
| 334| 334| 			cheatsEnabled: false,
| 335| 335| 			disabledTemplates: {},
| 336| 336| 			disabledTechnologies: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'cheatsEnabled' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 331| 331| 			state: "active",
| 332| 332| 			team: -1,
| 333| 333| 			teamsLocked: false,
| 334|    |-			cheatsEnabled: false,
|    | 334|+			"cheatsEnabled": false,
| 335| 335| 			disabledTemplates: {},
| 336| 336| 			disabledTechnologies: {},
| 337| 337| 			hasSharedDropsites: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'disabledTemplates' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 332| 332| 			team: -1,
| 333| 333| 			teamsLocked: false,
| 334| 334| 			cheatsEnabled: false,
| 335|    |-			disabledTemplates: {},
|    | 335|+			"disabledTemplates": {},
| 336| 336| 			disabledTechnologies: {},
| 337| 337| 			hasSharedDropsites: false,
| 338| 338| 			hasSharedLos: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'disabledTechnologies' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 333| 333| 			teamsLocked: false,
| 334| 334| 			cheatsEnabled: false,
| 335| 335| 			disabledTemplates: {},
| 336|    |-			disabledTechnologies: {},
|    | 336|+			"disabledTechnologies": {},
| 337| 337| 			hasSharedDropsites: false,
| 338| 338| 			hasSharedLos: false,
| 339| 339| 			spyCostMultiplier: 1,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'hasSharedDropsites' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 334| 334| 			cheatsEnabled: false,
| 335| 335| 			disabledTemplates: {},
| 336| 336| 			disabledTechnologies: {},
| 337|    |-			hasSharedDropsites: false,
|    | 337|+			"hasSharedDropsites": false,
| 338| 338| 			hasSharedLos: false,
| 339| 339| 			spyCostMultiplier: 1,
| 340| 340| 			phase: "village",
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'hasSharedLos' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 335| 335| 			disabledTemplates: {},
| 336| 336| 			disabledTechnologies: {},
| 337| 337| 			hasSharedDropsites: false,
| 338|    |-			hasSharedLos: false,
|    | 338|+			"hasSharedLos": false,
| 339| 339| 			spyCostMultiplier: 1,
| 340| 340| 			phase: "village",
| 341| 341| 			isAlly: [true, true],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'spyCostMultiplier' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 336| 336| 			disabledTechnologies: {},
| 337| 337| 			hasSharedDropsites: false,
| 338| 338| 			hasSharedLos: false,
| 339|    |-			spyCostMultiplier: 1,
|    | 339|+			"spyCostMultiplier": 1,
| 340| 340| 			phase: "village",
| 341| 341| 			isAlly: [true, true],
| 342| 342| 			isMutualAlly: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'phase' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 337| 337| 			hasSharedDropsites: false,
| 338| 338| 			hasSharedLos: false,
| 339| 339| 			spyCostMultiplier: 1,
| 340|    |-			phase: "village",
|    | 340|+			"phase": "village",
| 341| 341| 			isAlly: [true, true],
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 338| 338| 			hasSharedLos: false,
| 339| 339| 			spyCostMultiplier: 1,
| 340| 340| 			phase: "village",
| 341|    |-			isAlly: [true, true],
|    | 341|+			"isAlly": [true, true],
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isMutualAlly' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 339| 339| 			spyCostMultiplier: 1,
| 340| 340| 			phase: "village",
| 341| 341| 			isAlly: [true, true],
| 342|    |-			isMutualAlly: [false, false],
|    | 342|+			"isMutualAlly": [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isNeutral' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 340| 340| 			phase: "village",
| 341| 341| 			isAlly: [true, true],
| 342| 342| 			isMutualAlly: [false, false],
| 343|    |-			isNeutral: [false, false],
|    | 343|+			"isNeutral": [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'isEnemy' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 341| 341| 			isAlly: [true, true],
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344|    |-			isEnemy: [false, false],
|    | 344|+			"isEnemy": [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityLimits' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345|    |-			entityLimits: {"Bar": 20},
|    | 345|+			"entityLimits": {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345|    |-			entityLimits: {"Bar": 20},
|    | 345|+			entityLimits: { "Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 342| 342| 			isMutualAlly: [false, false],
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345|    |-			entityLimits: {"Bar": 20},
|    | 345|+			entityLimits: {"Bar": 20 },
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346|    |-			entityCounts: {"Bar": 0},
|    | 346|+			"entityCounts": {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346|    |-			entityCounts: {"Bar": 0},
|    | 346|+			entityCounts: { "Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 343| 343| 			isNeutral: [false, false],
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346|    |-			entityCounts: {"Bar": 0},
|    | 346|+			entityCounts: {"Bar": 0 },
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'entityLimitChangers' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347|    |-			entityLimitChangers: {"Bar": {}},
|    | 347|+			"entityLimitChangers": {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347|    |-			entityLimitChangers: {"Bar": {}},
|    | 347|+			entityLimitChangers: { "Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 344| 344| 			isEnemy: [false, false],
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347|    |-			entityLimitChangers: {"Bar": {}},
|    | 347|+			entityLimitChangers: {"Bar": {} },
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'persistentEntityCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 345| 345| 			entityLimits: {"Bar": 20},
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348|    |-			persistentEntityCounts: { "Foo": 0 },
|    | 348|+			"persistentEntityCounts": { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchQueued' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 346| 346| 			entityCounts: {"Bar": 0},
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349|    |-			researchQueued: new Map(),
|    | 349|+			"researchQueued": new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
| 352| 352| 			classCounts: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchStarted' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 347| 347| 			entityLimitChangers: {"Bar": {}},
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
| 350|    |-			researchStarted: new Set(),
|    | 350|+			"researchStarted": new Set(),
| 351| 351| 			researchedTechs: new Set(),
| 352| 352| 			classCounts: {},
| 353| 353| 			typeCountsByClass: {},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'researchedTechs' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 348| 348| 			persistentEntityCounts: { "Foo": 0 },
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351|    |-			researchedTechs: new Set(),
|    | 351|+			"researchedTechs": new Set(),
| 352| 352| 			classCounts: {},
| 353| 353| 			typeCountsByClass: {},
| 354| 354| 			canBarter: false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'classCounts' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 349| 349| 			researchQueued: new Map(),
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
| 352|    |-			classCounts: {},
|    | 352|+			"classCounts": {},
| 353| 353| 			typeCountsByClass: {},
| 354| 354| 			canBarter: false,
| 355| 355| 			barterPrices: {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'typeCountsByClass' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 350| 350| 			researchStarted: new Set(),
| 351| 351| 			researchedTechs: new Set(),
| 352| 352| 			classCounts: {},
| 353|    |-			typeCountsByClass: {},
|    | 353|+			"typeCountsByClass": {},
| 354| 354| 			canBarter: false,
| 355| 355| 			barterPrices: {
| 356| 356| 				"buy": { "food": 150 },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'canBarter' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 351| 351| 			researchedTechs: new Set(),
| 352| 352| 			classCounts: {},
| 353| 353| 			typeCountsByClass: {},
| 354|    |-			canBarter: false,
|    | 354|+			"canBarter": false,
| 355| 355| 			barterPrices: {
| 356| 356| 				"buy": { "food": 150 },
| 357| 357| 				"sell": { "food": 25 }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'barterPrices' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 352| 352| 			classCounts: {},
| 353| 353| 			typeCountsByClass: {},
| 354| 354| 			canBarter: false,
| 355|    |-			barterPrices: {
|    | 355|+			"barterPrices": {
| 356| 356| 				"buy": { "food": 150 },
| 357| 357| 				"sell": { "food": 25 }
| 358| 358| 			},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'statistics' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 356| 356| 				"buy": { "food": 150 },
| 357| 357| 				"sell": { "food": 25 }
| 358| 358| 			},
| 359|    |-			statistics: {
|    | 359|+			"statistics": {
| 360| 360| 				resourcesGathered: {
| 361| 361| 					food: 100,
| 362| 362| 					wood: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'resourcesGathered' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 357| 357| 				"sell": { "food": 25 }
| 358| 358| 			},
| 359| 359| 			statistics: {
| 360|    |-				resourcesGathered: {
|    | 360|+				"resourcesGathered": {
| 361| 361| 					food: 100,
| 362| 362| 					wood: 0,
| 363| 363| 					metal: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'food' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 358| 358| 			},
| 359| 359| 			statistics: {
| 360| 360| 				resourcesGathered: {
| 361|    |-					food: 100,
|    | 361|+					"food": 100,
| 362| 362| 					wood: 0,
| 363| 363| 					metal: 0,
| 364| 364| 					stone: 0,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'wood' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 359| 359| 			statistics: {
| 360| 360| 				resourcesGathered: {
| 361| 361| 					food: 100,
| 362|    |-					wood: 0,
|    | 362|+					"wood": 0,
| 363| 363| 					metal: 0,
| 364| 364| 					stone: 0,
| 365| 365| 					vegetarianFood: 0
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'metal' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 360| 360| 				resourcesGathered: {
| 361| 361| 					food: 100,
| 362| 362| 					wood: 0,
| 363|    |-					metal: 0,
|    | 363|+					"metal": 0,
| 364| 364| 					stone: 0,
| 365| 365| 					vegetarianFood: 0
| 366| 366| 				},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'stone' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 361| 361| 					food: 100,
| 362| 362| 					wood: 0,
| 363| 363| 					metal: 0,
| 364|    |-					stone: 0,
|    | 364|+					"stone": 0,
| 365| 365| 					vegetarianFood: 0
| 366| 366| 				},
| 367| 367| 				percentMapExplored: 10
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'vegetarianFood' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 362| 362| 					wood: 0,
| 363| 363| 					metal: 0,
| 364| 364| 					stone: 0,
| 365|    |-					vegetarianFood: 0
|    | 365|+					"vegetarianFood": 0
| 366| 366| 				},
| 367| 367| 				percentMapExplored: 10
| 368| 368| 			}
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'percentMapExplored' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 364| 364| 					stone: 0,
| 365| 365| 					vegetarianFood: 0
| 366| 366| 				},
| 367|    |-				percentMapExplored: 10
|    | 367|+				"percentMapExplored": 10
| 368| 368| 			}
| 369| 369| 		}
| 370| 370| 	],
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'circularMap' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 368| 368| 			}
| 369| 369| 		}
| 370| 370| 	],
| 371|    |-	circularMap: false,
|    | 371|+	"circularMap": false,
| 372| 372| 	timeElapsed: 0,
| 373| 373| 	"victoryConditions": ["conquest", "wonder"],
| 374| 374| 	alliedVictory: false
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'timeElapsed' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 369| 369| 		}
| 370| 370| 	],
| 371| 371| 	circularMap: false,
| 372|    |-	timeElapsed: 0,
|    | 372|+	"timeElapsed": 0,
| 373| 373| 	"victoryConditions": ["conquest", "wonder"],
| 374| 374| 	alliedVictory: false
| 375| 375| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'alliedVictory' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 371| 371| 	circularMap: false,
| 372| 372| 	timeElapsed: 0,
| 373| 373| 	"victoryConditions": ["conquest", "wonder"],
| 374|    |-	alliedVictory: false
|    | 374|+	"alliedVictory": false
| 375| 375| });
| 376| 376| 
| 377| 377| TS_ASSERT_UNEVAL_EQUALS(cmp.GetExtendedSimulationState(), {
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'r'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 379| 379| 		{
| 380| 380| 			"name": "Player 1",
| 381| 381| 			"civ": "gaia",
| 382|    |-			"color": { "r":1, "g":1, "b":1, "a":1 },
|    | 382|+			"color": { "r": 1, "g":1, "b":1, "a":1 },
| 383| 383| 			"controlsAll": false,
| 384| 384| 			"popCount": 10,
| 385| 385| 			"popLimit": 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'g'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 379| 379| 		{
| 380| 380| 			"name": "Player 1",
| 381| 381| 			"civ": "gaia",
| 382|    |-			"color": { "r":1, "g":1, "b":1, "a":1 },
|    | 382|+			"color": { "r":1, "g": 1, "b":1, "a":1 },
| 383| 383| 			"controlsAll": false,
| 384| 384| 			"popCount": 10,
| 385| 385| 			"popLimit": 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'b'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 379| 379| 		{
| 380| 380| 			"name": "Player 1",
| 381| 381| 			"civ": "gaia",
| 382|    |-			"color": { "r":1, "g":1, "b":1, "a":1 },
|    | 382|+			"color": { "r":1, "g":1, "b": 1, "a":1 },
| 383| 383| 			"controlsAll": false,
| 384| 384| 			"popCount": 10,
| 385| 385| 			"popLimit": 20,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'a'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 379| 379| 		{
| 380| 380| 			"name": "Player 1",
| 381| 381| 			"civ": "gaia",
| 382|    |-			"color": { "r":1, "g":1, "b":1, "a":1 },
|    | 382|+			"color": { "r":1, "g":1, "b":1, "a": 1 },
| 383| 383| 			"controlsAll": false,
| 384| 384| 			"popCount": 10,
| 385| 385| 			"popLimit": 20,
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 401| 401| 			"isMutualAlly": [false, false],
| 402| 402| 			"isNeutral": [false, false],
| 403| 403| 			"isEnemy": [true, true],
| 404|    |-			"entityLimits": {"Foo": 10},
|    | 404|+			"entityLimits": { "Foo": 10},
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407| 407| 			"persistentEntityCounts": { "Bar": 0 },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 401| 401| 			"isMutualAlly": [false, false],
| 402| 402| 			"isNeutral": [false, false],
| 403| 403| 			"isEnemy": [true, true],
| 404|    |-			"entityLimits": {"Foo": 10},
|    | 404|+			"entityLimits": {"Foo": 10 },
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407| 407| 			"persistentEntityCounts": { "Bar": 0 },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 402| 402| 			"isNeutral": [false, false],
| 403| 403| 			"isEnemy": [true, true],
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405|    |-			"entityCounts": {"Foo": 5},
|    | 405|+			"entityCounts": { "Foo": 5},
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407| 407| 			"persistentEntityCounts": { "Bar": 0 },
| 408| 408| 			"researchQueued": new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 402| 402| 			"isNeutral": [false, false],
| 403| 403| 			"isEnemy": [true, true],
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405|    |-			"entityCounts": {"Foo": 5},
|    | 405|+			"entityCounts": {"Foo": 5 },
| 406| 406| 			"entityLimitChangers": {"Foo": {}},
| 407| 407| 			"persistentEntityCounts": { "Bar": 0 },
| 408| 408| 			"researchQueued": new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 403| 403| 			"isEnemy": [true, true],
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406|    |-			"entityLimitChangers": {"Foo": {}},
|    | 406|+			"entityLimitChangers": { "Foo": {}},
| 407| 407| 			"persistentEntityCounts": { "Bar": 0 },
| 408| 408| 			"researchQueued": new Map(),
| 409| 409| 			"researchStarted": new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 403| 403| 			"isEnemy": [true, true],
| 404| 404| 			"entityLimits": {"Foo": 10},
| 405| 405| 			"entityCounts": {"Foo": 5},
| 406|    |-			"entityLimitChangers": {"Foo": {}},
|    | 406|+			"entityLimitChangers": {"Foo": {} },
| 407| 407| 			"persistentEntityCounts": { "Bar": 0 },
| 408| 408| 			"researchQueued": new Map(),
| 409| 409| 			"researchStarted": new Set(),
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'r'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 452| 452| 		{
| 453| 453| 			"name": "Player 2",
| 454| 454| 			"civ": "mace",
| 455|    |-			"color": { "r":1, "g":0, "b":0, "a":1 },
|    | 455|+			"color": { "r": 1, "g":0, "b":0, "a":1 },
| 456| 456| 			"controlsAll": true,
| 457| 457| 			"popCount": 40,
| 458| 458| 			"popLimit": 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'g'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 452| 452| 		{
| 453| 453| 			"name": "Player 2",
| 454| 454| 			"civ": "mace",
| 455|    |-			"color": { "r":1, "g":0, "b":0, "a":1 },
|    | 455|+			"color": { "r":1, "g": 0, "b":0, "a":1 },
| 456| 456| 			"controlsAll": true,
| 457| 457| 			"popCount": 40,
| 458| 458| 			"popLimit": 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'b'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 452| 452| 		{
| 453| 453| 			"name": "Player 2",
| 454| 454| 			"civ": "mace",
| 455|    |-			"color": { "r":1, "g":0, "b":0, "a":1 },
|    | 455|+			"color": { "r":1, "g":0, "b": 0, "a":1 },
| 456| 456| 			"controlsAll": true,
| 457| 457| 			"popCount": 40,
| 458| 458| 			"popLimit": 30,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'a'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 452| 452| 		{
| 453| 453| 			"name": "Player 2",
| 454| 454| 			"civ": "mace",
| 455|    |-			"color": { "r":1, "g":0, "b":0, "a":1 },
|    | 455|+			"color": { "r":1, "g":0, "b":0, "a": 1 },
| 456| 456| 			"controlsAll": true,
| 457| 457| 			"popCount": 40,
| 458| 458| 			"popLimit": 30,
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 474| 474| 			"isMutualAlly": [false, false],
| 475| 475| 			"isNeutral": [false, false],
| 476| 476| 			"isEnemy": [false, false],
| 477|    |-			"entityLimits": {"Bar": 20},
|    | 477|+			"entityLimits": { "Bar": 20},
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480| 480| 			"persistentEntityCounts": { "Foo": 0 },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 474| 474| 			"isMutualAlly": [false, false],
| 475| 475| 			"isNeutral": [false, false],
| 476| 476| 			"isEnemy": [false, false],
| 477|    |-			"entityLimits": {"Bar": 20},
|    | 477|+			"entityLimits": {"Bar": 20 },
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480| 480| 			"persistentEntityCounts": { "Foo": 0 },
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 475| 475| 			"isNeutral": [false, false],
| 476| 476| 			"isEnemy": [false, false],
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478|    |-			"entityCounts": {"Bar": 0},
|    | 478|+			"entityCounts": { "Bar": 0},
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480| 480| 			"persistentEntityCounts": { "Foo": 0 },
| 481| 481| 			"researchQueued": new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 475| 475| 			"isNeutral": [false, false],
| 476| 476| 			"isEnemy": [false, false],
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478|    |-			"entityCounts": {"Bar": 0},
|    | 478|+			"entityCounts": {"Bar": 0 },
| 479| 479| 			"entityLimitChangers": {"Bar": {}},
| 480| 480| 			"persistentEntityCounts": { "Foo": 0 },
| 481| 481| 			"researchQueued": new Map(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 476| 476| 			"isEnemy": [false, false],
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479|    |-			"entityLimitChangers": {"Bar": {}},
|    | 479|+			"entityLimitChangers": { "Bar": {}},
| 480| 480| 			"persistentEntityCounts": { "Foo": 0 },
| 481| 481| 			"researchQueued": new Map(),
| 482| 482| 			"researchStarted": new Set(),
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 476| 476| 			"isEnemy": [false, false],
| 477| 477| 			"entityLimits": {"Bar": 20},
| 478| 478| 			"entityCounts": {"Bar": 0},
| 479|    |-			"entityLimitChangers": {"Bar": {}},
|    | 479|+			"entityLimitChangers": {"Bar": {} },
| 480| 480| 			"persistentEntityCounts": { "Foo": 0 },
| 481| 481| 			"researchQueued": new Map(),
| 482| 482| 			"researchStarted": new Set(),
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetEntitiesList' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 531| 531| 
| 532| 532| 
| 533| 533| AddMock(10, IID_Builder, {
| 534|    |-	GetEntitiesList: function() {
|    | 534|+	"GetEntitiesList": function() {
| 535| 535| 		return ["test1", "test2"];
| 536| 536| 	},
| 537| 537| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetHitpoints' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 537| 537| });
| 538| 538| 
| 539| 539| AddMock(10, IID_Health, {
| 540|    |-	GetHitpoints: function() { return 50; },
|    | 540|+	"GetHitpoints": function() { return 50; },
| 541| 541| 	GetMaxHitpoints: function() { return 60; },
| 542| 542| 	IsRepairable: function() { return false; },
| 543| 543| 	IsUnhealable: function() { return false; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetMaxHitpoints' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 538| 538| 
| 539| 539| AddMock(10, IID_Health, {
| 540| 540| 	GetHitpoints: function() { return 50; },
| 541|    |-	GetMaxHitpoints: function() { return 60; },
|    | 541|+	"GetMaxHitpoints": function() { return 60; },
| 542| 542| 	IsRepairable: function() { return false; },
| 543| 543| 	IsUnhealable: function() { return false; }
| 544| 544| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsRepairable' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 539| 539| AddMock(10, IID_Health, {
| 540| 540| 	GetHitpoints: function() { return 50; },
| 541| 541| 	GetMaxHitpoints: function() { return 60; },
| 542|    |-	IsRepairable: function() { return false; },
|    | 542|+	"IsRepairable": function() { return false; },
| 543| 543| 	IsUnhealable: function() { return false; }
| 544| 544| });
| 545| 545| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsUnhealable' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 540| 540| 	GetHitpoints: function() { return 50; },
| 541| 541| 	GetMaxHitpoints: function() { return 60; },
| 542| 542| 	IsRepairable: function() { return false; },
| 543|    |-	IsUnhealable: function() { return false; }
|    | 543|+	"IsUnhealable": function() { return false; }
| 544| 544| });
| 545| 545| 
| 546| 546| AddMock(10, IID_Identity, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetClassesList' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 544| 544| });
| 545| 545| 
| 546| 546| AddMock(10, IID_Identity, {
| 547|    |-	GetClassesList: function() { return ["class1", "class2"]; },
|    | 547|+	"GetClassesList": function() { return ["class1", "class2"]; },
| 548| 548| 	GetVisibleClassesList: function() { return ["class3", "class4"]; },
| 549| 549| 	GetRank: function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetVisibleClassesList' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 545| 545| 
| 546| 546| AddMock(10, IID_Identity, {
| 547| 547| 	GetClassesList: function() { return ["class1", "class2"]; },
| 548|    |-	GetVisibleClassesList: function() { return ["class3", "class4"]; },
|    | 548|+	"GetVisibleClassesList": function() { return ["class3", "class4"]; },
| 549| 549| 	GetRank: function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
| 551| 551| 	HasClass: function() { return true; },
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetRank' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 546| 546| AddMock(10, IID_Identity, {
| 547| 547| 	GetClassesList: function() { return ["class1", "class2"]; },
| 548| 548| 	GetVisibleClassesList: function() { return ["class3", "class4"]; },
| 549|    |-	GetRank: function() { return "foo"; },
|    | 549|+	"GetRank": function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
| 551| 551| 	HasClass: function() { return true; },
| 552| 552| 	IsUndeletable: function() { return false; }
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetSelectionGroupName' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 547| 547| 	GetClassesList: function() { return ["class1", "class2"]; },
| 548| 548| 	GetVisibleClassesList: function() { return ["class3", "class4"]; },
| 549| 549| 	GetRank: function() { return "foo"; },
| 550|    |-	GetSelectionGroupName: function() { return "Selection Group Name"; },
|    | 550|+	"GetSelectionGroupName": function() { return "Selection Group Name"; },
| 551| 551| 	HasClass: function() { return true; },
| 552| 552| 	IsUndeletable: function() { return false; }
| 553| 553| });
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'HasClass' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 548| 548| 	GetVisibleClassesList: function() { return ["class3", "class4"]; },
| 549| 549| 	GetRank: function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
| 551|    |-	HasClass: function() { return true; },
|    | 551|+	"HasClass": function() { return true; },
| 552| 552| 	IsUndeletable: function() { return false; }
| 553| 553| });
| 554| 554| 
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsUndeletable' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 549| 549| 	GetRank: function() { return "foo"; },
| 550| 550| 	GetSelectionGroupName: function() { return "Selection Group Name"; },
| 551| 551| 	HasClass: function() { return true; },
| 552|    |-	IsUndeletable: function() { return false; }
|    | 552|+	"IsUndeletable": function() { return false; }
| 553| 553| });
| 554| 554| 
| 555| 555| AddMock(10, IID_Position, {
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetTurretParent' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 553| 553| });
| 554| 554| 
| 555| 555| AddMock(10, IID_Position, {
| 556|    |-	GetTurretParent: function() {return INVALID_ENTITY;},
|    | 556|+	"GetTurretParent": function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558| 558| 		return {x:1, y:2, z:3};
| 559| 559| 	},
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'GetPosition' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 554| 554| 
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557|    |-	GetPosition: function() {
|    | 557|+	"GetPosition": function() {
| 558| 558| 		return {x:1, y:2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return { x:1, y:2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'x' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {"x":1, y:2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'x'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x: 1, y:2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'y' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, "y":2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'y'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, y: 2, z:3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'z' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, y:2, "z":3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'z'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, y:2, z: 3};
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 555| 555| AddMock(10, IID_Position, {
| 556| 556| 	GetTurretParent: function() {return INVALID_ENTITY;},
| 557| 557| 	GetPosition: function() {
| 558|    |-		return {x:1, y:2, z:3};
|    | 558|+		return {x:1, y:2, z:3 };
| 559| 559| 	},
| 560| 560| 	IsInWorld: function() {
| 561| 561| 		return true;
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'IsInWorld' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 557| 557| 	GetPosition: function() {
| 558| 558| 		return {x:1, y:2, z:3};
| 559| 559| 	},
| 560|    |-	IsInWorld: function() {
|    | 560|+	"IsInWorld": function() {
| 561| 561| 		return true;
| 562| 562| 	}
| 563| 563| });
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required after '{'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": { x:1, y:2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'x' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {"x":1, y:2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'x'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x: 1, y:2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'y' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, "y":2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'y'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, y: 2, z:3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (quote-props):
|    | Unquoted property 'z' found.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, y:2, "z":3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'z'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, y:2, z: 3},
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (object-curly-spacing):
|    | A space is required before '}'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 581| 581| 		"selectionGroupName": "Selection Group Name",
| 582| 582| 		"canDelete": true
| 583| 583| 	},
| 584|    |-	"position": {x:1, y:2, z:3},
|    | 584|+	"position": {x:1, y:2, z:3 },
| 585| 585| 	"hitpoints": 50,
| 586| 586| 	"maxHitpoints": 60,
| 587| 587| 	"needsRepair": false,
|    | [NORMAL] ESLintBear (key-spacing):
|    | Missing space before value for key 'isBarterMarket'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_GuiInterface.js
| 589| 589| 	"builder": true,
| 590| 590| 	"canGarrison": false,
| 591| 591| 	"visibility": "visible",
| 592|    |-	"isBarterMarket":true,
|    | 592|+	"isBarterMarket": true,
| 593| 593| 	"resourceTrickle": {
| 594| 594| 		"interval": 1250,
| 595| 595| 		"rates": { "food": 2, "wood": 3, "stone": 5, "metal": 9 }
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 2 tabs but found 3.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
| 822| 822| 		updateEntityColor(data.showAllStatusBars && (i == player || player == -1) ?
| 823| 823| 			[IID_Minimap, IID_RangeOverlayRenderer, IID_RallyPointRenderer, IID_StatusBars] :
| 824| 824| 			[IID_Minimap, IID_RangeOverlayRenderer, IID_RallyPointRenderer],
| 825|    |-			cmpRangeManager.GetEntitiesByPlayer(i));
|    | 825|+		cmpRangeManager.GetEntitiesByPlayer(i));
| 826| 826| 	}
| 827| 827| 	updateEntityColor([IID_Selectable, IID_StatusBars], data.selected);
| 828| 828| 	Engine.QueryInterface(SYSTEM_ENTITY, IID_TerritoryManager).UpdateColors();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|1655|1655| 			{
|1656|1656| 				minDist2 = dist2;
|1657|1657| 				minDistEntitySnapData = {
|1658|    |-						"x": pos.x,
|    |1658|+					"x": pos.x,
|1659|1659| 						"z": pos.z,
|1660|1660| 						"angle": cmpPosition.GetRotation().y,
|1661|1661| 						"ent": ent
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|1656|1656| 				minDist2 = dist2;
|1657|1657| 				minDistEntitySnapData = {
|1658|1658| 						"x": pos.x,
|1659|    |-						"z": pos.z,
|    |1659|+					"z": pos.z,
|1660|1660| 						"angle": cmpPosition.GetRotation().y,
|1661|1661| 						"ent": ent
|1662|1662| 				};
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|1657|1657| 				minDistEntitySnapData = {
|1658|1658| 						"x": pos.x,
|1659|1659| 						"z": pos.z,
|1660|    |-						"angle": cmpPosition.GetRotation().y,
|    |1660|+					"angle": cmpPosition.GetRotation().y,
|1661|1661| 						"ent": ent
|1662|1662| 				};
|1663|1663| 			}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/GuiInterface.js
|1658|1658| 						"x": pos.x,
|1659|1659| 						"z": pos.z,
|1660|1660| 						"angle": cmpPosition.GetRotation().y,
|1661|    |-						"ent": ent
|    |1661|+					"ent": ent
|1662|1662| 				};
|1663|1663| 			}
|1664|1664| 		}
|    | [NORMAL] ESLintBear (operator-linebreak):
|    | '&&' should be placed at the end of the line.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
| 527| 527| 			if (cmpGarrisonHolder)
| 528| 528| 			{
| 529| 529| 				// Only the owner of the garrisonHolder may unload entities from any owners
| 530|    |-				if (!IsOwnedByPlayer(player, garrisonHolder) && !data.controlAllUnits
| 531|    |-				    && player != +cmd.owner)
|    | 530|+				if (!IsOwnedByPlayer(player, garrisonHolder) && !data.controlAllUnits &&
|    | 531|+				    player != +cmd.owner)
| 532| 532| 						continue;
| 533| 533| 
| 534| 534| 				if (!cmpGarrisonHolder.UnloadTemplate(cmd.template, cmd.owner, cmd.all))
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
| 529| 529| 				// Only the owner of the garrisonHolder may unload entities from any owners
| 530| 530| 				if (!IsOwnedByPlayer(player, garrisonHolder) && !data.controlAllUnits
| 531| 531| 				    && player != +cmd.owner)
| 532|    |-						continue;
|    | 532|+					continue;
| 533| 533| 
| 534| 534| 				if (!cmpGarrisonHolder.UnloadTemplate(cmd.template, cmd.owner, cmd.all))
| 535| 535| 					notifyUnloadFailure(player, garrisonHolder);
|    | [NORMAL] ESLintBear (key-spacing):
|    | Extra space after key 'metadata'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1133|1133| 
|1134|1134| 	// send Metadata info if any
|1135|1135| 	if (cmd.metadata)
|1136|    |-		Engine.PostMessage(ent, MT_AIMetadata, { "id": ent, "metadata" : cmd.metadata, "owner" : player } );
|    |1136|+		Engine.PostMessage(ent, MT_AIMetadata, { "id": ent, "metadata": cmd.metadata, "owner" : player } );
|1137|1137| 
|1138|1138| 	// Tell the units to start building this new entity
|1139|1139| 	if (cmd.autorepair)
|    | [NORMAL] ESLintBear (key-spacing):
|    | Extra space after key 'owner'.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1133|1133| 
|1134|1134| 	// send Metadata info if any
|1135|1135| 	if (cmd.metadata)
|1136|    |-		Engine.PostMessage(ent, MT_AIMetadata, { "id": ent, "metadata" : cmd.metadata, "owner" : player } );
|    |1136|+		Engine.PostMessage(ent, MT_AIMetadata, { "id": ent, "metadata" : cmd.metadata, "owner": player } );
|1137|1137| 
|1138|1138| 	// Tell the units to start building this new entity
|1139|1139| 	if (cmd.autorepair)
|    | [NORMAL] ESLintBear (space-in-parens):
|    | There should be no spaces inside this paren.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1133|1133| 
|1134|1134| 	// send Metadata info if any
|1135|1135| 	if (cmd.metadata)
|1136|    |-		Engine.PostMessage(ent, MT_AIMetadata, { "id": ent, "metadata" : cmd.metadata, "owner" : player } );
|    |1136|+		Engine.PostMessage(ent, MT_AIMetadata, { "id": ent, "metadata" : cmd.metadata, "owner" : player });
|1137|1137| 
|1138|1138| 	// Tell the units to start building this new entity
|1139|1139| 	if (cmd.autorepair)
|    | [NORMAL] ESLintBear (spaced-comment):
|    | Expected space or tab after '//' in comment.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1241|1241| 		}
|1242|1242| 
|1243|1243| 		lastTowerControlGroup = cmpSnappedStartObstruction.GetControlGroup();
|1244|    |-		//warn("setting lastTowerControlGroup to control group of start snapped entity " + cmd.startSnappedEntity + ": " + lastTowerControlGroup);
|    |1244|+		// warn("setting lastTowerControlGroup to control group of start snapped entity " + cmd.startSnappedEntity + ": " + lastTowerControlGroup);
|1245|1245| 	}
|1246|1246| 
|1247|1247| 	var i = 0;
|    | [NORMAL] ESLintBear (spaced-comment):
|    | Expected space or tab after '//' in comment.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1305|1305| 
|1306|1306| 				if (i > 0)
|1307|1307| 				{
|1308|    |-					//warn("   updating previous wall piece's secondary control group to " + newTowerControlGroup);
|    |1308|+					// warn("   updating previous wall piece's secondary control group to " + newTowerControlGroup);
|1309|1309| 					var cmpPreviousObstruction = Engine.QueryInterface(pieces[i-1].ent, IID_Obstruction);
|1310|1310| 					// TODO: ensure that cmpPreviousObstruction exists
|1311|1311| 					// TODO: ensure that the previous obstruction does not yet have a secondary control group set
|    | [NORMAL] ESLintBear (operator-linebreak):
|    | '&&' should be placed at the end of the line.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1468|1468| 		// Check that all its members are selected
|1469|1469| 		var fid = formationIds[0];
|1470|1470| 		var cmpFormation = Engine.QueryInterface(+fid, IID_Formation);
|1471|    |-		if (cmpFormation && cmpFormation.GetMemberCount() == formation.members[fid].length
|1472|    |-			&& cmpFormation.GetMemberCount() == formation.entities.length)
|    |1471|+		if (cmpFormation && cmpFormation.GetMemberCount() == formation.members[fid].length &&
|    |1472|+			cmpFormation.GetMemberCount() == formation.entities.length)
|1473|1473| 		{
|1474|1474| 			cmpFormation.DeleteTwinFormations();
|1475|1475| 			// The whole formation was selected, so reuse its controller for this command
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1576|1576| 		for (var i = matrix.length - 1; i >= 0 && !closeClusters; --i)
|1577|1577| 			for (var j = i - 1; j >= 0 && !closeClusters; --j)
|1578|1578| 				if (matrix[i][j] < distSq)
|1579|    |-					closeClusters = [i,j];
|    |1579|+					closeClusters = [i, j];
|1580|1580| 
|1581|1581| 		// if no more close clusters found, just return all found clusters so far
|1582|1582| 		if (!closeClusters)
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1598|1598| 		}
|1599|1599| 		// remove the rows and columns in the matrix for the merged clusters,
|1600|1600| 		// and the clusters themselves from the cluster list
|1601|    |-		clusters.splice(closeClusters[0],1);
|    |1601|+		clusters.splice(closeClusters[0], 1);
|1602|1602| 		clusters.splice(closeClusters[1],1);
|1603|1603| 		matrix.splice(closeClusters[0],1);
|1604|1604| 		matrix.splice(closeClusters[1],1);
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1599|1599| 		// remove the rows and columns in the matrix for the merged clusters,
|1600|1600| 		// and the clusters themselves from the cluster list
|1601|1601| 		clusters.splice(closeClusters[0],1);
|1602|    |-		clusters.splice(closeClusters[1],1);
|    |1602|+		clusters.splice(closeClusters[1], 1);
|1603|1603| 		matrix.splice(closeClusters[0],1);
|1604|1604| 		matrix.splice(closeClusters[1],1);
|1605|1605| 		for (let i = 0; i < matrix.length; ++i)
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1600|1600| 		// and the clusters themselves from the cluster list
|1601|1601| 		clusters.splice(closeClusters[0],1);
|1602|1602| 		clusters.splice(closeClusters[1],1);
|1603|    |-		matrix.splice(closeClusters[0],1);
|    |1603|+		matrix.splice(closeClusters[0], 1);
|1604|1604| 		matrix.splice(closeClusters[1],1);
|1605|1605| 		for (let i = 0; i < matrix.length; ++i)
|1606|1606| 		{
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1601|1601| 		clusters.splice(closeClusters[0],1);
|1602|1602| 		clusters.splice(closeClusters[1],1);
|1603|1603| 		matrix.splice(closeClusters[0],1);
|1604|    |-		matrix.splice(closeClusters[1],1);
|    |1604|+		matrix.splice(closeClusters[1], 1);
|1605|1605| 		for (let i = 0; i < matrix.length; ++i)
|1606|1606| 		{
|1607|1607| 			if (matrix[i].length > closeClusters[0])
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1605|1605| 		for (let i = 0; i < matrix.length; ++i)
|1606|1606| 		{
|1607|1607| 			if (matrix[i].length > closeClusters[0])
|1608|    |-				matrix[i].splice(closeClusters[0],1);
|    |1608|+				matrix[i].splice(closeClusters[0], 1);
|1609|1609| 			if (matrix[i].length > closeClusters[1])
|1610|1610| 				matrix[i].splice(closeClusters[1],1);
|1611|1611| 		}
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
|1607|1607| 			if (matrix[i].length > closeClusters[0])
|1608|1608| 				matrix[i].splice(closeClusters[0],1);
|1609|1609| 			if (matrix[i].length > closeClusters[1])
|1610|    |-				matrix[i].splice(closeClusters[1],1);
|    |1610|+				matrix[i].splice(closeClusters[1], 1);
|1611|1611| 		}
|1612|1612| 		// add a new row of distances to the matrix and the new cluster
|1613|1613| 		clusters.push(newCluster);

binaries/data/mods/public/simulation/helpers/Commands.js
|  43| »   if·(g_Commands[cmd.type])
|    | [MAJOR] ESLintBear (no-use-before-define):
|    | 'g_Commands' was used before it was defined.

binaries/data/mods/public/simulation/helpers/Commands.js
|  47| »   »   g_Commands[cmd.type](player,·cmd,·data);
|    | [MAJOR] ESLintBear (no-use-before-define):
|    | 'g_Commands' was used before it was defined.

binaries/data/mods/public/simulation/helpers/Commands.js
| 779| »   »   let·ent·=·pickRandom(cmpRangeManager.GetEntitiesByPlayer(cmd.player).filter(ent·=>·{
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'ent' is already declared in the upper scope.

binaries/data/mods/public/simulation/helpers/Commands.js
|1264| ····»   »   »   error("[TryConstructWall]·Expected·last·tower·control·group·to·be·available,·none·found·(1st·pass,·iteration·"·+·i·+·")");
|    | [NORMAL] ESLintBear (no-mixed-spaces-and-tabs):
|    | Mixed spaces and tabs.

binaries/data/mods/public/simulation/helpers/Commands.js
|1265| ····»   »   »   break;
|    | [NORMAL] ESLintBear (no-mixed-spaces-and-tabs):
|    | Mixed spaces and tabs.

binaries/data/mods/public/simulation/helpers/Commands.js
|1495| »   »   »   »   var·lastFormationTemplate·=·undefined;
|    | [NORMAL] ESLintBear (no-undef-init):
|    | It's not necessary to initialize 'lastFormationTemplate' to undefined.

binaries/data/mods/public/simulation/helpers/Commands.js
|1574| »   »   var·closeClusters·=·undefined;
|    | [NORMAL] ESLintBear (no-undef-init):
|    | It's not necessary to initialize 'closeClusters' to undefined.

binaries/data/mods/public/simulation/helpers/Commands.js
|1591| »   »   for·(let·i·=·0;·i·<·clusters.length;·++i)
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'i' is already declared in the upper scope.

binaries/data/mods/public/simulation/helpers/Commands.js
|1605| »   »   for·(let·i·=·0;·i·<·matrix.length;·++i)
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'i' is already declared in the upper scope.

binaries/data/mods/public/simulation/helpers/Commands.js
|  53| var·g_Commands·=·{
|    | [NORMAL] JSHintBear:
|    | 'g_Commands' was used before it was defined.

binaries/data/mods/public/simulation/helpers/Commands.js
| 531| »   »   »   »   ····&&·player·!=·+cmd.owner)
|    | [NORMAL] JSHintBear:
|    | Misleading line break before '&&'; readers may interpret this as an expression boundary.

binaries/data/mods/public/simulation/helpers/Commands.js
| 719| »   »   »   »   var·cmpGUIInterface·=·Engine.QueryInterface(SYSTEM_ENTITY,·IID_GuiInterface);
|    | [NORMAL] JSHintBear:
|    | 'cmpGUIInterface' is already defined.

binaries/data/mods/public/simulation/helpers/Commands.js
| 938| »   »   for·(var·i·=·0;·i·<·length;·++i)
|    | [NORMAL] JSHintBear:
|    | 'i' is already defined.

binaries/data/mods/public/simulation/helpers/Commands.js
| 951| »   »   var·count·=·0;
|    | [NORMAL] JSHintBear:
|    | 'count' is already defined.

binaries/data/mods/public/simulation/helpers/Commands.js
|1098| »   »   var·cmpGuiInterface·=·Engine.QueryInterface(SYSTEM_ENTITY,·IID_GuiInterface);
|    | [NORMAL] JSHintBear:
|    | 'cmpGuiInterface' is already defined.

binaries/data/mods/public/simulation/helpers/Commands.js
|1350| »   »   var·piece·=·pieces[j];
|    | [NORMAL] JSHintBear:
|    | 'piece' is already defined.

binaries/data/mods/public/simulation/helpers/Commands.js
|1433| »   »   var·cmpUnitAI·=·Engine.QueryInterface(ent,·IID_UnitAI);
|    | [NORMAL] JSHintBear:
|    | 'cmpUnitAI' is already defined.

binaries/data/mods/public/simulation/helpers/Commands.js
|1472| »   »   »   &&·cmpFormation.GetMemberCount()·==·formation.entities.length)
|    | [NORMAL] JSHintBear:
|    | Misleading line break before '&&'; readers may interpret this as an expression boundary.

binaries/data/mods/public/simulation/helpers/Commands.js
|1498| »   »   »   »   »   var·cmpUnitAI·=·Engine.QueryInterface(ent,·IID_UnitAI);
|    | [NORMAL] JSHintBear:
|    | 'cmpUnitAI' is already defined.

binaries/data/mods/public/simulation/helpers/Commands.js
|1531| »   »   »   var·cmpFormation·=·Engine.QueryInterface(formationEnt,·IID_Formation);
|    | [NORMAL] JSHintBear:
|    | 'cmpFormation' is already defined.
|    | [NORMAL] ESLintBear (space-unary-ops):
|    | Unary word operator 'typeof' must be followed by whitespace.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 329| 329| 	}
| 330| 330| 
| 331| 331| 	var wallPlacementInfo = updateBuildingPlacementPreview(); // entities making up the wall (wall segments, towers, ...)
| 332|    |-	if (!(wallPlacementInfo === false || typeof(wallPlacementInfo) === "object"))
|    | 332|+	if (!(wallPlacementInfo === false || typeof (wallPlacementInfo) === "object"))
| 333| 333| 	{
| 334| 334| 		error("Invalid updateBuildingPlacementPreview return value: " + uneval(wallPlacementInfo));
| 335| 335| 		return false;
|    | [NORMAL] ESLintBear (operator-linebreak):
|    | '&&' should be placed at the end of the line.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 479| 479| 	mouseIsOverObject = (hoveredObject != null);
| 480| 480| 
| 481| 481| 	// Close the menu when interacting with the game world
| 482|    |-	if (!mouseIsOverObject && (ev.type =="mousebuttonup" || ev.type == "mousebuttondown")
| 483|    |-		&& (ev.button == SDL_BUTTON_LEFT || ev.button == SDL_BUTTON_RIGHT))
|    | 482|+	if (!mouseIsOverObject && (ev.type =="mousebuttonup" || ev.type == "mousebuttondown") &&
|    | 483|+		(ev.button == SDL_BUTTON_LEFT || ev.button == SDL_BUTTON_RIGHT))
| 484| 484| 		g_Menu.close();
| 485| 485| 
| 486| 486| 	// State-machine processing:
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 2 tabs but found 3.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 640| 640| 		// user to continue building walls.
| 641| 641| 		switch (ev.type)
| 642| 642| 		{
| 643|    |-			case "mousemotion":
|    | 643|+		case "mousemotion":
| 644| 644| 				placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
| 645| 645| 
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 641| 641| 		switch (ev.type)
| 642| 642| 		{
| 643| 643| 			case "mousemotion":
| 644|    |-				placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
|    | 644|+			placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
| 645| 645| 
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647| 647| 				// the ending point and the starting point to snap to.
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 643| 643| 			case "mousemotion":
| 644| 644| 				placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
| 645| 645| 
| 646|    |-				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
|    | 646|+			// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647| 647| 				// the ending point and the starting point to snap to.
| 648| 648| 				//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 644| 644| 				placementSupport.wallEndPosition = Engine.GetTerrainAtScreenPoint(ev.x, ev.y);
| 645| 645| 
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647|    |-				// the ending point and the starting point to snap to.
|    | 647|+			// the ending point and the starting point to snap to.
| 648| 648| 				//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 645| 645| 
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647| 647| 				// the ending point and the starting point to snap to.
| 648|    |-				//
|    | 648|+			//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 646| 646| 				// Update the building placement preview, and by extension, the list of snapping candidate entities for both (!)
| 647| 647| 				// the ending point and the starting point to snap to.
| 648| 648| 				//
| 649|    |-				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
|    | 649|+			// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 647| 647| 				// the ending point and the starting point to snap to.
| 648| 648| 				//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650|    |-				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
|    | 650|+			// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 648| 648| 				//
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651|    |-				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
|    | 651|+			// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654| 654| 				// points.
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 649| 649| 				// TODO: Note that here, we need to fetch all similar entities, including any offscreen ones, to support the case
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652|    |-				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
|    | 652|+			// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654| 654| 				// points.
| 655| 655| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 650| 650| 				// where the snap entity for the starting point has moved offscreen, or has been deleted/destroyed, or was a
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653|    |-				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
|    | 653|+			// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654| 654| 				// points.
| 655| 655| 
| 656| 656| 				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 651| 651| 				// foundation and has been replaced with a completed entity since the user first chose it. Fetching all towers on
| 652| 652| 				// the entire map instead of only the current screen might get expensive fast since walls all have a ton of towers
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654|    |-				// points.
|    | 654|+			// points.
| 655| 655| 
| 656| 656| 				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
| 657| 657| 				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 653| 653| 				// in them. Might be useful to query only for entities within a certain range around the starting point and ending
| 654| 654| 				// points.
| 655| 655| 
| 656|    |-				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
|    | 656|+			placementSupport.wallSnapEntitiesIncludeOffscreen = true;
| 657| 657| 				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
| 658| 658| 
| 659| 659| 				if (result && result.cost)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 654| 654| 				// points.
| 655| 655| 
| 656| 656| 				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
| 657|    |-				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
|    | 657|+			var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
| 658| 658| 
| 659| 659| 				if (result && result.cost)
| 660| 660| 				{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 656| 656| 				placementSupport.wallSnapEntitiesIncludeOffscreen = true;
| 657| 657| 				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
| 658| 658| 
| 659|    |-				if (result && result.cost)
|    | 659|+			if (result && result.cost)
| 660| 660| 				{
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 657| 657| 				var result = updateBuildingPlacementPreview(); // includes an update of the snap entity candidates
| 658| 658| 
| 659| 659| 				if (result && result.cost)
| 660|    |-				{
|    | 660|+			{
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 658| 658| 
| 659| 659| 				if (result && result.cost)
| 660| 660| 				{
| 661|    |-					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
|    | 661|+				var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 659| 659| 				if (result && result.cost)
| 660| 660| 				{
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662|    |-					placementSupport.tooltipMessage = [
|    | 662|+				placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
| 665| 665| 					].filter(tip => tip).join("\n");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 660| 660| 				{
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
| 663|    |-						getEntityCostTooltip(result),
|    | 663|+					getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
| 665| 665| 					].filter(tip => tip).join("\n");
| 666| 666| 				}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 661| 661| 					var neededResources = Engine.GuiInterfaceCall("GetNeededResources", { "cost": result.cost });
| 662| 662| 					placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
| 664|    |-						getNeededResourcesTooltip(neededResources)
|    | 664|+					getNeededResourcesTooltip(neededResources)
| 665| 665| 					].filter(tip => tip).join("\n");
| 666| 666| 				}
| 667| 667| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 662| 662| 					placementSupport.tooltipMessage = [
| 663| 663| 						getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
| 665|    |-					].filter(tip => tip).join("\n");
|    | 665|+				].filter(tip => tip).join("\n");
| 666| 666| 				}
| 667| 667| 
| 668| 668| 				break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 663| 663| 						getEntityCostTooltip(result),
| 664| 664| 						getNeededResourcesTooltip(neededResources)
| 665| 665| 					].filter(tip => tip).join("\n");
| 666|    |-				}
|    | 666|+			}
| 667| 667| 
| 668| 668| 				break;
| 669| 669| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 665| 665| 					].filter(tip => tip).join("\n");
| 666| 666| 				}
| 667| 667| 
| 668|    |-				break;
|    | 668|+			break;
| 669| 669| 
| 670| 670| 			case "mousebuttondown":
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 2 tabs but found 3.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 667| 667| 
| 668| 668| 				break;
| 669| 669| 
| 670|    |-			case "mousebuttondown":
|    | 670|+		case "mousebuttondown":
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
| 672| 672| 				{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 668| 668| 				break;
| 669| 669| 
| 670| 670| 			case "mousebuttondown":
| 671|    |-				if (ev.button == SDL_BUTTON_LEFT)
|    | 671|+			if (ev.button == SDL_BUTTON_LEFT)
| 672| 672| 				{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 669| 669| 
| 670| 670| 			case "mousebuttondown":
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
| 672|    |-				{
|    | 672|+			{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
| 675| 675| 					{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 670| 670| 			case "mousebuttondown":
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
| 672| 672| 				{
| 673|    |-					var queued = Engine.HotkeyIsPressed("session.queue");
|    | 673|+				var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
| 675| 675| 					{
| 676| 676| 						if (queued)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 671| 671| 				if (ev.button == SDL_BUTTON_LEFT)
| 672| 672| 				{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674|    |-					if (tryPlaceWall(queued))
|    | 674|+				if (tryPlaceWall(queued))
| 675| 675| 					{
| 676| 676| 						if (queued)
| 677| 677| 						{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 672| 672| 				{
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
| 675|    |-					{
|    | 675|+				{
| 676| 676| 						if (queued)
| 677| 677| 						{
| 678| 678| 							// continue building, just set a new starting position where we left off
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 673| 673| 					var queued = Engine.HotkeyIsPressed("session.queue");
| 674| 674| 					if (tryPlaceWall(queued))
| 675| 675| 					{
| 676|    |-						if (queued)
|    | 676|+					if (queued)
| 677| 677| 						{
| 678| 678| 							// continue building, just set a new starting position where we left off
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 674| 674| 					if (tryPlaceWall(queued))
| 675| 675| 					{
| 676| 676| 						if (queued)
| 677|    |-						{
|    | 677|+					{
| 678| 678| 							// continue building, just set a new starting position where we left off
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
| 680| 680| 							placementSupport.wallEndPosition = undefined;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 675| 675| 					{
| 676| 676| 						if (queued)
| 677| 677| 						{
| 678|    |-							// continue building, just set a new starting position where we left off
|    | 678|+						// continue building, just set a new starting position where we left off
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
| 680| 680| 							placementSupport.wallEndPosition = undefined;
| 681| 681| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 676| 676| 						if (queued)
| 677| 677| 						{
| 678| 678| 							// continue building, just set a new starting position where we left off
| 679|    |-							placementSupport.position = placementSupport.wallEndPosition;
|    | 679|+						placementSupport.position = placementSupport.wallEndPosition;
| 680| 680| 							placementSupport.wallEndPosition = undefined;
| 681| 681| 
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 677| 677| 						{
| 678| 678| 							// continue building, just set a new starting position where we left off
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
| 680|    |-							placementSupport.wallEndPosition = undefined;
|    | 680|+						placementSupport.wallEndPosition = undefined;
| 681| 681| 
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
| 683| 683| 						}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 679| 679| 							placementSupport.position = placementSupport.wallEndPosition;
| 680| 680| 							placementSupport.wallEndPosition = undefined;
| 681| 681| 
| 682|    |-							inputState = INPUT_BUILDING_WALL_CLICK;
|    | 682|+						inputState = INPUT_BUILDING_WALL_CLICK;
| 683| 683| 						}
| 684| 684| 						else
| 685| 685| 						{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 680| 680| 							placementSupport.wallEndPosition = undefined;
| 681| 681| 
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
| 683|    |-						}
|    | 683|+					}
| 684| 684| 						else
| 685| 685| 						{
| 686| 686| 							placementSupport.Reset();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 681| 681| 
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
| 683| 683| 						}
| 684|    |-						else
|    | 684|+					else
| 685| 685| 						{
| 686| 686| 							placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 682| 682| 							inputState = INPUT_BUILDING_WALL_CLICK;
| 683| 683| 						}
| 684| 684| 						else
| 685|    |-						{
|    | 685|+					{
| 686| 686| 							placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
| 688| 688| 						}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 683| 683| 						}
| 684| 684| 						else
| 685| 685| 						{
| 686|    |-							placementSupport.Reset();
|    | 686|+						placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
| 688| 688| 						}
| 689| 689| 					}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 684| 684| 						else
| 685| 685| 						{
| 686| 686| 							placementSupport.Reset();
| 687|    |-							inputState = INPUT_NORMAL;
|    | 687|+						inputState = INPUT_NORMAL;
| 688| 688| 						}
| 689| 689| 					}
| 690| 690| 					else
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 685| 685| 						{
| 686| 686| 							placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
| 688|    |-						}
|    | 688|+					}
| 689| 689| 					}
| 690| 690| 					else
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 686| 686| 							placementSupport.Reset();
| 687| 687| 							inputState = INPUT_NORMAL;
| 688| 688| 						}
| 689|    |-					}
|    | 689|+				}
| 690| 690| 					else
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 687| 687| 							inputState = INPUT_NORMAL;
| 688| 688| 						}
| 689| 689| 					}
| 690|    |-					else
|    | 690|+				else
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
| 693| 693| 					updateBuildingPlacementPreview();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 688| 688| 						}
| 689| 689| 					}
| 690| 690| 					else
| 691|    |-						placementSupport.tooltipMessage = translate("Cannot build wall here!");
|    | 691|+					placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
| 693| 693| 					updateBuildingPlacementPreview();
| 694| 694| 					return true;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 690| 690| 					else
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
| 693|    |-					updateBuildingPlacementPreview();
|    | 693|+				updateBuildingPlacementPreview();
| 694| 694| 					return true;
| 695| 695| 				}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 691| 691| 						placementSupport.tooltipMessage = translate("Cannot build wall here!");
| 692| 692| 
| 693| 693| 					updateBuildingPlacementPreview();
| 694|    |-					return true;
|    | 694|+				return true;
| 695| 695| 				}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 692| 692| 
| 693| 693| 					updateBuildingPlacementPreview();
| 694| 694| 					return true;
| 695|    |-				}
|    | 695|+			}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
| 698| 698| 					// reset to normal input mode
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 693| 693| 					updateBuildingPlacementPreview();
| 694| 694| 					return true;
| 695| 695| 				}
| 696|    |-				else if (ev.button == SDL_BUTTON_RIGHT)
|    | 696|+			else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
| 698| 698| 					// reset to normal input mode
| 699| 699| 					placementSupport.Reset();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 694| 694| 					return true;
| 695| 695| 				}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697|    |-				{
|    | 697|+			{
| 698| 698| 					// reset to normal input mode
| 699| 699| 					placementSupport.Reset();
| 700| 700| 					updateBuildingPlacementPreview();
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 695| 695| 				}
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
| 698|    |-					// reset to normal input mode
|    | 698|+				// reset to normal input mode
| 699| 699| 					placementSupport.Reset();
| 700| 700| 					updateBuildingPlacementPreview();
| 701| 701| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 696| 696| 				else if (ev.button == SDL_BUTTON_RIGHT)
| 697| 697| 				{
| 698| 698| 					// reset to normal input mode
| 699|    |-					placementSupport.Reset();
|    | 699|+				placementSupport.Reset();
| 700| 700| 					updateBuildingPlacementPreview();
| 701| 701| 
| 702| 702| 					inputState = INPUT_NORMAL;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 697| 697| 				{
| 698| 698| 					// reset to normal input mode
| 699| 699| 					placementSupport.Reset();
| 700|    |-					updateBuildingPlacementPreview();
|    | 700|+				updateBuildingPlacementPreview();
| 701| 701| 
| 702| 702| 					inputState = INPUT_NORMAL;
| 703| 703| 					return true;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 699| 699| 					placementSupport.Reset();
| 700| 700| 					updateBuildingPlacementPreview();
| 701| 701| 
| 702|    |-					inputState = INPUT_NORMAL;
|    | 702|+				inputState = INPUT_NORMAL;
| 703| 703| 					return true;
| 704| 704| 				}
| 705| 705| 				break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 700| 700| 					updateBuildingPlacementPreview();
| 701| 701| 
| 702| 702| 					inputState = INPUT_NORMAL;
| 703|    |-					return true;
|    | 703|+				return true;
| 704| 704| 				}
| 705| 705| 				break;
| 706| 706| 		}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 701| 701| 
| 702| 702| 					inputState = INPUT_NORMAL;
| 703| 703| 					return true;
| 704|    |-				}
|    | 704|+			}
| 705| 705| 				break;
| 706| 706| 		}
| 707| 707| 		break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 702| 702| 					inputState = INPUT_NORMAL;
| 703| 703| 					return true;
| 704| 704| 				}
| 705|    |-				break;
|    | 705|+			break;
| 706| 706| 		}
| 707| 707| 		break;
| 708| 708| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 841| 841| 			break;
| 842| 842| 
| 843| 843| 		case "hotkeydown":
| 844|    |-				if (ev.hotkey.indexOf("selection.group.") == 0)
|    | 844|+			if (ev.hotkey.indexOf("selection.group.") == 0)
| 845| 845| 				{
| 846| 846| 					let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 842| 842| 
| 843| 843| 		case "hotkeydown":
| 844| 844| 				if (ev.hotkey.indexOf("selection.group.") == 0)
| 845|    |-				{
|    | 845|+			{
| 846| 846| 					let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 843| 843| 		case "hotkeydown":
| 844| 844| 				if (ev.hotkey.indexOf("selection.group.") == 0)
| 845| 845| 				{
| 846|    |-					let now = Date.now();
|    | 846|+				let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 844| 844| 				if (ev.hotkey.indexOf("selection.group.") == 0)
| 845| 845| 				{
| 846| 846| 					let now = Date.now();
| 847|    |-					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
|    | 847|+				if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 845| 845| 				{
| 846| 846| 					let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848|    |-					{
|    | 848|+				{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
| 851| 851| 							var sptr = ev.hotkey.split(".");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 846| 846| 					let now = Date.now();
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
| 849|    |-						if (ev.hotkey.indexOf("selection.group.select.") == 0)
|    | 849|+					if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 847| 847| 					if (now - doublePressTimer < doublePressTime && ev.hotkey == prevHotkey)
| 848| 848| 					{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850|    |-						{
|    | 850|+					{
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
| 853| 853| 						}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 848| 848| 					{
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
| 851|    |-							var sptr = ev.hotkey.split(".");
|    | 851|+						var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
| 853| 853| 						}
| 854| 854| 					}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 6 tabs but found 7.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 849| 849| 						if (ev.hotkey.indexOf("selection.group.select.") == 0)
| 850| 850| 						{
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852|    |-							performGroup("snap", sptr[3]);
|    | 852|+						performGroup("snap", sptr[3]);
| 853| 853| 						}
| 854| 854| 					}
| 855| 855| 					else
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 850| 850| 						{
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
| 853|    |-						}
|    | 853|+					}
| 854| 854| 					}
| 855| 855| 					else
| 856| 856| 					{
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 851| 851| 							var sptr = ev.hotkey.split(".");
| 852| 852| 							performGroup("snap", sptr[3]);
| 853| 853| 						}
| 854|    |-					}
|    | 854|+				}
| 855| 855| 					else
| 856| 856| 					{
| 857| 857| 						var sptr = ev.hotkey.split(".");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 852| 852| 							performGroup("snap", sptr[3]);
| 853| 853| 						}
| 854| 854| 					}
| 855|    |-					else
|    | 855|+				else
| 856| 856| 					{
| 857| 857| 						var sptr = ev.hotkey.split(".");
| 858| 858| 						performGroup(sptr[2], sptr[3]);
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 853| 853| 						}
| 854| 854| 					}
| 855| 855| 					else
| 856|    |-					{
|    | 856|+				{
| 857| 857| 						var sptr = ev.hotkey.split(".");
| 858| 858| 						performGroup(sptr[2], sptr[3]);
| 859| 859| 
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 854| 854| 					}
| 855| 855| 					else
| 856| 856| 					{
| 857|    |-						var sptr = ev.hotkey.split(".");
|    | 857|+					var sptr = ev.hotkey.split(".");
| 858| 858| 						performGroup(sptr[2], sptr[3]);
| 859| 859| 
| 860| 860| 						doublePressTimer = now;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 855| 855| 					else
| 856| 856| 					{
| 857| 857| 						var sptr = ev.hotkey.split(".");
| 858|    |-						performGroup(sptr[2], sptr[3]);
|    | 858|+					performGroup(sptr[2], sptr[3]);
| 859| 859| 
| 860| 860| 						doublePressTimer = now;
| 861| 861| 						prevHotkey = ev.hotkey;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 857| 857| 						var sptr = ev.hotkey.split(".");
| 858| 858| 						performGroup(sptr[2], sptr[3]);
| 859| 859| 
| 860|    |-						doublePressTimer = now;
|    | 860|+					doublePressTimer = now;
| 861| 861| 						prevHotkey = ev.hotkey;
| 862| 862| 					}
| 863| 863| 				}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 5 tabs but found 6.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 858| 858| 						performGroup(sptr[2], sptr[3]);
| 859| 859| 
| 860| 860| 						doublePressTimer = now;
| 861|    |-						prevHotkey = ev.hotkey;
|    | 861|+					prevHotkey = ev.hotkey;
| 862| 862| 					}
| 863| 863| 				}
| 864| 864| 				break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 4 tabs but found 5.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 859| 859| 
| 860| 860| 						doublePressTimer = now;
| 861| 861| 						prevHotkey = ev.hotkey;
| 862|    |-					}
|    | 862|+				}
| 863| 863| 				}
| 864| 864| 				break;
| 865| 865| 		}
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 860| 860| 						doublePressTimer = now;
| 861| 861| 						prevHotkey = ev.hotkey;
| 862| 862| 					}
| 863|    |-				}
|    | 863|+			}
| 864| 864| 				break;
| 865| 865| 		}
| 866| 866| 		break;
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 3 tabs but found 4.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
| 861| 861| 						prevHotkey = ev.hotkey;
| 862| 862| 					}
| 863| 863| 				}
| 864|    |-				break;
|    | 864|+			break;
| 865| 865| 		}
| 866| 866| 		break;
| 867| 867| 
|    | [NORMAL] ESLintBear (space-in-parens):
|    | There should be no spaces inside this paren.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|1515|1515| 		g_BatchTrainingEntityAllowedCount < batchedSize * appropriateBuildings.length)
|1516|1516| 	{
|1517|1517| 		// Train as many full batches as we can
|1518|    |-		let buildingsCountToTrainFullBatch = Math.floor( g_BatchTrainingEntityAllowedCount / batchedSize);
|    |1518|+		let buildingsCountToTrainFullBatch = Math.floor(g_BatchTrainingEntityAllowedCount / batchedSize);
|1519|1519| 		Engine.PostNetworkCommand({
|1520|1520| 			"type": "train",
|1521|1521| 			"entities": appropriateBuildings.slice(0, buildingsCountToTrainFullBatch),
|    | [NORMAL] ESLintBear (comma-spacing):
|    | A space is required after ','.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/input.js
|1594|1594| 	var selectall = Engine.HotkeyIsPressed("selection.offscreen");
|1595|1595| 
|1596|1596| 	// Reset the last idle unit, etc., if the selection type has changed.
|1597|    |-	if (selectall || classes.length != lastIdleClasses.length || !classes.every((v,i) => v === lastIdleClasses[i]))
|    |1597|+	if (selectall || classes.length != lastIdleClasses.length || !classes.every((v, i) => v === lastIdleClasses[i]))
|1598|1598| 		resetIdleUnit();
|1599|1599| 	lastIdleClasses = classes;
|1600|1600| 

binaries/data/mods/public/gui/session/input.js
| 231| »   var·target·=·undefined;
|    | [NORMAL] ESLintBear (no-undef-init):
|    | It's not necessary to initialize 'target' to undefined.

binaries/data/mods/public/gui/session/input.js
| 245| »   var·actionInfo·=·undefined;
|    | [NORMAL] ESLintBear (no-undef-init):
|    | It's not necessary to initialize 'actionInfo' to undefined.

binaries/data/mods/public/gui/session/input.js
| 468| »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 495| »   switch·(inputState)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 499| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 554| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 564| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 612| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 641| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 710| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 808| »   switch·(inputState)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 811| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 913| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
|1002| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
|1016| »   »   »   »   let·action·=·determineAction(ev.x,·ev.y);
|    | [NORMAL] ESLintBear (no-shadow):
|    | 'action' is already declared in the upper scope.

binaries/data/mods/public/gui/session/input.js
|1025| »   »   switch·(ev.type)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
|1094| »   »   »   switch·(ev.hotkey)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
|1545| »   switch·(action)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/input.js
| 231| »   var·target·=·undefined;
|    | [NORMAL] JSHintBear:
|    | It's not necessary to initialize 'target' to 'undefined'.

binaries/data/mods/public/gui/session/input.js
| 245| »   var·actionInfo·=·undefined;
|    | [NORMAL] JSHintBear:
|    | It's not necessary to initialize 'actionInfo' to 'undefined'.

binaries/data/mods/public/gui/session/input.js
| 259| »   for·(var·action·of·actions)
|    | [NORMAL] JSHintBear:
|    | 'action' is already defined.

binaries/data/mods/public/gui/session/input.js
| 262| »   »   »   var·r·=·g_UnitActions[action].hotkeyActionCheck(target,·selection);
|    | [NORMAL] JSHintBear:
|    | 'r' is already defined.

binaries/data/mods/public/gui/session/input.js
| 267| »   for·(var·action·of·actions)
|    | [NORMAL] JSHintBear:
|    | 'action' is already defined.

binaries/data/mods/public/gui/session/input.js
| 270| »   »   »   var·r·=·g_UnitActions[action].actionCheck(target,·selection);
|    | [NORMAL] JSHintBear:
|    | 'r' is already defined.

binaries/data/mods/public/gui/session/input.js
| 483| »   »   &&·(ev.button·==·SDL_BUTTON_LEFT·||·ev.button·==·SDL_BUTTON_RIGHT))
|    | [NORMAL] JSHintBear:
|    | Misleading line break before '&&'; readers may interpret this as an expression boundary.

binaries/data/mods/public/gui/session/input.js
| 513| »   »   »   »   var·rect·=·updateBandbox(bandbox,·ev,·true);
|    | [NORMAL] JSHintBear:
|    | 'rect' is already defined.

binaries/data/mods/public/gui/session/input.js
| 516| »   »   »   »   var·ents·=·getPreferredEntities(Engine.PickPlayerEntitiesInRect(rect[0],·rect[1],·rect[2],·rect[3],·g_ViewedPlayer));
|    | [NORMAL] JSHintBear:
|    | 'ents' is already defined.

binaries/data/mods/public/gui/session/input.js
| 673| »   »   »   »   »   var·queued·=·Engine.HotkeyIsPressed("session.queue");
|    | [NORMAL] JSHintBear:
|    | 'queued' is already defined.

binaries/data/mods/public/gui/session/input.js
| 744| »   »   »   »   var·queued·=·Engine.HotkeyIsPressed("session.queue");
|    | [NORMAL] JSHintBear:
|    | 'queued' is already defined.

binaries/data/mods/public/gui/session/input.js
| 857| »   »   »   »   »   »   var·sptr·=·ev.hotkey.split(".");
|    | [NORMAL] JSHintBear:
|    | 'sptr' is already defined.

binaries/data/mods/public/gui/session/input.js
| 873| »   »   »   var·ent·=·Engine.PickEntityAtPoint(ev.x,·ev.y);
|    | [NORMAL] JSHintBear:
|    | 'ent' is already defined.

binaries/data/mods/public/gui/session/input.js
| 899| »   »   »   }
|    | [NORMAL] JSHintBear:
|    | Expected a 'break' statement before 'default'.

binaries/data/mods/public/gui/session/input.js
| 923| »   »   »   var·ent·=·Engine.PickEntityAtPoint(ev.x,·ev.y);
|    | [NORMAL] JSHintBear:
|    | 'ent' is already defined.
|    | [NORMAL] ESLintBear (space-before-function-paren):
|    | Unexpected space before function parentheses.
|----|    | /zpool0/trunk/binaries/data/mods/public/gui/session/selection_panels.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/gui/session/selection_panels.js
| 762| 762| 				addResearchToQueue(data.item.researchFacilityId, t);
| 763| 763| 			})(tech);
| 764| 764| 
| 765|    |-			button.onPressRight = (t => function () {
|    | 765|+			button.onPressRight = (t => function() {
| 766| 766| 				showTemplateDetails(
| 767| 767| 					t,
| 768| 768| 					GetTemplateData(data.unitEntStates.find(state => state.id == data.item.researchFacilityId).template).nativeCiv);

binaries/data/mods/public/gui/session/selection_panels.js
|  50| »   »   »   switch·(data.item)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/selection_panels.js
|  61| »   »   switch·(data.item)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.

binaries/data/mods/public/gui/session/selection_panels.js
| 730| »   »   »   »   »   »   switch·(entity.check)
|    | [NORMAL] ESLintBear (default-case):
|    | Expected a default case.
|    | [NORMAL] ESLintBear (operator-linebreak):
|    | '||' should be placed at the end of the line.
|----|    | /zpool0/trunk/binaries/data/mods/public/globalscripts/Templates.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/globalscripts/Templates.js
|  87|  87| 		// If the elements are still strings, split them by space or by '+'
|  88|  88| 		if (typeof sublist == "string")
|  89|  89| 			sublist = sublist.split(/[+\s]+/);
|  90|    |-		if (sublist.every(c => (c[0] == "!" && classes.indexOf(c.substr(1)) == -1)
|  91|    |-		                    || (c[0] != "!" && classes.indexOf(c) != -1)))
|    |  90|+		if (sublist.every(c => (c[0] == "!" && classes.indexOf(c.substr(1)) == -1) ||
|    |  91|+		                    (c[0] != "!" && classes.indexOf(c) != -1)))
|  92|  92| 			return true;
|  93|  93| 	}
|  94|  94| 

binaries/data/mods/public/globalscripts/Templates.js
|  91| »   »   ····················||·(c[0]·!=·"!"·&&·classes.indexOf(c)·!=·-1)))
|    | [NORMAL] JSHintBear:
|    | Misleading line break before '||'; readers may interpret this as an expression boundary.
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 1 tab but found 0.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_EntityLimits.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_EntityLimits.js
|  45|  45| {
|  46|  46| 	AddMock(ent, IID_TrainingRestrictions, {
|  47|  47| 		"GetCategory": () => "Hero"
|  48|    |-});
|    |  48|+	});
|  49|  49| }
|  50|  50| 
|  51|  51| cmpEntityLimits.OnGlobalOwnershipChanged({ "entity": 60, "from": INVALID_PLAYER, "to": 1 });
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 1 tab but found 8 spaces.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_ProductionQueue.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_ProductionQueue.js
|   1|   1| Resources = {
|   2|    |-        "BuildSchema": (a, b) => {}
|    |   2|+	"BuildSchema": (a, b) => {}
|   3|   3| };
|   4|   4| 
|   5|   5| Engine.LoadHelperScript("Player.js");
|    | [NORMAL] ESLintBear (indent):
|    | Expected indentation of 1 tab but found 67 spaces.
|----|    | /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_ProductionQueue.js
|    |++++| /zpool0/trunk/binaries/data/mods/public/simulation/components/tests/test_ProductionQueue.js
| 120| 120| 	["units/athen_cavalry_javelinist_b", "units/iber_support_female_citizen"]
| 121| 121| );
| 122| 122| TS_ASSERT_UNEVAL_EQUALS(cmpProductionQueue.GetTechnologiesList(), ["phase_town_athen",
| 123|    |-                                                                   "phase_city_athen"]
|    | 123|+	"phase_city_athen"]
| 124| 124| );
| 125| 125| 
| 126| 126| AddMock(playerEntityID, IID_TechnologyManager, {
Executing section cli...

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/1073/display/redirect

wraitii added a subscriber: wraitii.Aug 6 2020, 8:16 AM

cc @borg- you want this I believe.

I think "matchLimit" might be more explicit? Not sure.

binaries/data/mods/public/gui/session/selection_panels_helpers.js
134 ↗(On Diff #10299)
borg- added a comment.Aug 6 2020, 11:55 AM

cc @borg- you want this I believe.

I think "matchLimit" might be more explicit? Not sure.

Ah cool, yes, we need this patch.

Freagarach updated this revision to Diff 13652.Oct 22 2020, 5:28 PM
Freagarach marked 3 inline comments as done.

persistentLimit -> matchLimit.

Owners added a subscriber: Restricted Owners Package.Oct 22 2020, 5:28 PM
Freagarach updated this revision to Diff 13653.Oct 22 2020, 5:35 PM

Don't cast null.

Freagarach edited the summary of this revision. (Show Details)Oct 22 2020, 6:39 PM
Silier added inline comments.Oct 22 2020, 6:42 PM
binaries/data/mods/public/globalscripts/Templates.js
295 ↗(On Diff #13653)
Freagarach updated this revision to Diff 13745.Nov 5 2020, 5:40 PM
Freagarach marked an inline comment as done.

Don't rely on order in AllowedToCreate.

Stan added inline comments.Nov 5 2020, 5:45 PM
binaries/data/mods/public/gui/session/input.js
1303 ↗(On Diff #13745)

MatchLimit is always != 0 you checked above.

binaries/data/mods/public/simulation/components/EntityLimits.js
164 ↗(On Diff #13745)

can it be null? Else you might want to !var

Freagarach marked 2 inline comments as done.
  • Rebased.
  • Don't check for matchLimit twice.
binaries/data/mods/public/simulation/components/EntityLimits.js
164 ↗(On Diff #13745)

It can be 0.

Successful build - Chance fights ever on the side of the prudent.

builderr-debug-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libsimulation2_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libgraphics_dbg.a(precompiled.o) has no symbols
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//IOKit.framework/IOKit.tbd and library file /System/Library/Frameworks//IOKit.framework/IOKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//QuartzCore.framework/QuartzCore.tbd and library file /System/Library/Frameworks//QuartzCore.framework/QuartzCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Metal.framework/Metal.tbd and library file /System/Library/Frameworks//Metal.framework/Metal are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenGL.framework/OpenGL.tbd and library file /System/Library/Frameworks//OpenGL.framework/OpenGL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Security.framework/Security.tbd and library file /System/Library/Frameworks//Security.framework/Security are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenAL.framework/OpenAL.tbd and library file /System/Library/Frameworks//OpenAL.framework/OpenAL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ApplicationServices.framework/ApplicationServices.tbd and library file /System/Library/Frameworks//ApplicationServices.framework/ApplicationServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit.tbd and library file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData.tbd and library file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics.tbd and library file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText.tbd and library file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO.tbd and library file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync.tbd and library file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices.tbd and library file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage.tbd and library file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation.tbd and library file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation.tbd and library file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork.tbd and library file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList are out of sync. Falling back to library file for linking.
ld: warning: object file (../../../libraries/osx/fmt/lib/libfmt.a(format.cc.o)) was built for newer OSX version (10.13) than being linked (10.12)
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//IOKit.framework/IOKit.tbd and library file /System/Library/Frameworks//IOKit.framework/IOKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//QuartzCore.framework/QuartzCore.tbd and library file /System/Library/Frameworks//QuartzCore.framework/QuartzCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Metal.framework/Metal.tbd and library file /System/Library/Frameworks//Metal.framework/Metal are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenGL.framework/OpenGL.tbd and library file /System/Library/Frameworks//OpenGL.framework/OpenGL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Security.framework/Security.tbd and library file /System/Library/Frameworks//Security.framework/Security are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenAL.framework/OpenAL.tbd and library file /System/Library/Frameworks//OpenAL.framework/OpenAL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit.tbd and library file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData.tbd and library file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ApplicationServices.framework/Versions/A/ApplicationServices.tbd and library file /System/Library/Frameworks//ApplicationServices.framework/Versions/A/ApplicationServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage.tbd and library file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation.tbd and library file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation.tbd and library file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics.tbd and library file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText.tbd and library file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO.tbd and library file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync.tbd and library file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices.tbd and library file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/Versions/A/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/Versions/A/CoreFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork.tbd and library file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList are out of sync. Falling back to library file for linking.
ld: warning: object file (../../../libraries/osx/fmt/lib/libfmt.a(format.cc.o)) was built for newer OSX version (10.13) than being linked (10.12)
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
builderr-release-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libsimulation2.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libgraphics.a(precompiled.o) has no symbols
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//IOKit.framework/IOKit.tbd and library file /System/Library/Frameworks//IOKit.framework/IOKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//QuartzCore.framework/QuartzCore.tbd and library file /System/Library/Frameworks//QuartzCore.framework/QuartzCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Metal.framework/Metal.tbd and library file /System/Library/Frameworks//Metal.framework/Metal are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenGL.framework/OpenGL.tbd and library file /System/Library/Frameworks//OpenGL.framework/OpenGL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Security.framework/Security.tbd and library file /System/Library/Frameworks//Security.framework/Security are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenAL.framework/OpenAL.tbd and library file /System/Library/Frameworks//OpenAL.framework/OpenAL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ApplicationServices.framework/ApplicationServices.tbd and library file /System/Library/Frameworks//ApplicationServices.framework/ApplicationServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit.tbd and library file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData.tbd and library file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage.tbd and library file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics.tbd and library file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText.tbd and library file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO.tbd and library file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync.tbd and library file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices.tbd and library file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation.tbd and library file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation.tbd and library file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork.tbd and library file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList are out of sync. Falling back to library file for linking.
ld: warning: object file (../../../libraries/osx/fmt/lib/libfmt.a(format.cc.o)) was built for newer OSX version (10.13) than being linked (10.12)
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//IOKit.framework/IOKit.tbd and library file /System/Library/Frameworks//IOKit.framework/IOKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//QuartzCore.framework/QuartzCore.tbd and library file /System/Library/Frameworks//QuartzCore.framework/QuartzCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Metal.framework/Metal.tbd and library file /System/Library/Frameworks//Metal.framework/Metal are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenGL.framework/OpenGL.tbd and library file /System/Library/Frameworks//OpenGL.framework/OpenGL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Security.framework/Security.tbd and library file /System/Library/Frameworks//Security.framework/Security are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenAL.framework/OpenAL.tbd and library file /System/Library/Frameworks//OpenAL.framework/OpenAL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit.tbd and library file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData.tbd and library file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ApplicationServices.framework/Versions/A/ApplicationServices.tbd and library file /System/Library/Frameworks//ApplicationServices.framework/Versions/A/ApplicationServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage.tbd and library file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics.tbd and library file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText.tbd and library file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO.tbd and library file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync.tbd and library file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices.tbd and library file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation.tbd and library file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation.tbd and library file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork.tbd and library file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/Versions/A/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/Versions/A/CoreFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList are out of sync. Falling back to library file for linking.
ld: warning: object file (../../../libraries/osx/fmt/lib/libfmt.a(format.cc.o)) was built for newer OSX version (10.13) than being linked (10.12)
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.

Link to build: https://jenkins.wildfiregames.com/job/macos-differential/2495/display/redirect

wraitii requested changes to this revision.Dec 28 2020, 10:31 AM

I like this as a gameplay feature.
I think it's a bit unfortunate that we have to specify per-template limits in the templates and per-category in entityLimits, but I'm not seeing a way around that... And TrainingRestrictions/EntityLimits are already tightly coupled, so I don't think it's much worse.

EntityLimits are in need of a refactoring, they need to start using modifiers instead of re-implementing it. I think it would also be neat to have per-category matchLimits and per-template regular Limits, but out of scope.


I'm requesting changes over the tooltips, which I think can be improved. I would prefer a text like Can only be trained X more times, instead of having the max limit and the current number, which is less readable. And probably switch to "Can only be trained once", for the (I would assume general) match-limit of 1. I also think it might warrant a little boldness or color then. Up to you I guess.

Further, I think the regular EntityLimits tooltip needs a bit of a rework, as it's a little odd to read the limit alongside the match Limit. They should probably be written like so:

Limits: 1/5 Hero, can only be trained once.

However right now the entity limit name isn't translatable, so possibly have "Category Limit" above for A24.

And ultimately the EntityLimits component should read like so:

<EntityLimits>
  <CivilCentre>
    <Name>Civil Centre</Name>
    <Limit>1</Limit>
  </CivilCentre>
  <Titan>
    <!-- This means you have to choose a Titan -->
    <MatchLimit>1</MatchLimit>
    ...
  </Titan>
</EntityLimits>

So the category is translatable.

binaries/data/mods/public/simulation/components/BuildRestrictions.js
39 ↗(On Diff #14713)
This revision now requires changes to proceed.Dec 28 2020, 10:31 AM
Freagarach updated this revision to Diff 14872.Dec 29 2020, 7:44 AM
Freagarach marked an inline comment as done.

Change tooltip.

Successful build - Chance fights ever on the side of the prudent.

builderr-debug-macos.txt
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//IOKit.framework/IOKit.tbd and library file /System/Library/Frameworks//IOKit.framework/IOKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//QuartzCore.framework/QuartzCore.tbd and library file /System/Library/Frameworks//QuartzCore.framework/QuartzCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Metal.framework/Metal.tbd and library file /System/Library/Frameworks//Metal.framework/Metal are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenGL.framework/OpenGL.tbd and library file /System/Library/Frameworks//OpenGL.framework/OpenGL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Security.framework/Security.tbd and library file /System/Library/Frameworks//Security.framework/Security are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenAL.framework/OpenAL.tbd and library file /System/Library/Frameworks//OpenAL.framework/OpenAL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit.tbd and library file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData.tbd and library file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ApplicationServices.framework/Versions/A/ApplicationServices.tbd and library file /System/Library/Frameworks//ApplicationServices.framework/Versions/A/ApplicationServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage.tbd and library file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation.tbd and library file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation.tbd and library file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics.tbd and library file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText.tbd and library file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO.tbd and library file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync.tbd and library file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices.tbd and library file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork.tbd and library file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/Versions/A/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/Versions/A/CoreFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList are out of sync. Falling back to library file for linking.
ld: warning: object file (../../../libraries/osx/fmt/lib/libfmt.a(format.cc.o)) was built for newer OSX version (10.13) than being linked (10.12)
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
builderr-release-macos.txt
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//IOKit.framework/IOKit.tbd and library file /System/Library/Frameworks//IOKit.framework/IOKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//QuartzCore.framework/QuartzCore.tbd and library file /System/Library/Frameworks//QuartzCore.framework/QuartzCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Metal.framework/Metal.tbd and library file /System/Library/Frameworks//Metal.framework/Metal are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenGL.framework/OpenGL.tbd and library file /System/Library/Frameworks//OpenGL.framework/OpenGL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Security.framework/Security.tbd and library file /System/Library/Frameworks//Security.framework/Security are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenAL.framework/OpenAL.tbd and library file /System/Library/Frameworks//OpenAL.framework/OpenAL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.tbd and library file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit.tbd and library file /System/Library/Frameworks//AppKit.framework/Versions/C/AppKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData.tbd and library file /System/Library/Frameworks//CoreData.framework/Versions/A/CoreData are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ApplicationServices.framework/Versions/A/ApplicationServices.tbd and library file /System/Library/Frameworks//ApplicationServices.framework/Versions/A/ApplicationServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition.tbd and library file /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage.tbd and library file /System/Library/Frameworks//CoreImage.framework/Versions/A/CoreImage are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics.tbd and library file /System/Library/Frameworks//CoreGraphics.framework/Versions/A/CoreGraphics are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText.tbd and library file /System/Library/Frameworks//CoreText.framework/Versions/A/CoreText are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO.tbd and library file /System/Library/Frameworks//ImageIO.framework/Versions/A/ImageIO are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync.tbd and library file /System/Library/Frameworks//ColorSync.framework/Versions/A/ColorSync are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices.tbd and library file /System/Library/Frameworks//CoreServices.framework/Versions/A/CoreServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis.tbd and library file /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation.tbd and library file /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation.tbd and library file /System/Library/Frameworks//Foundation.framework/Versions/C/Foundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork.tbd and library file /System/Library/Frameworks//CFNetwork.framework/Versions/A/CFNetwork are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/Versions/A/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/Versions/A/CoreFoundation are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList.tbd and library file /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList are out of sync. Falling back to library file for linking.
ld: warning: object file (../../../libraries/osx/fmt/lib/libfmt.a(format.cc.o)) was built for newer OSX version (10.13) than being linked (10.12)
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.

Link to build: https://jenkins.wildfiregames.com/job/macos-differential/2606/display/redirect

wraitii requested changes to this revision.Dec 29 2020, 11:20 AM
wraitii added inline comments.
binaries/data/mods/public/simulation/components/ProductionQueue.js
754 ↗(On Diff #14872)

Pretty sure you also need this.

This revision now requires changes to proceed.Dec 29 2020, 11:20 AM
Freagarach requested review of this revision.Dec 29 2020, 11:26 AM
Freagarach marked an inline comment as done.
Freagarach added inline comments.
binaries/data/mods/public/simulation/components/ProductionQueue.js
747 ↗(On Diff #14872)

Nope :)

wraitii accepted this revision.Dec 29 2020, 11:37 AM

Think this looks good as-is. Pretty big gameplay change though.

binaries/data/mods/public/simulation/components/ProductionQueue.js
754 ↗(On Diff #14872)

Right, this works even with batches, I was too pessimistic.

This revision is now accepted and ready to land.Dec 29 2020, 11:37 AM
This revision was automatically updated to reflect the committed changes.

I was too slow :D

binaries/data/mods/public/gui/session/input.js
1308 ↗(On Diff #14872)
Freagarach added inline comments.Dec 29 2020, 12:21 PM
binaries/data/mods/public/gui/session/input.js
1308 ↗(On Diff #14872)

But it is undefined at first?

Silier added inline comments.Dec 29 2020, 12:28 PM
binaries/data/mods/public/gui/session/input.js
1308 ↗(On Diff #14872)

as entLimit and entCount, all 3 are defined only inside if above