Merge branch 'master' into newrenderer2

This commit is contained in:
Christoph Oelckers 2021-04-08 08:55:41 +02:00
commit 4cdc39c9b9
9 changed files with 13 additions and 10 deletions

View file

@ -189,6 +189,7 @@ static void GameTicker()
case ga_newgame: case ga_newgame:
FX_StopAllSounds(); FX_StopAllSounds();
case ga_newgamenostopsound: case ga_newgamenostopsound:
DeleteScreenJob();
newGameStarted = true; newGameStarted = true;
FX_SetReverb(0); FX_SetReverb(0);
gi->FreeLevelData(); gi->FreeLevelData();

View file

@ -915,6 +915,7 @@ public:
startTime = -1; startTime = -1;
clock = 0; clock = 0;
jobs[index].job->fadestate = DScreenJob::fadeout; jobs[index].job->fadestate = DScreenJob::fadeout;
gamestate = GS_INTRO; // block menu and console during fadeout - this can cause timing problems.
actionState = State_Fadeout; actionState = State_Fadeout;
} }
else else
@ -959,6 +960,7 @@ void DeleteScreenJob()
delete runner; delete runner;
runner = nullptr; runner = nullptr;
} }
twod->SetScreenFade(1);
} }
void RunScreenJobFrame() void RunScreenJobFrame()

View file

@ -4505,7 +4505,7 @@ void handle_se27(DDukeActor* actor)
// //
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
void handle_se24(DDukeActor *actor, int16_t *list1, int16_t *list2, int TRIPBOMB, int LASERLINE, int CRANE, int shift) void handle_se24(DDukeActor *actor, int16_t *list1, int16_t *list2, bool scroll, int TRIPBOMB, int LASERLINE, int CRANE, int shift)
{ {
int* t = &actor->temp_data[0]; int* t = &actor->temp_data[0];
@ -4575,7 +4575,7 @@ void handle_se24(DDukeActor *actor, int16_t *list1, int16_t *list2, int TRIPBOMB
} }
} }
} }
sector[actor->s.sectnum].addfloorxpan(actor->s.yvel / 128.f); if (scroll) sector[actor->s.sectnum].addfloorxpan(actor->s.yvel / 128.f);
} }
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------

View file

@ -3697,7 +3697,7 @@ void moveeffectors_d(void) //STATNUM 3
{ {
static int16_t list1[] = { BLOODPOOL, PUKE, FOOTPRINTS, FOOTPRINTS2, FOOTPRINTS3, FOOTPRINTS4, BULLETHOLE, BLOODSPLAT1, BLOODSPLAT2, BLOODSPLAT3, BLOODSPLAT4, -1 }; static int16_t list1[] = { BLOODPOOL, PUKE, FOOTPRINTS, FOOTPRINTS2, FOOTPRINTS3, FOOTPRINTS4, BULLETHOLE, BLOODSPLAT1, BLOODSPLAT2, BLOODSPLAT3, BLOODSPLAT4, -1 };
static int16_t list2[] = { BOLT1, BOLT1 + 1,BOLT1 + 2, BOLT1 + 3, SIDEBOLT1, SIDEBOLT1 + 1, SIDEBOLT1 + 2, SIDEBOLT1 + 3, -1 }; static int16_t list2[] = { BOLT1, BOLT1 + 1,BOLT1 + 2, BOLT1 + 3, SIDEBOLT1, SIDEBOLT1 + 1, SIDEBOLT1 + 2, SIDEBOLT1 + 3, -1 };
handle_se24(act, list1, list2, TRIPBOMB, LASERLINE, CRANE, 2); handle_se24(act, list1, list2, false, TRIPBOMB, LASERLINE, CRANE, 2);
break; break;
} }
case SE_35: case SE_35:

View file

@ -3576,7 +3576,7 @@ void moveeffectors_r(void) //STATNUM 3
{ {
static int16_t list1[] = { BLOODPOOL, PUKE, FOOTPRINTS, FOOTPRINTS2, FOOTPRINTS3, -1 }; static int16_t list1[] = { BLOODPOOL, PUKE, FOOTPRINTS, FOOTPRINTS2, FOOTPRINTS3, -1 };
static int16_t list2[] = { BOLT1, BOLT1 + 1,BOLT1 + 2, BOLT1 + 3, -1 }; static int16_t list2[] = { BOLT1, BOLT1 + 1,BOLT1 + 2, BOLT1 + 3, -1 };
handle_se24(act, list1, list2, BULLETHOLE, -1, CRANE, 1); handle_se24(act, list1, list2, st != 156, BULLETHOLE, -1, CRANE, 1);
break; break;
} }

View file

@ -84,7 +84,7 @@ void handle_se19(DDukeActor* i, int BIGFORCE);
void handle_se20(DDukeActor* i); void handle_se20(DDukeActor* i);
void handle_se21(DDukeActor* i); void handle_se21(DDukeActor* i);
void handle_se22(DDukeActor* i); void handle_se22(DDukeActor* i);
void handle_se24(DDukeActor* actor, int16_t* list1, int16_t* list2, int TRIPBOMB, int LASERLINE, int CRANE, int shift); void handle_se24(DDukeActor* actor, int16_t* list1, int16_t* list2, bool scroll, int TRIPBOMB, int LASERLINE, int CRANE, int shift);
void handle_se25(DDukeActor* a, int t_index, int snd1, int snd2); void handle_se25(DDukeActor* a, int t_index, int snd1, int snd2);
void handle_se26(DDukeActor* i); void handle_se26(DDukeActor* i);
void handle_se27(DDukeActor* i); void handle_se27(DDukeActor* i);

View file

@ -785,7 +785,8 @@ void spawneffector(DDukeActor* actor)
break; break;
} }
case 156: case 156:
if (!isRRRA()) break; break;
case 34: case 34:
StartInterpolation(sect, Interp_Sect_FloorPanX); StartInterpolation(sect, Interp_Sect_FloorPanX);
break; break;

View file

@ -193,7 +193,7 @@ static void Intermission(MapRecord *from_map, MapRecord *to_map)
gameaction = ga_nextlevel; gameaction = ga_nextlevel;
} }
}); }, true, true);
} }
} }

View file

@ -1494,9 +1494,8 @@ OptionMenu VideoModeMenu protected
{ {
Title "$VIDMNU_TITLE" Title "$VIDMNU_TITLE"
// does not work yet. Option "$VIDMNU_PREFERBACKEND", "vid_preferbackend", "PreferBackend"
//Option "$VIDMNU_PREFERBACKEND", "vid_preferbackend", "PreferBackend" StaticText " "
//StaticText " "
Option "$VIDMNU_FULLSCREEN", "vid_fullscreen", "YesNo" Option "$VIDMNU_FULLSCREEN", "vid_fullscreen", "YesNo"
IfOption(Mac) IfOption(Mac)