dominus icon

Untitled

dominus | PRO | 02/05/21 03:42:45 PM UTC | 0 ⭐ | 13896 👁️ | Never ⏰ | []
Diff |

2.2 KB

|

None

|

0 👍

/

0 👎

diff --git a/gamemgr/sigame.cc b/gamemgr/sigame.cc
index fc2bca22..f4e59cb1 100644
--- a/gamemgr/sigame.cc
+++ b/gamemgr/sigame.cc
@@ -44,6 +44,7 @@
 #include "array_size.h"
 #include "exult.h"
 #include "touchui.h"
+#include "Configuration.h"
 
 using std::cout;
 using std::endl;
@@ -256,6 +257,8 @@ void SI_Game::play_intro() {
    bool speech = audio->is_audio_enabled() &&
                  audio->is_speech_enabled();
    bool speech_n_subs = Audio::get_ptr()->is_speech_with_subs();
+   bool si_extended;
+   config->value("config/gameplay/si_extended", si_extended);
 
    gwin->clear_screen(true);
 
@@ -290,10 +293,9 @@ void SI_Game::play_intro() {
 
        // Castle Outside
 
-#if 0
        // Start Music
-       audio->start_music(R_SINTRO, 0, false);
-#endif
+       if (!si_extended)
+           audio->start_music(R_SINTRO, 0, false);
 
        size_t  size;
        unique_ptr<unsigned char[]> buffer;
@@ -304,11 +306,12 @@ void SI_Game::play_intro() {
            audio->copy_and_play(buffer.get() + 8, size - 8, false);
        }
 
-#if 0
-       playfli fli1(INTRO_DAT, PATCH_INTRO, 1);
-#else
-       playfli fli1(BUNDLE_EXULT_SI_FLX, EXULT_SI_FLX, EXULT_SI_FLX_EXT_INTRO_CASTLE_FLC);
-#endif
+       if (!si_extended)
+           playfli fli1(INTRO_DAT, PATCH_INTRO, 1);
+       else
+           playfli fli1(BUNDLE_EXULT_SI_FLX, EXULT_SI_FLX, EXULT_SI_FLX_EXT_INTRO_CASTLE_FLC);
+       
+
        fli1.info();
 
        fli1.play(win, 0, 1, 0, 0);
@@ -331,18 +334,17 @@ void SI_Game::play_intro() {
 
        }
 
-#if 0
-       for (int j = 0; j < 50; j++) {
-           num = get_frame();
+       if (!si_extended) {
+           for (int j = 0; j < 50; j++) {
+               num = get_frame();
            if (prev != num)
                for (int i = 0; i < num + 1; i++)
                    fli1.play(win, i, i, next);
-#else
-       for (int j = 0; j < 25; j++) {
+       } else{ 
+           for (int j = 0; j < 25; j++) {
                    num = get_frame();
-           next = fli1.play(win, j, j, next) + 30;
-#endif
-
+                   next = fli1.play(win, j, j, next) + 30;
+       }
            if (jive)
                sifont->center_text(ibuf, centerx, centery + 50, get_text_msg(dick_castle));
            else
@@ -354,7 +356,7 @@ void SI_Game::play_intro() {
            if (wait_delay(1, 0, 1))
                throw UserBreakException();
 
-       }
+           }
 
        for (int j = 0; j < 10; j++) {
            num = get_frame();
 

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎

    
        
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎

    
        
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎