void Window_Message::FinishMessageProcessing() { if (Game_Message::choice_max > 0) { StartChoiceProcessing(); } else if (Game_Message::num_input_variable_id > 0) { StartNumberInputProcessing(); } else if (kill_message) { TerminateMessage(); } else { pause = true; } text.clear(); text_index = text.begin(); end = text.end(); }
void Window_Message::FinishMessageProcessing() { if (Game_Message::choice_max > 0) { StartChoiceProcessing(); } else if (Game_Message::num_input_variable_id > 0) { StartNumberInputProcessing(); } else if (kill_message) { TerminateMessage(); kill_message = false; } else { pause = true; } text.clear(); text_index = boost::u8_to_u32_iterator<std::string::const_iterator>(text.begin(), text.begin(), text.end()); end = boost::u8_to_u32_iterator<std::string::const_iterator>(text.end(), text.begin(), text.end()); }
void Window_Message::InsertNewPage() { // Cancel pending face requests for async // Otherwise they render on the wrong page face_request_ids.clear(); contents->Clear(); y = Game_Message::GetRealPosition() * 80; if (Game_Message::IsTransparent()) { SetOpacity(0); } else { SetOpacity(255); } if (!Game_Message::GetFaceName().empty()) { if (!Game_Message::IsFaceRightPosition()) { contents_x = LeftMargin + FaceSize + RightFaceMargin; DrawFace(Game_Message::GetFaceName(), Game_Message::GetFaceIndex(), LeftMargin, TopMargin, Game_Message::IsFaceFlipped()); } else { contents_x = 0; DrawFace(Game_Message::GetFaceName(), Game_Message::GetFaceIndex(), 248, TopMargin, Game_Message::IsFaceFlipped()); } } else { contents_x = 0; } if (Game_Message::choice_start == 0 && Game_Message::choice_max > 0) { contents_x += 12; } contents_y = 2; line_count = 0; text_color = Font::ColorDefault; speed_modifier = 0; if (Game_Message::num_input_start == 0 && Game_Message::num_input_variable_id > 0) { // If there is an input window on the first line StartNumberInputProcessing(); } }
void Window_Message::InsertNewPage() { contents->Clear(); if (Game_Message::fixed_position) { y = Game_Message::position * 80; } else { // Move Message Box to prevent player hiding int disp = Main_Data::game_player->GetScreenY(); switch (Game_Message::position) { case 0: // Up y = disp > (16 * 7) ? 0 : 2 * 80; break; case 1: // Center if (disp <= 16 * 7) { y = 2 * 80; } else if (disp >= 16 * 10) { y = 0; } else { y = 80; } break; case 2: // Down y = disp >= (16 * 10) ? 0 : 2 * 80; break; }; } if (Game_Message::background) { opacity = 255; } else { opacity = 0; } if (!Game_Message::face_name.empty()) { if (Game_Message::face_left_position) { contents_x = LeftMargin + FaceSize + RightFaceMargin; DrawFace(Game_Message::face_name, Game_Message::face_index, LeftMargin, TopMargin, Game_Message::face_flipped); } else { contents_x = 0; DrawFace(Game_Message::face_name, Game_Message::face_index, 248, TopMargin, Game_Message::face_flipped); } } else { contents_x = 0; } if (Game_Message::choice_start == 0 && Game_Message::choice_max > 0) { contents_x += 12; } contents_y = 2; line_count = 0; text_color = Font::ColorDefault; speed_modifier = 0; if (Game_Message::num_input_start == 0 && Game_Message::num_input_variable_id > 0) { // If there is an input window on the first line StartNumberInputProcessing(); } }