MCPcopy Create free account
hub / github.com/EasyRPG/Player / vUpdate

Method vUpdate

src/scene_settings.cpp:213–299  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

211}
212
213void Scene_Settings::vUpdate() {
214 if (RefreshInputEmergencyReset()) {
215 return;
216 }
217
218 main_window->Update();
219 help_window->Update();
220 help_window2->Update();
221 options_window->Update();
222 input_window->Update();
223 input_mode_window->Update();
224
225 auto opt_mode = options_window->GetMode();
226
227 SetMode(opt_mode);
228
229 if (Input::IsTriggered(Input::CANCEL) && opt_mode != Window_Settings::eInputButtonAdd) {
230 Main_Data::game_system->SePlay(Main_Data::game_system->GetSystemSE(Game_System::SFX_Cancel));
231
232 if (number_window) {
233 number_window.reset();
234 auto& option = options_window->GetCurrentOption();
235 option.current_value = option.original_value;
236 option.action();
237 options_window->SetActive(true);
238 return;
239 }
240
241 if (picker_window) {
242 picker_window.reset();
243 auto& option = options_window->GetCurrentOption();
244 option.current_value = option.original_value;
245 option.action();
246 options_window->SetActive(true);
247 return;
248 }
249
250 help_window2->SetFont(nullptr);
251 options_window->Pop();
252 SetMode(options_window->GetMode());
253 if (mode == Window_Settings::eNone) {
254 Scene::Pop();
255 }
256 }
257
258 switch (opt_mode) {
259 case Window_Settings::eNone:
260 case Window_Settings::eSave:
261 case Window_Settings::eEnd:
262 case Window_Settings::eAbout:
263 case Window_Settings::eLanguage: // fix compiler warning, not implemented
264 break;
265 case Window_Settings::eMain:
266 UpdateMain();
267 break;
268 case Window_Settings::eInput:
269 case Window_Settings::eVideo:
270 case Window_Settings::eAudio:

Callers

nothing calls this directly

Calls 7

SePlayMethod · 0.80
UpdateMethod · 0.45
GetModeMethod · 0.45
resetMethod · 0.45
SetActiveMethod · 0.45
SetFontMethod · 0.45
PopMethod · 0.45

Tested by

no test coverage detected