/** * One time initializations done when we want to display a new training mission. * * This does all the processing and setup required to actually display it, including * starting the voice file playing */ void message_training_setup(int m, int length, char *special_message) { if ((m < 0) || !Messages[m].message[0]) { // remove current message from the screen Training_num_lines = 0; return; } // translate tokens in message to the real things if (special_message == NULL) message_translate_tokens(Training_buf, Messages[m].message); else message_translate_tokens(Training_buf, special_message); HUD_add_to_scrollback(Training_buf, HUD_SOURCE_TRAINING); // moved from message_training_display() because we got rid of an extra buffer and we have to determine // the number of lines earlier to avoid inadvertant modification of Training_buf. - taylor training_process_message(Training_buf); Training_num_lines = split_str(Training_buf, TRAINING_LINE_WIDTH, Training_line_lengths, Training_lines, MAX_TRAINING_MESSAGE_LINES); Assert( Training_num_lines >= 0 ); if (message_play_training_voice(Messages[m].wave_info.index) < 0) { if (length > 0) Training_message_timestamp = timestamp(length * 1000); else Training_message_timestamp = timestamp(TRAINING_TIMING_BASE + strlen(Messages[m].message) * TRAINING_TIMING); // no voice file playing } else Training_message_timestamp = 0; }
// one time initializations done when we want to display a new training mission. This does // all the processing and setup required to actually display it, including starting the // voice file playing void message_training_setup(int m, int length) { if ((m < 0) || !Messages[m].message[0]) { // remove current message from the screen Training_num_lines = 0; return; } message_translate_tokens(Training_buf, Messages[m].message); HUD_add_to_scrollback(Training_buf, HUD_SOURCE_TRAINING); strcpy(Training_text, Messages[m].message); if (message_play_training_voice(Messages[m].wave_info.index) < 0) { if (length > 0) Training_msg_timestamp = timestamp(length * 1000); else Training_msg_timestamp = timestamp(TRAINING_TIMING_BASE + strlen(Messages[m].message) * TRAINING_TIMING); // no voice file playing } else Training_msg_timestamp = 0; }