diff options
Diffstat (limited to 'ingame/src/main/kotlin/moe/nea89/sbdata/dungeon')
-rw-r--r-- | ingame/src/main/kotlin/moe/nea89/sbdata/dungeon/DungeonMapCoordinates.kt | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/ingame/src/main/kotlin/moe/nea89/sbdata/dungeon/DungeonMapCoordinates.kt b/ingame/src/main/kotlin/moe/nea89/sbdata/dungeon/DungeonMapCoordinates.kt index 02df59c..4fe9a8a 100644 --- a/ingame/src/main/kotlin/moe/nea89/sbdata/dungeon/DungeonMapCoordinates.kt +++ b/ingame/src/main/kotlin/moe/nea89/sbdata/dungeon/DungeonMapCoordinates.kt @@ -14,6 +14,8 @@ import java.awt.datatransfer.StringSelection object DungeonMapCoordinates { + var logMarkers = false + init { Commands.addSubCommand("map") { when (args.firstOrNull()) { @@ -34,6 +36,25 @@ object DungeonMapCoordinates { } } } + "logmarkers" -> { + if (args.size == 2) { + when (args[1]) { + "on" -> { + logMarkers = true + reply("Turned on marker order logging") + } + "off" -> { + logMarkers = false + reply("Turned off marker order logging") + } + else -> { + reply("logmarkers <on/off>") + } + } + } else { + reply("Marker order logging is ${if (logMarkers) "on" else "off"}.") + } + } "load" -> { val base = SBData.configDirectory.resolve("mapdata") base.mkdirs() @@ -89,8 +110,16 @@ object DungeonMapCoordinates { .firstNotNullOfOrNull { FLOOR_REGEX.find(it) } ?.let { it.groupValues[1] } ?: return logPosition(player, playerMarker, floor) + if (logMarkers) { + println("-----------") + mapData.mapDecorations.entries.sortedBy { it.key }.forEach { (key, value) -> + println(" $key -> ${value.func_176112_b().toInt() / 2 + 64} ${value.func_176113_c().toInt() / 2 + 64}") + } + println("-----------") + } } + fun logPosition(player: EntityPlayerSP, playerMarker: Vec4b, floor: String) { val coordList = coords.computeIfAbsent(floor) { hashSetOf() } val coordEntry = Coordinates( |