Compare commits

...

2 Commits

4 changed files with 13 additions and 8 deletions

View File

@@ -7,6 +7,10 @@ This project uses the following libraries:
- [TeaVM](https://teavm.org), licensed under the Apache License, Version 2.0.
- [gdx-teavm](https://github.com/xpenatan/gdx-teavm), licensed under the Apache License, Version 2.0.
## Known errors
1) No rays effect.
2) If tome of mastery is not picked up, opened and closed before entering a custom note, then screen goes blank until the player does that.
[Shattered Pixel Dungeon](https://shatteredpixel.com/shatteredpd/) is an open-source traditional roguelike dungeon crawler with randomized levels and enemies, and hundreds of items to collect and use. It's based on the [source code of Pixel Dungeon](https://github.com/00-Evan/pixel-dungeon-gradle), by [Watabou](https://watabou.itch.io/).
Shattered Pixel Dungeon currently compiles for Android, iOS, and Desktop platforms. You can find official releases of the game on:

View File

@@ -27,7 +27,7 @@ allprojects {
gdxControllersVersion = '2.2.4'
robovmVersion = '2.3.24'
gdxTeaVMVersion = '1.5.0'
gdxTeaVMVersion = '1.5.1'
teaVMVersion = '0.13.0'
}
version = appVersionName

View File

@@ -4,6 +4,7 @@ dependencies {
implementation "com.github.xpenatan.gdx-teavm:backend-web:$gdxTeaVMVersion"
implementation "com.github.xpenatan.gdx-teavm:gdx-freetype-teavm:$gdxTeaVMVersion"
implementation "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
implementation "com.github.xpenatan.gdx-teavm:gdx-controllers-teavm:$gdxTeaVMVersion"
implementation project(':core')
}
@@ -35,7 +36,7 @@ task modifyHtml {
def faviconDest = new File(rootFS, "favicon.ico")
def sourceFavicon = file("../desktop/src/main/assets/icons/windows.ico")
def startupLogo = new File(assetsDir, "startup-logo.png")
def assetsTxt = new File(assetsDir, "assets.txt")
def assetsTxt = new File(assetsDir, "preload.txt")
// delete placeholder startup-logo.png
if (startupLogo.exists()) {
@@ -48,7 +49,7 @@ task modifyHtml {
println "startup-logo.png not found in assets folder. Nothing to delete."
}
// remove lines containing the word 'frame' (case-insensitive) from assets.txt
// remove lines containing the word 'frame' (case-insensitive) from preload.txt
if (assetsTxt.exists()) {
def originalLines = assetsTxt.readLines('UTF-8')
def filteredLines = originalLines.findAll { line ->
@@ -61,12 +62,12 @@ task modifyHtml {
if (i < filteredLines.size() - 1) writer.newLine()
}
}
println "Removed lines containing 'frame' from assets.txt."
println "Removed lines containing 'frame' from preload.txt."
} else {
println "No lines containing 'frame' found in assets.txt. No changes made."
println "No lines containing 'frame' found in preload.txt. No changes made."
}
} else {
println "assets.txt not found in assets folder. Skipping assets.txt cleanup."
println "preload.txt not found in assets folder. Skipping preload.txt cleanup."
}
// copy windows.ico to favicon.ico

View File

@@ -41,7 +41,7 @@ import java.util.regex.Pattern;
/**
* Two-stage preload:
* - stage 1: sequentially load explicit frame list and build animation
* - stage 2: preload assets.txt and show progress
* - stage 2: preload preload.txt and show progress
*/
public class CustomPreloadScreen extends ApplicationAdapter {
@@ -241,7 +241,7 @@ public class CustomPreloadScreen extends ApplicationAdapter {
private void startAssetsPreload() {
if (stage == null) setupStageMinimal();
assetLoader.preload("assets.txt", new AssetLoaderListener<Void>() {
assetLoader.preload("preload.txt", new AssetLoaderListener<Void>() {
public void onSuccess(String url, Void result) {
Gdx.app.postRunnable(() -> assetsInitial = Math.max(0, assetLoader.getQueue()));
}