TDD_MissionSystem - ChristianDominguezVicente/TFM GitHub Wiki

Sistema de Misiones

El script SMSystem es el encargado de gestionar todo el sistema de misiones del videojuego. Se encuentra situado en /Assets/Scripts/System. Su funcionamiento está vinculado a los botones del MenuInicial, donde cada botón representa una misión específica del nivel correspondiente.

La variable Mission actúa como el núcleo de configuración de cada misión. Contiene toda la información relevante para su visualización y seguimiento: el título de la misión, el número de capítulo al que pertenece, una descripción detallada, los objetivos que deben cumplirse y un indicador de si la misión ya ha sido completada.

Por otra parte, la variable needsUIUpdate es usada para sincronizarse con el script de Object Manager para una comprobación del estado de los objetos necesarios para completar las misiones.

  • Start: Conseguir el nombre de la escena actual y actualizar HUD() mediante la llamada a ActualizarHUD().
  • Update(): Si el menú está en pausa (llamado por el sistema de entrada del Third Person Controller) o si necesita actualizar (needsUIUpdate), desactivación de la entrada del InputDetector y activación del Detector UI y visualización del menú de misiones.
  • PauseGame(): Parar el tiempo realizado por Update().
  • ResumeGame(): Ocultar el menú de misiones, desactivación del sistema de entrada de Detector UI, activación de InputDetector y reactivación del tiempo mediante la llamada de MenuInicial por VolverAMenuAnterior().
  • UpdateMissionMenuEnunciado(int indiceMision): Actualización de las misiones conforme se va realizando clic en los distintos botones llamado por el MenuInicial en MostrarObjetivosSM(BotonConfig config).
  • LimpiezaEnunciado(): Ocultación de las misiones llamado por UpdateMissionMenuEnunciado(int indiceMision).
  • SMObjetivos(): Selección de la activación de misiones conforme el nombre del escenario actual.
  • SMPuzleTwo() || SMPuzleOne() || MSOnePuzleTwo(int indiceMs) || MSTwoPuzleTwo(int indiceMs) || MSThreePuzleOne(int indiceMs) || MSOneePuzleOne(int indiceMs)|| MSTwoPuzleOne(int indiceMs): Declaración de las misiones existentes y comprobación de los objetos utilizados en el Object Manager para la correcta finalización de las misiones.
  • ActualizarTexto(int indicems, int indiceTextoMS): Actualización mediante un tachado de línea de las misiones ya cumplidas.
  • ActualizarHUD(): Actualización del estado y texto de las misiones.
  • ActualizarTextoUI(int indiceMs): Actualización y limpieza del texto mostrado en el HUD llamado por ActualizarHUD().
  • LimpiezaUI(): Borrado del texto mostrado en el HUD y llamado por ActualizarTextoUI(int indiceMs).
  • ActualizarTitulo(int indiceMs): Actualización del título mostrado en el HUD y llamado por ActualizarHUD().