#pragma once #include #include // Para string class Director { public: Director(int argc, const char* argv[]); // Constructor ~Director(); // Destructor int run(); // Bucle principal private: // --- Variables --- std::string executable_path_; // Path del ejecutable std::string system_folder_; // Carpeta del sistema donde guardar datos std::string checkProgramArguments(int argc, const char* argv[]); // Comprueba los parametros del programa // --- Funciones --- void createSystemFolder(const std::string& folder); // Crea la carpeta del sistema donde guardar datos void initInput(); // Inicializa el objeto Input bool setFileList(); // Crea el indice de ficheros void runLogo(); // Ejecuta la seccion de juego con el logo void runLoadingScreen(); // Ejecuta la seccion de juego de la pantalla de carga void runTitle(); // Ejecuta la seccion de juego con el titulo y los menus void runCredits(); // Ejecuta la seccion de los creditos del juego void runDemo(); // Ejecuta la seccion de la demo, donde se ven pantallas del juego void runEnding(); // Ejecuta la seccion del final del juego void runEnding2(); // Ejecuta la seccion del final del juego void runGameOver(); // Ejecuta la seccion del final de la partida void runGame(); // Ejecuta la seccion de juego donde se juega };