public void AddKeyMapper(GameKeyCode gkCode, KeyCollection kc) { if (gameKeyMapper.ContainsValue(kc)) { GameKeyCode neededDelKey = GameKeyCode.INVALID; foreach (var kpl in gameKeyMapper) { if (kpl.Value == kc) { neededDelKey = kpl.Key; break; } } gameKeyMapper.Remove(neededDelKey); } if (gameKeyMapper.ContainsKey(gkCode)) { gameKeyMapper[gkCode] = kc; } else { gameKeyMapper.Add(gkCode, kc); } }
public KeyCollection GetKeyCollection(GameKeyCode gkCode) { if (gameKeyMapper.ContainsKey(gkCode)) { var kc = gameKeyMapper[gkCode]; return(kc); } else { return(null); } }
public static bool IsKeyDown(GameKeyCode key) { switch (key) { case GameKeyCode.Forward: return(Input.GetKey(KeyCode.W)); case GameKeyCode.Left: return(Input.GetKey(KeyCode.A)); case GameKeyCode.Right: return(Input.GetKey(KeyCode.D)); case GameKeyCode.Backward: return(Input.GetKey(KeyCode.S)); case GameKeyCode.Jump: return(Input.GetKey(KeyCode.Space)); default: return(false); } }
public KeyCode?GetKey(GameKeyCode gkCode) { if (gameKeyMapper.ContainsKey(gkCode)) { var kc = gameKeyMapper[gkCode]; if (kc != null) { return(kc.ToKeyCode()); } else { return(null); } } else { return(null); } }
public void RemoveKeyMapper(GameKeyCode gkCode) { gameKeyMapper.Remove(gkCode); }