DEADSOFTWARE

Add my repo for automultibind
[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.GameScope
5 import ru.deadsoftware.cavedroid.game.mobs.MobsController
6 import ru.deadsoftware.cavedroid.game.objects.DropController
7 import ru.deadsoftware.cavedroid.game.world.GameWorld
8 import javax.inject.Inject
10 @GameScope
11 class DebugInfoStringsProvider @Inject constructor(
12 private val mobsController: MobsController,
13 private val dropController: DropController,
14 private val gameWorld: GameWorld
15 ) {
17 fun getDebugStrings(): List<String> {
18 val player = mobsController.player
20 return listOf(
21 "FPS: ${Gdx.graphics.framesPerSecond}",
22 "X: ${player.mapX}",
23 "Y: ${gameWorld.height - player.upperMapY}",
24 "CurX: ${player.cursorX}",
25 "CurY: ${player.cursorY}",
26 "Velocity: ${player.velocity}",
27 "Swim: ${player.swim}",
28 "Mobs: ${mobsController.mobs.size}",
29 "Drops: ${dropController.size}",
30 "Block: ${gameWorld.getForeMap(player.cursorX, player.cursorY).params.key}",
31 "Hand: ${player.inventory[player.slot].item.params.key}",
32 "Game mode: ${player.gameMode}",
33 "Block damage: ${player.blockDamage}"
34 )
35 }
36 }