DEADSOFTWARE

678a91f7456cabacc8d63ebcf53096b8801c543e
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / debug / DebugInfoStringsProvider.kt
1 package ru.deadsoftware.cavedroid.game.debug
3 import com.badlogic.gdx.Gdx
4 import ru.deadsoftware.cavedroid.game.GameInput
5 import ru.deadsoftware.cavedroid.game.GameScope
6 import ru.deadsoftware.cavedroid.game.mobs.MobsController
7 import ru.deadsoftware.cavedroid.game.objects.DropController
8 import ru.deadsoftware.cavedroid.game.world.GameWorld
9 import javax.inject.Inject
11 @GameScope
12 class DebugInfoStringsProvider @Inject constructor(
13 private val mobsController: MobsController,
14 private val gameInput: GameInput,
15 private val dropController: DropController,
16 private val gameWorld: GameWorld
17 ) {
19 fun getDebugStrings(): List<String> {
20 val player = mobsController.player
22 return listOf(
23 "FPS: ${Gdx.graphics.framesPerSecond}",
24 "X: ${player.mapX}",
25 "Y: ${player.upperMapY}",
26 "CurX: ${gameInput.curX}",
27 "CurY: ${gameInput.curY}",
28 "Velocity: ${player.velocity}",
29 "Swim: ${player.swim}",
30 "Mobs: ${mobsController.mobs.size}",
31 "Drops: ${dropController.size}",
32 "Block: ${gameWorld.getForeMap(gameInput.curX, gameInput.curY).params.key}",
33 "Hand: ${player.inventory[player.slot].item.params.key}",
34 "Game mode: ${player.gameMode}"
35 )
36 }
37 }