Details
- Reviewers
elexis - Group Reviewers
Restricted Owners Package (Owns No Changed Paths) - Commits
- rP22615: redo rP21036, Create a ConfigDB_CreateAndWriteValueToFile function to absorb…
shouldn't there be const scriptinterfaces?
Diff Detail
- Repository
- rP 0 A.D. Public Repository
- Branch
- /ps/trunk
- Lint
Lint OK - Unit
No Unit Test Coverage - Build Status
Buildable 7699 Build 12546: Vulcan Build Jenkins Build 12544: arc lint + arc unit
Event Timeline
Successful build - Chance fights ever on the side of the prudent.
Linter detected issues: Executing section Source... Executing section JS... | | [NORMAL] ESLintBear (no-multi-spaces): | | Multiple spaces found before '"status"'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 47| 47| * The playerlist will be assembled using these values. | 48| 48| */ | 49| 49| var g_PlayerStatuses = { | 50| |- "available": { "color": "0 219 0", "status": translate("Online") }, | | 50|+ "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | | [NORMAL] ESLintBear (key-spacing): | | Extra space before value for key 'away'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 48| 48| */ | 49| 49| var g_PlayerStatuses = { | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| |- "away": { "color": "229 76 13", "status": translate("Away") }, | | 51|+ "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | | [NORMAL] ESLintBear (no-multi-spaces): | | Multiple spaces found before '"status"'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 48| 48| */ | 49| 49| var g_PlayerStatuses = { | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| |- "away": { "color": "229 76 13", "status": translate("Away") }, | | 51|+ "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | | [NORMAL] ESLintBear (key-spacing): | | Extra space before value for key 'playing'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 49| 49| var g_PlayerStatuses = { | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| |- "playing": { "color": "200 0 0", "status": translate("Busy") }, | | 52|+ "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | | [NORMAL] ESLintBear (no-multi-spaces): | | Multiple spaces found before '"status"'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 49| 49| var g_PlayerStatuses = { | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| |- "playing": { "color": "200 0 0", "status": translate("Busy") }, | | 52|+ "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | | [NORMAL] ESLintBear (key-spacing): | | Extra space before value for key 'offline'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| |- "offline": { "color": "0 0 0", "status": translate("Offline") }, | | 53|+ "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | 56| 56| | | [NORMAL] ESLintBear (no-multi-spaces): | | Multiple spaces found before '"status"'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| |- "offline": { "color": "0 0 0", "status": translate("Offline") }, | | 53|+ "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | 56| 56| | | [NORMAL] ESLintBear (key-spacing): | | Extra space before value for key 'unknown'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| |- "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | | 54|+ "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | 56| 56| | 57| 57| var g_RoleNames = { | | [NORMAL] ESLintBear (indent): | | Expected indentation of 5 tabs but found 4. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 219| 219| me ? | 220| 220| translate("You have been muted.") : | 221| 221| translate("%(nick)s has been muted.") : | 222| |- newrole == "moderator" ? | | 222|+ newrole == "moderator" ? | 223| 223| me ? | 224| 224| translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | | [NORMAL] ESLintBear (indent): | | Expected indentation of 6 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 220| 220| translate("You have been muted.") : | 221| 221| translate("%(nick)s has been muted.") : | 222| 222| newrole == "moderator" ? | 223| |- me ? | | 223|+ me ? | 224| 224| translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 221| 221| translate("%(nick)s has been muted.") : | 222| 222| newrole == "moderator" ? | 223| 223| me ? | 224| |- translate("You are now a moderator.") : | | 224|+ translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | 227| 227| me ? | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 222| 222| newrole == "moderator" ? | 223| 223| me ? | 224| 224| translate("You are now a moderator.") : | 225| |- translate("%(nick)s is now a moderator.") : | | 225|+ translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | 227| 227| me ? | 228| 228| translate("You have been unmuted.") : | | [NORMAL] ESLintBear (indent): | | Expected indentation of 6 tabs but found 4. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 223| 223| me ? | 224| 224| translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | 226| |- msg.oldrole == "visitor" ? | | 226|+ msg.oldrole == "visitor" ? | 227| 227| me ? | 228| 228| translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 224| 224| translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | 227| |- me ? | | 227|+ me ? | 228| 228| translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | 230| 230| me ? | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 225| 225| translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | 227| 227| me ? | 228| |- translate("You have been unmuted.") : | | 228|+ translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | 230| 230| me ? | 231| 231| translate("You are not a moderator anymore.") : | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 226| 226| msg.oldrole == "visitor" ? | 227| 227| me ? | 228| 228| translate("You have been unmuted.") : | 229| |- translate("%(nick)s has been unmuted.") : | | 229|+ translate("%(nick)s has been unmuted.") : | 230| 230| me ? | 231| 231| translate("You are not a moderator anymore.") : | 232| 232| translate("%(nick)s is not a moderator anymore."); | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 227| 227| me ? | 228| 228| translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | 230| |- me ? | | 230|+ me ? | 231| 231| translate("You are not a moderator anymore.") : | 232| 232| translate("%(nick)s is not a moderator anymore."); | 233| 233| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 228| 228| translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | 230| 230| me ? | 231| |- translate("You are not a moderator anymore.") : | | 231|+ translate("You are not a moderator anymore.") : | 232| 232| translate("%(nick)s is not a moderator anymore."); | 233| 233| | 234| 234| addChatMessage({ | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 229| 229| translate("%(nick)s has been unmuted.") : | 230| 230| me ? | 231| 231| translate("You are not a moderator anymore.") : | 232| |- translate("%(nick)s is not a moderator anymore."); | | 232|+ translate("%(nick)s is not a moderator anymore."); | 233| 233| | 234| 234| addChatMessage({ | 235| 235| "text": "/special " + sprintf(txt, { "nick": msg.nick }), binaries/data/mods/public/gui/lobby/lobby.js |1035| » » switch·(sortBy) | | [NORMAL] ESLintBear (default-case): | | Expected a default case. binaries/data/mods/public/gui/lobby/lobby.js | 729| » » case·'name': | | [NORMAL] JSHintBear: | | Expected a 'break' statement before 'default'. | | [NORMAL] ESLintBear (indent): | | Expected indentation of 6 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | 397| 397| // Players see colors depending on diplomacy | 398| 398| g_DisplayedPlayerColors[i] = | 399| 399| g_ViewedPlayer == i ? getDiplomacyColor("self") : | 400| |- g_Players[g_ViewedPlayer].isAlly[i] ? getDiplomacyColor("ally") : | | 400|+ g_Players[g_ViewedPlayer].isAlly[i] ? getDiplomacyColor("ally") : | 401| 401| g_Players[g_ViewedPlayer].isNeutral[i] ? getDiplomacyColor("neutral") : | 402| 402| getDiplomacyColor("enemy"); | 403| 403| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | 398| 398| g_DisplayedPlayerColors[i] = | 399| 399| g_ViewedPlayer == i ? getDiplomacyColor("self") : | 400| 400| g_Players[g_ViewedPlayer].isAlly[i] ? getDiplomacyColor("ally") : | 401| |- g_Players[g_ViewedPlayer].isNeutral[i] ? getDiplomacyColor("neutral") : | | 401|+ g_Players[g_ViewedPlayer].isNeutral[i] ? getDiplomacyColor("neutral") : | 402| 402| getDiplomacyColor("enemy"); | 403| 403| | 404| 404| g_DisplayedPlayerColors[0] = g_Players[0].color; | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | 399| 399| g_ViewedPlayer == i ? getDiplomacyColor("self") : | 400| 400| g_Players[g_ViewedPlayer].isAlly[i] ? getDiplomacyColor("ally") : | 401| 401| g_Players[g_ViewedPlayer].isNeutral[i] ? getDiplomacyColor("neutral") : | 402| |- getDiplomacyColor("enemy"); | | 402|+ getDiplomacyColor("enemy"); | 403| 403| | 404| 404| g_DisplayedPlayerColors[0] = g_Players[0].color; | 405| 405| } | | [NORMAL] ESLintBear (indent): | | Expected indentation of 4 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | 655| 655| "civ": setStringTags(g_CivData[g_Players[g_ViewedPlayer].civ].Name, { "font": "sans-bold-stroke-14" }), | 656| 656| "hotkey_civinfo": colorizeHotkey("%(hotkey)s", "civinfo"), | 657| 657| "hotkey_structree": colorizeHotkey("%(hotkey)s", "structree") | 658| |- }); | | 658|+ }); | 659| 659| } | 660| 660| | 661| 661| // Following gaia can be interesting on scripted maps | | [NORMAL] ESLintBear (indent): | | Expected indentation of 3 tabs but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js |1239|1239| |1240|1240| let orderHotkeyTooltip = Object.keys(viewablePlayerStates).length <= 1 ? "" : |1241|1241| "\n" + sprintf(translate("%(order)s: %(hotkey)s to change order."), { |1242| |- "hotkey": setStringTags("\\[Click]", g_HotkeyTags), | |1242|+ "hotkey": setStringTags("\\[Click]", g_HotkeyTags), |1243|1243| "order": tooltipSort == 0 ? translate("Unordered") : tooltipSort == 1 ? translate("Descending") : translate("Ascending") |1244|1244| }); |1245|1245| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 3 tabs but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js |1240|1240| let orderHotkeyTooltip = Object.keys(viewablePlayerStates).length <= 1 ? "" : |1241|1241| "\n" + sprintf(translate("%(order)s: %(hotkey)s to change order."), { |1242|1242| "hotkey": setStringTags("\\[Click]", g_HotkeyTags), |1243| |- "order": tooltipSort == 0 ? translate("Unordered") : tooltipSort == 1 ? translate("Descending") : translate("Ascending") | |1243|+ "order": tooltipSort == 0 ? translate("Unordered") : tooltipSort == 1 ? translate("Descending") : translate("Ascending") |1244|1244| }); |1245|1245| |1246|1246| let resCodes = g_ResourceData.GetCodes(); | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js |1241|1241| "\n" + sprintf(translate("%(order)s: %(hotkey)s to change order."), { |1242|1242| "hotkey": setStringTags("\\[Click]", g_HotkeyTags), |1243|1243| "order": tooltipSort == 0 ? translate("Unordered") : tooltipSort == 1 ? translate("Descending") : translate("Ascending") |1244| |- }); | |1244|+ }); |1245|1245| |1246|1246| let resCodes = g_ResourceData.GetCodes(); |1247|1247| for (let r = 0; r < resCodes.length; ++r) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js |1733|1733| for (let rct of resourcesCounterTypes) |1734|1734| for (let rt of resourcesTypes) |1735|1735| reportObject[rt + rct.substr(9)] = playerStatistics[rct][rt]; |1736| |- // eg. rt = food rct.substr = Gathered rct = resourcesGathered | |1736|+ // eg. rt = food rct.substr = Gathered rct = resourcesGathered |1737|1737| |1738|1738| reportObject.vegetarianFoodGathered = playerStatistics.resourcesGathered.vegetarianFood; |1739|1739| for (let type of unitsClasses) binaries/data/mods/public/gui/session/session.js |1067| » let·getPanelEntNameTooltip·=·panelEntState·=>·"[font=\"sans-bold-16\"]"·+·template.name.specific·+·"[/font]"; | | [NORMAL] ESLintBear (no-shadow): | | 'panelEntState' is already declared in the upper scope. binaries/data/mods/public/gui/session/session.js |1142| » » button.onpress·=·(function(i)·{·return·function()·{·performGroup((Engine.HotkeyIsPressed("selection.add")·?·"add"·:·"select"),·i);·};·})(i); | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/session.js |1143| » » button.ondoublepress·=·(function(i)·{·return·function()·{·performGroup("snap",·i);·};·})(i); | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/session.js |1144| » » button.onpressright·=·(function(i)·{·return·function()·{·performGroup("breakUp",·i);·};·})(i); | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 62| 62| var g_RomanNumbers = [undefined, "I", "II", "III", "IV", "V", "VI", "VII", "VIII"]; | 63| 63| | 64| 64| var g_PlayerTeamList = prepareForDropdown([{ | 65| |- "label": translateWithContext("team", "None"), | | 65|+ "label": translateWithContext("team", "None"), | 66| 66| "id": -1 | 67| 67| }].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 63| 63| | 64| 64| var g_PlayerTeamList = prepareForDropdown([{ | 65| 65| "label": translateWithContext("team", "None"), | 66| |- "id": -1 | | 66|+ "id": -1 | 67| 67| }].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | | [NORMAL] ESLintBear (indent): | | Expected indentation of 0 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 64| 64| var g_PlayerTeamList = prepareForDropdown([{ | 65| 65| "label": translateWithContext("team", "None"), | 66| 66| "id": -1 | 67| |- }].concat( | | 67|+}].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | 70| 70| "id": i | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 65| 65| "label": translateWithContext("team", "None"), | 66| 66| "id": -1 | 67| 67| }].concat( | 68| |- Array(g_MaxTeams).fill(0).map((v, i) => ({ | | 68|+ Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | 70| 70| "id": i | 71| 71| })) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 66| 66| "id": -1 | 67| 67| }].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| |- "label": i + 1, | | 69|+ "label": i + 1, | 70| 70| "id": i | 71| 71| })) | 72| 72| ) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 67| 67| }].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | 70| |- "id": i | | 70|+ "id": i | 71| 71| })) | 72| 72| ) | 73| 73| ); | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | 70| 70| "id": i | 71| |- })) | | 71|+ })) | 72| 72| ) | 73| 73| ); | 74| 74| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 0 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 69| 69| "label": i + 1, | 70| 70| "id": i | 71| 71| })) | 72| |- ) | | 72|+) | 73| 73| ); | 74| 74| | 75| 75| /** | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 78| 78| var g_RelicCountList = Object.keys(g_CivData).map((civ, i) => i + 1); | 79| 79| | 80| 80| var g_PlayerCivList = g_CivData && prepareForDropdown([{ | 81| |- "name": translateWithContext("civilization", "Random"), | | 81|+ "name": translateWithContext("civilization", "Random"), | 82| 82| "tooltip": translate("Picks one civilization at random when the game starts."), | 83| 83| "color": g_ColorRandom, | 84| 84| "code": "random" | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 79| 79| | 80| 80| var g_PlayerCivList = g_CivData && prepareForDropdown([{ | 81| 81| "name": translateWithContext("civilization", "Random"), | 82| |- "tooltip": translate("Picks one civilization at random when the game starts."), | | 82|+ "tooltip": translate("Picks one civilization at random when the game starts."), | 83| 83| "color": g_ColorRandom, | 84| 84| "code": "random" | 85| 85| }].concat( | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 80| 80| var g_PlayerCivList = g_CivData && prepareForDropdown([{ | 81| 81| "name": translateWithContext("civilization", "Random"), | 82| 82| "tooltip": translate("Picks one civilization at random when the game starts."), | 83| |- "color": g_ColorRandom, | | 83|+ "color": g_ColorRandom, | 84| 84| "code": "random" | 85| 85| }].concat( | 86| 86| Object.keys(g_CivData).filter( | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 81| 81| "name": translateWithContext("civilization", "Random"), | 82| 82| "tooltip": translate("Picks one civilization at random when the game starts."), | 83| 83| "color": g_ColorRandom, | 84| |- "code": "random" | | 84|+ "code": "random" | 85| 85| }].concat( | 86| 86| Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | | [NORMAL] ESLintBear (indent): | | Expected indentation of 0 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 82| 82| "tooltip": translate("Picks one civilization at random when the game starts."), | 83| 83| "color": g_ColorRandom, | 84| 84| "code": "random" | 85| |- }].concat( | | 85|+}].concat( | 86| 86| Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 83| 83| "color": g_ColorRandom, | 84| 84| "code": "random" | 85| 85| }].concat( | 86| |- Object.keys(g_CivData).filter( | | 86|+ Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 84| 84| "code": "random" | 85| 85| }].concat( | 86| 86| Object.keys(g_CivData).filter( | 87| |- civ => g_CivData[civ].SelectableInGameSetup | | 87|+ civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 85| 85| }].concat( | 86| 86| Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| |- ).map(civ => ({ | | 88|+ ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 86| 86| Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | 89| |- "name": g_CivData[civ].Name, | | 89|+ "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | 92| 92| "code": civ | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | 90| |- "tooltip": g_CivData[civ].History, | | 90|+ "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | 92| 92| "code": civ | 93| 93| })).sort(sortNameIgnoreCase) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 88| 88| ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | 91| |- "color": g_ColorRegular, | | 91|+ "color": g_ColorRegular, | 92| 92| "code": civ | 93| 93| })).sort(sortNameIgnoreCase) | 94| 94| ) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 89| 89| "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | 92| |- "code": civ | | 92|+ "code": civ | 93| 93| })).sort(sortNameIgnoreCase) | 94| 94| ) | 95| 95| ); | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 90| 90| "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | 92| 92| "code": civ | 93| |- })).sort(sortNameIgnoreCase) | | 93|+ })).sort(sortNameIgnoreCase) | 94| 94| ) | 95| 95| ); | 96| 96| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 0 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 91| 91| "color": g_ColorRegular, | 92| 92| "code": civ | 93| 93| })).sort(sortNameIgnoreCase) | 94| |- ) | | 94|+) | 95| 95| ); | 96| 96| | 97| 97| /** | | [NORMAL] ESLintBear (no-trailing-spaces): | | Trailing spaces not allowed. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js |1240|1240| offset = -Math.min(slideSpeed * dt, maxOffset); |1241|1241| } |1242|1242| |1243| |- updateSettingsPanelPosition(offset); | |1243|+ updateSettingsPanelPosition(offset); |1244|1244| } |1245|1245| |1246|1246| /** | | [NORMAL] ESLintBear (curly): | | Unnecessary { after 'if' condition. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js |1774|1774| let biomeList; |1775|1775| |1776|1776| if (g_GameAttributes.mapType == "random" && g_GameAttributes.settings.SupportedBiomes) |1777| |- { | |1777|+ |1778|1778| if (typeof g_GameAttributes.settings.SupportedBiomes == "string") |1779|1779| biomeList = g_Settings.Biomes.filter(biome => biome.Id.startsWith(g_GameAttributes.settings.SupportedBiomes)); |1780|1780| else |1781|1781| biomeList = g_Settings.Biomes.filter( |1782|1782| biome => g_GameAttributes.settings.SupportedBiomes.indexOf(biome.Id) != -1); |1783| |- } | |1783|+ |1784|1784| |1785|1785| g_BiomeList = biomeList && prepareForDropdown( |1786|1786| [{ binaries/data/mods/public/gui/gamesetup/gamesetup.js |2018| » while·(g_IsNetworked) | | [NORMAL] ESLintBear (no-unmodified-loop-condition): | | 'g_IsNetworked' is not modified in this loop. binaries/data/mods/public/gui/common/functions_utility.js | 78| » catch·(e)·{} | | [NORMAL] ESLintBear (no-empty): | | Empty block statement. binaries/data/mods/public/gui/common/functions_utility.js | 169| » catch·(e)·{} | | [NORMAL] ESLintBear (no-empty): | | Empty block statement. | | [NORMAL] ESLintBear (semi): | | Missing semicolon. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/menu.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/menu.js | 873| 873| Engine.GetGUIObjectByName("barterHelp").hidden = !canBarter; | 874| 874| | 875| 875| if (canBarter) | 876| |- g_ResourceData.GetCodes().forEach((resCode, i) => { barterUpdateCommon(resCode, i, "barter", g_ViewedPlayer) }); | | 876|+ g_ResourceData.GetCodes().forEach((resCode, i) => { barterUpdateCommon(resCode, i, "barter", g_ViewedPlayer); }); | 877| 877| } | 878| 878| | 879| 879| function getIdleLandTradersText(traderNumber) binaries/data/mods/public/gui/session/menu.js | 482| » » button.onPress·=·(function(player,·stance)·{·return·function()·{ | | [NORMAL] ESLintBear (no-shadow): | | 'stance' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 514| » » button.onPress·=·(function(i,·resCode,·button)·{ | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 514| » » button.onPress·=·(function(i,·resCode,·button)·{ | | [NORMAL] ESLintBear (no-shadow): | | 'resCode' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 514| » » button.onPress·=·(function(i,·resCode,·button)·{ | | [NORMAL] ESLintBear (no-shadow): | | 'button' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 557| » button.onPress·=·(function(i)·{·return·function()·{ | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 623| » button.onPress·=·(function(i,·button)·{·return·function()·{ | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 623| » button.onPress·=·(function(i,·button)·{·return·function()·{ | | [NORMAL] ESLintBear (no-shadow): | | 'button' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 876| » » g_ResourceData.GetCodes().forEach((resCode,·i)·=>·{·barterUpdateCommon(resCode,·i,·"barter",·g_ViewedPlayer)·}); | | [NORMAL] JSHintBear: | | Missing semicolon. binaries/data/mods/public/gui/gamesetup_mp/gamesetup_mp.js | 189| » » » » for·(let·guid·in·g_PlayerAssignments) | | [MAJOR] JSHintBear: | | Let declaration not directly within block. Executing section cli...
Link to build: https://jenkins.wildfiregames.com/job/differential/1561/display/redirect
binaries/data/mods/public/gui/gamesetup_mp/gamesetup_mp.xml | ||
---|---|---|
111 | Can't be moved to code behind ? |
binaries/data/mods/public/gui/gamesetup_mp/gamesetup_mp.xml | ||
---|---|---|
111 | what do you mean exactly? creating a 1 line function in the corresponding js file? |
binaries/data/mods/public/gui/gamesetup_mp/gamesetup_mp.xml | ||
---|---|---|
111 | Yep |
Thanks for addressing the concern, this looks much cleaner to me! The concern was mostly because this function was on the wrong level of abstraction.
I recognize that C++ requires some time to compile and can be broken in more severe ways than JS, but that doesn't mean that we shouldn't put this function to their logical neighours in order to minimize code fragmentation.
The name of the function seems appropriate CreateValue + WriteValueToFile = CreateAndWriteValueToFile.
The purpose of this function with only two statements (proxy / wrapper function for a call pattern) seems justifiable to me, since there are so many occurrences where exactly these two functions are called.
So if there is the choice between deleting the proxy, having it in JS and having it in C++ like you did here, the last seems preferable to me personally.
(I didn't check whether the patch found all occurrences and didn't test it in case someone asks.)
@ffffffff you were the author of the original JS function IIRC, do you agree that this looks better sorted?
source/ps/scripting/JSInterface_ConfigDB.cpp | ||
---|---|---|
147 | The other functions don't hardcode the filename this way, but specify those two strings in the caller (and the filename and cfgNsString play different roles). |
source/ps/scripting/JSInterface_ConfigDB.cpp | ||
---|---|---|
147 | Maybe it needs to be specified in the name? That it uses the certain config path. |
source/ps/scripting/JSInterface_ConfigDB.cpp | ||
---|---|---|
147 | Just mimic WriteValueToFile by adding const Path& path and replace L"config/" + cfgNsString + L".cfg" with path. If the logic of that argument would be changed, it would have to be consistent for all functions with the identical argument. |
Successful build - Chance fights ever on the side of the prudent.
Linter detected issues: Executing section Source... Executing section JS... binaries/data/mods/public/gui/gamesetup_mp/gamesetup_mp.js | 189| » » » » for·(let·guid·in·g_PlayerAssignments) | | [MAJOR] JSHintBear: | | Let declaration not directly within block. | | [NORMAL] ESLintBear (semi): | | Missing semicolon. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/menu.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/menu.js | 873| 873| Engine.GetGUIObjectByName("barterHelp").hidden = !canBarter; | 874| 874| | 875| 875| if (canBarter) | 876| |- g_ResourceData.GetCodes().forEach((resCode, i) => { barterUpdateCommon(resCode, i, "barter", g_ViewedPlayer) }); | | 876|+ g_ResourceData.GetCodes().forEach((resCode, i) => { barterUpdateCommon(resCode, i, "barter", g_ViewedPlayer); }); | 877| 877| } | 878| 878| | 879| 879| function getIdleLandTradersText(traderNumber) binaries/data/mods/public/gui/session/menu.js | 482| » » button.onPress·=·(function(player,·stance)·{·return·function()·{ | | [NORMAL] ESLintBear (no-shadow): | | 'stance' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 514| » » button.onPress·=·(function(i,·resCode,·button)·{ | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 514| » » button.onPress·=·(function(i,·resCode,·button)·{ | | [NORMAL] ESLintBear (no-shadow): | | 'resCode' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 514| » » button.onPress·=·(function(i,·resCode,·button)·{ | | [NORMAL] ESLintBear (no-shadow): | | 'button' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 557| » button.onPress·=·(function(i)·{·return·function()·{ | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 623| » button.onPress·=·(function(i,·button)·{·return·function()·{ | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 623| » button.onPress·=·(function(i,·button)·{·return·function()·{ | | [NORMAL] ESLintBear (no-shadow): | | 'button' is already declared in the upper scope. binaries/data/mods/public/gui/session/menu.js | 876| » » g_ResourceData.GetCodes().forEach((resCode,·i)·=>·{·barterUpdateCommon(resCode,·i,·"barter",·g_ViewedPlayer)·}); | | [NORMAL] JSHintBear: | | Missing semicolon. | | [NORMAL] ESLintBear (indent): | | Expected indentation of 6 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | 392| 392| // Players see colors depending on diplomacy | 393| 393| g_DisplayedPlayerColors[i] = | 394| 394| g_ViewedPlayer == i ? getDiplomacyColor("self") : | 395| |- g_Players[g_ViewedPlayer].isAlly[i] ? getDiplomacyColor("ally") : | | 395|+ g_Players[g_ViewedPlayer].isAlly[i] ? getDiplomacyColor("ally") : | 396| 396| g_Players[g_ViewedPlayer].isNeutral[i] ? getDiplomacyColor("neutral") : | 397| 397| getDiplomacyColor("enemy"); | 398| 398| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | 393| 393| g_DisplayedPlayerColors[i] = | 394| 394| g_ViewedPlayer == i ? getDiplomacyColor("self") : | 395| 395| g_Players[g_ViewedPlayer].isAlly[i] ? getDiplomacyColor("ally") : | 396| |- g_Players[g_ViewedPlayer].isNeutral[i] ? getDiplomacyColor("neutral") : | | 396|+ g_Players[g_ViewedPlayer].isNeutral[i] ? getDiplomacyColor("neutral") : | 397| 397| getDiplomacyColor("enemy"); | 398| 398| | 399| 399| g_DisplayedPlayerColors[0] = g_Players[0].color; | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | 394| 394| g_ViewedPlayer == i ? getDiplomacyColor("self") : | 395| 395| g_Players[g_ViewedPlayer].isAlly[i] ? getDiplomacyColor("ally") : | 396| 396| g_Players[g_ViewedPlayer].isNeutral[i] ? getDiplomacyColor("neutral") : | 397| |- getDiplomacyColor("enemy"); | | 397|+ getDiplomacyColor("enemy"); | 398| 398| | 399| 399| g_DisplayedPlayerColors[0] = g_Players[0].color; | 400| 400| } | | [NORMAL] ESLintBear (indent): | | Expected indentation of 4 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | 644| 644| "civ": setStringTags(g_CivData[g_Players[g_ViewedPlayer].civ].Name, { "font": "sans-bold-stroke-14" }), | 645| 645| "hotkey_civinfo": colorizeHotkey("%(hotkey)s", "civinfo"), | 646| 646| "hotkey_structree": colorizeHotkey("%(hotkey)s", "structree") | 647| |- }); | | 647|+ }); | 648| 648| } | 649| 649| | 650| 650| // Following gaia can be interesting on scripted maps | | [NORMAL] ESLintBear (indent): | | Expected indentation of 3 tabs but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js |1194|1194| |1195|1195| let orderHotkeyTooltip = Object.keys(viewablePlayerStates).length <= 1 ? "" : |1196|1196| "\n" + sprintf(translate("%(order)s: %(hotkey)s to change order."), { |1197| |- "hotkey": setStringTags("\\[Click]", g_HotkeyTags), | |1197|+ "hotkey": setStringTags("\\[Click]", g_HotkeyTags), |1198|1198| "order": tooltipSort == 0 ? translate("Unordered") : tooltipSort == 1 ? translate("Descending") : translate("Ascending") |1199|1199| }); |1200|1200| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 3 tabs but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js |1195|1195| let orderHotkeyTooltip = Object.keys(viewablePlayerStates).length <= 1 ? "" : |1196|1196| "\n" + sprintf(translate("%(order)s: %(hotkey)s to change order."), { |1197|1197| "hotkey": setStringTags("\\[Click]", g_HotkeyTags), |1198| |- "order": tooltipSort == 0 ? translate("Unordered") : tooltipSort == 1 ? translate("Descending") : translate("Ascending") | |1198|+ "order": tooltipSort == 0 ? translate("Unordered") : tooltipSort == 1 ? translate("Descending") : translate("Ascending") |1199|1199| }); |1200|1200| |1201|1201| let resCodes = g_ResourceData.GetCodes(); | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js |1196|1196| "\n" + sprintf(translate("%(order)s: %(hotkey)s to change order."), { |1197|1197| "hotkey": setStringTags("\\[Click]", g_HotkeyTags), |1198|1198| "order": tooltipSort == 0 ? translate("Unordered") : tooltipSort == 1 ? translate("Descending") : translate("Ascending") |1199| |- }); | |1199|+ }); |1200|1200| |1201|1201| let resCodes = g_ResourceData.GetCodes(); |1202|1202| for (let r = 0; r < resCodes.length; ++r) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/session/session.js |1679|1679| for (let rct of resourcesCounterTypes) |1680|1680| for (let rt of resourcesTypes) |1681|1681| reportObject[rt + rct.substr(9)] = playerStatistics[rct][rt]; |1682| |- // eg. rt = food rct.substr = Gathered rct = resourcesGathered | |1682|+ // eg. rt = food rct.substr = Gathered rct = resourcesGathered |1683|1683| |1684|1684| reportObject.vegetarianFoodGathered = playerStatistics.resourcesGathered.vegetarianFood; |1685|1685| for (let type of unitsClasses) binaries/data/mods/public/gui/session/session.js |1055| » let·getPanelEntNameTooltip·=·panelEntState·=>·"[font=\"sans-bold-16\"]"·+·template.name.specific·+·"[/font]"; | | [NORMAL] ESLintBear (no-shadow): | | 'panelEntState' is already declared in the upper scope. binaries/data/mods/public/gui/session/session.js |1130| » » button.onpress·=·(function(i)·{·return·function()·{·performGroup((Engine.HotkeyIsPressed("selection.add")·?·"add"·:·"select"),·i);·};·})(i); | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/session.js |1131| » » button.ondoublepress·=·(function(i)·{·return·function()·{·performGroup("snap",·i);·};·})(i); | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. binaries/data/mods/public/gui/session/session.js |1132| » » button.onpressright·=·(function(i)·{·return·function()·{·performGroup("breakUp",·i);·};·})(i); | | [NORMAL] ESLintBear (no-shadow): | | 'i' is already declared in the upper scope. | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 62| 62| var g_RomanNumbers = [undefined, "I", "II", "III", "IV", "V", "VI", "VII", "VIII"]; | 63| 63| | 64| 64| var g_PlayerTeamList = prepareForDropdown([{ | 65| |- "label": translateWithContext("team", "None"), | | 65|+ "label": translateWithContext("team", "None"), | 66| 66| "id": -1 | 67| 67| }].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 63| 63| | 64| 64| var g_PlayerTeamList = prepareForDropdown([{ | 65| 65| "label": translateWithContext("team", "None"), | 66| |- "id": -1 | | 66|+ "id": -1 | 67| 67| }].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | | [NORMAL] ESLintBear (indent): | | Expected indentation of 0 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 64| 64| var g_PlayerTeamList = prepareForDropdown([{ | 65| 65| "label": translateWithContext("team", "None"), | 66| 66| "id": -1 | 67| |- }].concat( | | 67|+}].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | 70| 70| "id": i | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 65| 65| "label": translateWithContext("team", "None"), | 66| 66| "id": -1 | 67| 67| }].concat( | 68| |- Array(g_MaxTeams).fill(0).map((v, i) => ({ | | 68|+ Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | 70| 70| "id": i | 71| 71| })) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 66| 66| "id": -1 | 67| 67| }].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| |- "label": i + 1, | | 69|+ "label": i + 1, | 70| 70| "id": i | 71| 71| })) | 72| 72| ) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 67| 67| }].concat( | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | 70| |- "id": i | | 70|+ "id": i | 71| 71| })) | 72| 72| ) | 73| 73| ); | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 68| 68| Array(g_MaxTeams).fill(0).map((v, i) => ({ | 69| 69| "label": i + 1, | 70| 70| "id": i | 71| |- })) | | 71|+ })) | 72| 72| ) | 73| 73| ); | 74| 74| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 0 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 69| 69| "label": i + 1, | 70| 70| "id": i | 71| 71| })) | 72| |- ) | | 72|+) | 73| 73| ); | 74| 74| | 75| 75| /** | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 78| 78| var g_RelicCountList = Object.keys(g_CivData).map((civ, i) => i + 1); | 79| 79| | 80| 80| var g_PlayerCivList = g_CivData && prepareForDropdown([{ | 81| |- "name": translateWithContext("civilization", "Random"), | | 81|+ "name": translateWithContext("civilization", "Random"), | 82| 82| "tooltip": translate("Picks one civilization at random when the game starts."), | 83| 83| "color": g_ColorRandom, | 84| 84| "code": "random" | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 79| 79| | 80| 80| var g_PlayerCivList = g_CivData && prepareForDropdown([{ | 81| 81| "name": translateWithContext("civilization", "Random"), | 82| |- "tooltip": translate("Picks one civilization at random when the game starts."), | | 82|+ "tooltip": translate("Picks one civilization at random when the game starts."), | 83| 83| "color": g_ColorRandom, | 84| 84| "code": "random" | 85| 85| }].concat( | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 80| 80| var g_PlayerCivList = g_CivData && prepareForDropdown([{ | 81| 81| "name": translateWithContext("civilization", "Random"), | 82| 82| "tooltip": translate("Picks one civilization at random when the game starts."), | 83| |- "color": g_ColorRandom, | | 83|+ "color": g_ColorRandom, | 84| 84| "code": "random" | 85| 85| }].concat( | 86| 86| Object.keys(g_CivData).filter( | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 81| 81| "name": translateWithContext("civilization", "Random"), | 82| 82| "tooltip": translate("Picks one civilization at random when the game starts."), | 83| 83| "color": g_ColorRandom, | 84| |- "code": "random" | | 84|+ "code": "random" | 85| 85| }].concat( | 86| 86| Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | | [NORMAL] ESLintBear (indent): | | Expected indentation of 0 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 82| 82| "tooltip": translate("Picks one civilization at random when the game starts."), | 83| 83| "color": g_ColorRandom, | 84| 84| "code": "random" | 85| |- }].concat( | | 85|+}].concat( | 86| 86| Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 83| 83| "color": g_ColorRandom, | 84| 84| "code": "random" | 85| 85| }].concat( | 86| |- Object.keys(g_CivData).filter( | | 86|+ Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 84| 84| "code": "random" | 85| 85| }].concat( | 86| 86| Object.keys(g_CivData).filter( | 87| |- civ => g_CivData[civ].SelectableInGameSetup | | 87|+ civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 85| 85| }].concat( | 86| 86| Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| |- ).map(civ => ({ | | 88|+ ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 86| 86| Object.keys(g_CivData).filter( | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | 89| |- "name": g_CivData[civ].Name, | | 89|+ "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | 92| 92| "code": civ | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 87| 87| civ => g_CivData[civ].SelectableInGameSetup | 88| 88| ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | 90| |- "tooltip": g_CivData[civ].History, | | 90|+ "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | 92| 92| "code": civ | 93| 93| })).sort(sortNameIgnoreCase) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 88| 88| ).map(civ => ({ | 89| 89| "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | 91| |- "color": g_ColorRegular, | | 91|+ "color": g_ColorRegular, | 92| 92| "code": civ | 93| 93| })).sort(sortNameIgnoreCase) | 94| 94| ) | | [NORMAL] ESLintBear (indent): | | Expected indentation of 2 tabs but found 3. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 89| 89| "name": g_CivData[civ].Name, | 90| 90| "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | 92| |- "code": civ | | 92|+ "code": civ | 93| 93| })).sort(sortNameIgnoreCase) | 94| 94| ) | 95| 95| ); | | [NORMAL] ESLintBear (indent): | | Expected indentation of 1 tab but found 2. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 90| 90| "tooltip": g_CivData[civ].History, | 91| 91| "color": g_ColorRegular, | 92| 92| "code": civ | 93| |- })).sort(sortNameIgnoreCase) | | 93|+ })).sort(sortNameIgnoreCase) | 94| 94| ) | 95| 95| ); | 96| 96| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 0 tabs but found 1. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | 91| 91| "color": g_ColorRegular, | 92| 92| "code": civ | 93| 93| })).sort(sortNameIgnoreCase) | 94| |- ) | | 94|+) | 95| 95| ); | 96| 96| | 97| 97| /** | | [NORMAL] ESLintBear (no-trailing-spaces): | | Trailing spaces not allowed. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js |1240|1240| offset = -Math.min(slideSpeed * dt, maxOffset); |1241|1241| } |1242|1242| |1243| |- updateSettingsPanelPosition(offset); | |1243|+ updateSettingsPanelPosition(offset); |1244|1244| } |1245|1245| |1246|1246| /** | | [NORMAL] ESLintBear (curly): | | Unnecessary { after 'if' condition. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/gamesetup/gamesetup.js |1774|1774| let biomeList; |1775|1775| |1776|1776| if (g_GameAttributes.mapType == "random" && g_GameAttributes.settings.SupportedBiomes) |1777| |- { | |1777|+ |1778|1778| if (typeof g_GameAttributes.settings.SupportedBiomes == "string") |1779|1779| biomeList = g_Settings.Biomes.filter(biome => biome.Id.startsWith(g_GameAttributes.settings.SupportedBiomes)); |1780|1780| else |1781|1781| biomeList = g_Settings.Biomes.filter( |1782|1782| biome => g_GameAttributes.settings.SupportedBiomes.indexOf(biome.Id) != -1); |1783| |- } | |1783|+ |1784|1784| |1785|1785| g_BiomeList = biomeList && prepareForDropdown( |1786|1786| [{ binaries/data/mods/public/gui/gamesetup/gamesetup.js |2018| » while·(g_IsNetworked) | | [NORMAL] ESLintBear (no-unmodified-loop-condition): | | 'g_IsNetworked' is not modified in this loop. binaries/data/mods/public/gui/common/functions_utility.js | 78| » catch·(e)·{} | | [NORMAL] ESLintBear (no-empty): | | Empty block statement. binaries/data/mods/public/gui/common/functions_utility.js | 169| » catch·(e)·{} | | [NORMAL] ESLintBear (no-empty): | | Empty block statement. | | [NORMAL] ESLintBear (no-multi-spaces): | | Multiple spaces found before '"status"'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 47| 47| * The playerlist will be assembled using these values. | 48| 48| */ | 49| 49| var g_PlayerStatuses = { | 50| |- "available": { "color": "0 219 0", "status": translate("Online") }, | | 50|+ "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | | [NORMAL] ESLintBear (key-spacing): | | Extra space before value for key 'away'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 48| 48| */ | 49| 49| var g_PlayerStatuses = { | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| |- "away": { "color": "229 76 13", "status": translate("Away") }, | | 51|+ "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | | [NORMAL] ESLintBear (no-multi-spaces): | | Multiple spaces found before '"status"'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 48| 48| */ | 49| 49| var g_PlayerStatuses = { | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| |- "away": { "color": "229 76 13", "status": translate("Away") }, | | 51|+ "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | | [NORMAL] ESLintBear (key-spacing): | | Extra space before value for key 'playing'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 49| 49| var g_PlayerStatuses = { | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| |- "playing": { "color": "200 0 0", "status": translate("Busy") }, | | 52|+ "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | | [NORMAL] ESLintBear (no-multi-spaces): | | Multiple spaces found before '"status"'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 49| 49| var g_PlayerStatuses = { | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| |- "playing": { "color": "200 0 0", "status": translate("Busy") }, | | 52|+ "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | | [NORMAL] ESLintBear (key-spacing): | | Extra space before value for key 'offline'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| |- "offline": { "color": "0 0 0", "status": translate("Offline") }, | | 53|+ "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | 56| 56| | | [NORMAL] ESLintBear (no-multi-spaces): | | Multiple spaces found before '"status"'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 50| 50| "available": { "color": "0 219 0", "status": translate("Online") }, | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| |- "offline": { "color": "0 0 0", "status": translate("Offline") }, | | 53|+ "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| 54| "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | 56| 56| | | [NORMAL] ESLintBear (key-spacing): | | Extra space before value for key 'unknown'. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 51| 51| "away": { "color": "229 76 13", "status": translate("Away") }, | 52| 52| "playing": { "color": "200 0 0", "status": translate("Busy") }, | 53| 53| "offline": { "color": "0 0 0", "status": translate("Offline") }, | 54| |- "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | | 54|+ "unknown": { "color": "178 178 178", "status": translateWithContext("lobby presence", "Unknown") } | 55| 55| }; | 56| 56| | 57| 57| var g_RoleNames = { | | [NORMAL] ESLintBear (indent): | | Expected indentation of 5 tabs but found 4. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 219| 219| me ? | 220| 220| translate("You have been muted.") : | 221| 221| translate("%(nick)s has been muted.") : | 222| |- newrole == "moderator" ? | | 222|+ newrole == "moderator" ? | 223| 223| me ? | 224| 224| translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | | [NORMAL] ESLintBear (indent): | | Expected indentation of 6 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 220| 220| translate("You have been muted.") : | 221| 221| translate("%(nick)s has been muted.") : | 222| 222| newrole == "moderator" ? | 223| |- me ? | | 223|+ me ? | 224| 224| translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 221| 221| translate("%(nick)s has been muted.") : | 222| 222| newrole == "moderator" ? | 223| 223| me ? | 224| |- translate("You are now a moderator.") : | | 224|+ translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | 227| 227| me ? | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 222| 222| newrole == "moderator" ? | 223| 223| me ? | 224| 224| translate("You are now a moderator.") : | 225| |- translate("%(nick)s is now a moderator.") : | | 225|+ translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | 227| 227| me ? | 228| 228| translate("You have been unmuted.") : | | [NORMAL] ESLintBear (indent): | | Expected indentation of 6 tabs but found 4. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 223| 223| me ? | 224| 224| translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | 226| |- msg.oldrole == "visitor" ? | | 226|+ msg.oldrole == "visitor" ? | 227| 227| me ? | 228| 228| translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 224| 224| translate("You are now a moderator.") : | 225| 225| translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | 227| |- me ? | | 227|+ me ? | 228| 228| translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | 230| 230| me ? | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 225| 225| translate("%(nick)s is now a moderator.") : | 226| 226| msg.oldrole == "visitor" ? | 227| 227| me ? | 228| |- translate("You have been unmuted.") : | | 228|+ translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | 230| 230| me ? | 231| 231| translate("You are not a moderator anymore.") : | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 226| 226| msg.oldrole == "visitor" ? | 227| 227| me ? | 228| 228| translate("You have been unmuted.") : | 229| |- translate("%(nick)s has been unmuted.") : | | 229|+ translate("%(nick)s has been unmuted.") : | 230| 230| me ? | 231| 231| translate("You are not a moderator anymore.") : | 232| 232| translate("%(nick)s is not a moderator anymore."); | | [NORMAL] ESLintBear (indent): | | Expected indentation of 7 tabs but found 5. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 227| 227| me ? | 228| 228| translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | 230| |- me ? | | 230|+ me ? | 231| 231| translate("You are not a moderator anymore.") : | 232| 232| translate("%(nick)s is not a moderator anymore."); | 233| 233| | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 228| 228| translate("You have been unmuted.") : | 229| 229| translate("%(nick)s has been unmuted.") : | 230| 230| me ? | 231| |- translate("You are not a moderator anymore.") : | | 231|+ translate("You are not a moderator anymore.") : | 232| 232| translate("%(nick)s is not a moderator anymore."); | 233| 233| | 234| 234| addChatMessage({ | | [NORMAL] ESLintBear (indent): | | Expected indentation of 8 tabs but found 6. |----| | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/lobby/lobby.js | 229| 229| translate("%(nick)s has been unmuted.") : | 230| 230| me ? | 231| 231| translate("You are not a moderator anymore.") : | 232| |- translate("%(nick)s is not a moderator anymore."); | | 232|+ translate("%(nick)s is not a moderator anymore."); | 233| 233| | 234| 234| addChatMessage({ | 235| 235| "text": "/special " + sprintf(txt, { "nick": msg.nick }), binaries/data/mods/public/gui/lobby/lobby.js |1035| » » switch·(sortBy) | | [NORMAL] ESLintBear (default-case): | | Expected a default case. binaries/data/mods/public/gui/lobby/lobby.js | 729| » » case·'name': | | [NORMAL] JSHintBear: | | Expected a 'break' statement before 'default'. Executing section cli...
Link to build: https://jenkins.wildfiregames.com/job/differential/1833/display/redirect
modmod.js saveMods() should also be updated; it wasn't present there since the function was located public/.
Engine.ConfigDB_CreateValue("user", g_Terms[data.page].config, value);
Engine.ConfigDB_WriteValueToFile("user", g_Terms[data.page].config, value, "config/user.cfg");
One might be inclined to remove the duplicate user and user.cfg strings throughout the hole codebase, but that should rather be unified consistently.
For example in options.json
Engine.ConfigDB_WriteFile("user", "config/user.cfg");
Engine.ConfigDB_SetChanges("user", false);
was not covered by this JS function;
or in credentials.js:
Engine.ConfigDB_RemoveValue("user", "lobby.password");
Engine.ConfigDB_WriteFile("user", "config/user.cfg");
So I would propone to postpone that planning to when the time has come to dedicate time to that.
Tested that lines don't change behavior with ctrl+f in the browser, tested that the patch is complete with a file search for ConfigDB_CreateValue(.
Compiled and tested, works.
You get an exclusive, irrevocable, non-transferable, non-sublicensable license to commit under the terms of changing these two points and referencing the two commits in the commit message.
Thanks for having taken caer of this and sorry for the review delay!
binaries/data/mods/public/gui/session/top_panel/resources.xml | ||
---|---|---|
11 | I wouldn't decline to have this moved to a separate function, as I spent too much time to figure out whether it was a mistake that this contained the same code or not. (And in case you wonder why I objected to that config helper function but propose to add a helper here, it's that the helper function was in the wrong location, as you see we still have the helper function, but in C++ alongside the others, and keeping one dialect of JS config functions) I suppose this must be added below updatePlayerDisplay() in session.js, since it's the logically closest related function, along updateTopPanel(). refs rP21071 |
We call WriteFile there, so everytime we save the mods, we save everything, sounds wrong...
binaries/data/mods/public/gui/session/top_panel/resources.xml | ||
---|---|---|
11 | updatePlayerDisplay() is also called from updateGUIObjects, don't think we want to do that... |
Sounds or is?
binaries/data/mods/public/gui/session/top_panel/resources.xml | ||
---|---|---|
11 | I mean inserting the helper function below updatePlayerDisplayer, not call it from there. |