MCPcopy Create free account
hub / github.com/OpenLoco/OpenLoco / handleInput

Function handleInput

src/OpenLoco/src/Ui.cpp:839–959  ·  view source on GitHub ↗

0x004C96E7

Source from the content-addressed store, hash-verified

837
838 // 0x004C96E7
839 void handleInput()
840 {
841 if (MultiPlayer::resetFlag(MultiPlayer::flags::flag_10))
842 {
843 Windows::CompanyWindow::openAndSetName();
844 }
845
846 if (Game::hasFlags(GameStateFlags::preferredOwnerName))
847 {
848 if (!SceneManager::isTitleMode() && !SceneManager::isEditorMode())
849 {
850 if (Tutorial::state() == Tutorial::State::none)
851 {
852 CompanyManager::setPreferredName();
853 }
854 }
855 Game::removeFlags(GameStateFlags::preferredOwnerName);
856 }
857
858 if (Game::hasFlags(GameStateFlags::preferredCompanyName))
859 {
860 if (!SceneManager::isTitleMode() && !SceneManager::isEditorMode())
861 {
862 if (Tutorial::state() == Tutorial::State::none)
863 {
864 CompanyManager::setPreferredCompanyName();
865 }
866 }
867 Game::removeFlags(GameStateFlags::preferredCompanyName);
868 }
869
870 if (MultiPlayer::resetFlag(MultiPlayer::flags::flag_5))
871 {
872 GameCommands::LoadSaveQuitGameArgs args{};
873 args.loadQuitMode = LoadOrQuitMode::returnToTitlePrompt;
874 args.saveMode = LoadSaveQuitGameArgs::SaveMode::dontSave;
875 GameCommands::doCommand(args, GameCommands::Flags::apply);
876 }
877
878 if (!MultiPlayer::hasFlag(MultiPlayer::flags::flag_0) && !MultiPlayer::hasFlag(MultiPlayer::flags::flag_4))
879 {
880 if (MultiPlayer::resetFlag(MultiPlayer::flags::flag_2))
881 {
882 WindowManager::closeConstructionWindows();
883 WindowManager::closeAllFloatingWindows();
884 GameCommands::do_69();
885 }
886
887 if (MultiPlayer::resetFlag(MultiPlayer::flags::flag_3))
888 {
889 WindowManager::closeConstructionWindows();
890 WindowManager::closeAllFloatingWindows();
891 GameCommands::do_70();
892 }
893 }
894
895 if (MultiPlayer::resetFlag(MultiPlayer::flags::flag_4))
896 {

Callers 1

sub_431695Function · 0.85

Calls 15

openAndSetNameFunction · 0.85
isTitleModeFunction · 0.85
isEditorModeFunction · 0.85
removeFlagsFunction · 0.85
closeConstructionWindowsFunction · 0.85
do_69Function · 0.85
do_70Function · 0.85
do_72Function · 0.85
isInitializedFunction · 0.85
callEvent8OnAllWindowsFunction · 0.85
updateCursorPositionFunction · 0.85

Tested by

no test coverage detected