// Update is called once per frame public override void UpdateEditor() { if (c_controllerData.b_editorActive == false) { return; } if (GlobalInputController.GetInputAction(ControlAction.CONFIRM, KeyValue.IDLE)) { GlobalInputController.StartWatchForAnyInput(); SpriteDisplay.sprite = InputSpriteController.EmptySprite(); } KeyCode keyIn = GlobalInputController.GetAnyKey(); if (keyIn == KeyCode.Escape) { GlobalInputController.StopWatchForAnyInput(); CancelDataEdit(); if (InputSpriteController.getInputSprite(out spriteOut, c_controllerData.k, this.InputType)) { SpriteDisplay.sprite = spriteOut; } } else if (keyIn != KeyCode.None) { GlobalInputController.StopWatchForAnyInput(); VerifyAndUpdateMutex(keyIn); if (InputSpriteController.getInputSprite(out spriteOut, keyIn, this.InputType)) { SpriteDisplay.sprite = spriteOut; } c_controllerData.k = keyIn; ConfirmDataEdit(CurrentTarget); } // no state machine needed, handled by isActive EnginePush(); }