From 73ca7b5354f4a91826282d8f5d42c68f7a1fd37b Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Wed, 16 Jun 2021 20:57:00 -0400 Subject: [PATCH] v0.9.3b: added quick-use actions for some items that needed them --- .../shatteredpixeldungeon/items/Item.java | 2 +- .../shatteredpixeldungeon/items/KingsCrown.java | 4 +++- .../shatteredpixeldungeon/items/Stylus.java | 2 ++ .../shatteredpixeldungeon/items/TengusMask.java | 6 ++++-- .../items/food/Blandfruit.java | 15 +++++++++++++++ .../shatteredpixeldungeon/items/food/Food.java | 2 ++ 6 files changed, 27 insertions(+), 4 deletions(-) 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 4514f9972..a3335509e 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Item.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Item.java @@ -90,7 +90,7 @@ public class Item implements Bundlable { // whether an item can be included in heroes remains public boolean bones = false; - private static Comparator itemComparator = new Comparator() { + public static final Comparator itemComparator = new Comparator() { @Override public int compare( Item lhs, Item rhs ) { return Generator.Category.order( lhs ) - Generator.Category.order( rhs ); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/KingsCrown.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/KingsCrown.java index fa8815274..4dbebb74a 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/KingsCrown.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/KingsCrown.java @@ -46,7 +46,9 @@ public class KingsCrown extends Item { { image = ItemSpriteSheet.CROWN; - + + defaultAction = AC_WEAR; + unique = true; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Stylus.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Stylus.java index 45b486d89..3d8cb2a07 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Stylus.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/Stylus.java @@ -46,6 +46,8 @@ public class Stylus extends Item { stackable = true; + defaultAction = AC_INSCRIBE; + bones = true; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/TengusMask.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/TengusMask.java index a7f48a9c1..5085de85d 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/TengusMask.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/TengusMask.java @@ -40,12 +40,14 @@ import java.util.ArrayList; public class TengusMask extends Item { - public static final String AC_WEAR = "WEAR"; + private static final String AC_WEAR = "WEAR"; { stackable = false; image = ItemSpriteSheet.MASK; - + + defaultAction = AC_WEAR; + unique = true; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/Blandfruit.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/Blandfruit.java index 20f23eaa5..0f5db68cc 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/Blandfruit.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/Blandfruit.java @@ -44,9 +44,11 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain; import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; import com.shatteredpixel.shatteredpixeldungeon.plants.Plant.Seed; import com.shatteredpixel.shatteredpixeldungeon.plants.Sungrass; +import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; import com.shatteredpixel.shatteredpixeldungeon.utils.GLog; +import com.shatteredpixel.shatteredpixeldungeon.windows.WndUseItem; import com.watabou.utils.Bundle; import com.watabou.utils.Reflection; @@ -84,6 +86,13 @@ public class Blandfruit extends Food { @Override public void execute( Hero hero, String action ) { + if (action.equals( Potion.AC_CHOOSE )){ + + GameScene.show(new WndUseItem(null, this) ); + return; + + } + if (action.equals( AC_EAT ) && potionAttrib == null) { GLog.w( Messages.get(this, "raw")); @@ -164,6 +173,12 @@ public class Blandfruit extends Food { if (potionAttrib instanceof PotionOfExperience) potionGlow = new ItemSprite.Glowing( 0x404040 ); if (potionAttrib instanceof PotionOfHaste) potionGlow = new ItemSprite.Glowing( 0xCCBB00 ); + potionAttrib.setAction(); + defaultAction = potionAttrib.defaultAction; + if (defaultAction.equals(Potion.AC_DRINK)){ + defaultAction = AC_EAT; + } + return this; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/Food.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/Food.java index 6c6bd02a0..c9b4ffe18 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/Food.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/food/Food.java @@ -51,6 +51,8 @@ public class Food extends Item { stackable = true; image = ItemSpriteSheet.RATION; + defaultAction = AC_EAT; + bones = true; }