| 505 | } |
| 506 | |
| 507 | void PBStartScreen(int screen_num, char *description, char *layout, uint32_t mask_set, uint32_t mask_unset) { |
| 508 | if (!IsMissionMaskOK(mask_set, mask_unset)) { |
| 509 | ok_to_parse_screen = false; |
| 510 | skipped_screens++; |
| 511 | return; |
| 512 | } |
| 513 | int real_screen_num = screen_num - skipped_screens; |
| 514 | ok_to_parse_screen = true; |
| 515 | |
| 516 | TelcomStartScreen(real_screen_num); |
| 517 | current_screen = real_screen_num; |
| 518 | |
| 519 | TCBKGDESC backg; |
| 520 | backg.color = BACKGROUND_COLOR; |
| 521 | backg.caps = TCBGD_COLOR; |
| 522 | backg.type = TC_BACK_STATIC; |
| 523 | CreateBackgroundEffect(&backg, MONITOR_TOP, current_screen); |
| 524 | if (gottitle) { |
| 525 | TCTEXTDESC textd; |
| 526 | textd.color = GR_RGB(200, 200, 200); |
| 527 | textd.type = TC_TEXT_STATIC; |
| 528 | textd.font = BBRIEF_FONT_INDEX; |
| 529 | textd.textbox.left = 4; |
| 530 | textd.textbox.right = 300; |
| 531 | textd.textbox.top = 2; |
| 532 | textd.textbox.bottom = 80; |
| 533 | textd.caps = TCTD_COLOR | TCTD_FONT | TCTD_TEXTBOX; |
| 534 | CreateTextEffect(&textd, pbtitle, MONITOR_TOP, current_screen); |
| 535 | } |
| 536 | |
| 537 | if (layout) { |
| 538 | TCBMPDESC bmpd; |
| 539 | bmpd.caps = TCBD_XY; |
| 540 | bmpd.type = TC_BMP_STATIC; |
| 541 | bmpd.flags = 0; |
| 542 | bmpd.x = bmpd.y = 0; |
| 543 | strcpy(bmpd.filename, layout); |
| 544 | CreateBitmapEffect(&bmpd, MONITOR_MAIN, current_screen); |
| 545 | } |
| 546 | } |
| 547 | |
| 548 | void PBEndScreen() { |
| 549 | if (ok_to_parse_screen) { |
nothing calls this directly
no test coverage detected