public void AddUpdatedKey(KeyInputController input, BlockBehaviour extLogic, MExtKey key) { //foreach (var kk in key.UpdatedKeyCodes) // input.AddMKey(extLogic, key, (KeyCode)kk.Value); // force add BOTH old key AND message key.SetUseMessage(false); foreach (var kk in key.ResolveKeys().Where(x => x.IsKey)) { input.AddMKey(extLogic, key, kk.Key); } key.SetUseMessage(true); input.AddMKey(extLogic, key, KeyCode.None); key.RestoreSavedUseMessage(); }
public void AddKey(KeyInputController input, BlockBehaviour extLogic, MExtKey key) { foreach (var kk in key.UpdatedKeyCodes) { input.AddMKey(extLogic, key, (KeyCode)kk.Value); } }
private void RegisterCpu(KeyInputController input) { InputController = input; foreach (var key in PIO.Values) { foreach (var kc in key.ResolveKeys().Where(x => x.IsKey).Select(x => x.Key)) { input.AddMKey(BlockBehaviour, key, kc); input.Add(kc); } key.SetInputController(input); key.SetKeycodes(input, machineHandler.IsAnyEmulating); machineHandler.AddExtKeyEmulator(key); machineHandler.AddUpdatedKey(input, BlockBehaviour, key); } }