diff --git a/.github/workflows/desktop-release.yml b/.github/workflows/desktop-release.yml
new file mode 100644
index 0000000..b6c6840
--- /dev/null
+++ b/.github/workflows/desktop-release.yml
@@ -0,0 +1,53 @@
+name: Automatic Desktop Release
+
+on:
+ push:
+ tags:
+ - 'v*'
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v2
+
+ - name: Set up JDK 1.8
+ uses: actions/setup-java@v1
+ with:
+ java-version: 1.8
+
+ - name: Grant execute permission for gradlew
+ run: chmod +x gradlew
+
+ - name: Build with Gradle
+ run: ./gradlew desktop:dist
+
+ - name: Define env vars
+ id: vars
+ run: |
+ echo ::set-output name=jar_file::\
+ $(echo ./desktop/build/libs/*.jar)
+ echo ::set-output name=version::\
+ $(echo ./desktop/build/libs/*.jar | sed 's/.*-\([0-9.]\+\)\.jar/\1/')
+
+ - name: Create release
+ id: create_release
+ uses: actions/create-release@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ tag_name: ${{ github.ref }}
+ release_name: ${{ github.ref }}
+ draft: false
+ prerelease: false
+
+ - name: Upload release asset
+ uses: actions/upload-release-asset@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ upload_url: ${{ steps.create_release.outputs.upload_url }}
+ asset_path: ${{ steps.vars.outputs.jar_file }}
+ asset_name: Klooni-${{ steps.vars.outputs.version }}.jar
+ asset_content_type: application/java-archive
diff --git a/README.md b/README.md
index daddfa8..70861c9 100644
--- a/README.md
+++ b/README.md
@@ -4,6 +4,8 @@ Play 1010! for free! Add your own themes! Contribute! Make the game yours!
[
](https://f-droid.org/app/dev.lonami.klooni)
+(Desktop builds are available on the [releases page](https://github.com/LonamiWebs/Klooni1010/releases).)
+
This project is licensed under [GPLv3+](LICENSE).
**Table of contents**:
diff --git a/android/AndroidManifest.xml b/android/AndroidManifest.xml
index 0579bc9..c4fdc3c 100644
--- a/android/AndroidManifest.xml
+++ b/android/AndroidManifest.xml
@@ -1,6 +1,7 @@
+ package="dev.lonami.klooni"
+ android:installLocation="auto">
= 24) {
+ try {
+ Method m = StrictMode.class.getMethod("disableDeathOnFileUriExposure");
+ m.invoke(null);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
final AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
final AndroidShareChallenge shareChallenge = new AndroidShareChallenge(this);
initialize(new Klooni(shareChallenge), config);
diff --git a/build.gradle b/build.gradle
index 6da9b9e..ce12746 100644
--- a/build.gradle
+++ b/build.gradle
@@ -18,7 +18,7 @@ buildscript {
allprojects {
apply plugin: "eclipse"
- version = '0.8.4'
+ version = '0.8.6'
ext {
appName = "1010! Klooni"
gdxVersion = '1.9.10'
diff --git a/core/src/dev/lonami/klooni/screens/GameScreen.java b/core/src/dev/lonami/klooni/screens/GameScreen.java
index cb05f98..ddc0b8d 100644
--- a/core/src/dev/lonami/klooni/screens/GameScreen.java
+++ b/core/src/dev/lonami/klooni/screens/GameScreen.java
@@ -323,7 +323,7 @@ class GameScreen implements Screen, InputProcessor, BinSerializable {
}
}
- private void deleteSave() {
+ private static void deleteSave() {
final FileHandle handle = Gdx.files.local(SAVE_DAT_FILENAME);
if (handle.exists())
handle.delete();
diff --git a/core/src/dev/lonami/klooni/screens/MainMenuScreen.java b/core/src/dev/lonami/klooni/screens/MainMenuScreen.java
index 6b8fa10..cac16fb 100644
--- a/core/src/dev/lonami/klooni/screens/MainMenuScreen.java
+++ b/core/src/dev/lonami/klooni/screens/MainMenuScreen.java
@@ -26,7 +26,6 @@ import com.badlogic.gdx.scenes.scene2d.InputListener;
import com.badlogic.gdx.scenes.scene2d.Stage;
import com.badlogic.gdx.scenes.scene2d.ui.Table;
import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener;
-import com.badlogic.gdx.utils.viewport.FitViewport;
import dev.lonami.klooni.Klooni;
import dev.lonami.klooni.actors.SoftButton;
@@ -58,7 +57,6 @@ public class MainMenuScreen extends InputListener implements Screen {
Table table = new Table();
table.setFillParent(true);
stage.addActor(table);
- stage.setViewport(new FitViewport(Klooni.GAME_WIDTH, Klooni.GAME_HEIGHT));
// Play button
final SoftButton playButton = new SoftButton(
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/1-game.jpg b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.jpg
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/1-game.jpg
rename to fastlane/metadata/android/en-US/images/phoneScreenshots/1.jpg
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/2-pause.jpg b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.jpg
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/2-pause.jpg
rename to fastlane/metadata/android/en-US/images/phoneScreenshots/2.jpg
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/3-themes.jpg b/fastlane/metadata/android/en-US/images/phoneScreenshots/3.jpg
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/3-themes.jpg
rename to fastlane/metadata/android/en-US/images/phoneScreenshots/3.jpg
diff --git a/fastlane/metadata/android/en-US/title.txt b/fastlane/metadata/android/en-US/title.txt
index eea6abd..6024fb8 100644
--- a/fastlane/metadata/android/en-US/title.txt
+++ b/fastlane/metadata/android/en-US/title.txt
@@ -1 +1 @@
- 1010! Klooni
+1010! Klooni