DEADSOFTWARE

Update README
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / render / RenderModule.kt
1 package ru.deadsoftware.cavedroid.game.render
3 import dagger.Binds
4 import dagger.Module
5 import dagger.multibindings.IntoSet
6 import ru.deadsoftware.cavedroid.game.GameScope
8 @Module
9 object RenderModule {
11 @Binds
12 @IntoSet
13 @GameScope
14 fun bindBackGroundBlocksRenderer(renderer: BackgroundBlocksRenderer): IGameRenderer = renderer
16 @Binds
17 @IntoSet
18 @GameScope
19 fun bindForegroundBlocksRenderer(renderer: ForegroundBlocksRenderer): IGameRenderer = renderer
21 @Binds
22 @IntoSet
23 @GameScope
24 fun bindMobsRenderer(renderer: MobsRenderer): IGameRenderer = renderer
26 @Binds
27 @IntoSet
28 @GameScope
29 fun bindDropsRenderer(renderer: DropsRenderer): IGameRenderer = renderer
31 @Binds
32 @IntoSet
33 @GameScope
34 fun bindHudRenderer(renderer: HudRenderer): IGameRenderer = renderer
36 @Binds
37 @IntoSet
38 @GameScope
39 fun bindWindowsRenderer(renderer: WindowsRenderer): IGameRenderer = renderer
41 @Binds
42 @IntoSet
43 @GameScope
44 fun bindTouchControlsRenderer(renderer: TouchControlsRenderer): IGameRenderer = renderer
46 @Binds
47 @IntoSet
48 @GameScope
49 fun bindDebugRenderer(renderer: DebugRenderer): IGameRenderer = renderer
51 // @Provides
52 // @GameScope
53 // fun provideGameRenderers(renderers: Set<@JvmSuppressWildcards IGameRenderer>): List<IGameRenderer> {
54 // return renderers.asSequence()
55 // .sortedWith(Comparator.comparingInt(IGameRenderer::renderLayer))
56 // .toList()
57 // }
59 }