/** * Possible inputs: * * Key Action Context Responsible * --- ------ ------- ----------- * F1 Help Any MarketPanel * F2 Buy Market.DayStarted and MarketPanel * MarketPanel.RowSelected * F3 Sell Market.DayStarted and MarketPanel * MarketPanel.RowSelected * F4 Short Market.DayStarted and MarketPanel * MarketPanel.RowSelected * * Enter OpenMarket Market.Idle Trader (this script) * NewDay Market.Closed Trader (this script) * SubmitModal isModalOpened Modals * SkipDayCount isDisplayingDayCount DayDisplay * * Esc ExitModal isModalOpened Modals * ExitProgram MarketPanel.Idle Trader (this script) * DiselectRow RowSelected MarketPanel * * UpDown ChangeRows Any MarketPanel * < > Quantity isModalOpened BuyModal * */ private void CheckKeyboardInput() { CheckResetDataKeys(); if (isModalOpened || isDisplayingDayCount) { return; } if (Input.GetKeyDown(KeyCode.Return)) { if (market.CurrentState == MarketState.Idle) { market.BeginDay(); } else if (market.CurrentState == MarketState.Closed) { RebootProgram(); } } else if (Input.GetKeyUp(KeyCode.Escape)) { if (marketPanel.CurrentContext == MarketPanelContext.Idle) { DisplayExitModal(); } else { marketPanel.CheckInput(); } } else { marketPanel.CheckInput(); } }