diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 24ee1a052..9a69ff186 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -4,7 +4,7 @@
-
+
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
index 0dd4b3546..ae8a33732 100644
--- a/.idea/kotlinc.xml
+++ b/.idea/kotlinc.xml
@@ -1,5 +1,8 @@
+
+
+
diff --git a/.idea/libraries/lib.xml b/.idea/libraries/lib.xml
index 26cb1d226..8759a8be1 100644
--- a/.idea/libraries/lib.xml
+++ b/.idea/libraries/lib.xml
@@ -4,9 +4,10 @@
-
+
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index bfa906295..98e9d33b4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -38,7 +38,7 @@
-
+
\ No newline at end of file
diff --git a/assets/tiling.frag b/assets/tiling.frag
index 991be0f03..11c89ac73 100644
--- a/assets/tiling.frag
+++ b/assets/tiling.frag
@@ -65,32 +65,34 @@ void main() {
vec2 pxCoord = flippedFragCoord.xy;
- mediump vec4 tileFromMap = texture2D(tilemap, flippedFragCoord / overscannedScreenDimension); // <- THE CULPRIT
+ // TODO do I really need mediump for this thing ? (default to smapler2D is lowp)
+ vec4 tileFromMap = texture2D(tilemap, flippedFragCoord / overscannedScreenDimension); // <- THE CULPRIT
int tile = getTileFromColor(tileFromMap);
int breakage = getBreakageFromColor(tileFromMap);
ivec2 tileXY = getTileXY(tile);
- ivec2 breakageXY = getTileXY(breakage + 5);
+ ivec2 breakageXY = getTileXY(breakage + 5); // +5 is hard-coded constant that depends on the atlas
- vec2 coordInTile = mod(pxCoord, tileSizeInPx) / tileSizeInPx; // 0..1 regardless of tile position in atlas
+ mediump vec2 coordInTile = mod(pxCoord, tileSizeInPx) / tileSizeInPx; // 0..1 regardless of tile position in atlas
- highp vec2 singleTileSizeInUV = vec2(1) / tilesInAtlas; // constant 0.00390625
+ // don't really need highp here; read the GLES spec
+ mediump vec2 singleTileSizeInUV = vec2(1) / tilesInAtlas; // constant 0.00390625 for unmodified default uniforms
- highp vec2 uvCoordForTile = coordInTile * singleTileSizeInUV; // 0..0.00390625 regardless of tile position in atlas
+ mediump vec2 uvCoordForTile = coordInTile * singleTileSizeInUV; // 0..0.00390625 regardless of tile position in atlas
- highp vec2 uvCoordOffset = tileXY * singleTileSizeInUV; // where the tile starts in the atlas, using uv coord (0..1)
- highp vec2 uvCoordOffsetBreakage = breakageXY * singleTileSizeInUV;
+ mediump vec2 uvCoordOffsetTile = tileXY * singleTileSizeInUV; // where the tile starts in the atlas, using uv coord (0..1)
+ mediump vec2 uvCoordOffsetBreakage = breakageXY * singleTileSizeInUV;
- highp vec2 finalUVCoordForTile = uvCoordForTile + uvCoordOffset;// where we should be actually looking for in atlas, using UV coord (0..1)
- highp vec2 finalUVCoordForBreakage = uvCoordForTile + uvCoordOffsetBreakage;
+ mediump vec2 finalUVCoordForTile = uvCoordForTile + uvCoordOffsetTile;// where we should be actually looking for in atlas, using UV coord (0..1)
+ mediump vec2 finalUVCoordForBreakage = uvCoordForTile + uvCoordOffsetBreakage;
- // TODO finally "blend" a breakage (0xrrggbb where 0xr00000 -- upper 4 bits of int_red component)
+ // blending a breakage tex with main tex
- mediump vec4 finalTile = texture2D(tilesAtlas, finalUVCoordForTile);
- mediump vec4 finalBreakage = texture2D(tilesAtlas, finalUVCoordForBreakage);
+ vec4 finalTile = texture2D(tilesAtlas, finalUVCoordForTile);
+ vec4 finalBreakage = texture2D(tilesAtlas, finalUVCoordForBreakage);
gl_FragColor = colourFilter * (mix(finalTile, finalBreakage, finalBreakage.a));
diff --git a/lib/gdx-backend-lwjgl-natives.jar b/lib/gdx-backend-lwjgl-natives.jar
index 0a965e6ab..bd9b36e8e 100644
Binary files a/lib/gdx-backend-lwjgl-natives.jar and b/lib/gdx-backend-lwjgl-natives.jar differ
diff --git a/lib/gdx-backend-lwjgl.jar b/lib/gdx-backend-lwjgl.jar
index ea204f459..e970d6703 100644
Binary files a/lib/gdx-backend-lwjgl.jar and b/lib/gdx-backend-lwjgl.jar differ
diff --git a/lib/gdx-backend-lwjgl3.jar b/lib/gdx-backend-lwjgl3.jar
index 182c160a5..06f23eddf 100644
Binary files a/lib/gdx-backend-lwjgl3.jar and b/lib/gdx-backend-lwjgl3.jar differ
diff --git a/lib/gdx-natives.jar b/lib/gdx-natives.jar
index 15e5f9995..4988ecb0a 100644
Binary files a/lib/gdx-natives.jar and b/lib/gdx-natives.jar differ
diff --git a/lib/gdx-nightly-20170610.zip b/lib/gdx-nightly-20170610.zip
new file mode 100644
index 000000000..c5a19b55f
Binary files /dev/null and b/lib/gdx-nightly-20170610.zip differ
diff --git a/lib/gdx.jar b/lib/gdx.jar
index 22d26cb06..06fe28ad2 100644
Binary files a/lib/gdx.jar and b/lib/gdx.jar differ
diff --git a/lib/groovy-all-2.4.10-indy.jar b/lib/groovy-all-2.4.10-indy.jar
deleted file mode 100644
index 61223fe9a..000000000
Binary files a/lib/groovy-all-2.4.10-indy.jar and /dev/null differ
diff --git a/lib/javadoc/gdx-docs.jar b/lib/javadoc/gdx-docs.jar
deleted file mode 100644
index 0b5fe4732..000000000
Binary files a/lib/javadoc/gdx-docs.jar and /dev/null differ
diff --git a/lib/javadoc/gdx-docs.zip b/lib/javadoc/gdx-docs.zip
new file mode 100644
index 000000000..1af7502df
Binary files /dev/null and b/lib/javadoc/gdx-docs.zip differ
diff --git a/lib/source/gdx-backend-android-sources.jar b/lib/source/gdx-backend-android-sources.jar
deleted file mode 100644
index 12ce0356d..000000000
Binary files a/lib/source/gdx-backend-android-sources.jar and /dev/null differ
diff --git a/lib/source/gdx-backend-gwt-sources.jar b/lib/source/gdx-backend-gwt-sources.jar
deleted file mode 100644
index aaf5cb051..000000000
Binary files a/lib/source/gdx-backend-gwt-sources.jar and /dev/null differ
diff --git a/lib/source/gdx-backend-headless-sources.jar b/lib/source/gdx-backend-headless-sources.jar
deleted file mode 100644
index 587de9225..000000000
Binary files a/lib/source/gdx-backend-headless-sources.jar and /dev/null differ
diff --git a/lib/source/gdx-backend-lwjgl-sources.jar b/lib/source/gdx-backend-lwjgl-sources.jar
index 027754ba8..10599dc3a 100644
Binary files a/lib/source/gdx-backend-lwjgl-sources.jar and b/lib/source/gdx-backend-lwjgl-sources.jar differ
diff --git a/lib/source/gdx-backend-lwjgl3-sources.jar b/lib/source/gdx-backend-lwjgl3-sources.jar
index 2f1a84683..7fff4170a 100644
Binary files a/lib/source/gdx-backend-lwjgl3-sources.jar and b/lib/source/gdx-backend-lwjgl3-sources.jar differ
diff --git a/lib/source/gdx-backend-robovm-sources.jar b/lib/source/gdx-backend-robovm-sources.jar
deleted file mode 100644
index 6de5bd6d1..000000000
Binary files a/lib/source/gdx-backend-robovm-sources.jar and /dev/null differ
diff --git a/lib/source/gdx-sources.jar b/lib/source/gdx-sources.jar
index b64eb1ab8..85757081d 100644
Binary files a/lib/source/gdx-sources.jar and b/lib/source/gdx-sources.jar differ
diff --git a/lib/source/slick_source.jar b/lib/source/slick_source.jar
deleted file mode 100644
index ba17be8a3..000000000
Binary files a/lib/source/slick_source.jar and /dev/null differ
diff --git a/lib/x86/libgdx.so b/lib/x86/libgdx.so
index f302aaae0..8b7dbbf2c 100644
Binary files a/lib/x86/libgdx.so and b/lib/x86/libgdx.so differ
diff --git a/lib/x86_64/libgdx.so b/lib/x86_64/libgdx.so
index 358f77cb4..b5aa6a12d 100644
Binary files a/lib/x86_64/libgdx.so and b/lib/x86_64/libgdx.so differ
diff --git a/src/net/torvald/terrarum/Terrarum.kt b/src/net/torvald/terrarum/Terrarum.kt
index 64866efeb..98408b449 100644
--- a/src/net/torvald/terrarum/Terrarum.kt
+++ b/src/net/torvald/terrarum/Terrarum.kt
@@ -237,6 +237,7 @@ object Terrarum : Screen {
init {
println("$NAME version ${AppLoader.getVERSION_STRING()}")
println("Java Runtime version ${System.getProperty("java.version")}")
+ println("LibGDX version ${com.badlogic.gdx.Version.VERSION}")
getDefaultDirectory()
diff --git a/src/net/torvald/terrarum/UIItemInventoryCatBar.kt b/src/net/torvald/terrarum/UIItemInventoryCatBar.kt
index f58733906..f6fe68f52 100644
--- a/src/net/torvald/terrarum/UIItemInventoryCatBar.kt
+++ b/src/net/torvald/terrarum/UIItemInventoryCatBar.kt
@@ -38,7 +38,7 @@ class UIItemInventoryCatBar(
// set up all the buttons
init {
// place sub UIs: Image Buttons
- mainButtons = Array(catArrangement.size, { index ->
+ mainButtons = Array(catArrangement.size) { index ->
val iconPosX = ((buttonGapSize / 2) + index * (catIcons.tileW + buttonGapSize)).roundInt()
val iconPosY = 0
@@ -51,7 +51,7 @@ class UIItemInventoryCatBar(
posY = posY + iconPosY,
highlightable = true
)
- })
+ }
// side buttons
@@ -65,7 +65,7 @@ class UIItemInventoryCatBar(
println("[UIItemInventoryCatBar] relativeStartX: $relativeStartX")
println("[UIItemInventoryCatBar] posX: $posX")
- sideButtons = Array(iconIndex.size, { index ->
+ sideButtons = Array(iconIndex.size) { index ->
val iconPosX = if (index < 2)
(relativeStartX + sideButtonsGap + (sideButtonsGap + catIcons.tileW) * index).roundInt()
else
@@ -83,7 +83,7 @@ class UIItemInventoryCatBar(
activeCol = if (index == 0 || index == 3) Color(0xfff066_ff.toInt()) else Color(0xffffff7f.toInt()),
highlightable = (index == 0 || index == 3)
)
- })
+ }
}
diff --git a/src/net/torvald/terrarum/worlddrawer/BlocksDrawerNew.kt b/src/net/torvald/terrarum/worlddrawer/BlocksDrawerNew.kt
index 1ebeba7b8..4893ac97b 100644
--- a/src/net/torvald/terrarum/worlddrawer/BlocksDrawerNew.kt
+++ b/src/net/torvald/terrarum/worlddrawer/BlocksDrawerNew.kt
@@ -46,24 +46,24 @@ internal object BlocksDrawer {
val wallOverlayColour = Color(2f/3f, 2f/3f, 2f/3f, 1f)
- val breakAnimSteps = 10
+ const val breakAnimSteps = 10
val WALL = GameWorld.WALL
val TERRAIN = GameWorld.TERRAIN
val WIRE = GameWorld.WIRE
- private val NEARBY_TILE_KEY_UP = 0
- private val NEARBY_TILE_KEY_RIGHT = 1
- private val NEARBY_TILE_KEY_DOWN = 2
- private val NEARBY_TILE_KEY_LEFT = 3
+ private const val NEARBY_TILE_KEY_UP = 0
+ private const val NEARBY_TILE_KEY_RIGHT = 1
+ private const val NEARBY_TILE_KEY_DOWN = 2
+ private const val NEARBY_TILE_KEY_LEFT = 3
- private val NEARBY_TILE_CODE_UP = 1
- private val NEARBY_TILE_CODE_RIGHT = 2
- private val NEARBY_TILE_CODE_DOWN = 4
- private val NEARBY_TILE_CODE_LEFT = 8
+ private const val NEARBY_TILE_CODE_UP = 1
+ private const val NEARBY_TILE_CODE_RIGHT = 2
+ private const val NEARBY_TILE_CODE_DOWN = 4
+ private const val NEARBY_TILE_CODE_LEFT = 8
- private val GZIP_READBUF_SIZE = 8192
+ private const val GZIP_READBUF_SIZE = 8192
private lateinit var terrainTilesBuffer: Array