diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index a0ae531..4010717 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -7,10 +7,8 @@
-
-
+
-
@@ -22,19 +20,19 @@
-
+
+
+
-
+
-
-
-
-
-
+
+
+
@@ -42,16 +40,13 @@
-
+
-
+
-
-
-
-
-
-
+
+
+
@@ -62,10 +57,14 @@
- getWidth
getG
getWidt
batch.color =
+ getWidth
+ f
+ fun getWidth
+ fun dispo
+ xHei
@@ -81,16 +80,15 @@
-
+
-
-
-
-
-
+
+
+
+
@@ -107,6 +105,7 @@
+
@@ -183,9 +182,8 @@
-
-
+
@@ -207,20 +205,12 @@
-
-
-
-
-
-
-
-
@@ -235,23 +225,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -272,6 +245,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -320,42 +348,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -373,6 +365,9 @@
+
+
+
@@ -383,8 +378,17 @@
+
+
+
+
+
+
+
+
+
-
+
@@ -423,13 +427,140 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
@@ -437,10 +568,6 @@
-
-
-
-
@@ -448,9 +575,6 @@
-
-
-
@@ -458,10 +582,6 @@
-
-
-
-
@@ -469,9 +589,6 @@
-
-
-
@@ -479,10 +596,6 @@
-
-
-
-
@@ -490,9 +603,6 @@
-
-
-
@@ -500,10 +610,6 @@
-
-
-
-
@@ -518,28 +624,22 @@
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
diff --git a/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt b/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt
index c02ea84..f306653 100644
--- a/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt
+++ b/src/net/torvald/terrarumsansbitmap/gdx/GameFontBase.kt
@@ -400,6 +400,11 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false, val flipY: Bo
private lateinit var originalColour: Color
override fun draw(batch: Batch, str: CharSequence, x: Float, y: Float): GlyphLayout? {
+ // always draw at integer position; this is bitmap font after all
+ val x = Math.round(x).toFloat()
+ val y = Math.round(y).toFloat()
+
+
if (textBuffer != str) {
textBuffer = str
val widths = getWidthOfCharSeq(str)
diff --git a/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt b/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt
index 9a80c21..13218d6 100644
--- a/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt
+++ b/src/net/torvald/terrarumsansbitmap/slick2d/GameFontBase.kt
@@ -419,6 +419,11 @@ class GameFontBase(fontDir: String, val noShadow: Boolean = false) : Font {
}
override fun drawString(x: Float, y: Float, str: String, color: Color) {
+ // always draw at integer position; this is bitmap font after all
+ val x = Math.round(x).toFloat()
+ val y = Math.round(y).toFloat()
+
+
if (textBuffer != str) {
textBuffer = str
val widths = getWidthOfCharSeq(str)