X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2FGameModule.java;h=d57ab337e9e49c0cbc872ee037cb42b407908d24;hb=1e285247085ba04351feb486a0be6aa577f43093;hp=29175da1968fba60e36f64a8ebb8ec746c73b630;hpb=289536374d18bb05cde615c04d9fe576d6ac26bc;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/GameModule.java b/core/src/ru/deadsoftware/cavedroid/game/GameModule.java index 29175da..d57ab33 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/GameModule.java +++ b/core/src/ru/deadsoftware/cavedroid/game/GameModule.java @@ -5,7 +5,9 @@ import dagger.Provides; 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.DropController; +import ru.deadsoftware.cavedroid.game.objects.drop.DropController; +import ru.deadsoftware.cavedroid.game.objects.container.ContainerController; +import ru.deadsoftware.cavedroid.game.ui.TooltipManager; import ru.deadsoftware.cavedroid.game.world.GameWorld; import javax.annotation.CheckForNull; @@ -44,11 +46,25 @@ public class GameModule { @Provides @GameScope - public static MobsController provideMobsController(MainConfig mainConfig, GameItemsHolder gameItemsHolder) { + public static ContainerController provideFurnaceController(MainConfig mainConfig, DropController dropController, GameItemsHolder gameItemsHolder) { load(mainConfig, gameItemsHolder); - MobsController controller = data != null ? data.retrieveMobsController() : new MobsController(gameItemsHolder); + ContainerController controller = data != null ? data.retrieveFurnaceController() : new ContainerController(dropController, gameItemsHolder); makeDataNullIfEmpty(); - controller.getPlayer().initInventory(gameItemsHolder); + controller.init(dropController, gameItemsHolder); + return controller; + } + + @Provides + @GameScope + public static MobsController provideMobsController(MainConfig mainConfig, + GameItemsHolder gameItemsHolder, + TooltipManager tooltipManager) { + load(mainConfig, gameItemsHolder); + MobsController controller = data != null + ? data.retrieveMobsController() + : new MobsController(gameItemsHolder, tooltipManager); + makeDataNullIfEmpty(); + controller.getPlayer().initInventory(gameItemsHolder, tooltipManager); return controller; } @@ -57,12 +73,13 @@ public class GameModule { public static GameWorld provideGameWorld(MainConfig mainConfig, DropController dropController, MobsController mobsController, - GameItemsHolder gameItemsHolder) { + GameItemsHolder gameItemsHolder, + ContainerController containerController) { load(mainConfig, gameItemsHolder); Block[][] fm = data != null ? data.retrieveForeMap() : null; Block[][] bm = data != null ? data.retrieveBackMap() : null; makeDataNullIfEmpty(); - return new GameWorld(dropController, mobsController, gameItemsHolder, fm, bm); + return new GameWorld(dropController, mobsController, gameItemsHolder, containerController, fm, bm); } }