1 /* 2 * This file is part of Dune Legacy. 3 * 4 * Dune Legacy is free software: you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation, either version 2 of the License, or 7 * (at your option) any later version. 8 * 9 * Dune Legacy is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with Dune Legacy. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 #ifndef INTRO_H 19 #define INTRO_H 20 21 #include <string> 22 #include <SDL_mixer.h> 23 24 #include <CutScenes/CutScene.h> 25 #include <FileClasses/Wsafile.h> 26 27 /** 28 This class is for showing the intro video. 29 */ 30 class Intro : public CutScene 31 { 32 public: 33 34 /// Default constructor 35 Intro(); 36 37 /// destructor 38 virtual ~Intro(); 39 40 private: 41 42 /// \cond 43 enum IntroText { 44 IntroText_The_Battle_for_Arrakis = 2, 45 IntroText_The_planet_Arrakis = 3, 46 IntroText_Land_of_sand = 4, 47 IntroText_Home_of_the_Spice_Melange = 5, 48 IntroText_Spice_controls_the_Empire = 6, 49 IntroText_Whoever_controls_Dune = 7, 50 IntroText_The_Emperor_has_proposed = 8, 51 IntroText_The_House_that_produces = 9, 52 IntroText_There_are_no_set_territories = 10, 53 IntroText_And_no_rules_of_engagement = 11, 54 IntroText_Vast_armies_have_arrived = 12, 55 IntroText_Now_three_houses_fight = 13, 56 IntroText_The_noble_Atreides = 14, 57 IntroText_The_insidious_Ordos = 15, 58 IntroText_And_the_evil_Harkonnen = 16, 59 IntroText_Only_one_House_will_prevail = 17, 60 IntroText_Your_battle_for_Dune_begins = 18, 61 IntroText_NOW = 19 62 }; 63 /// \endcond 64 65 /// \cond 66 enum IntroVoice { 67 Voice_The_building = 0, 68 Voice_of_a_Dynasty, 69 70 Voice_The_Planet_Arrakis, 71 Voice_Known_As_Dune, 72 73 Voice_Land_of_sand, 74 Voice_Home, 75 Voice_of_the_spice, 76 Voice_Melange, 77 78 Voice_The_spice, 79 Voice_controls, 80 Voice_the_Empire, 81 Voice_Whoever, 82 Voice_controls_dune, 83 Voice_controls_the_spice, 84 85 Voice_The_Emperor, 86 Voice_has_proposed, 87 Voice_to_each_of_the_houses, 88 89 Voice_The_House, 90 Voice_that_produces, 91 Voice_the_most_spice, 92 Voice_will_control_dune, 93 94 Voice_There_are_no_set, 95 Voice_territories, 96 Voice_and_no, 97 Voice_rules_of_engagment, 98 99 Voice_Vast_armies, 100 Voice_have_arrived, 101 102 Voice_Now, 103 Voice_three_Houses_fight, 104 Voice_for_control, 105 Voice_of_Dune, 106 107 Voice_The_noble_Atreides, 108 109 Voice_The_insidious, 110 Voice_Ordos, 111 112 Voice_And_the, 113 Voice_evil_Harkonnen, 114 115 Voice_Only_one_house, 116 Voice_will_prevail, 117 118 Voice_Your, 119 Voice_battle_for_Dune, 120 Voice_begins, 121 122 Voice_Now_Now, 123 124 Voice_NUM_ENTRIES 125 }; 126 /// \endcond 127 128 static const char* VoiceFileNames[Voice_NUM_ENTRIES]; ///< List of all the voice files 129 130 Mix_Chunk* voice[Voice_NUM_ENTRIES]; ///< All the loaded voices 131 132 Wsafile* pDuneText; ///< 1. video sequence showing the dune text 133 Wsafile* pPlanet; ///< 2. video sequence showing the planet 134 Wsafile* pSandstorm; ///< 3. video sequence showing the sandstorm 135 Wsafile* pHarvesters; ///< 4. video sequence showing two harvesters 136 Wsafile* pPalace; ///< 5. video sequence showing the palace of the imperator 137 Wsafile* pImperator; ///< 6. video sequence showing the imperator talking 138 Wsafile* pStarport; ///< 7. video sequence showing the armies arriving at the starport 139 Wsafile* pOrdos; ///< 8. video sequence showing two ordos launchers/deviators 140 Wsafile* pAtreides; ///< 9. video sequence showing two atreides ornithopters 141 Wsafile* pHarkonnen; ///< 10. video sequence showing two harkonnen troopers under attack 142 Wsafile* pDestroyedTank; ///< 11. video sequence showing destroyed tanks 143 144 Mix_Chunk* wind; ///< SFX: wind blowing 145 Mix_Chunk* carryallLanding; ///< SFX: carryall loading a harvester 146 Mix_Chunk* harvester; ///< SFX: harvester stopping 147 Mix_Chunk* gunshot; ///< SFX: a gunshot 148 Mix_Chunk* glass; ///< SFX: broken glass, destroyed by atreides ornithopters 149 Mix_Chunk* missle; ///< SFX: missle launched 150 Mix_Chunk* blaster; ///< SFX: trooper hit 151 Mix_Chunk* blowup1; ///< SFX: explosion 152 Mix_Chunk* blowup2; ///< SFX: explosion 153 }; 154 155 #endif // INTRO_H 156