v0.8.1: refactored consumable icons into generic item icons (2/2)
This commit is contained in:
parent
e205e7e13e
commit
2dfa01e1ad
Binary file not shown.
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.3 KiB |
|
@ -167,7 +167,8 @@ public class Assets {
|
||||||
|
|
||||||
public static class Sprites {
|
public static class Sprites {
|
||||||
|
|
||||||
public static final String ITEMS = "sprites/items.png";
|
public static final String ITEMS = "sprites/items.png";
|
||||||
|
public static final String ITEM_ICONS = "sprites/item_icons.png";
|
||||||
|
|
||||||
public static final String WARRIOR = "sprites/warrior.png";
|
public static final String WARRIOR = "sprites/warrior.png";
|
||||||
public static final String MAGE = "sprites/mage.png";
|
public static final String MAGE = "sprites/mage.png";
|
||||||
|
|
|
@ -67,6 +67,7 @@ public class Item implements Bundlable {
|
||||||
|
|
||||||
protected String name = Messages.get(this, "name");
|
protected String name = Messages.get(this, "name");
|
||||||
public int image = 0;
|
public int image = 0;
|
||||||
|
public int icon = -1; //used as an identifier for items with randomized images
|
||||||
|
|
||||||
public boolean stackable = false;
|
public boolean stackable = false;
|
||||||
protected int quantity = 1;
|
protected int quantity = 1;
|
||||||
|
|
|
@ -87,8 +87,6 @@ public class Potion extends Item {
|
||||||
|
|
||||||
private static final float TIME_TO_DRINK = 1f;
|
private static final float TIME_TO_DRINK = 1f;
|
||||||
|
|
||||||
protected Integer initials;
|
|
||||||
|
|
||||||
private static final Class<?>[] potions = {
|
private static final Class<?>[] potions = {
|
||||||
PotionOfHealing.class,
|
PotionOfHealing.class,
|
||||||
PotionOfExperience.class,
|
PotionOfExperience.class,
|
||||||
|
@ -383,10 +381,6 @@ public class Potion extends Item {
|
||||||
return isKnown() ? desc() : Messages.get(this, "unknown_desc");
|
return isKnown() ? desc() : Messages.get(this, "unknown_desc");
|
||||||
}
|
}
|
||||||
|
|
||||||
public Integer initials(){
|
|
||||||
return isKnown() ? initials : null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isIdentified() {
|
public boolean isIdentified() {
|
||||||
return isKnown();
|
return isKnown();
|
||||||
|
|
|
@ -22,11 +22,12 @@
|
||||||
package com.shatteredpixel.shatteredpixeldungeon.items.potions;
|
package com.shatteredpixel.shatteredpixeldungeon.items.potions;
|
||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class PotionOfExperience extends Potion {
|
public class PotionOfExperience extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 0;
|
icon = ItemSpriteSheet.Icons.POTION_EXP;
|
||||||
|
|
||||||
bones = true;
|
bones = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,13 +26,14 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Freezing;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Freezing;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
import com.watabou.utils.PathFinder;
|
import com.watabou.utils.PathFinder;
|
||||||
|
|
||||||
public class PotionOfFrost extends Potion {
|
public class PotionOfFrost extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 1;
|
icon = ItemSpriteSheet.Icons.POTION_FROST;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -25,12 +25,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Haste;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Haste;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
|
|
||||||
public class PotionOfHaste extends Potion {
|
public class PotionOfHaste extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 2;
|
icon = ItemSpriteSheet.Icons.POTION_HASTE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -35,12 +35,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Vulnerable;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Weakness;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Weakness;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
|
|
||||||
public class PotionOfHealing extends Potion {
|
public class PotionOfHealing extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 3;
|
icon = ItemSpriteSheet.Icons.POTION_HEALING;
|
||||||
|
|
||||||
bones = true;
|
bones = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,13 +26,14 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class PotionOfInvisibility extends Potion {
|
public class PotionOfInvisibility extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 4;
|
icon = ItemSpriteSheet.Icons.POTION_INVIS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,13 +30,14 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Levitation;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class PotionOfLevitation extends Potion {
|
public class PotionOfLevitation extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 5;
|
icon = ItemSpriteSheet.Icons.POTION_LEVITATE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,13 +26,14 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Fire;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Fire;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
import com.watabou.utils.PathFinder;
|
import com.watabou.utils.PathFinder;
|
||||||
|
|
||||||
public class PotionOfLiquidFlame extends Potion {
|
public class PotionOfLiquidFlame extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 6;
|
icon = ItemSpriteSheet.Icons.POTION_LIQFLAME;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,12 +26,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MindVision;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MindVision;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
|
|
||||||
public class PotionOfMindVision extends Potion {
|
public class PotionOfMindVision extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 7;
|
icon = ItemSpriteSheet.Icons.POTION_MINDVIS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,12 +26,13 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.ParalyticGas;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.ParalyticGas;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class PotionOfParalyticGas extends Potion {
|
public class PotionOfParalyticGas extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 8;
|
icon = ItemSpriteSheet.Icons.POTION_PARAGAS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,6 +30,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
@ -44,7 +45,7 @@ public class PotionOfPurity extends Potion {
|
||||||
private static ArrayList<Class> affectedBlobs;
|
private static ArrayList<Class> affectedBlobs;
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 9;
|
icon = ItemSpriteSheet.Icons.POTION_PURITY;
|
||||||
|
|
||||||
affectedBlobs = new ArrayList<>(new BlobImmunity().immunities());
|
affectedBlobs = new ArrayList<>(new BlobImmunity().immunities());
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,12 +25,13 @@ import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.CharSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.CharSprite;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
|
|
||||||
public class PotionOfStrength extends Potion {
|
public class PotionOfStrength extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 10;
|
icon = ItemSpriteSheet.Icons.POTION_STRENGTH;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,12 +26,13 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.ToxicGas;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.ToxicGas;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class PotionOfToxicGas extends Potion {
|
public class PotionOfToxicGas extends Potion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 11;
|
icon = ItemSpriteSheet.Icons.POTION_TOXICGAS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -24,11 +24,12 @@ package com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.AdrenalineSurge;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.AdrenalineSurge;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class PotionOfAdrenalineSurge extends ExoticPotion {
|
public class PotionOfAdrenalineSurge extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 10;
|
icon = ItemSpriteSheet.Icons.POTION_ARENSURGE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -29,12 +29,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Corruption;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Corruption;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Hunger;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Hunger;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class PotionOfCleansing extends ExoticPotion {
|
public class PotionOfCleansing extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 9;
|
icon = ItemSpriteSheet.Icons.POTION_CLEANSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,12 +26,13 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.CorrosiveGas;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.CorrosiveGas;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class PotionOfCorrosiveGas extends ExoticPotion {
|
public class PotionOfCorrosiveGas extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 11;
|
icon = ItemSpriteSheet.Icons.POTION_CORROGAS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -36,6 +36,7 @@ import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.CellSelector;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.CellSelector;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
import com.watabou.utils.Callback;
|
import com.watabou.utils.Callback;
|
||||||
import com.watabou.utils.PathFinder;
|
import com.watabou.utils.PathFinder;
|
||||||
|
@ -45,7 +46,7 @@ import java.util.HashSet;
|
||||||
public class PotionOfDragonsBreath extends ExoticPotion {
|
public class PotionOfDragonsBreath extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 6;
|
icon = ItemSpriteSheet.Icons.POTION_DRGBREATH;
|
||||||
}
|
}
|
||||||
|
|
||||||
//a lot of this is copy-paste from wand of fireblast
|
//a lot of this is copy-paste from wand of fireblast
|
||||||
|
|
|
@ -24,11 +24,12 @@ package com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Barkskin;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Barkskin;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class PotionOfEarthenArmor extends ExoticPotion {
|
public class PotionOfEarthenArmor extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 8;
|
icon = ItemSpriteSheet.Icons.POTION_EARTHARMR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -24,11 +24,12 @@ package com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Bless;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Bless;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class PotionOfHolyFuror extends ExoticPotion {
|
public class PotionOfHolyFuror extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 0;
|
icon = ItemSpriteSheet.Icons.POTION_HOLYFUROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -25,11 +25,12 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicalSight;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicalSight;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class PotionOfMagicalSight extends ExoticPotion {
|
public class PotionOfMagicalSight extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 7;
|
icon = ItemSpriteSheet.Icons.POTION_MAGISIGHT;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -24,11 +24,12 @@ package com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Barrier;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Barrier;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class PotionOfShielding extends ExoticPotion {
|
public class PotionOfShielding extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 3;
|
icon = ItemSpriteSheet.Icons.POTION_SHIELDING;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,12 +26,13 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.SmokeScreen;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.SmokeScreen;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class PotionOfShroudingFog extends ExoticPotion {
|
public class PotionOfShroudingFog extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 4;
|
icon = ItemSpriteSheet.Icons.POTION_SHROUDFOG;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -29,13 +29,14 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Fire;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Freezing;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Freezing;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Roots;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Roots;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
import com.watabou.utils.PathFinder;
|
import com.watabou.utils.PathFinder;
|
||||||
|
|
||||||
public class PotionOfSnapFreeze extends ExoticPotion {
|
public class PotionOfSnapFreeze extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 1;
|
icon = ItemSpriteSheet.Icons.POTION_SNAPFREEZ;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -24,11 +24,12 @@ package com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Stamina;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Stamina;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class PotionOfStamina extends ExoticPotion {
|
public class PotionOfStamina extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 2;
|
icon = ItemSpriteSheet.Icons.POTION_STAMINA;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,12 +26,13 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.StormCloud;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.StormCloud;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class PotionOfStormClouds extends ExoticPotion {
|
public class PotionOfStormClouds extends ExoticPotion {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 5;
|
icon = ItemSpriteSheet.Icons.POTION_STRMCLOUD;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -62,8 +62,6 @@ public abstract class Scroll extends Item {
|
||||||
|
|
||||||
protected static final float TIME_TO_READ = 1f;
|
protected static final float TIME_TO_READ = 1f;
|
||||||
|
|
||||||
protected Integer initials;
|
|
||||||
|
|
||||||
private static final Class<?>[] scrolls = {
|
private static final Class<?>[] scrolls = {
|
||||||
ScrollOfIdentify.class,
|
ScrollOfIdentify.class,
|
||||||
ScrollOfMagicMapping.class,
|
ScrollOfMagicMapping.class,
|
||||||
|
@ -236,10 +234,6 @@ public abstract class Scroll extends Item {
|
||||||
Messages.get(this, "unknown_desc");
|
Messages.get(this, "unknown_desc");
|
||||||
}
|
}
|
||||||
|
|
||||||
public Integer initials(){
|
|
||||||
return isKnown() ? initials : null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isUpgradable() {
|
public boolean isUpgradable() {
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -26,6 +26,7 @@ import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Identification;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Identification;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
@ -36,7 +37,7 @@ import java.util.ArrayList;
|
||||||
public class ScrollOfIdentify extends InventoryScroll {
|
public class ScrollOfIdentify extends InventoryScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 0;
|
icon = ItemSpriteSheet.Icons.SCROLL_IDENTIFY;
|
||||||
mode = WndBag.Mode.UNIDENTIFED;
|
mode = WndBag.Mode.UNIDENTIFED;
|
||||||
|
|
||||||
bones = true;
|
bones = true;
|
||||||
|
|
|
@ -29,13 +29,14 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfLullaby extends Scroll {
|
public class ScrollOfLullaby extends Scroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 1;
|
icon = ItemSpriteSheet.Icons.SCROLL_LULLABY;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -33,13 +33,14 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.SpellSprite;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfMagicMapping extends Scroll {
|
public class ScrollOfMagicMapping extends Scroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 2;
|
icon = ItemSpriteSheet.Icons.SCROLL_MAGICMAP;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,6 +30,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.MirrorImage;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.MirrorImage;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
import com.watabou.utils.Bundle;
|
import com.watabou.utils.Bundle;
|
||||||
import com.watabou.utils.PathFinder;
|
import com.watabou.utils.PathFinder;
|
||||||
|
@ -40,7 +41,7 @@ import java.util.ArrayList;
|
||||||
public class ScrollOfMirrorImage extends Scroll {
|
public class ScrollOfMirrorImage extends Scroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 3;
|
icon = ItemSpriteSheet.Icons.SCROLL_MIRRORIMG;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final int NIMAGES = 2;
|
private static final int NIMAGES = 2;
|
||||||
|
|
|
@ -32,13 +32,14 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfRage extends Scroll {
|
public class ScrollOfRage extends Scroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 5;
|
icon = ItemSpriteSheet.Icons.SCROLL_RAGE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,13 +30,14 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.SpellSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.SpellSprite;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.EnergyParticle;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.EnergyParticle;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfRecharging extends Scroll {
|
public class ScrollOfRecharging extends Scroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 6;
|
icon = ItemSpriteSheet.Icons.SCROLL_RECHARGE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -33,6 +33,7 @@ import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand;
|
import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
@ -40,7 +41,7 @@ import com.watabou.noosa.audio.Sample;
|
||||||
public class ScrollOfRemoveCurse extends InventoryScroll {
|
public class ScrollOfRemoveCurse extends InventoryScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 7;
|
icon = ItemSpriteSheet.Icons.SCROLL_REMCURSE;
|
||||||
mode = WndBag.Mode.UNCURSABLE;
|
mode = WndBag.Mode.UNCURSABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,6 +118,8 @@ public class ScrollOfRemoveCurse extends InventoryScroll {
|
||||||
return ((Weapon)item).hasCurseEnchant();
|
return ((Weapon)item).hasCurseEnchant();
|
||||||
} else if (item instanceof Armor){
|
} else if (item instanceof Armor){
|
||||||
return ((Armor)item).hasCurseGlyph();
|
return ((Armor)item).hasCurseGlyph();
|
||||||
|
} else if (item.level() != item.buffedLvl()) {
|
||||||
|
return true;
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,12 +29,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Weakness;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Weakness;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfRetribution extends Scroll {
|
public class ScrollOfRetribution extends Scroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 4;
|
icon = ItemSpriteSheet.Icons.SCROLL_RETRIB;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -37,6 +37,7 @@ import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.CellSelector;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.CellSelector;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.HeroSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.HeroSprite;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
@ -50,7 +51,7 @@ import java.util.ArrayList;
|
||||||
public class ScrollOfTeleportation extends Scroll {
|
public class ScrollOfTeleportation extends Scroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 8;
|
icon = ItemSpriteSheet.Icons.SCROLL_TELEPORT;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -31,13 +31,14 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Terror;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfTerror extends Scroll {
|
public class ScrollOfTerror extends Scroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 9;
|
icon = ItemSpriteSheet.Icons.SCROLL_TERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -44,6 +44,7 @@ import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.darts.Dart
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.journal.Catalog;
|
import com.shatteredpixel.shatteredpixeldungeon.journal.Catalog;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.plants.Plant;
|
import com.shatteredpixel.shatteredpixeldungeon.plants.Plant;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
||||||
import com.watabou.utils.Random;
|
import com.watabou.utils.Random;
|
||||||
|
@ -52,7 +53,7 @@ import com.watabou.utils.Reflection;
|
||||||
public class ScrollOfTransmutation extends InventoryScroll {
|
public class ScrollOfTransmutation extends InventoryScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 10;
|
icon = ItemSpriteSheet.Icons.SCROLL_TRANSMUTE;
|
||||||
mode = WndBag.Mode.TRANMSUTABLE;
|
mode = WndBag.Mode.TRANMSUTABLE;
|
||||||
|
|
||||||
bones = true;
|
bones = true;
|
||||||
|
|
|
@ -34,13 +34,14 @@ import com.shatteredpixel.shatteredpixeldungeon.items.rings.Ring;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand;
|
import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
||||||
|
|
||||||
public class ScrollOfUpgrade extends InventoryScroll {
|
public class ScrollOfUpgrade extends InventoryScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 11;
|
icon = ItemSpriteSheet.Icons.SCROLL_UPGRADE;
|
||||||
mode = WndBag.Mode.UPGRADEABLE;
|
mode = WndBag.Mode.UPGRADEABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -28,12 +28,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Charm;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfAffection extends ExoticScroll {
|
public class ScrollOfAffection extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 1;
|
icon = ItemSpriteSheet.Icons.SCROLL_AFFECTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -25,11 +25,12 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class ScrollOfAntiMagic extends ExoticScroll {
|
public class ScrollOfAntiMagic extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 7;
|
icon = ItemSpriteSheet.Icons.SCROLL_ANTIMAGIC;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,12 +30,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Vertigo;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Vertigo;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfConfusion extends ExoticScroll {
|
public class ScrollOfConfusion extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 5;
|
icon = ItemSpriteSheet.Icons.SCROLL_CONFUSION;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -32,6 +32,7 @@ import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.ui.RenderedTextBlock;
|
import com.shatteredpixel.shatteredpixeldungeon.ui.RenderedTextBlock;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.ui.Window;
|
import com.shatteredpixel.shatteredpixeldungeon.ui.Window;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
|
@ -46,7 +47,7 @@ import java.util.HashSet;
|
||||||
public class ScrollOfDivination extends ExoticScroll {
|
public class ScrollOfDivination extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 0;
|
icon = ItemSpriteSheet.Icons.SCROLL_DIVINATE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,6 +30,7 @@ import com.shatteredpixel.shatteredpixeldungeon.items.stones.StoneOfEnchantment;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndOptions;
|
import com.shatteredpixel.shatteredpixeldungeon.windows.WndOptions;
|
||||||
|
@ -38,7 +39,7 @@ import com.watabou.noosa.audio.Sample;
|
||||||
public class ScrollOfEnchantment extends ExoticScroll {
|
public class ScrollOfEnchantment extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 11;
|
icon = ItemSpriteSheet.Icons.SCROLL_ENCHANT;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,12 +26,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Foresight;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Foresight;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.SpellSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.SpellSprite;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfForesight extends ExoticScroll {
|
public class ScrollOfForesight extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 2;
|
icon = ItemSpriteSheet.Icons.SCROLL_FORESIGHT;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -27,12 +27,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.SpellSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.SpellSprite;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfRecharging;
|
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfRecharging;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfMysticalEnergy extends ExoticScroll {
|
public class ScrollOfMysticalEnergy extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 6;
|
icon = ItemSpriteSheet.Icons.SCROLL_MYSTENRG;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -28,13 +28,14 @@ import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfTeleportat
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.plants.Swiftthistle;
|
import com.shatteredpixel.shatteredpixeldungeon.plants.Swiftthistle;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.InterlevelScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.InterlevelScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.Game;
|
import com.watabou.noosa.Game;
|
||||||
|
|
||||||
public class ScrollOfPassage extends ExoticScroll {
|
public class ScrollOfPassage extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 8;
|
icon = ItemSpriteSheet.Icons.SCROLL_ENCHANT;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -29,12 +29,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfPetrification extends ExoticScroll {
|
public class ScrollOfPetrification extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 9;
|
icon = ItemSpriteSheet.Icons.SCROLL_PETRIF;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -31,6 +31,7 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.ui.TargetHealthIndicator;
|
import com.shatteredpixel.shatteredpixeldungeon.ui.TargetHealthIndicator;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
import com.watabou.utils.Random;
|
import com.watabou.utils.Random;
|
||||||
|
@ -38,7 +39,7 @@ import com.watabou.utils.Random;
|
||||||
public class ScrollOfPolymorph extends ExoticScroll {
|
public class ScrollOfPolymorph extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 10;
|
icon = ItemSpriteSheet.Icons.SCROLL_POLYMORPH;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -29,12 +29,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.PrismaticGuard;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.PrismaticImage;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.PrismaticImage;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfPrismaticImage extends ExoticScroll {
|
public class ScrollOfPrismaticImage extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 3;
|
icon = ItemSpriteSheet.Icons.SCROLL_PRISIMG;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,13 +30,14 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Weakness;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.watabou.noosa.audio.Sample;
|
import com.watabou.noosa.audio.Sample;
|
||||||
|
|
||||||
public class ScrollOfPsionicBlast extends ExoticScroll {
|
public class ScrollOfPsionicBlast extends ExoticScroll {
|
||||||
|
|
||||||
{
|
{
|
||||||
initials = 4;
|
icon = ItemSpriteSheet.Icons.SCROLL_PSIBLAST;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -23,34 +23,11 @@ package com.shatteredpixel.shatteredpixeldungeon.items.stones;
|
||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Identification;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Identification;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.items.Generator;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.Potion;
|
import com.shatteredpixel.shatteredpixeldungeon.items.potions.Potion;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfExperience;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfFrost;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfHaste;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfHealing;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfInvisibility;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfLevitation;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfLiquidFlame;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfMindVision;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfParalyticGas;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfPurity;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfStrength;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfToxicGas;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic.ExoticPotion;
|
import com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic.ExoticPotion;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.Scroll;
|
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.Scroll;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfIdentify;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfLullaby;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicMapping;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMirrorImage;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfRage;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfRecharging;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfRemoveCurse;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfRetribution;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfTeleportation;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfTerror;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfTransmutation;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfUpgrade;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ExoticScroll;
|
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ExoticScroll;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||||
|
@ -65,6 +42,7 @@ import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.windows.IconTitle;
|
import com.shatteredpixel.shatteredpixeldungeon.windows.IconTitle;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
import com.shatteredpixel.shatteredpixeldungeon.windows.WndBag;
|
||||||
import com.watabou.noosa.Image;
|
import com.watabou.noosa.Image;
|
||||||
|
import com.watabou.utils.Reflection;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
|
|
||||||
|
@ -83,38 +61,7 @@ public class StoneOfIntuition extends InventoryStone {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//in order of their consumable icon
|
private static Class curGuess = null;
|
||||||
public static Class[] potions = new Class[]{
|
|
||||||
PotionOfExperience.class,
|
|
||||||
PotionOfFrost.class,
|
|
||||||
PotionOfHaste.class,
|
|
||||||
PotionOfHealing.class,
|
|
||||||
PotionOfInvisibility.class,
|
|
||||||
PotionOfLevitation.class,
|
|
||||||
PotionOfLiquidFlame.class,
|
|
||||||
PotionOfMindVision.class,
|
|
||||||
PotionOfParalyticGas.class,
|
|
||||||
PotionOfPurity.class,
|
|
||||||
PotionOfStrength.class,
|
|
||||||
PotionOfToxicGas.class
|
|
||||||
};
|
|
||||||
|
|
||||||
public static Class[] scrolls = new Class[]{
|
|
||||||
ScrollOfIdentify.class,
|
|
||||||
ScrollOfLullaby.class,
|
|
||||||
ScrollOfMagicMapping.class,
|
|
||||||
ScrollOfMirrorImage.class,
|
|
||||||
ScrollOfRetribution.class,
|
|
||||||
ScrollOfRage.class,
|
|
||||||
ScrollOfRecharging.class,
|
|
||||||
ScrollOfRemoveCurse.class,
|
|
||||||
ScrollOfTeleportation.class,
|
|
||||||
ScrollOfTerror.class,
|
|
||||||
ScrollOfTransmutation.class,
|
|
||||||
ScrollOfUpgrade.class
|
|
||||||
};
|
|
||||||
|
|
||||||
static Class curGuess = null;
|
|
||||||
|
|
||||||
public class WndGuess extends Window {
|
public class WndGuess extends Window {
|
||||||
|
|
||||||
|
@ -163,17 +110,15 @@ public class StoneOfIntuition extends InventoryStone {
|
||||||
int placed = 0;
|
int placed = 0;
|
||||||
|
|
||||||
HashSet<Class<?extends Item>> unIDed = new HashSet<>();
|
HashSet<Class<?extends Item>> unIDed = new HashSet<>();
|
||||||
final Class[] all;
|
final Class<?extends Item>[] all;
|
||||||
|
|
||||||
final int row;
|
|
||||||
if (item.isIdentified()){
|
if (item.isIdentified()){
|
||||||
hide();
|
hide();
|
||||||
return;
|
return;
|
||||||
} else if (item instanceof Potion){
|
} else if (item instanceof Potion){
|
||||||
unIDed.addAll(Potion.getUnknown());
|
unIDed.addAll(Potion.getUnknown());
|
||||||
all = potions.clone();
|
all = (Class<? extends Item>[]) Generator.Category.POTION.classes.clone();
|
||||||
if (item instanceof ExoticPotion){
|
if (item instanceof ExoticPotion){
|
||||||
row = 8;
|
|
||||||
for (int i = 0; i < all.length; i++){
|
for (int i = 0; i < all.length; i++){
|
||||||
all[i] = ExoticPotion.regToExo.get(all[i]);
|
all[i] = ExoticPotion.regToExo.get(all[i]);
|
||||||
}
|
}
|
||||||
|
@ -182,24 +127,19 @@ public class StoneOfIntuition extends InventoryStone {
|
||||||
exoUID.add(ExoticPotion.regToExo.get(i));
|
exoUID.add(ExoticPotion.regToExo.get(i));
|
||||||
}
|
}
|
||||||
unIDed = exoUID;
|
unIDed = exoUID;
|
||||||
} else {
|
|
||||||
row = 0;
|
|
||||||
}
|
}
|
||||||
} else if (item instanceof Scroll){
|
} else if (item instanceof Scroll){
|
||||||
unIDed.addAll(Scroll.getUnknown());
|
unIDed.addAll(Scroll.getUnknown());
|
||||||
all = scrolls.clone();
|
all = (Class<? extends Item>[]) Generator.Category.SCROLL.classes.clone();
|
||||||
if (item instanceof ExoticScroll){
|
if (item instanceof ExoticScroll) {
|
||||||
row = 24;
|
for (int i = 0; i < all.length; i++) {
|
||||||
for (int i = 0; i < all.length; i++){
|
|
||||||
all[i] = ExoticScroll.regToExo.get(all[i]);
|
all[i] = ExoticScroll.regToExo.get(all[i]);
|
||||||
}
|
}
|
||||||
HashSet<Class<?extends Item>> exoUID = new HashSet<>();
|
HashSet<Class<? extends Item>> exoUID = new HashSet<>();
|
||||||
for (Class<?extends Item> i : unIDed){
|
for (Class<? extends Item> i : unIDed) {
|
||||||
exoUID.add(ExoticScroll.regToExo.get(i));
|
exoUID.add(ExoticScroll.regToExo.get(i));
|
||||||
}
|
}
|
||||||
unIDed = exoUID;
|
unIDed = exoUID;
|
||||||
} else {
|
|
||||||
row = 16;
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
hide();
|
hide();
|
||||||
|
@ -231,7 +171,8 @@ public class StoneOfIntuition extends InventoryStone {
|
||||||
super.onClick();
|
super.onClick();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
Image im = new Image(Assets.Interfaces.CONS_ICONS, 7*i, row, 7, 8);
|
Image im = new Image(Assets.Sprites.ITEM_ICONS);
|
||||||
|
im.frame(ItemSpriteSheet.Icons.film.get(Reflection.newInstance(all[i]).icon));
|
||||||
im.scale.set(2f);
|
im.scale.set(2f);
|
||||||
btn.icon(im);
|
btn.icon(im);
|
||||||
btn.setRect(left + placed*BTN_SIZE, top, BTN_SIZE, BTN_SIZE);
|
btn.setRect(left + placed*BTN_SIZE, top, BTN_SIZE, BTN_SIZE);
|
||||||
|
|
|
@ -27,14 +27,21 @@ import com.watabou.noosa.TextureFilm;
|
||||||
public class ItemSpriteSheet {
|
public class ItemSpriteSheet {
|
||||||
|
|
||||||
private static final int WIDTH = 16;
|
private static final int WIDTH = 16;
|
||||||
|
public static final int SIZE = 16;
|
||||||
|
|
||||||
public static TextureFilm film = new TextureFilm( Assets.Sprites.ITEMS, 16, 16 );
|
public static TextureFilm film = new TextureFilm( Assets.Sprites.ITEMS, SIZE, SIZE );
|
||||||
|
|
||||||
private static int xy(int x, int y){
|
private static int xy(int x, int y){
|
||||||
x -= 1; y -= 1;
|
x -= 1; y -= 1;
|
||||||
return x + WIDTH*y;
|
return x + WIDTH*y;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static void assignItemRect( int item, int width, int height ){
|
||||||
|
int x = (item % WIDTH) * SIZE;
|
||||||
|
int y = (item / WIDTH) * SIZE;
|
||||||
|
film.add( item, x, y, x+width, y+height);
|
||||||
|
}
|
||||||
|
|
||||||
private static final int PLACEHOLDERS = xy(1, 1); //16 slots
|
private static final int PLACEHOLDERS = xy(1, 1); //16 slots
|
||||||
//SOMETHING is the default item sprite at position 0. May show up ingame if there are bugs.
|
//SOMETHING is the default item sprite at position 0. May show up ingame if there are bugs.
|
||||||
public static final int SOMETHING = PLACEHOLDERS+0;
|
public static final int SOMETHING = PLACEHOLDERS+0;
|
||||||
|
@ -672,11 +679,145 @@ public class ItemSpriteSheet {
|
||||||
|
|
||||||
//16 free slots
|
//16 free slots
|
||||||
|
|
||||||
|
//for smaller 8x8 icons that often accompany an item sprite
|
||||||
|
public static class Icons {
|
||||||
|
|
||||||
|
private static final int WIDTH = 16;
|
||||||
|
public static final int SIZE = 8;
|
||||||
|
|
||||||
|
public static TextureFilm film = new TextureFilm( Assets.Sprites.ITEM_ICONS, SIZE, SIZE );
|
||||||
|
|
||||||
|
private static int xy(int x, int y){
|
||||||
|
x -= 1; y -= 1;
|
||||||
|
return x + WIDTH*y;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void assignIconRect( int item, int width, int height ){
|
||||||
|
int x = (item % WIDTH) * SIZE;
|
||||||
|
int y = (item / WIDTH) * SIZE;
|
||||||
|
film.add( item, x, y, x+width, y+height);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static final int RINGS = xy(1, 1); //16 slots
|
||||||
|
|
||||||
|
//16 free slots
|
||||||
|
|
||||||
|
private static final int SCROLLS = xy(1, 3); //16 slots
|
||||||
|
public static final int SCROLL_UPGRADE = SCROLLS+0;
|
||||||
|
public static final int SCROLL_IDENTIFY = SCROLLS+1;
|
||||||
|
public static final int SCROLL_REMCURSE = SCROLLS+2;
|
||||||
|
public static final int SCROLL_MIRRORIMG= SCROLLS+3;
|
||||||
|
public static final int SCROLL_RECHARGE = SCROLLS+4;
|
||||||
|
public static final int SCROLL_TELEPORT = SCROLLS+5;
|
||||||
|
public static final int SCROLL_LULLABY = SCROLLS+6;
|
||||||
|
public static final int SCROLL_MAGICMAP = SCROLLS+7;
|
||||||
|
public static final int SCROLL_RAGE = SCROLLS+8;
|
||||||
|
public static final int SCROLL_RETRIB = SCROLLS+9;
|
||||||
|
public static final int SCROLL_TERROR = SCROLLS+10;
|
||||||
|
public static final int SCROLL_TRANSMUTE= SCROLLS+11;
|
||||||
|
static {
|
||||||
|
assignIconRect( SCROLL_UPGRADE, 7, 7 );
|
||||||
|
assignIconRect( SCROLL_IDENTIFY, 4, 7 );
|
||||||
|
assignIconRect( SCROLL_REMCURSE, 7, 7 );
|
||||||
|
assignIconRect( SCROLL_MIRRORIMG, 7, 5 );
|
||||||
|
assignIconRect( SCROLL_RECHARGE, 7, 5 );
|
||||||
|
assignIconRect( SCROLL_TELEPORT, 7, 7 );
|
||||||
|
assignIconRect( SCROLL_LULLABY, 4, 5 );
|
||||||
|
assignIconRect( SCROLL_MAGICMAP, 7, 7 );
|
||||||
|
assignIconRect( SCROLL_RAGE, 5, 5 );
|
||||||
|
assignIconRect( SCROLL_RETRIB, 5, 6 );
|
||||||
|
assignIconRect( SCROLL_TERROR, 5, 7 );
|
||||||
|
assignIconRect( SCROLL_TRANSMUTE, 7, 7 );
|
||||||
|
}
|
||||||
|
|
||||||
|
private static final int EXOTIC_SCROLLS = xy(1, 4); //16 slots
|
||||||
|
public static final int SCROLL_ENCHANT = EXOTIC_SCROLLS+0;
|
||||||
|
public static final int SCROLL_DIVINATE = EXOTIC_SCROLLS+1;
|
||||||
|
public static final int SCROLL_ANTIMAGIC= EXOTIC_SCROLLS+2;
|
||||||
|
public static final int SCROLL_PRISIMG = EXOTIC_SCROLLS+3;
|
||||||
|
public static final int SCROLL_MYSTENRG = EXOTIC_SCROLLS+4;
|
||||||
|
public static final int SCROLL_PASSAGE = EXOTIC_SCROLLS+5;
|
||||||
|
public static final int SCROLL_AFFECTION= EXOTIC_SCROLLS+6;
|
||||||
|
public static final int SCROLL_FORESIGHT= EXOTIC_SCROLLS+7;
|
||||||
|
public static final int SCROLL_CONFUSION= EXOTIC_SCROLLS+8;
|
||||||
|
public static final int SCROLL_PSIBLAST = EXOTIC_SCROLLS+9;
|
||||||
|
public static final int SCROLL_PETRIF = EXOTIC_SCROLLS+10;
|
||||||
|
public static final int SCROLL_POLYMORPH= EXOTIC_SCROLLS+11;
|
||||||
|
static {
|
||||||
|
assignIconRect( SCROLL_ENCHANT, 7, 7 );
|
||||||
|
assignIconRect( SCROLL_DIVINATE, 7, 7 );
|
||||||
|
assignIconRect( SCROLL_ANTIMAGIC, 7, 7 );
|
||||||
|
assignIconRect( SCROLL_PRISIMG, 5, 7 );
|
||||||
|
assignIconRect( SCROLL_MYSTENRG, 7, 5 );
|
||||||
|
assignIconRect( SCROLL_PASSAGE, 5, 7 );
|
||||||
|
assignIconRect( SCROLL_AFFECTION, 7, 6 );
|
||||||
|
assignIconRect( SCROLL_FORESIGHT, 7, 5 );
|
||||||
|
assignIconRect( SCROLL_CONFUSION, 4, 7 );
|
||||||
|
assignIconRect( SCROLL_PSIBLAST, 5, 6 );
|
||||||
|
assignIconRect( SCROLL_PETRIF, 7, 5 );
|
||||||
|
assignIconRect( SCROLL_POLYMORPH, 7, 6 );
|
||||||
|
}
|
||||||
|
|
||||||
|
//16 free slots
|
||||||
|
|
||||||
|
private static final int POTIONS = xy(1, 6); //16 slots
|
||||||
|
public static final int POTION_STRENGTH = POTIONS+0;
|
||||||
|
public static final int POTION_HEALING = POTIONS+1;
|
||||||
|
public static final int POTION_MINDVIS = POTIONS+2;
|
||||||
|
public static final int POTION_FROST = POTIONS+3;
|
||||||
|
public static final int POTION_LIQFLAME = POTIONS+4;
|
||||||
|
public static final int POTION_TOXICGAS = POTIONS+5;
|
||||||
|
public static final int POTION_HASTE = POTIONS+6;
|
||||||
|
public static final int POTION_INVIS = POTIONS+7;
|
||||||
|
public static final int POTION_LEVITATE = POTIONS+8;
|
||||||
|
public static final int POTION_PARAGAS = POTIONS+9;
|
||||||
|
public static final int POTION_PURITY = POTIONS+10;
|
||||||
|
public static final int POTION_EXP = POTIONS+11;
|
||||||
|
static {
|
||||||
|
assignIconRect( POTION_STRENGTH, 7, 7 );
|
||||||
|
assignIconRect( POTION_HEALING, 6, 7 );
|
||||||
|
assignIconRect( POTION_MINDVIS, 7, 5 );
|
||||||
|
assignIconRect( POTION_FROST, 5, 7 );
|
||||||
|
assignIconRect( POTION_LIQFLAME, 5, 7 );
|
||||||
|
assignIconRect( POTION_TOXICGAS, 7, 7 );
|
||||||
|
assignIconRect( POTION_HASTE, 6, 6 );
|
||||||
|
assignIconRect( POTION_INVIS, 5, 7 );
|
||||||
|
assignIconRect( POTION_LEVITATE, 5, 5 );
|
||||||
|
assignIconRect( POTION_PARAGAS, 7, 7 );
|
||||||
|
assignIconRect( POTION_PURITY, 5, 5 );
|
||||||
|
assignIconRect( POTION_EXP, 5, 5 );
|
||||||
|
}
|
||||||
|
|
||||||
|
private static final int EXOTIC_POTIONS = xy(1, 7); //16 slots
|
||||||
|
public static final int POTION_ARENSURGE= EXOTIC_POTIONS+0;
|
||||||
|
public static final int POTION_SHIELDING= EXOTIC_POTIONS+1;
|
||||||
|
public static final int POTION_MAGISIGHT= EXOTIC_POTIONS+2;
|
||||||
|
public static final int POTION_SNAPFREEZ= EXOTIC_POTIONS+3;
|
||||||
|
public static final int POTION_DRGBREATH= EXOTIC_POTIONS+4;
|
||||||
|
public static final int POTION_CORROGAS = EXOTIC_POTIONS+5;
|
||||||
|
public static final int POTION_STAMINA = EXOTIC_POTIONS+6;
|
||||||
|
public static final int POTION_SHROUDFOG= EXOTIC_POTIONS+7;
|
||||||
|
public static final int POTION_STRMCLOUD= EXOTIC_POTIONS+8;
|
||||||
|
public static final int POTION_EARTHARMR= EXOTIC_POTIONS+9;
|
||||||
|
public static final int POTION_CLEANSE = EXOTIC_POTIONS+10;
|
||||||
|
public static final int POTION_HOLYFUROR= EXOTIC_POTIONS+11;
|
||||||
|
static {
|
||||||
|
assignIconRect( POTION_ARENSURGE, 7, 7);
|
||||||
|
assignIconRect( POTION_SHIELDING, 6, 7);
|
||||||
|
assignIconRect( POTION_MAGISIGHT, 7, 5);
|
||||||
|
assignIconRect( POTION_SNAPFREEZ, 5, 7);
|
||||||
|
assignIconRect( POTION_DRGBREATH, 5, 7);
|
||||||
|
assignIconRect( POTION_CORROGAS, 7, 7);
|
||||||
|
assignIconRect( POTION_STAMINA, 6, 6);
|
||||||
|
assignIconRect( POTION_SHROUDFOG, 5, 7);
|
||||||
|
assignIconRect( POTION_STRMCLOUD, 5, 5);
|
||||||
|
assignIconRect( POTION_EARTHARMR, 7, 7);
|
||||||
|
assignIconRect( POTION_CLEANSE, 5, 5);
|
||||||
|
assignIconRect( POTION_HOLYFUROR, 5, 5);
|
||||||
|
}
|
||||||
|
|
||||||
|
//16 free slots
|
||||||
|
|
||||||
private static void assignItemRect( int item, int width, int height){
|
|
||||||
int x = (item % WIDTH) * WIDTH;
|
|
||||||
int y = (item / WIDTH) * WIDTH;
|
|
||||||
film.add( item, x, y, x+width, y+height);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,14 +25,7 @@ import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
|
import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.keys.Key;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.keys.SkeletonKey;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.Potion;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic.ExoticPotion;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.Scroll;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ExoticScroll;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MeleeWeapon;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
|
||||||
|
@ -52,20 +45,17 @@ public class ItemSlot extends Button {
|
||||||
private static final float ENABLED = 1.0f;
|
private static final float ENABLED = 1.0f;
|
||||||
private static final float DISABLED = 0.3f;
|
private static final float DISABLED = 0.3f;
|
||||||
|
|
||||||
protected ItemSprite icon;
|
protected ItemSprite sprite;
|
||||||
protected Item item;
|
protected Item item;
|
||||||
protected BitmapText topLeft;
|
protected BitmapText status;
|
||||||
protected BitmapText topRight;
|
protected BitmapText extra;
|
||||||
protected BitmapText bottomRight;
|
protected Image itemIcon;
|
||||||
protected Image bottomRightIcon;
|
protected BitmapText level;
|
||||||
protected boolean iconVisible = true;
|
|
||||||
|
|
||||||
private static final String TXT_STRENGTH = ":%d";
|
private static final String TXT_STRENGTH = ":%d";
|
||||||
private static final String TXT_TYPICAL_STR = "%d?";
|
private static final String TXT_TYPICAL_STR = "%d?";
|
||||||
private static final String TXT_KEY_DEPTH = "\u007F%d";
|
|
||||||
|
|
||||||
private static final String TXT_LEVEL = "%+d";
|
private static final String TXT_LEVEL = "%+d";
|
||||||
private static final String TXT_CURSED = "";//"-";
|
|
||||||
|
|
||||||
// Special "virtual items"
|
// Special "virtual items"
|
||||||
public static final Item CHEST = new Item() {
|
public static final Item CHEST = new Item() {
|
||||||
|
@ -89,7 +79,7 @@ public class ItemSlot extends Button {
|
||||||
|
|
||||||
public ItemSlot() {
|
public ItemSlot() {
|
||||||
super();
|
super();
|
||||||
icon.visible(false);
|
sprite.visible(false);
|
||||||
enable(false);
|
enable(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -103,63 +93,64 @@ public class ItemSlot extends Button {
|
||||||
|
|
||||||
super.createChildren();
|
super.createChildren();
|
||||||
|
|
||||||
icon = new ItemSprite();
|
sprite = new ItemSprite();
|
||||||
add( icon );
|
add(sprite);
|
||||||
|
|
||||||
topLeft = new BitmapText( PixelScene.pixelFont);
|
status = new BitmapText( PixelScene.pixelFont);
|
||||||
add( topLeft );
|
add(status);
|
||||||
|
|
||||||
topRight = new BitmapText( PixelScene.pixelFont);
|
extra = new BitmapText( PixelScene.pixelFont);
|
||||||
add( topRight );
|
add(extra);
|
||||||
|
|
||||||
bottomRight = new BitmapText( PixelScene.pixelFont);
|
level = new BitmapText( PixelScene.pixelFont);
|
||||||
add( bottomRight );
|
add(level);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void layout() {
|
protected void layout() {
|
||||||
super.layout();
|
super.layout();
|
||||||
|
|
||||||
icon.x = x + (width - icon.width) / 2f;
|
sprite.x = x + (width - sprite.width) / 2f;
|
||||||
icon.y = y + (height - icon.height) / 2f;
|
sprite.y = y + (height - sprite.height) / 2f;
|
||||||
PixelScene.align(icon);
|
PixelScene.align(sprite);
|
||||||
|
|
||||||
if (topLeft != null) {
|
if (status != null) {
|
||||||
topLeft.measure();
|
status.measure();
|
||||||
if (topLeft.width > width){
|
if (status.width > width){
|
||||||
topLeft.scale.set(PixelScene.align(0.8f));
|
status.scale.set(PixelScene.align(0.8f));
|
||||||
} else {
|
} else {
|
||||||
topLeft.scale.set(1f);
|
status.scale.set(1f);
|
||||||
}
|
}
|
||||||
topLeft.x = x;
|
status.x = x;
|
||||||
topLeft.y = y;
|
status.y = y;
|
||||||
PixelScene.align(topLeft);
|
PixelScene.align(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (topRight != null) {
|
if (extra != null) {
|
||||||
topRight.x = x + (width - topRight.width());
|
extra.x = x + (width - extra.width());
|
||||||
topRight.y = y;
|
extra.y = y;
|
||||||
PixelScene.align(topRight);
|
PixelScene.align(extra);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bottomRight != null) {
|
if (itemIcon != null){
|
||||||
bottomRight.x = x + (width - bottomRight.width());
|
itemIcon.x = x + width - (ItemSpriteSheet.Icons.SIZE + itemIcon.width())/2f;
|
||||||
bottomRight.y = y + (height - bottomRight.height());
|
itemIcon.y = y + (ItemSpriteSheet.Icons.SIZE - itemIcon.height)/2f;
|
||||||
PixelScene.align(bottomRight);
|
PixelScene.align(itemIcon);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bottomRightIcon != null) {
|
if (level != null) {
|
||||||
bottomRightIcon.x = x + (width - bottomRightIcon.width()) -1;
|
level.x = x + (width - level.width());
|
||||||
bottomRightIcon.y = y + (height - bottomRightIcon.height());
|
level.y = y + (height - level.baseLine() - 1);
|
||||||
PixelScene.align(bottomRightIcon);
|
PixelScene.align(level);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void item( Item item ) {
|
public void item( Item item ) {
|
||||||
if (this.item == item) {
|
if (this.item == item) {
|
||||||
if (item != null) {
|
if (item != null) {
|
||||||
icon.frame(item.image());
|
sprite.frame(item.image());
|
||||||
icon.glow(item.glowing());
|
sprite.glow(item.glowing());
|
||||||
}
|
}
|
||||||
updateText();
|
updateText();
|
||||||
return;
|
return;
|
||||||
|
@ -170,112 +161,79 @@ public class ItemSlot extends Button {
|
||||||
if (item == null) {
|
if (item == null) {
|
||||||
|
|
||||||
enable(false);
|
enable(false);
|
||||||
icon.visible(false);
|
sprite.visible(false);
|
||||||
|
|
||||||
updateText();
|
updateText();
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
enable(true);
|
enable(true);
|
||||||
icon.visible(true);
|
sprite.visible(true);
|
||||||
|
|
||||||
icon.view( item );
|
sprite.view( item );
|
||||||
updateText();
|
updateText();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateText(){
|
private void updateText(){
|
||||||
|
|
||||||
if (bottomRightIcon != null){
|
if (itemIcon != null){
|
||||||
remove(bottomRightIcon);
|
remove(itemIcon);
|
||||||
bottomRightIcon = null;
|
itemIcon = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (item == null){
|
if (item == null){
|
||||||
topLeft.visible = topRight.visible = bottomRight.visible = false;
|
status.visible = extra.visible = level.visible = false;
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
topLeft.visible = topRight.visible = bottomRight.visible = true;
|
status.visible = extra.visible = level.visible = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
topLeft.text( item.status() );
|
status.text( item.status() );
|
||||||
|
|
||||||
boolean isArmor = item instanceof Armor;
|
if (item.icon != -1 && item.isIdentified()){
|
||||||
boolean isWeapon = item instanceof Weapon;
|
extra.text( null );
|
||||||
if (isArmor || isWeapon) {
|
|
||||||
|
|
||||||
if (item.levelKnown || (isWeapon && !(item instanceof MeleeWeapon))) {
|
itemIcon = new Image(Assets.Sprites.ITEM_ICONS);
|
||||||
|
itemIcon.frame(ItemSpriteSheet.Icons.film.get(item.icon));
|
||||||
|
add(itemIcon);
|
||||||
|
|
||||||
int str = isArmor ? ((Armor)item).STRReq() : ((Weapon)item).STRReq();
|
} else if (item instanceof Weapon || item instanceof Armor) {
|
||||||
topRight.text( Messages.format( TXT_STRENGTH, str ) );
|
|
||||||
|
if (item.levelKnown){
|
||||||
|
int str = item instanceof Weapon ? ((Weapon)item).STRReq() : ((Armor)item).STRReq();
|
||||||
|
extra.text( Messages.format( TXT_STRENGTH, str ) );
|
||||||
if (str > Dungeon.hero.STR()) {
|
if (str > Dungeon.hero.STR()) {
|
||||||
topRight.hardlight( DEGRADED );
|
extra.hardlight( DEGRADED );
|
||||||
} else {
|
} else {
|
||||||
topRight.resetColor();
|
extra.resetColor();
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
int str = item instanceof Weapon ? ((Weapon)item).STRReq(0) : ((Armor)item).STRReq(0);
|
||||||
topRight.text( Messages.format( TXT_TYPICAL_STR, isArmor ?
|
extra.text( Messages.format( TXT_TYPICAL_STR, str ) );
|
||||||
((Armor)item).STRReq(0) :
|
extra.hardlight( WARNING );
|
||||||
((Weapon)item).STRReq(0) ) );
|
|
||||||
topRight.hardlight( WARNING );
|
|
||||||
|
|
||||||
}
|
}
|
||||||
topRight.measure();
|
extra.measure();
|
||||||
|
|
||||||
} else if (item instanceof Key && !(item instanceof SkeletonKey)) {
|
|
||||||
topRight.text(Messages.format(TXT_KEY_DEPTH, ((Key) item).depth));
|
|
||||||
topRight.measure();
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
topRight.text( null );
|
extra.text( null );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int level = item.visiblyUpgraded();
|
int trueLvl = item.visiblyUpgraded();
|
||||||
int buffedLvl = item.buffedVisiblyUpgraded();
|
int buffedLvl = item.buffedVisiblyUpgraded();
|
||||||
|
|
||||||
if (buffedLvl != 0) {
|
if (trueLvl != 0 && buffedLvl != 0) {
|
||||||
bottomRight.text( Messages.format( TXT_LEVEL, buffedLvl ) );
|
level.text( Messages.format( TXT_LEVEL, buffedLvl ) );
|
||||||
bottomRight.measure();
|
level.measure();
|
||||||
if (level == buffedLvl || buffedLvl <= 0) {
|
if (trueLvl == buffedLvl || buffedLvl <= 0) {
|
||||||
bottomRight.hardlight(buffedLvl > 0 ? UPGRADED : DEGRADED);
|
level.hardlight(buffedLvl > 0 ? UPGRADED : DEGRADED);
|
||||||
} else {
|
} else {
|
||||||
bottomRight.hardlight(buffedLvl > level ? ENHANCED : WARNING);
|
level.hardlight(buffedLvl > trueLvl ? ENHANCED : WARNING);
|
||||||
}
|
}
|
||||||
} else if (item instanceof Scroll || item instanceof Potion) {
|
|
||||||
bottomRight.text( null );
|
|
||||||
|
|
||||||
Integer iconInt;
|
|
||||||
if (item instanceof Scroll){
|
|
||||||
iconInt = ((Scroll) item).initials();
|
|
||||||
} else {
|
|
||||||
iconInt = ((Potion) item).initials();
|
|
||||||
}
|
|
||||||
if (iconInt != null && iconVisible) {
|
|
||||||
bottomRightIcon = new Image(Assets.Interfaces.CONS_ICONS);
|
|
||||||
int left = iconInt*7;
|
|
||||||
int top;
|
|
||||||
if (item instanceof Potion){
|
|
||||||
if (item instanceof ExoticPotion){
|
|
||||||
top = 8;
|
|
||||||
} else {
|
|
||||||
top = 0;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if (item instanceof ExoticScroll){
|
|
||||||
top = 24;
|
|
||||||
} else {
|
|
||||||
top = 16;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bottomRightIcon.frame(left, top, 7, 8);
|
|
||||||
add(bottomRightIcon);
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
bottomRight.text( null );
|
level.text( null );
|
||||||
}
|
}
|
||||||
|
|
||||||
layout();
|
layout();
|
||||||
|
@ -286,22 +244,20 @@ public class ItemSlot extends Button {
|
||||||
active = value;
|
active = value;
|
||||||
|
|
||||||
float alpha = value ? ENABLED : DISABLED;
|
float alpha = value ? ENABLED : DISABLED;
|
||||||
icon.alpha( alpha );
|
sprite.alpha( alpha );
|
||||||
topLeft.alpha( alpha );
|
status.alpha( alpha );
|
||||||
topRight.alpha( alpha );
|
extra.alpha( alpha );
|
||||||
bottomRight.alpha( alpha );
|
level.alpha( alpha );
|
||||||
if (bottomRightIcon != null) bottomRightIcon.alpha( alpha );
|
if (itemIcon != null) itemIcon.alpha( alpha );
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showParams( boolean TL, boolean TR, boolean BR ) {
|
public void showExtraInfo( boolean show ){
|
||||||
if (TL) add( topLeft );
|
|
||||||
else remove( topLeft );
|
|
||||||
|
|
||||||
if (TR) add( topRight );
|
if (show){
|
||||||
else remove( topRight );
|
add(extra);
|
||||||
|
} else {
|
||||||
|
remove(extra);
|
||||||
|
}
|
||||||
|
|
||||||
if (BR) add( bottomRight );
|
|
||||||
else remove( bottomRight );
|
|
||||||
iconVisible = BR;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,7 +59,7 @@ public class LootIndicator extends Tag {
|
||||||
return SPDAction.TAG_LOOT;
|
return SPDAction.TAG_LOOT;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
slot.showParams( true, false, false );
|
slot.showExtraInfo( false );
|
||||||
add( slot );
|
add( slot );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ public class LootIndicator extends Tag {
|
||||||
protected void layout() {
|
protected void layout() {
|
||||||
super.layout();
|
super.layout();
|
||||||
|
|
||||||
slot.setRect( x + 2, y + 3, width - 2, height - 6 );
|
slot.setRect( x + 2, y + 3, width - 3, height - 6 );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -114,10 +114,10 @@ public class QuickRecipe extends Component {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (quantity < in.quantity()) {
|
if (quantity < in.quantity()) {
|
||||||
curr.icon.alpha(0.3f);
|
curr.sprite.alpha(0.3f);
|
||||||
hasInputs = false;
|
hasInputs = false;
|
||||||
}
|
}
|
||||||
curr.showParams(true, false, true);
|
curr.showExtraInfo(false);
|
||||||
add(curr);
|
add(curr);
|
||||||
this.inputs.add(curr);
|
this.inputs.add(curr);
|
||||||
}
|
}
|
||||||
|
@ -147,9 +147,9 @@ public class QuickRecipe extends Component {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
if (!hasInputs){
|
if (!hasInputs){
|
||||||
this.output.icon.alpha(0.3f);
|
this.output.sprite.alpha(0.3f);
|
||||||
}
|
}
|
||||||
this.output.showParams(true, false, true);
|
this.output.showExtraInfo(false);
|
||||||
add(this.output);
|
add(this.output);
|
||||||
|
|
||||||
layout();
|
layout();
|
||||||
|
|
|
@ -105,14 +105,14 @@ public class QuickSlotButton extends Button implements WndBag.Listener {
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected void onPointerDown() {
|
protected void onPointerDown() {
|
||||||
icon.lightness( 0.7f );
|
sprite.lightness( 0.7f );
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected void onPointerUp() {
|
protected void onPointerUp() {
|
||||||
icon.resetColor();
|
sprite.resetColor();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
slot.showParams( true, false, true );
|
slot.showExtraInfo( false );
|
||||||
add( slot );
|
add( slot );
|
||||||
|
|
||||||
crossB = Icons.TARGET.get();
|
crossB = Icons.TARGET.get();
|
||||||
|
@ -212,7 +212,7 @@ public class QuickSlotButton extends Button implements WndBag.Listener {
|
||||||
sprite.parent.addToFront( crossM );
|
sprite.parent.addToFront( crossM );
|
||||||
crossM.point(sprite.center(crossM));
|
crossM.point(sprite.center(crossM));
|
||||||
|
|
||||||
crossB.point(slot.icon.center(crossB));
|
crossB.point(slot.sprite.center(crossB));
|
||||||
crossB.visible = true;
|
crossB.visible = true;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user