Class ServiceLocator

java.lang.Object
com.csse3200.game.services.ServiceLocator

public class ServiceLocator extends Object
A simplified implementation of the Service Locator pattern: https://martinfowler.com/articles/injection.html#UsingAServiceLocator

Allows global access to a few core game services. Warning: global access is a trap and should be used extremely sparingly. Read the wiki for details (https://github.com/UQcsse3200/game-engine/wiki/Service-Locator).

  • Field Details

    • god

      public static boolean god
  • Method Details

    • getPlantCommandService

      public static PlantCommandService getPlantCommandService()
    • getPlantInfoService

      public static PlantInfoService getPlantInfoService()
    • getGameArea

      public static GameArea getGameArea()
    • getCameraComponent

      public static CameraComponent getCameraComponent()
    • getEntityService

      public static EntityService getEntityService()
    • getRenderService

      public static RenderService getRenderService()
    • getPhysicsService

      public static PhysicsService getPhysicsService()
    • getInputService

      public static InputService getInputService()
    • getResourceService

      public static ResourceService getResourceService()
    • getTimeSource

      public static GameTime getTimeSource()
    • getTimeService

      public static TimeService getTimeService()
    • getLightService

      public static LightService getLightService()
    • getMissionManager

      public static MissionManager getMissionManager()
    • getPlanetOxygenService

      public static PlanetOxygenService getPlanetOxygenService()
    • getPlayerHungerService

      public static PlayerHungerService getPlayerHungerService()
    • getPlayerMapService

      public static PlayerMapService getPlayerMapService()
    • getSaveLoadService

      public static SaveLoadService getSaveLoadService()
    • getSoundService

      public static SoundService getSoundService()
    • getUIService

      public static UIService getUIService()
    • getParticleService

      public static ParticleService getParticleService()
    • setCutSceneRunning

      public static void setCutSceneRunning(boolean isRunning)
      Sets the cutscene status to either running or not running.
      Parameters:
      isRunning - true if cutscene is running, false otherwise
    • getCutSceneStatus

      public static boolean getCutSceneStatus()
      Gets the cutscene status.
      Returns:
      true if cutscene is running, false otherwise
    • registerGameArea

      public static void registerGameArea(GameArea area)
    • registerCameraComponent

      public static void registerCameraComponent(CameraComponent camera)
    • registerEntityService

      public static void registerEntityService(EntityService service)
    • registerRenderService

      public static void registerRenderService(RenderService service)
    • registerPhysicsService

      public static void registerPhysicsService(PhysicsService service)
    • registerTimeService

      public static void registerTimeService(TimeService service)
    • registerInputService

      public static void registerInputService(InputService source)
    • registerResourceService

      public static void registerResourceService(ResourceService source)
    • registerTimeSource

      public static void registerTimeSource(GameTime source)
    • registerMissionManager

      public static void registerMissionManager(MissionManager source)
    • registerUIService

      public static void registerUIService(UIService source)
    • registerPlanetOxygenService

      public static void registerPlanetOxygenService(PlanetOxygenService source)
    • registerPlayerHungerService

      public static void registerPlayerHungerService(PlayerHungerService source)
    • registerPlayerMapService

      public static void registerPlayerMapService(PlayerMapService source)
    • registerPlantCommandService

      public static void registerPlantCommandService(PlantCommandService source)
    • registerPlantInfoService

      public static void registerPlantInfoService(PlantInfoService source)
    • registerLightService

      public static void registerLightService(LightService source)
    • registerInventoryDisplayManager

      public static void registerInventoryDisplayManager(InventoryDisplayManager source)
    • registerParticleService

      public static void registerParticleService(ParticleService source)
    • registerSaveLoadService

      public static void registerSaveLoadService(SaveLoadService source)
      Registers the save/load service.
      Parameters:
      source - the service to register
    • registerSoundService

      public static void registerSoundService(SoundService source)
    • clear

      public static void clear()
      Clears all registered services. Do not clear saveLoadService
    • registerPauseArea

      public static void registerPauseArea(GameAreaDisplay area)
    • getPauseMenuArea

      public static GameAreaDisplay getPauseMenuArea()
    • getInventoryDisplayManager

      public static InventoryDisplayManager getInventoryDisplayManager()
    • registerCraftArea

      public static void registerCraftArea(GameAreaDisplay area)
    • getCraftArea

      public static GameAreaDisplay getCraftArea()
    • registerGame

      public static void registerGame(GdxGame gameVar)
    • getGame

      public static GdxGame getGame()