MCPcopy Create free account
hub / github.com/OpenFodder/openfodder / Mission_Intro_Play

Method Mission_Intro_Play

Source/Amiga/Graphics_Amiga.cpp:1520–1607  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1518}
1519
1520void cGraphics_Amiga::Mission_Intro_Play(
1521 const bool pShowHelicopter, const eTileTypes pTileset,
1522 std::string pTop, std::string pBottom) {
1523
1524 int16 BladeFrame = 0;
1525 static int16 mouseCheck = 0;
1526
1527 PaletteSet(mSurface);
1528 PaletteBriefingSet();
1529 mSurface->palette_FadeTowardNew();
1530
1531 mFodder->mVideo_Draw_PosX = 16;
1532
1533 Heli_TextPos = 0;
1534 Heli_TextPosBottom = 320;
1535
1536 mFodder->mString_GapCharID = 0x25;
1537
1538 mFodder->String_CalculateWidth(320, mFont_Underlined_Width, pTop);
1539 auto topTextPos = mFodder->mGUI_Temp_X;
1540
1541 mFodder->String_CalculateWidth(320, mFont_Underlined_Width, pBottom);
1542 auto bottomTextPos = mFodder->mGUI_Temp_X - 4;
1543 do {
1544
1545 if (mSurface->isPaletteAdjusting())
1546 mSurface->palette_FadeTowardNew();
1547
1548 mFodder->Briefing_Helicopter_Check();
1549 HeliIntro_TickParallaxAndText();
1550
1551 mFodder->String_Print(mFont_Underlined_Width, 1, -332 + (topTextPos + (Heli_TextPos)), 0x01, pTop);
1552 mFodder->String_Print(mFont_Underlined_Width, 1, (Heli_TextPosBottom) + bottomTextPos, 0xB5 + 0x16, pBottom);
1553
1554 mFodder->mVideo_Draw_FrameDataPtr = GetSpriteData(eGFX_BRIEFING);
1555 mFodder->mVideo_Draw_PosY = 40;
1556 Video_Draw_16_Offset(320 - (Heli_VeryBack >> 16));
1557
1558 mFodder->mVideo_Draw_FrameDataPtr = GetSpriteData(eGFX_BRIEFING_AMIGA_1);
1559 mFodder->mVideo_Draw_PosY = 60;
1560 Video_Draw_16_Offset(320 - (Heli_Back >> 16));
1561
1562 mFodder->mVideo_Draw_FrameDataPtr = GetSpriteData(eGFX_BRIEFING_AMIGA_2);
1563 mFodder->mVideo_Draw_PosY = 100;
1564 Video_Draw_16_Offset(320 - (Heli_middle >> 16));
1565
1566 if (pShowHelicopter) {
1567 // Front
1568 mFodder->mVideo_Draw_PosX = mFodder->mBriefingHelicopter_ScreenX;
1569 mFodder->mVideo_Draw_PosY = mFodder->mBriefingHelicopter_ScreenY;
1570 Mission_Intro_DrawHelicopter(203);
1571
1572 // Tail
1573 mFodder->mVideo_Draw_PosX = (mFodder->mBriefingHelicopter_ScreenX) + 48;
1574 mFodder->mVideo_Draw_PosY = (mFodder->mBriefingHelicopter_ScreenY);
1575 Mission_Intro_DrawHelicopter(204);
1576
1577 if (mFodder->mVersionCurrent->isCannonFodder1()) {

Callers

nothing calls this directly

Calls 8

palette_FadeTowardNewMethod · 0.80
String_CalculateWidthMethod · 0.80
isPaletteAdjustingMethod · 0.80
String_PrintMethod · 0.80
isCannonFodder1Method · 0.80
Video_SleepMethod · 0.80
paletteNew_SetToBlackMethod · 0.80

Tested by

no test coverage detected