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

Method Phase_Progress_Check

Source/Fodder.cpp:2649–2700  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2647}
2648
2649void cFodder::Phase_Progress_Check() {
2650
2651 if (!mPhase_Complete)
2652 if (!mPhase_Aborted)
2653 if (!mPhase_TryAgain)
2654 return;
2655
2656 if (mPhase_Completed_Timer < 0)
2657 return;
2658
2659 if (mPhase_Completed_Timer)
2660 goto loc_1280A;
2661
2662 mPhase_Completed_Timer = 0x64;
2663
2664 if (mPhase_Aborted) {
2665 mPhase_Completed_Timer = 0x32;
2666 goto MissionTryAgain;
2667 }
2668
2669 if (mPhase_Complete) {
2670 if (mPhase_TryAgain)
2671 goto MissionTryAgain;
2672
2673 Phase_Show_Complete();
2674 goto loc_1280A;
2675 }
2676 //loc_127E1
2677 if (mGame_Data.mRecruits_Available_Count) {
2678 MissionTryAgain:;
2679
2680 // Try Again sprites not availabe in 'The One'
2681 if(!mVersionCurrent->isAmigaTheOne())
2682 Phase_Show_TryAgain();
2683
2684 }
2685 else {
2686 //loc_127FA
2687 Phase_GameOver();
2688 }
2689loc_1280A:;
2690
2691 if (mPhase_Completed_Timer == 0x19) {
2692 mSurface->paletteNew_SetToBlack();
2693 }
2694 --mPhase_Completed_Timer;
2695 if (mPhase_Completed_Timer && !mParams->mUnitTesting)
2696 return;
2697
2698 mPhase_Completed_Timer = -1;
2699 mGame_Data.mGamePhase_Data.mIsComplete = true;
2700}
2701
2702void cFodder::Phase_Show_Complete() {
2703 Sprite_Destroy(&mSprites[40]);

Callers

nothing calls this directly

Calls 2

isAmigaTheOneMethod · 0.80
paletteNew_SetToBlackMethod · 0.80

Tested by

no test coverage detected