Index: ps/trunk/binaries/data/mods/public/gui/common/color.js =================================================================== --- ps/trunk/binaries/data/mods/public/gui/common/color.js +++ ps/trunk/binaries/data/mods/public/gui/common/color.js @@ -92,7 +92,11 @@ let h, s, l = (max + min) / 2; if (max == min) - h = s = 0; // achromatic + { + // achromatic + h = 0; + s = 0; + } else { let d = max - min; @@ -108,7 +112,11 @@ case b: h = (r - g) / d + 4; break; + default: + error("rgbToHsl could not determine maximum!"); + break; } + h /= 6; } @@ -144,8 +152,14 @@ [h, s, l] = [h, s, l].map(clampColorValue); let r, g, b; if (s == 0) - r = g = b = l; // achromatic - else { + { + // achromatic + b = l; + r = l; + g = l; + } + else + { let q = l < 0.5 ? l * (1 + s) : l + s - l * s; let p = 2 * l - q; r = hue2rgb(p, q, h + 1/3); Index: ps/trunk/binaries/data/mods/public/gui/common/functions_utility.js =================================================================== --- ps/trunk/binaries/data/mods/public/gui/common/functions_utility.js +++ ps/trunk/binaries/data/mods/public/gui/common/functions_utility.js @@ -75,7 +75,11 @@ { teamList = JSON.parse(unescapeText(stringifiedTeamList)); } - catch (e) {} + catch (e) + { + // Ignore invalid input from remote users + return []; + } let playerData = []; Index: ps/trunk/binaries/data/mods/public/gui/common/gamedescription.js =================================================================== --- ps/trunk/binaries/data/mods/public/gui/common/gamedescription.js +++ ps/trunk/binaries/data/mods/public/gui/common/gamedescription.js @@ -385,10 +385,10 @@ if (g_GameAttributes.settings.TriggerDifficulty !== undefined) { - let difficulty = g_Settings.TriggerDifficulties.find(difficulty => difficulty.Difficulty == g_GameAttributes.settings.TriggerDifficulty); + let triggerDifficulty = g_Settings.TriggerDifficulties.find(difficulty => difficulty.Difficulty == g_GameAttributes.settings.TriggerDifficulty); titles.push({ - "label": difficulty.Title, - "value": difficulty.Tooltip + "label": triggerDifficulty.Title, + "value": triggerDifficulty.Tooltip }); } Index: ps/trunk/binaries/data/mods/public/gui/common/settings.js =================================================================== --- ps/trunk/binaries/data/mods/public/gui/common/settings.js +++ ps/trunk/binaries/data/mods/public/gui/common/settings.js @@ -425,6 +425,6 @@ */ function translateVictoryCondition(victoryConditionName) { - let victoryCondition = g_Settings.VictoryConditions.find(victoryCondition => victoryCondition.Name == victoryConditionName); + let victoryCondition = g_Settings.VictoryConditions.find(condition => condition.Name == victoryConditionName); return victoryCondition ? victoryCondition.Title : translate("Unknown Victory Condition"); } Index: ps/trunk/binaries/data/mods/public/gui/common/tab_buttons.js =================================================================== --- ps/trunk/binaries/data/mods/public/gui/common/tab_buttons.js +++ ps/trunk/binaries/data/mods/public/gui/common/tab_buttons.js @@ -43,7 +43,9 @@ size.bottom = size.top + buttonHeight; button.size = size; button.tooltip = categoriesData[category].tooltip || ""; - button.onPress = (category => function() { onPress(category); })(+category); + + let categoryNum = +category; + button.onPress = () => { onPress(categoryNum); }; Engine.GetGUIObjectByName("tabButtonText[" + category + "]").caption = categoriesData[category].label; }