X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2FGameModule.java;h=6c71d78c4fe7441f8ab3df12617ca2f013bf8019;hb=3a443514027417133d7a7e18766720dfea028a87;hp=d57ab337e9e49c0cbc872ee037cb42b407908d24;hpb=cb0605053ce3de493b0d1f43cd7ec1e4a9cf0ac5;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/GameModule.java b/core/src/ru/deadsoftware/cavedroid/game/GameModule.java index d57ab33..6c71d78 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/GameModule.java +++ b/core/src/ru/deadsoftware/cavedroid/game/GameModule.java @@ -2,29 +2,30 @@ package ru.deadsoftware.cavedroid.game; import dagger.Module; import dagger.Provides; +import org.jetbrains.annotations.Nullable; import ru.deadsoftware.cavedroid.MainConfig; import ru.deadsoftware.cavedroid.game.mobs.MobsController; import ru.deadsoftware.cavedroid.game.model.block.Block; import ru.deadsoftware.cavedroid.game.objects.drop.DropController; import ru.deadsoftware.cavedroid.game.objects.container.ContainerController; +import ru.deadsoftware.cavedroid.game.save.GameSaveData; +import ru.deadsoftware.cavedroid.game.save.GameSaveLoader; import ru.deadsoftware.cavedroid.game.ui.TooltipManager; import ru.deadsoftware.cavedroid.game.world.GameWorld; -import javax.annotation.CheckForNull; - @Module public class GameModule { - @CheckForNull - private static GameSaver.Data data; + @Nullable + private static GameSaveData data; public static boolean loaded = false; - private static void load(MainConfig mainConfig, GameItemsHolder gameItemsHolder) { + private static void load(MainConfig mainConfig, GameItemsHolder gameItemsHolder, TooltipManager tooltipManager) { if (loaded) { return; } - data = GameSaver.load(mainConfig, gameItemsHolder); + data = GameSaveLoader.INSTANCE.load(mainConfig, gameItemsHolder, tooltipManager); loaded = true; } @@ -36,8 +37,10 @@ public class GameModule { @Provides @GameScope - public static DropController provideDropController(MainConfig mainConfig, GameItemsHolder gameItemsHolder) { - load(mainConfig, gameItemsHolder); + public static DropController provideDropController(MainConfig mainConfig, + GameItemsHolder gameItemsHolder, + TooltipManager tooltipManager) { + load(mainConfig, gameItemsHolder, tooltipManager); DropController controller = data != null ? data.retrieveDropController() : new DropController(); makeDataNullIfEmpty(); controller.initDrops(gameItemsHolder); @@ -46,9 +49,14 @@ public class GameModule { @Provides @GameScope - public static ContainerController provideFurnaceController(MainConfig mainConfig, DropController dropController, GameItemsHolder gameItemsHolder) { - load(mainConfig, gameItemsHolder); - ContainerController controller = data != null ? data.retrieveFurnaceController() : new ContainerController(dropController, gameItemsHolder); + public static ContainerController provideFurnaceController(MainConfig mainConfig, + DropController dropController, + GameItemsHolder gameItemsHolder, + TooltipManager tooltipManager) { + load(mainConfig, gameItemsHolder, tooltipManager); + ContainerController controller = data != null + ? data.retrieveContainerController() + : new ContainerController(dropController, gameItemsHolder); makeDataNullIfEmpty(); controller.init(dropController, gameItemsHolder); return controller; @@ -59,7 +67,7 @@ public class GameModule { public static MobsController provideMobsController(MainConfig mainConfig, GameItemsHolder gameItemsHolder, TooltipManager tooltipManager) { - load(mainConfig, gameItemsHolder); + load(mainConfig, gameItemsHolder, tooltipManager); MobsController controller = data != null ? data.retrieveMobsController() : new MobsController(gameItemsHolder, tooltipManager); @@ -74,8 +82,9 @@ public class GameModule { DropController dropController, MobsController mobsController, GameItemsHolder gameItemsHolder, - ContainerController containerController) { - load(mainConfig, gameItemsHolder); + ContainerController containerController, + TooltipManager tooltipManager) { + load(mainConfig, gameItemsHolder, tooltipManager); Block[][] fm = data != null ? data.retrieveForeMap() : null; Block[][] bm = data != null ? data.retrieveBackMap() : null; makeDataNullIfEmpty();