From 938a78883f110ae27ef629968c6c856a7ce806a5 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Tue, 12 Mar 2024 12:43:24 -0400 Subject: [PATCH] v2.4.0: adjusted recipes and balance for spells, and 2 brews --- .../assets/messages/items/items.properties | 13 +++---- core/src/main/assets/sprites/items.png | Bin 22450 -> 22367 bytes .../items/potions/brews/CausticBrew.java | 2 +- .../items/potions/brews/UnstableBrew.java | 2 +- .../items/spells/Alchemize.java | 2 +- .../items/spells/BeaconOfReturning.java | 2 +- .../items/spells/MagicalInfusion.java | 2 +- .../items/spells/PhaseShift.java | 8 ++-- .../items/spells/ReclaimTrap.java | 8 ++-- .../items/spells/Recycle.java | 2 +- .../items/spells/SummonElemental.java | 6 +-- .../items/spells/TelekineticGrab.java | 8 ++-- .../items/spells/UnstableSpell.java | 2 +- .../items/spells/WildEnergy.java | 3 +- .../sprites/ItemSpriteSheet.java | 35 +++++++++--------- .../shatteredpixeldungeon/ui/QuickRecipe.java | 18 +++++---- 16 files changed, 55 insertions(+), 58 deletions(-) diff --git a/core/src/main/assets/messages/items/items.properties b/core/src/main/assets/messages/items/items.properties index a746388f6..c30a7b924 100644 --- a/core/src/main/assets/messages/items/items.properties +++ b/core/src/main/assets/messages/items/items.properties @@ -1156,7 +1156,7 @@ items.scrolls.exotic.scrollofpsionicblast.desc=This scroll contains incredible d ###spells items.spells.alchemize.name=alchemize items.spells.alchemize.prompt=Alchemize an Item -items.spells.alchemize.desc=This spell contains transmutative powers similar to those found in an alchemy pot. Each cast allows the user to turn an item (or stack of items) into gold or alchemical energy.\n\nAlchemize is sold from shops, and can also be made using alchemy. A scroll is mixed with a runestone or seed to create an arcane catalyst, that catalyst can then be used to create several uses of alchemize. +items.spells.alchemize.desc=This spell contains transmutative powers similar to those found in an alchemy pot. Each cast allows the user to turn an item (or stack of items) into gold or alchemical energy.\n\nA few Alchemize uses are sold from shops, but many more can be made using alchemy by combining a seed, runestone, and a little alchemical energy. items.spells.alchemize$wndalchemizeitem.sell=Turn into %dg items.spells.alchemize$wndalchemizeitem.sell_1=Turn 1 into %dg items.spells.alchemize$wndalchemizeitem.sell_all=Turn all into %dg @@ -1207,14 +1207,13 @@ items.spells.recycle.desc=This spell contains a lesser form of transmutation mag items.spells.summonelemental.name=summon elemental items.spells.summonelemental.ac_imbue=IMBUE -items.spells.summonelemental.summon_limit=You can only have one elemental summoned at a time. items.spells.summonelemental.imbue_prompt=Imbue an item items.spells.summonelemental.desc=This spell channels the energy of the elemental embers used to make it, and will allow you to summon a friendly elemental to fight with you! Only one elemental can be summoned at a time, but the spell can be re-cast to return the elemental to you at no cost. -items.spells.summonelemental.desc_newborn=The spell is currently unimbued, and will summon a _newborn elemental_ without a ranged attack. You can imbue an identified potion of liquid flame, potion of frost, scroll of recharging, or scroll of transmutation to power the spell up, causing its next summon to be a full power elemental! -items.spells.summonelemental.desc_fire=The spell is currently hot to the touch, its next summon will be a _fire elemental_. You can imbue a different item, but the spell will lose its current imbue. -items.spells.summonelemental.desc_frost=The spell is currently cold to the touch, its next summon will be a _frost elemental_. You can imbue a different item, but the spell will lose its current imbue. -items.spells.summonelemental.desc_shock=The spell is currently radiating static energy, its next summon will be a _shock elemental_. You can imbue a different item, but the spell will lose its current imbue. -items.spells.summonelemental.desc_chaos=The spell is currently radiating chaotic energy, its next summon will be a _chaos elemental_. You can imbue a different item, but the spell will lose its current imbue. +items.spells.summonelemental.desc_newborn=The spell is currently unimbued, and will summon a _newborn elemental_ without a ranged attack. You can imbue an identified potion of liquid flame, potion of frost, scroll of recharging, or scroll of transmutation to power the spell up, causing future summons to be a full power elemental! +items.spells.summonelemental.desc_fire=The spell is currently hot to the touch, it will summon a _fire elemental_. You can imbue a different item, but the spell will lose its current imbue. +items.spells.summonelemental.desc_frost=The spell is currently cold to the touch, it will summon a _frost elemental_. You can imbue a different item, but the spell will lose its current imbue. +items.spells.summonelemental.desc_shock=The spell is currently radiating static energy, it will summon a _shock elemental_. You can imbue a different item, but the spell will lose its current imbue. +items.spells.summonelemental.desc_chaos=The spell is currently radiating chaotic energy, it will summon a _chaos elemental_. You can imbue a different item, but the spell will lose its current imbue. items.spells.targetedspell.prompt=Choose a target items.spells.targetedspell.inv_title=Infuse an item diff --git a/core/src/main/assets/sprites/items.png b/core/src/main/assets/sprites/items.png index 4ec8ce97f0f0e1f29c04de51b50bd034926a384f..a7a9ad0355ebdcc127478d0c20f9cffdda1423a1 100644 GIT binary patch literal 22367 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 literal 22450 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 diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/brews/CausticBrew.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/brews/CausticBrew.java index b6d0f7d4f..7ac3f60b6 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/brews/CausticBrew.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/brews/CausticBrew.java @@ -68,7 +68,7 @@ public class CausticBrew extends Brew { inputs = new Class[]{PotionOfToxicGas.class, GooBlob.class}; inQuantity = new int[]{1, 1}; - cost = 0; + cost = 1; output = CausticBrew.class; outQuantity = 1; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/brews/UnstableBrew.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/brews/UnstableBrew.java index b9a6cfa58..8554f6fd1 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/brews/UnstableBrew.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/potions/brews/UnstableBrew.java @@ -153,7 +153,7 @@ public class UnstableBrew extends Brew { @Override public int cost(ArrayList ingredients) { - return 2; + return 1; } @Override diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/Alchemize.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/Alchemize.java index 67e0ebe11..4a51c6c20 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/Alchemize.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/Alchemize.java @@ -84,7 +84,7 @@ public class Alchemize extends Spell { @Override public int cost(ArrayList ingredients) { - return 6; + return 2; } @Override diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/BeaconOfReturning.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/BeaconOfReturning.java index 54da26c45..62743e85d 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/BeaconOfReturning.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/BeaconOfReturning.java @@ -226,7 +226,7 @@ public class BeaconOfReturning extends Spell { inputs = new Class[]{ScrollOfPassage.class}; inQuantity = new int[]{1}; - cost = 15; + cost = 12; output = BeaconOfReturning.class; outQuantity = 5; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/MagicalInfusion.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/MagicalInfusion.java index f1fd861d2..05a6652dc 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/MagicalInfusion.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/MagicalInfusion.java @@ -87,7 +87,7 @@ public class MagicalInfusion extends InventorySpell { inputs = new Class[]{ScrollOfUpgrade.class}; inQuantity = new int[]{1}; - cost = 13; + cost = 12; output = MagicalInfusion.class; outQuantity = 1; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/PhaseShift.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/PhaseShift.java index 9f0d020fc..50eab51b9 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/PhaseShift.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/PhaseShift.java @@ -65,12 +65,12 @@ public class PhaseShift extends TargetedSpell { @Override public int value() { - return (int)(60 * (quantity/8f)); + return (int)(60 * (quantity/6f)); } @Override public int energyVal() { - return (int)(12 * (quantity/8f)); + return (int)(12 * (quantity/6f)); } public static class Recipe extends com.shatteredpixel.shatteredpixeldungeon.items.Recipe.SimpleRecipe { @@ -79,10 +79,10 @@ public class PhaseShift extends TargetedSpell { inputs = new Class[]{ScrollOfTeleportation.class}; inQuantity = new int[]{1}; - cost = 13; + cost = 10; output = PhaseShift.class; - outQuantity = 8; + outQuantity = 6; } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/ReclaimTrap.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/ReclaimTrap.java index 5d1679aa4..d0056e945 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/ReclaimTrap.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/ReclaimTrap.java @@ -115,12 +115,12 @@ public class ReclaimTrap extends TargetedSpell { @Override public int value() { - return (int)(60 * (quantity/4f)); + return (int)(60 * (quantity/5f)); } @Override public int energyVal() { - return (int)(12 * (quantity/4f)); + return (int)(12 * (quantity/5f)); } private static final String STORED_TRAP = "stored_trap"; @@ -143,10 +143,10 @@ public class ReclaimTrap extends TargetedSpell { inputs = new Class[]{ScrollOfMagicMapping.class, MetalShard.class}; inQuantity = new int[]{1, 1}; - cost = 6; + cost = 8; output = ReclaimTrap.class; - outQuantity = 4; + outQuantity = 5; } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/Recycle.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/Recycle.java index 1954c1b1c..beb8b92f1 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/Recycle.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/Recycle.java @@ -105,7 +105,7 @@ public class Recycle extends InventorySpell { inputs = new Class[]{ScrollOfTransmutation.class}; inQuantity = new int[]{1, 1}; - cost = 17; + cost = 12; output = Recycle.class; outQuantity = 12; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/SummonElemental.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/SummonElemental.java index 78158e7d9..a642b2464 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/SummonElemental.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/SummonElemental.java @@ -116,8 +116,6 @@ public class SummonElemental extends Spell { curUser.sprite.operate(curUser.pos); curUser.spendAndNext(Actor.TICK); - summonClass = Elemental.AllyNewBornElemental.class; - detach(Dungeon.hero.belongings.backpack); } else { @@ -229,10 +227,10 @@ public class SummonElemental extends Spell { inputs = new Class[]{Embers.class}; inQuantity = new int[]{1}; - cost = 15; + cost = 10; output = SummonElemental.class; - outQuantity = 5; + outQuantity = 6; } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/TelekineticGrab.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/TelekineticGrab.java index bbe2ce967..3571fd49d 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/TelekineticGrab.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/TelekineticGrab.java @@ -116,12 +116,12 @@ public class TelekineticGrab extends TargetedSpell { @Override public int value() { - return (int)(60 * (quantity/6f)); + return (int)(60 * (quantity/8f)); } @Override public int energyVal() { - return (int)(12 * (quantity/6f)); + return (int)(12 * (quantity/8f)); } public static class Recipe extends com.shatteredpixel.shatteredpixeldungeon.items.Recipe.SimpleRecipe { @@ -130,10 +130,10 @@ public class TelekineticGrab extends TargetedSpell { inputs = new Class[]{LiquidMetal.class}; inQuantity = new int[]{10}; - cost = 11; + cost = 10; output = TelekineticGrab.class; - outQuantity = 6; + outQuantity = 8; } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/UnstableSpell.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/UnstableSpell.java index 9b21c6fea..b8e74aef6 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/UnstableSpell.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/UnstableSpell.java @@ -144,7 +144,7 @@ public class UnstableSpell extends Spell { @Override public int cost(ArrayList ingredients) { - return 2; + return 1; } @Override diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/WildEnergy.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/WildEnergy.java index 46b80676e..fa215a424 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/WildEnergy.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/spells/WildEnergy.java @@ -29,7 +29,6 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; import com.shatteredpixel.shatteredpixeldungeon.effects.SpellSprite; import com.shatteredpixel.shatteredpixeldungeon.items.quest.MetalShard; import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfRecharging; -import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ScrollOfMysticalEnergy; import com.shatteredpixel.shatteredpixeldungeon.items.wands.CursedWand; import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; @@ -76,7 +75,7 @@ public class WildEnergy extends TargetedSpell { public static class Recipe extends com.shatteredpixel.shatteredpixeldungeon.items.Recipe.SimpleRecipe { { - inputs = new Class[]{ScrollOfMysticalEnergy.class, MetalShard.class}; + inputs = new Class[]{ScrollOfRecharging.class, MetalShard.class}; inQuantity = new int[]{1, 1}; cost = 4; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java index 634914ad4..e84e8885e 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java @@ -611,35 +611,34 @@ public class ItemSpriteSheet { //16 free slots private static final int SPELLS = xy(1, 27); //16 slots - public static final int MAGIC_PORTER = SPELLS+0; + public static final int WILD_ENERGY = SPELLS+0; public static final int PHASE_SHIFT = SPELLS+1; public static final int TELE_GRAB = SPELLS+2; - public static final int WILD_ENERGY = SPELLS+3; - public static final int RETURN_BEACON = SPELLS+4; - public static final int SUMMON_ELE = SPELLS+5; + public static final int UNSTABLE_SPELL = SPELLS+3; + + public static final int CURSE_INFUSE = SPELLS+5; + public static final int MAGIC_INFUSE = SPELLS+6; + public static final int ALCHEMIZE = SPELLS+7; + public static final int RECYCLE = SPELLS+8; + + public static final int RECLAIM_TRAP = SPELLS+10; + public static final int RETURN_BEACON = SPELLS+11; + public static final int SUMMON_ELE = SPELLS+12; - public static final int UNSTABLE_SPELL = SPELLS+8; - public static final int RECLAIM_TRAP = SPELLS+9; - - public static final int CURSE_INFUSE = SPELLS+11; - public static final int MAGIC_INFUSE = SPELLS+12; - public static final int ALCHEMIZE = SPELLS+13; - public static final int RECYCLE = SPELLS+14; static{ - assignItemRect(MAGIC_PORTER, 12, 11); + assignItemRect(WILD_ENERGY, 12, 11); assignItemRect(PHASE_SHIFT, 12, 11); assignItemRect(TELE_GRAB, 12, 11); - assignItemRect(WILD_ENERGY, 8, 16); - assignItemRect(RETURN_BEACON, 8, 16); - assignItemRect(SUMMON_ELE, 8, 16); - assignItemRect(UNSTABLE_SPELL, 12, 13); - assignItemRect(RECLAIM_TRAP, 11, 11); - + assignItemRect(CURSE_INFUSE, 10, 15); assignItemRect(MAGIC_INFUSE, 10, 15); assignItemRect(ALCHEMIZE, 10, 15); assignItemRect(RECYCLE, 10, 15); + + assignItemRect(RECLAIM_TRAP, 8, 16); + assignItemRect(RETURN_BEACON, 8, 16); + assignItemRect(SUMMON_ELE, 8, 16); } private static final int FOOD = xy(1, 28); //16 slots diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/QuickRecipe.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/QuickRecipe.java index ddb4368f6..84be20a30 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/QuickRecipe.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/ui/QuickRecipe.java @@ -353,8 +353,8 @@ public class QuickRecipe extends Component { new ArcaneResin())); return result; case 7: - result.add(new QuickRecipe(new CausticBrew.Recipe())); result.add(new QuickRecipe(new UnstableBrew.Recipe(), new ArrayList<>(Arrays.asList(new Potion.PlaceHolder(), new Plant.Seed.PlaceHolder())), new UnstableBrew())); + result.add(new QuickRecipe(new CausticBrew.Recipe())); result.add(new QuickRecipe(new BlizzardBrew.Recipe())); result.add(new QuickRecipe(new ShockingBrew.Recipe())); result.add(new QuickRecipe(new InfernalBrew.Recipe())); @@ -371,19 +371,21 @@ public class QuickRecipe extends Component { result.add(new QuickRecipe(new ElixirOfFeatherFall.Recipe())); return result; case 8: + result.add(new QuickRecipe(new UnstableSpell.Recipe(), new ArrayList<>(Arrays.asList(new Scroll.PlaceHolder(), new Runestone.PlaceHolder())), new UnstableSpell())); + result.add(new QuickRecipe(new WildEnergy.Recipe())); result.add(new QuickRecipe(new TelekineticGrab.Recipe())); result.add(new QuickRecipe(new PhaseShift.Recipe())); - result.add(new QuickRecipe(new WildEnergy.Recipe())); - result.add(new QuickRecipe(new BeaconOfReturning.Recipe())); - result.add(new QuickRecipe(new SummonElemental.Recipe())); - result.add(null); - result.add(new QuickRecipe(new UnstableSpell.Recipe(), new ArrayList<>(Arrays.asList(new Scroll.PlaceHolder(), new Runestone.PlaceHolder())), new UnstableSpell())); - result.add(new QuickRecipe(new ReclaimTrap.Recipe())); + if (!PixelScene.landscape()) result.add(null); result.add(null); result.add(new QuickRecipe(new Alchemize.Recipe(), new ArrayList<>(Arrays.asList(new Plant.Seed.PlaceHolder(), new Runestone.PlaceHolder())), new Alchemize().quantity(8))); - result.add(new QuickRecipe(new MagicalInfusion.Recipe())); result.add(new QuickRecipe(new CurseInfusion.Recipe())); + result.add(new QuickRecipe(new MagicalInfusion.Recipe())); result.add(new QuickRecipe(new Recycle.Recipe())); + if (!PixelScene.landscape()) result.add(null); + result.add(null); + result.add(new QuickRecipe(new ReclaimTrap.Recipe())); + result.add(new QuickRecipe(new SummonElemental.Recipe())); + result.add(new QuickRecipe(new BeaconOfReturning.Recipe())); return result; } }