From 4b6f487f1b02dd6545cfeda85083a2db86c1d68a Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Sun, 8 Aug 2021 19:51:12 -0400 Subject: [PATCH] v0.9.4: various bugfixes - crash on Android text input - crash on stone of clairvoyance - bags not working with a full inventory - missing vfx on wandmaker --- SPD-classes/src/main/java/com/watabou/noosa/Halo.java | 4 ++++ android/proguard-rules.pro | 4 ++++ .../shatteredpixel/shatteredpixeldungeon/items/Item.java | 8 ++++---- .../shatteredpixeldungeon/mechanics/ShadowCaster.java | 2 +- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/SPD-classes/src/main/java/com/watabou/noosa/Halo.java b/SPD-classes/src/main/java/com/watabou/noosa/Halo.java index 512ee6dfe..8d976bc07 100644 --- a/SPD-classes/src/main/java/com/watabou/noosa/Halo.java +++ b/SPD-classes/src/main/java/com/watabou/noosa/Halo.java @@ -41,6 +41,10 @@ public class Halo extends Image { if (!TextureCache.contains( CACHE_KEY )) { Pixmap pixmap = TextureCache.create( CACHE_KEY, 2*RADIUS+1, 2*RADIUS+1 ).bitmap; + + pixmap.setColor( 0x00000000 ); + pixmap.fill(); + pixmap.setColor( 0xFFFFFF08 ); for (int i = 0; i < RADIUS; i+=2) { pixmap.fillCircle(RADIUS, RADIUS, (RADIUS - i)); diff --git a/android/proguard-rules.pro b/android/proguard-rules.pro index bc0e5d0db..89f757217 100644 --- a/android/proguard-rules.pro +++ b/android/proguard-rules.pro @@ -18,6 +18,10 @@ -dontwarn com.badlogic.gdx.physics.box2d.utils.Box2DBuild -dontwarn com.badlogic.gdx.jnigen.BuildTarget* +# needed for libGDX skin reflection used in text fields. Perhaps just don't use skin? +-keepnames class com.badlogic.gdx.graphics.Color { *; } +-keepnames class com.badlogic.gdx.scenes.scene2d.ui.TextField$TextFieldStyle { *; } + -keepclassmembers class com.badlogic.gdx.backends.android.AndroidInput* { (com.badlogic.gdx.Application, android.content.Context, java.lang.Object, com.badlogic.gdx.backends.android.AndroidApplicationConfiguration); } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Item.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Item.java index 68332f998..c5a97fd4c 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Item.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Item.java @@ -187,10 +187,6 @@ public class Item implements Bundlable { return true; } - if (!container.canHold(this)){ - return false; - } - ArrayList items = container.items; if (items.contains( this )) { @@ -204,6 +200,10 @@ public class Item implements Bundlable { } } } + + if (!container.canHold(this)){ + return false; + } if (stackable) { for (Item item:items) { diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/mechanics/ShadowCaster.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/mechanics/ShadowCaster.java index 671cd9722..1e8be43d2 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/mechanics/ShadowCaster.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/mechanics/ShadowCaster.java @@ -28,7 +28,7 @@ import com.shatteredpixel.shatteredpixeldungeon.utils.BArray; //based on: http://www.roguebasin.com/index.php?title=FOV_using_recursive_shadowcasting public final class ShadowCaster { - public static final int MAX_DISTANCE = 14; + public static final int MAX_DISTANCE = 20; //max length of rows as FOV moves out, for each FOV distance //This is used to make the overall FOV circular, instead of square