diff --git a/OpenRA.Game/GameRules/Settings.cs b/OpenRA.Game/GameRules/Settings.cs index f51ea9051d..0f877400a0 100755 --- a/OpenRA.Game/GameRules/Settings.cs +++ b/OpenRA.Game/GameRules/Settings.cs @@ -82,6 +82,11 @@ namespace OpenRA.GameRules public int SheetSize = 2048; } + public class KeyboardSettings + { + public Modifiers ControlGroupModifier = Modifiers.Ctrl; + } + public class Settings { string SettingsFile; @@ -92,7 +97,7 @@ namespace OpenRA.GameRules public GraphicSettings Graphics = new GraphicSettings(); public ServerSettings Server = new ServerSettings(); public DebugSettings Debug = new DebugSettings(); - + public KeyboardSettings Keyboard = new KeyboardSettings(); public Dictionary Sections; public Settings(string file, Arguments args) { @@ -104,7 +109,8 @@ namespace OpenRA.GameRules {"Sound", Sound}, {"Graphics", Graphics}, {"Server", Server}, - {"Debug", Debug} + {"Debug", Debug}, + {"Keyboard",Keyboard} }; diff --git a/OpenRA.Game/Selection.cs b/OpenRA.Game/Selection.cs index 3091f84aa0..4ace12b9a3 100644 --- a/OpenRA.Game/Selection.cs +++ b/OpenRA.Game/Selection.cs @@ -66,7 +66,7 @@ namespace OpenRA public void DoControlGroup(World world, int group, Modifiers mods) { - if (mods.HasModifier(Modifiers.Ctrl)) + if (mods.HasModifier(Game.Settings.Keyboard.ControlGroupModifier)) { if (actors.Count == 0) return;