private void AutocompleteBind() { string[] split = InputField.text.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); if (split.Length == 1) { string[] completions = BindManager.GetBindKeyAutocompletions(""); ListCompletions(completions.Where(i => !i.StartsWith("Joystick")).ToArray(), "Bind key", split[0]); } if (split.Length == 2) { string[] completions = BindManager.GetBindKeyAutocompletions(split[1]); if (completions.Length == 1) { InputField.text = split[0] + " " + completions[0] + " "; InputField.caretPosition = InputField.text.Length; } else if (completions.Length > 0) { ListCompletions(completions, "Bind key", split[0]); } ResetScrollPosition(); } else if (split.Length == 3) { string[] completions = CommandManager.GetCommandAutocompletions(split[2]); if (completions.Length == 1) { InputField.text = split[0] + " " + split[1] + " " + completions[0] + " "; InputField.caretPosition = InputField.text.Length; } else if (completions.Length > 0) { ListCompletions(completions, "Bind command", split[0] + " " + split[1]); } ResetScrollPosition(); } }