From d41a870e1bac69986020e8fc659a94fbf284001b Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Thu, 17 Jun 2021 17:30:40 -0400 Subject: [PATCH] v0.9.3b: quickslotted bags now support targeting --- .../shatteredpixeldungeon/ui/QuickSlotButton.java | 6 +++++- .../shatteredpixeldungeon/windows/WndQuickBag.java | 12 ++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/QuickSlotButton.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/QuickSlotButton.java index c65f08736..bd055a3c8 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/QuickSlotButton.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/QuickSlotButton.java @@ -204,7 +204,11 @@ public class QuickSlotButton extends Button implements WndBag.Listener { private void enableSlot() { slot.enable(Dungeon.quickslot.isNonePlaceholder( slotNum )); } - + + public static void useTargeting(int idx){ + instance[idx].useTargeting(); + } + private void useTargeting() { if (lastTarget != null && diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/windows/WndQuickBag.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/windows/WndQuickBag.java index ac11e3da6..0adbd9976 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/windows/WndQuickBag.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/windows/WndQuickBag.java @@ -3,6 +3,7 @@ package com.shatteredpixel.shatteredpixeldungeon.windows; import com.shatteredpixel.shatteredpixeldungeon.Assets; import com.shatteredpixel.shatteredpixeldungeon.Chrome; import com.shatteredpixel.shatteredpixeldungeon.Dungeon; +import com.shatteredpixel.shatteredpixeldungeon.QuickSlot; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent; import com.shatteredpixel.shatteredpixeldungeon.items.EquipableItem; import com.shatteredpixel.shatteredpixeldungeon.items.Generator; @@ -16,6 +17,7 @@ import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene; import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene; import com.shatteredpixel.shatteredpixeldungeon.ui.ItemSlot; +import com.shatteredpixel.shatteredpixeldungeon.ui.QuickSlotButton; import com.shatteredpixel.shatteredpixeldungeon.ui.RenderedTextBlock; import com.shatteredpixel.shatteredpixeldungeon.ui.Window; import com.watabou.gltextures.TextureCache; @@ -29,6 +31,8 @@ import java.util.Comparator; public class WndQuickBag extends Window { + private static Item bag; + public WndQuickBag(Bag bag){ super(0, 0, 0, Chrome.get(Chrome.Type.TOAST_TR)); @@ -37,6 +41,8 @@ public class WndQuickBag extends Window { } WndBag.INSTANCE = this; + WndQuickBag.bag = bag; + float width = 0, height = 0; int maxWidth = PixelScene.landscape() ? 240 : 135; int left = 0; @@ -211,6 +217,12 @@ public class WndQuickBag extends Window { protected void onClick() { hide(); item.execute(Dungeon.hero); //TODO targeting? + if (item.usesTargeting && bag != null){ + int idx = Dungeon.quickslot.getSlot(WndQuickBag.bag); + if (idx != -1){ + QuickSlotButton.useTargeting(idx); + } + } } @Override