public static void CreateBinding(string commandToRun, Key bindingKey) { var existingAction = customKeyBinds.FirstOrDefault(x => (x.action.BindingsOfTypes(BindingSourceType.KeyBindingSource).FirstOrDefault() as KeyBindingSource)?.Control.GetInclude(0) == bindingKey); if (existingAction != null) { existingAction.commandToRun = commandToRun; return; } var action = KeyBinding.GetEphemeralPlayerAction(); action.AddBinding(new KeyBindingSource(bindingKey)); customKeyBinds.Add(new KeyBinding() { action = action, commandToRun = commandToRun }); }