void Scene_Name::Update() { kbd_window->Update(); if (Input::IsTriggered(Input::CANCEL)) { if (name_window->Get().size() > 0) { Game_System::SePlay(Data::system.cancel_se); name_window->Erase(); } else Game_System::SePlay(Data::system.buzzer_se); } else if (Input::IsTriggered(Input::DECISION)) { Game_System::SePlay(Data::system.decision_se); std::string s(kbd_window->GetSelected()); if (s == "Done") { Game_Temp::hero_name = name_window->Get(); Game_Actor* actor = Game_Actors::GetActor(Game_Temp::hero_name_id); if (actor != NULL) { actor->SetName(name_window->Get()); } Scene::Pop(); } else if (s == "Symbol") kbd_window->SetMode(1); else if (s == "Letter") kbd_window->SetMode(0); else name_window->Append(s); } }
void Scene_Name::Update() { kbd_window->Update(); if (Input::IsTriggered(Input::CANCEL)) { if (name_window->Get().size() > 0) { Game_System::SePlay(Data::system.cancel_se); name_window->Erase(); } else Game_System::SePlay(Data::system.buzzer_se); } else if (Input::IsTriggered(Input::DECISION)) { Game_System::SePlay(Data::system.decision_se); std::string const& s = kbd_window->GetSelected(); if(s == Window_Keyboard::DONE || s == Window_Keyboard::DONE_JP) { Game_Temp::hero_name = name_window->Get(); Game_Actor* actor = Game_Actors::GetActor(Game_Temp::hero_name_id); if (actor != NULL) { actor->SetName(name_window->Get()); } Scene::Pop(); } else if(s == Window_Keyboard::TO_SYMBOL) { kbd_window->SetMode(Window_Keyboard::Symbol); } else if(s == Window_Keyboard::TO_LETTER) { kbd_window->SetMode(Window_Keyboard::Letter); } else if(s == Window_Keyboard::TO_HIRAGANA) { kbd_window->SetMode(Window_Keyboard::Hiragana); } else if(s == Window_Keyboard::TO_KATAKANA) { kbd_window->SetMode(Window_Keyboard::Katakana); } else { name_window->Append(s == "" ? " " : s); } } }