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

Method Briefing_Helicopter_Check

Source/Fodder.cpp:4015–4062  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4013float mBriefingHelicopter_TransitionCounter = 0;
4014
4015void cFodder::Briefing_Helicopter_Check() {
4016 Music_Increase_Channel_Volume();
4017
4018 const float fadeDurationSeconds = 0.64f; // original 16 steps @ 50Hz every 2nd frame
4019 const int targetSteps = static_cast<int>(16.0f / mBriefingHelicopter_TimeScale);
4020
4021 mBriefingHelicopter_TransitionCounter += mBriefingHelicopter_TimeScale;
4022
4023 if (!mMouse_Exit_Loop || !mPhase_Aborted) {
4024
4025 if (mBriefingHelicopter_ScreenX > 0x30) {
4026
4027 if (mBriefingHelicopter_TransitionCounter >= 2.0f) {
4028 mBriefingHelicopter_TransitionCounter = 0.0f;
4029
4030 if (mBriefingHelicopter_Moving < targetSteps) {
4031 mBriefingHelicopter_Moving++;
4032 mPaletteLevel++;
4033 return;
4034 }
4035 }
4036
4037 if (mBriefingHelicopter_Moving >= targetSteps) {
4038 Briefing_Update_Helicopter();
4039 }
4040 return;
4041 }
4042 }
4043
4044 if (mBriefingHelicopter_TransitionCounter >= 2.0f) {
4045 mBriefingHelicopter_TransitionCounter = 0.0f;
4046
4047 if (mBriefingHelicopter_Moving == 0 && mBriefingHelicopter_NotDone) {
4048 mBriefingHelicopter_NotDone = 0;
4049 mGraphics->mImageMissionIntro.CopyPalette(mGraphics->mPalette, 0x100, 0);
4050 }
4051 else {
4052 if (mBriefingHelicopter_Moving > 0 || mPaletteLevel > 0) {
4053 mBriefingHelicopter_Moving--;
4054 mPaletteLevel--;
4055 mSurface->paletteNew_SetToBlack();
4056 }
4057
4058 }
4059 }
4060
4061 Briefing_Update_Helicopter();
4062}
4063
4064
4065

Callers 2

Mission_Intro_PlayMethod · 0.80
Mission_Intro_PlayMethod · 0.80

Calls 2

CopyPaletteMethod · 0.80
paletteNew_SetToBlackMethod · 0.80

Tested by

no test coverage detected