diff --git a/assets/graphics/fonts/terrarum-sans-bitmap/kartuli_variable.tga b/assets/graphics/fonts/terrarum-sans-bitmap/kartuli_variable.tga index 4ce2a5032..5bd190b5a 100755 --- a/assets/graphics/fonts/terrarum-sans-bitmap/kartuli_variable.tga +++ b/assets/graphics/fonts/terrarum-sans-bitmap/kartuli_variable.tga @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc9b0e308c5bfb67e5eb720980e8e8a614abc0af26a03ec73dbdf9b4e72e0bd0 +oid sha256:216d05c9f72e5396374eb44284dca26cce889dbb6d3be88591a075aa6bf1738c size 61458 diff --git a/lib/TerrarumSansBitmap.jar b/lib/TerrarumSansBitmap.jar index 177c45524..65e6cea29 100644 Binary files a/lib/TerrarumSansBitmap.jar and b/lib/TerrarumSansBitmap.jar differ diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryMinimap.kt b/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryMinimap.kt index d06db05c0..d2b77f276 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryMinimap.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryMinimap.kt @@ -7,6 +7,7 @@ import com.badlogic.gdx.graphics.g2d.SpriteBatch import com.badlogic.gdx.graphics.glutils.FrameBuffer import com.badlogic.gdx.utils.GdxRuntimeException import net.torvald.terrarum.* +import net.torvald.terrarum.App.printdbg import net.torvald.terrarum.blockstats.MinimapComposer import net.torvald.terrarum.blockstats.MinimapComposer.MINIMAP_TILE_HEIGHT import net.torvald.terrarum.blockstats.MinimapComposer.MINIMAP_TILE_WIDTH @@ -61,13 +62,15 @@ class UIInventoryMinimap(val full: UIInventoryFull) : UICanvas() { blendNormal(batch) val cellOffY = INVENTORY_CELLS_OFFSET_Y() + var mdx = 0f + var mdy = 0f // update map panning // if left click is down and cursor is in the map area if (Terrarum.mouseDown && Terrarum.mouseScreenY in cellOffY..cellOffY + INVENTORY_CELLS_UI_HEIGHT) { - val mdx = Terrarum.mouseDeltaX * 3f / minimapZoom - var mdy = Terrarum.mouseDeltaY * 3f / minimapZoom + mdx = Terrarum.mouseDeltaX * 3f / minimapZoom + mdy = Terrarum.mouseDeltaY * 3f / minimapZoom val ymin = 0//-MINIMAP_HEIGHT / 2 val ymax = INGAME.world.height// - MINIMAP_HEIGHT @@ -145,20 +148,33 @@ class UIInventoryMinimap(val full: UIInventoryFull) : UICanvas() { renderTextures[MinimapComposer.pixmaps.lastIndex - index] = Texture(pixmap) val ix = index % MinimapComposer.SQUARE_SIZE; val iy = index / MinimapComposer.SQUARE_SIZE - val ox = (ix - (MinimapComposer.SQUARE_SIZE / 2) + 0.5f) * MINIMAP_TILE_WIDTH val oy = (iy - (MinimapComposer.SQUARE_SIZE / 2) + 0.5f) * MINIMAP_TILE_HEIGHT - val tx = (minimapTranslateX - ox) * minimapZoom + 0.5f * MINIMAP_WIDTH val ty = (minimapTranslateY - oy) * minimapZoom + 0.5f * MINIMAP_HEIGHT - batch.color = Color.WHITE batch.draw(renderTextures[index], tx, ty, MINIMAP_TILE_WIDTH * minimapZoom, MINIMAP_TILE_HEIGHT * minimapZoom) } ((INGAME.actorContainerInactive + INGAME.actorContainerActive).filter { it is IngamePlayer } as List).forEach { - // it.getSpriteHead() + it.getSpriteHead()?.let { t -> + val ox = 0.5f * MINIMAP_TILE_WIDTH + val oy = 0.5f * MINIMAP_TILE_HEIGHT + val worldPos = it.intTilewiseHitbox + val cw = it.scale.toFloat() * t.regionWidth + val ch = it.scale.toFloat() * t.regionHeight + val cx = worldPos.canonicalX.toFloat() - (cw / 2) + val cy = worldPos.canonicalY.toFloat() - (ch / 2) + + val dx = minimapTranslateX + (-ox + cx - minimapPanX ) * minimapZoom + 0.5f * MINIMAP_WIDTH + val dy = minimapTranslateY + (-oy + cy - minimapPanY ) * minimapZoom + 0.5f * MINIMAP_HEIGHT + + + printdbg(this, "minimap pan: ($minimapPanX,$minimapPanY); centre head: ($dx,$dy)") + + batch.draw(t, dx, dy, cw, ch) + } } } }