From fe3b0a9d09528ba0f2df590fc1cb8336c7407b02 Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Thu, 6 Sep 2018 01:00:10 +0200 Subject: [PATCH] Clean up DoEnding --- Source/monster.cpp | 39 +++++++++++++++++++-------------------- Source/movie.cpp | 4 ++-- Source/movie.h | 4 ++-- Source/multi.cpp | 2 +- Source/multi.h | 2 +- Source/sound.cpp | 4 ++-- Source/sound.h | 4 ++-- 7 files changed, 29 insertions(+), 30 deletions(-) diff --git a/Source/monster.cpp b/Source/monster.cpp index 5d1d3b71e..f7c146d75 100644 --- a/Source/monster.cpp +++ b/Source/monster.cpp @@ -3828,39 +3828,38 @@ void __fastcall M_UpdateLeader(int i) void __cdecl DoEnding() { - char v0; // al - char *v1; // ecx - char bMusicOn; // bl - int v3; // esi - - if ( (unsigned char)gbMaxPlayers > 1u ) + if ( gbMaxPlayers > 1 ) { SNetLeaveGame(0x40000004); + } + music_stop(); - if ( (unsigned char)gbMaxPlayers > 1u ) + + if ( gbMaxPlayers > 1 ) { Sleep(1000); - v0 = plr[myplr]._pClass; - if ( v0 ) - { - v1 = "gendata\\DiabVic1.smk"; - if ( v0 != 2 ) - v1 = "gendata\\DiabVic3.smk"; } - else - { - v1 = "gendata\\DiabVic2.smk"; + + if ( plr[myplr]._pClass == PC_WARRIOR ) { + play_movie("gendata\\DiabVic2.smk", 0); + } else if ( plr[myplr]._pClass == PC_SORCERER ) { + play_movie("gendata\\DiabVic1.smk", 0); + } else { + play_movie("gendata\\DiabVic3.smk", 0); } - play_movie(v1, 0); play_movie("gendata\\Diabend.smk", 0); - bMusicOn = gbMusicOn; + + BOOL bMusicOn = gbMusicOn; gbMusicOn = 1; - v3 = sound_get_or_set_music_volume(1); + + int musicVolume = sound_get_or_set_music_volume(1); sound_get_or_set_music_volume(0); + music_start(2); loop_movie = 1; play_movie("gendata\\loopdend.smk", 1); loop_movie = 0; music_stop(); - sound_get_or_set_music_volume(v3); + + sound_get_or_set_music_volume(musicVolume); gbMusicOn = bMusicOn; } // 4A22D4: using guessed type char gbMusicOn; diff --git a/Source/movie.cpp b/Source/movie.cpp index a518ae391..b66f07dab 100644 --- a/Source/movie.cpp +++ b/Source/movie.cpp @@ -4,7 +4,7 @@ int movie_cpp_init_value; // weak char movie_playing; // weak -int loop_movie; // weak +BOOL loop_movie; // weak int movie_inf = 0x7F800000; // weak @@ -18,7 +18,7 @@ struct movie_cpp_init // 47F144: using guessed type int movie_inf; // 659AF4: using guessed type int movie_cpp_init_value; -void __fastcall play_movie(char *pszMovie, bool user_can_close) +void __fastcall play_movie(char *pszMovie, BOOL user_can_close) { char *v2; // esi WNDPROC saveProc; // edi diff --git a/Source/movie.h b/Source/movie.h index 5015339dc..d937a3080 100644 --- a/Source/movie.h +++ b/Source/movie.h @@ -4,10 +4,10 @@ extern int movie_cpp_init_value; // weak extern char movie_playing; // weak -extern int loop_movie; // weak +extern BOOL loop_movie; // weak void __cdecl movie_cpp_init(); -void __fastcall play_movie(char *pszMovie, bool user_can_close); +void __fastcall play_movie(char *pszMovie, BOOL user_can_close); LRESULT __stdcall MovieWndProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam); /* data */ diff --git a/Source/multi.cpp b/Source/multi.cpp index 81debc69b..03dd4bae1 100644 --- a/Source/multi.cpp +++ b/Source/multi.cpp @@ -21,7 +21,7 @@ int sglTimeoutStart; // weak int sgdwPlayerLeftReasonTbl[MAX_PLRS]; char pkdata_678658[4100]; unsigned int sgdwGameLoops; // idb -char gbMaxPlayers; // weak +UCHAR gbMaxPlayers; // weak char sgbTimeout; // weak char szPlayerName[128]; char gbDeltaSender; // weak diff --git a/Source/multi.h b/Source/multi.h index a24d1bb0f..a59a9588e 100644 --- a/Source/multi.h +++ b/Source/multi.h @@ -21,7 +21,7 @@ extern int sglTimeoutStart; // weak extern int sgdwPlayerLeftReasonTbl[MAX_PLRS]; extern char pkdata_678658[4100]; extern unsigned int sgdwGameLoops; // idb -extern char gbMaxPlayers; // weak +extern UCHAR gbMaxPlayers; extern char sgbTimeout; // weak extern char szPlayerName[128]; extern char gbDeltaSender; // weak diff --git a/Source/sound.cpp b/Source/sound.cpp index f82e37d28..2aaa0bac8 100644 --- a/Source/sound.cpp +++ b/Source/sound.cpp @@ -16,8 +16,8 @@ int sound_inf = 0x7F800000; // weak /* rdata */ -char gbMusicOn = 1; // weak -char gbSoundOn = 1; // weak +UCHAR gbMusicOn = 1; // weak +UCHAR gbSoundOn = 1; // weak char gbDupSounds = 1; // weak int sgnMusicTrack = 6; char *sgszMusicTracks[6] = diff --git a/Source/sound.h b/Source/sound.h index 64b28b3a2..f64d98fec 100644 --- a/Source/sound.h +++ b/Source/sound.h @@ -40,8 +40,8 @@ extern int sound_inf; // weak /* rdata */ -extern char gbMusicOn; // weak -extern char gbSoundOn; // weak +extern UCHAR gbMusicOn; +extern UCHAR gbSoundOn; extern char gbDupSounds; // weak extern int sgnMusicTrack; extern char *sgszMusicTracks[6];