MCPcopy Create free account
hub / github.com/DescentDevelopers/Descent3 / ParseBriefing

Function ParseBriefing

Descent3/Briefing.cpp:599–652  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

597void PBAddVoice(char *filename, int flags,char *description) {}
598
599bool ParseBriefing(const char *filename, tTelComInfo *tcs) {
600 if (!cfexist(filename)) {
601 tcs->state = TCS_POWEROFF;
602 return false;
603 }
604
605 osb_xoff = tcs->Monitor_coords[MONITOR_MAIN].left;
606 osb_yoff = tcs->Monitor_coords[MONITOR_MAIN].top;
607 current_screen = -1;
608 pb_tcs = tcs;
609 gottitle = false;
610 pbtitle[0] = '\0';
611 pbfirst_call = true;
612
613 CBriefParse engine;
614 tBriefParseCallbacks pb_callbacks;
615
616 pb_callbacks.AddTextEffect = PBAddTextEffect;
617 pb_callbacks.AddBmpEffect = PBAddBmpEffect;
618 pb_callbacks.AddMovieEffect = PBAddMovieEffect;
619 pb_callbacks.AddBkgEffect = PBAddBkgEffect;
620 pb_callbacks.AddPolyEffect = PBAddPolyEffect;
621 pb_callbacks.AddSoundEffect = PBAddSoundEffect;
622 pb_callbacks.AddButtonEffect = PBAddButtonEffect;
623 pb_callbacks.StartScreen = PBStartScreen;
624 pb_callbacks.EndScreen = PBEndScreen;
625 pb_callbacks.LoopCallback = PBLoopCallback;
626 pb_callbacks.SetTitle = PBSetTitle;
627 pb_callbacks.SetStatic = PBSetStatic;
628 pb_callbacks.SetGlitch = PBSetGlitch;
629 pb_callbacks.AddVoice = PBAddVoice;
630
631 engine.SetCallbacks(&pb_callbacks);
632
633 DestroyAllScreens();
634 TelcomRenderSetScreen(DUMMY_SCREEN);
635
636 skipped_screens = 0;
637 int ret = engine.ParseBriefing(filename);
638 Sound_system.EndSoundFrame();
639
640 if (ret == PBERR_NOERR) {
641 PlayBriefing(tcs);
642 }
643
644 DestroyAllScreens(true);
645 TelcomCreateDummyScreen();
646 TelcomRenderSetScreen(DUMMY_SCREEN);
647
648 TelcomDisableStatic();
649 TelcomDisableGlitch();
650
651 return false;
652}

Callers 1

TelComMainFunction · 0.85

Calls 10

cfexistFunction · 0.85
DestroyAllScreensFunction · 0.85
TelcomRenderSetScreenFunction · 0.85
PlayBriefingFunction · 0.85
TelcomCreateDummyScreenFunction · 0.85
TelcomDisableStaticFunction · 0.85
TelcomDisableGlitchFunction · 0.85
SetCallbacksMethod · 0.80
ParseBriefingMethod · 0.80
EndSoundFrameMethod · 0.80

Tested by

no test coverage detected