From c6233b274cecb3c7efcf4f98a50f2e5bd450bdbf Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Fri, 13 May 2016 15:25:08 -0400 Subject: [PATCH] v0.4.0: big restructure to item sprite sheet --- assets/items.png | Bin 14019 -> 32546 bytes .../actors/buffs/Combo.java | 2 +- .../items/weapon/melee/Longsword.java | 2 +- .../items/weapon/melee/ShortSword.java | 2 +- .../sprites/ItemSprite.java | 2 +- .../sprites/ItemSpriteSheet.java | 412 +++++++++--------- .../shatteredpixeldungeon/windows/WndBag.java | 8 +- 7 files changed, 219 insertions(+), 209 deletions(-) diff --git a/assets/items.png b/assets/items.png index c97dd983fe81a33c39a0712a4d21350d8cec708b..5e8fddb8daa9f3b45596eb29b54fd775c343b0f8 100644 GIT binary patch literal 32546 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 YUKM()Vx6Py!eJb@IoUn2@s9g{0Pv;;T>t<8 literal 14019 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 10) icon.tint(0xFFFF0000); diff --git a/src/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Longsword.java b/src/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Longsword.java index 10d4d8672..5e0ad3740 100644 --- a/src/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Longsword.java +++ b/src/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/Longsword.java @@ -25,7 +25,7 @@ import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; public class Longsword extends MeleeWeapon { { - image = ItemSpriteSheet.LONG_SWORD; + image = ItemSpriteSheet.LONGSWORD; } public Longsword() { diff --git a/src/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/ShortSword.java b/src/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/ShortSword.java index 8292981ff..9465399e5 100644 --- a/src/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/ShortSword.java +++ b/src/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/ShortSword.java @@ -25,7 +25,7 @@ import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; public class ShortSword extends MeleeWeapon { { - image = ItemSpriteSheet.SHORT_SWORD; + image = ItemSpriteSheet.WORN_SHORTSWORD; } public ShortSword() { diff --git a/src/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSprite.java b/src/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSprite.java index f34e37f29..f1737d626 100644 --- a/src/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSprite.java +++ b/src/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSprite.java @@ -61,7 +61,7 @@ public class ItemSprite extends MovieClip { private float dropInterval; public ItemSprite() { - this( ItemSpriteSheet.SMTH, null ); + this( ItemSpriteSheet.SOMETHING, null ); } public ItemSprite( Item item ) { diff --git a/src/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java b/src/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java index d6846e00a..cf10555f9 100644 --- a/src/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java +++ b/src/com/shatteredpixel/shatteredpixeldungeon/sprites/ItemSpriteSheet.java @@ -22,223 +22,233 @@ package com.shatteredpixel.shatteredpixeldungeon.sprites; public class ItemSpriteSheet { - // Row definers - private static final int ROW1 = 0*16; - private static final int ROW2 = 1*16; - private static final int ROW3 = 2*16; - private static final int ROW4 = 3*16; - private static final int ROW5 = 4*16; - private static final int ROW6 = 5*16; - private static final int ROW7 = 6*16; - private static final int ROW8 = 7*16; - private static final int ROW9 = 8*16; - private static final int ROW10 = 9*16; - private static final int ROW11 = 10*16; - private static final int ROW12 = 11*16; - private static final int ROW13 = 12*16; - private static final int ROW14 = 13*16; - private static final int ROW15 = 14*16; - private static final int ROW16 = 15*16; + private static final int WIDTH = 16; - //Row One: Items which can't be obtained + private static int xy(int x, int y){ + x -= 1; y -= 1; + return x + WIDTH*y; + } + + private static final int PLACEHOLDERS = xy(1, 1); //8 slots //null warning occupies space 0, should only show up if there's a bug. - public static final int NULLWARN = ROW1+0; - public static final int DEWDROP = ROW1+1; - public static final int PETAL = ROW1+2; - public static final int SANDBAG = ROW1+3; - public static final int DBL_BOMB = ROW1+4; - // Heaps (containers) - public static final int BONES = ROW1+5; - public static final int REMAINS = ROW1+6; - public static final int TOMB = ROW1+7; - public static final int GRAVE = ROW1+8; - public static final int CHEST = ROW1+9; - public static final int LOCKED_CHEST = ROW1+10; - public static final int CRYSTAL_CHEST = ROW1+11; - // Placeholders - public static final int WEAPON = ROW1+12; - public static final int ARMOR = ROW1+13; - public static final int RING = ROW1+14; - public static final int SMTH = ROW1+15; + public static final int NULLWARN = PLACEHOLDERS+0; + public static final int WEAPON_HOLDER = PLACEHOLDERS+1; + public static final int ARMOR_HOLDER = PLACEHOLDERS+2; + public static final int RING_HOLDER = PLACEHOLDERS+3; + public static final int SOMETHING = PLACEHOLDERS+4; - //Row Two: Miscellaneous single use items - public static final int GOLD = ROW2+0; - public static final int TORCH = ROW2+1; - public static final int STYLUS = ROW2+2; - public static final int ANKH = ROW2+3; - public static final int WEIGHT = ROW2+4; - public static final int BOMB = ROW2+5; - public static final int HONEYPOT = ROW2+6; - public static final int SHATTPOT = ROW2+7; - public static final int SEAL = ROW2+8; - // Keys - public static final int IRON_KEY = ROW2+9; - public static final int GOLDEN_KEY = ROW2+10; - public static final int SKELETON_KEY = ROW2+11; - //Boss Rewards - public static final int BEACON = ROW2+12; - public static final int MASTERY = ROW2+13; - public static final int KIT = ROW2+14; - public static final int AMULET = ROW2+15; + private static final int UNCOLLECTIBLE = xy(9, 1); //8 slots + public static final int GOLD = UNCOLLECTIBLE+0; + public static final int DEWDROP = UNCOLLECTIBLE+1; + public static final int PETAL = UNCOLLECTIBLE+2; + public static final int SANDBAG = UNCOLLECTIBLE+3; + public static final int DBL_BOMB = UNCOLLECTIBLE+4; - //Row Three: Melee weapons - public static final int KNUCKLEDUSTER = ROW3+0; - public static final int DAGGER = ROW3+1; - public static final int SHORT_SWORD = ROW3+2; - public static final int MAGES_STAFF = ROW3+3; - public static final int QUARTERSTAFF = ROW3+4; - public static final int SPEAR = ROW3+5; - public static final int MACE = ROW3+6; - public static final int SWORD = ROW3+7; - public static final int BATTLE_AXE = ROW3+8; - public static final int LONG_SWORD = ROW3+9; - public static final int WAR_HAMMER = ROW3+10; - public static final int GLAIVE = ROW3+11; + private static final int CONTAINERS = xy(1, 2); //16 slots + public static final int BONES = CONTAINERS+0; + public static final int REMAINS = CONTAINERS+1; + public static final int TOMB = CONTAINERS+2; + public static final int GRAVE = CONTAINERS+3; + public static final int CHEST = CONTAINERS+4; + public static final int LOCKED_CHEST = CONTAINERS+5; + public static final int CRYSTAL_CHEST = CONTAINERS+6; - //Row Four: Missile weapons - public static final int DART = ROW4+0; - public static final int BOOMERANG = ROW4+1; - public static final int INCENDIARY_DART = ROW4+2; - public static final int SHURIKEN = ROW4+3; - public static final int CURARE_DART = ROW4+4; - public static final int JAVELIN = ROW4+5; - public static final int TOMAHAWK = ROW4+6; + private static final int SINGLE_USE = xy(1, 3); //32 slots + public static final int ANKH = SINGLE_USE+0; + public static final int STYLUS = SINGLE_USE+1; + public static final int WEIGHT = SINGLE_USE+2; + public static final int SEAL = SINGLE_USE+3; + public static final int TORCH = SINGLE_USE+4; + public static final int BEACON = SINGLE_USE+5; + public static final int BOMB = SINGLE_USE+6; + public static final int HONEYPOT = SINGLE_USE+7; + public static final int SHATTPOT = SINGLE_USE+8; + public static final int IRON_KEY = SINGLE_USE+9; + public static final int GOLDEN_KEY = SINGLE_USE+10; + public static final int SKELETON_KEY = SINGLE_USE+11; + public static final int MASTERY = SINGLE_USE+12; + public static final int KIT = SINGLE_USE+13; + public static final int AMULET = SINGLE_USE+14; - //Row Five: Armors - public static final int ARMOR_CLOTH = ROW5+0; - public static final int ARMOR_LEATHER = ROW5+1; - public static final int ARMOR_MAIL = ROW5+2; - public static final int ARMOR_SCALE = ROW5+3; - public static final int ARMOR_PLATE = ROW5+4; - public static final int ARMOR_WARRIOR = ROW5+5; - public static final int ARMOR_MAGE = ROW5+6; - public static final int ARMOR_ROGUE = ROW5+7; - public static final int ARMOR_HUNTRESS = ROW5+8; + //32 free slots - //Row Six: Wands - public static final int WAND_MAGIC_MISSILE = ROW6+0; - public static final int WAND_FIREBOLT = ROW6+1; - public static final int WAND_FROST = ROW6+2; - public static final int WAND_LIGHTNING = ROW6+3; - public static final int WAND_DISINTEGRATION = ROW6+4; - public static final int WAND_PRISMATIC_LIGHT= ROW6+5; - public static final int WAND_VENOM = ROW6+6; - public static final int WAND_LIVING_EARTH = ROW6+7; - public static final int WAND_BLAST_WAVE = ROW6+8; - public static final int WAND_CORRUPTION = ROW6+9; - public static final int WAND_WARDING = ROW6+10; - public static final int WAND_REGROWTH = ROW6+11; - public static final int WAND_TRANSFUSION = ROW6+12; + private static final int WEP_TIER1 = xy(1, 7); //8 slots + public static final int WORN_SHORTSWORD = WEP_TIER1+0; + public static final int CUDGEL = WEP_TIER1+1; + public static final int KNUCKLEDUSTER = WEP_TIER1+2; + public static final int RAPIER = WEP_TIER1+3; + public static final int DAGGER = WEP_TIER1+4; + public static final int MAGES_STAFF = WEP_TIER1+5; - //Row Seven: Rings - public static final int RING_GARNET = ROW7+0; - public static final int RING_RUBY = ROW7+1; - public static final int RING_TOPAZ = ROW7+2; - public static final int RING_EMERALD = ROW7+3; - public static final int RING_ONYX = ROW7+4; - public static final int RING_OPAL = ROW7+5; - public static final int RING_TOURMALINE = ROW7+6; - public static final int RING_SAPPHIRE = ROW7+7; - public static final int RING_AMETHYST = ROW7+8; - public static final int RING_QUARTZ = ROW7+9; - public static final int RING_AGATE = ROW7+10; - public static final int RING_DIAMOND = ROW7+11; + private static final int WEP_TIER2 = xy(9, 7); //8 slots + public static final int SHORTSWORD = WEP_TIER2+0; + public static final int HAND_AXE = WEP_TIER2+0; + public static final int SPEAR = WEP_TIER2+2; + public static final int QUARTERSTAFF = WEP_TIER2+3; - //Row Eight: Artifacts with Static Images - public static final int ARTIFACT_CLOAK = ROW8+0; - public static final int ARTIFACT_ARMBAND = ROW8+1; - public static final int ARTIFACT_CAPE = ROW8+2; - public static final int ARTIFACT_TALISMAN = ROW8+3; - public static final int ARTIFACT_HOURGLASS = ROW8+4; - public static final int ARTIFACT_TOOLKIT = ROW8+5; - public static final int ARTIFACT_SPELLBOOK = ROW8+6; - public static final int ARTIFACT_BEACON = ROW8+7; - public static final int ARTIFACT_CHAINS = ROW8+8; + private static final int WEP_TIER3 = xy(1, 8); //8 slots + public static final int SWORD = WEP_TIER3+0; + public static final int MACE = WEP_TIER3+1; - //Row Nine: Artifacts with Dynamic Images - public static final int ARTIFACT_HORN1 = ROW9+0; - public static final int ARTIFACT_HORN2 = ROW9+1; - public static final int ARTIFACT_HORN3 = ROW9+2; - public static final int ARTIFACT_HORN4 = ROW9+3; - public static final int ARTIFACT_CHALICE1 = ROW9+4; - public static final int ARTIFACT_CHALICE2 = ROW9+5; - public static final int ARTIFACT_CHALICE3 = ROW9+6; - public static final int ARTIFACT_SANDALS = ROW9+7; - public static final int ARTIFACT_SHOES = ROW9+8; - public static final int ARTIFACT_BOOTS = ROW9+9; - public static final int ARTIFACT_GREAVES = ROW9+10; - public static final int ARTIFACT_ROSE1 = ROW9+11; - public static final int ARTIFACT_ROSE2 = ROW9+12; - public static final int ARTIFACT_ROSE3 = ROW9+13; + private static final int WEP_TIER4 = xy(9, 8); //8 slots + public static final int LONGSWORD = WEP_TIER4+0; + public static final int BATTLE_AXE = WEP_TIER4+1; - //Row Ten: Scrolls - public static final int SCROLL_KAUNAN = ROW10+0; - public static final int SCROLL_SOWILO = ROW10+1; - public static final int SCROLL_LAGUZ = ROW10+2; - public static final int SCROLL_YNGVI = ROW10+3; - public static final int SCROLL_GYFU = ROW10+4; - public static final int SCROLL_RAIDO = ROW10+5; - public static final int SCROLL_ISAZ = ROW10+6; - public static final int SCROLL_MANNAZ = ROW10+7; - public static final int SCROLL_NAUDIZ = ROW10+8; - public static final int SCROLL_BERKANAN = ROW10+9; - public static final int SCROLL_ODAL = ROW10+10; - public static final int SCROLL_TIWAZ = ROW10+11; + private static final int WEP_TIER5 = xy(1, 9); //8 slots + public static final int GREATSWORD = WEP_TIER5+0; + public static final int WAR_HAMMER = WEP_TIER5+1; + public static final int GLAIVE = WEP_TIER5+2; - //Row Eleven: Potions - public static final int POTION_CRIMSON = ROW11+0; - public static final int POTION_AMBER = ROW11+1; - public static final int POTION_GOLDEN = ROW11+2; - public static final int POTION_JADE = ROW11+3; - public static final int POTION_TURQUOISE = ROW11+4; - public static final int POTION_AZURE = ROW11+5; - public static final int POTION_INDIGO = ROW11+6; - public static final int POTION_MAGENTA = ROW11+7; - public static final int POTION_BISTRE = ROW11+8; - public static final int POTION_CHARCOAL = ROW11+9; - public static final int POTION_SILVER = ROW11+10; - public static final int POTION_IVORY = ROW11+11; + //8 free slots - //Row Twelve: Seeds - public static final int SEED_ROTBERRY = ROW12+0; - public static final int SEED_FIREBLOOM = ROW12+1; - public static final int SEED_STARFLOWER = ROW12+2; - public static final int SEED_BLINDWEED = ROW12+3; - public static final int SEED_SUNGRASS = ROW12+4; - public static final int SEED_ICECAP = ROW12+5; - public static final int SEED_STORMVINE = ROW12+6; - public static final int SEED_SORROWMOSS = ROW12+7; - public static final int SEED_DREAMFOIL = ROW12+8; - public static final int SEED_EARTHROOT = ROW12+9; - public static final int SEED_FADELEAF = ROW12+10; - public static final int SEED_BLANDFRUIT = ROW12+11; + private static final int MISSILE_WEP = xy(1, 10); //16 slots + public static final int DART = MISSILE_WEP+0; + public static final int BOOMERANG = MISSILE_WEP+1; + public static final int INCENDIARY_DART = MISSILE_WEP+2; + public static final int SHURIKEN = MISSILE_WEP+3; + public static final int CURARE_DART = MISSILE_WEP+4; + public static final int JAVELIN = MISSILE_WEP+5; + public static final int TOMAHAWK = MISSILE_WEP+6; - //Row Thirteen: Food - public static final int MEAT = ROW13+0; - public static final int STEAK = ROW13+1; - public static final int OVERPRICED = ROW13+2; - public static final int CARPACCIO = ROW13+3; - public static final int BLANDFRUIT = ROW13+4; - public static final int RATION = ROW13+5; - public static final int PASTY = ROW13+6; - public static final int CANDY_CANE = ROW13+7; + private static final int ARMOR = xy(1, 11); //16 slots + public static final int ARMOR_CLOTH = ARMOR+0; + public static final int ARMOR_LEATHER = ARMOR+1; + public static final int ARMOR_MAIL = ARMOR+2; + public static final int ARMOR_SCALE = ARMOR+3; + public static final int ARMOR_PLATE = ARMOR+4; + public static final int ARMOR_WARRIOR = ARMOR+5; + public static final int ARMOR_MAGE = ARMOR+6; + public static final int ARMOR_ROGUE = ARMOR+7; + public static final int ARMOR_HUNTRESS = ARMOR+8; - //Row Fourteen: Quest Items - public static final int SKULL = ROW14+0; - public static final int DUST = ROW14+1; - public static final int CANDLE = ROW14+2; - public static final int EMBER = ROW14+3; - public static final int PICKAXE = ROW14+4; - public static final int ORE = ROW14+5; - public static final int TOKEN = ROW14+6; + //32 free slots - //Row Fifteen: Containers/Bags - public static final int VIAL = ROW15+0; - public static final int POUCH = ROW15+1; - public static final int HOLDER = ROW15+2; - public static final int BANDOLIER = ROW15+3; - public static final int HOLSTER = ROW15+4; + private static final int WANDS = xy(1, 14); //16 slots + public static final int WAND_MAGIC_MISSILE = WANDS+0; + public static final int WAND_FIREBOLT = WANDS+1; + public static final int WAND_FROST = WANDS+2; + public static final int WAND_LIGHTNING = WANDS+3; + public static final int WAND_DISINTEGRATION = WANDS+4; + public static final int WAND_PRISMATIC_LIGHT= WANDS+5; + public static final int WAND_VENOM = WANDS+6; + public static final int WAND_LIVING_EARTH = WANDS+7; + public static final int WAND_BLAST_WAVE = WANDS+8; + public static final int WAND_CORRUPTION = WANDS+9; + public static final int WAND_WARDING = WANDS+10; + public static final int WAND_REGROWTH = WANDS+11; + public static final int WAND_TRANSFUSION = WANDS+12; - //Row Sixteen: Unused + private static final int RINGS = xy(1, 15); //16 slots + public static final int RING_GARNET = RINGS+0; + public static final int RING_RUBY = RINGS+1; + public static final int RING_TOPAZ = RINGS+2; + public static final int RING_EMERALD = RINGS+3; + public static final int RING_ONYX = RINGS+4; + public static final int RING_OPAL = RINGS+5; + public static final int RING_TOURMALINE = RINGS+6; + public static final int RING_SAPPHIRE = RINGS+7; + public static final int RING_AMETHYST = RINGS+8; + public static final int RING_QUARTZ = RINGS+9; + public static final int RING_AGATE = RINGS+10; + public static final int RING_DIAMOND = RINGS+11; + + private static final int ARTIFACTS = xy(1, 16); //32 slots + public static final int ARTIFACT_CLOAK = ARTIFACTS+0; + public static final int ARTIFACT_ARMBAND = ARTIFACTS+1; + public static final int ARTIFACT_CAPE = ARTIFACTS+2; + public static final int ARTIFACT_TALISMAN = ARTIFACTS+3; + public static final int ARTIFACT_HOURGLASS = ARTIFACTS+4; + public static final int ARTIFACT_TOOLKIT = ARTIFACTS+5; + public static final int ARTIFACT_SPELLBOOK = ARTIFACTS+6; + public static final int ARTIFACT_BEACON = ARTIFACTS+7; + public static final int ARTIFACT_CHAINS = ARTIFACTS+8; + public static final int ARTIFACT_HORN1 = ARTIFACTS+9; + public static final int ARTIFACT_HORN2 = ARTIFACTS+10; + public static final int ARTIFACT_HORN3 = ARTIFACTS+11; + public static final int ARTIFACT_HORN4 = ARTIFACTS+12; + public static final int ARTIFACT_CHALICE1 = ARTIFACTS+13; + public static final int ARTIFACT_CHALICE2 = ARTIFACTS+14; + public static final int ARTIFACT_CHALICE3 = ARTIFACTS+15; + public static final int ARTIFACT_SANDALS = ARTIFACTS+16; + public static final int ARTIFACT_SHOES = ARTIFACTS+17; + public static final int ARTIFACT_BOOTS = ARTIFACTS+18; + public static final int ARTIFACT_GREAVES = ARTIFACTS+19; + public static final int ARTIFACT_ROSE1 = ARTIFACTS+20; + public static final int ARTIFACT_ROSE2 = ARTIFACTS+21; + public static final int ARTIFACT_ROSE3 = ARTIFACTS+22; + + //32 free slots + + private static final int SCROLLS = xy(1, 20); //16 slots + public static final int SCROLL_KAUNAN = SCROLLS+0; + public static final int SCROLL_SOWILO = SCROLLS+1; + public static final int SCROLL_LAGUZ = SCROLLS+2; + public static final int SCROLL_YNGVI = SCROLLS+3; + public static final int SCROLL_GYFU = SCROLLS+4; + public static final int SCROLL_RAIDO = SCROLLS+5; + public static final int SCROLL_ISAZ = SCROLLS+6; + public static final int SCROLL_MANNAZ = SCROLLS+7; + public static final int SCROLL_NAUDIZ = SCROLLS+8; + public static final int SCROLL_BERKANAN = SCROLLS+9; + public static final int SCROLL_ODAL = SCROLLS+10; + public static final int SCROLL_TIWAZ = SCROLLS+11; + + private static final int POTIONS = xy(1, 21); //16 slots + public static final int POTION_CRIMSON = POTIONS+0; + public static final int POTION_AMBER = POTIONS+1; + public static final int POTION_GOLDEN = POTIONS+2; + public static final int POTION_JADE = POTIONS+3; + public static final int POTION_TURQUOISE= POTIONS+4; + public static final int POTION_AZURE = POTIONS+5; + public static final int POTION_INDIGO = POTIONS+6; + public static final int POTION_MAGENTA = POTIONS+7; + public static final int POTION_BISTRE = POTIONS+8; + public static final int POTION_CHARCOAL = POTIONS+9; + public static final int POTION_SILVER = POTIONS+10; + public static final int POTION_IVORY = POTIONS+11; + + private static final int SEEDS = xy(1, 22); //16 slots + public static final int SEED_ROTBERRY = SEEDS+0; + public static final int SEED_FIREBLOOM = SEEDS+1; + public static final int SEED_STARFLOWER = SEEDS+2; + public static final int SEED_BLINDWEED = SEEDS+3; + public static final int SEED_SUNGRASS = SEEDS+4; + public static final int SEED_ICECAP = SEEDS+5; + public static final int SEED_STORMVINE = SEEDS+6; + public static final int SEED_SORROWMOSS = SEEDS+7; + public static final int SEED_DREAMFOIL = SEEDS+8; + public static final int SEED_EARTHROOT = SEEDS+9; + public static final int SEED_FADELEAF = SEEDS+10; + public static final int SEED_BLANDFRUIT = SEEDS+11; + + //32 free slots + + private static final int FOOD = xy(1, 25); //16 slots + public static final int MEAT = FOOD+0; + public static final int STEAK = FOOD+1; + public static final int OVERPRICED = FOOD+2; + public static final int CARPACCIO = FOOD+3; + public static final int BLANDFRUIT = FOOD+4; + public static final int RATION = FOOD+5; + public static final int PASTY = FOOD+6; + public static final int CANDY_CANE = FOOD+7; + + private static final int QUEST = xy(1, 26); //32 slots + public static final int SKULL = QUEST+0; + public static final int DUST = QUEST+1; + public static final int CANDLE = QUEST+2; + public static final int EMBER = QUEST+3; + public static final int PICKAXE = QUEST+4; + public static final int ORE = QUEST+5; + public static final int TOKEN = QUEST+6; + + private static final int BAGS = xy(1, 28); //16 slots + public static final int VIAL = BAGS+0; + public static final int POUCH = BAGS+1; + public static final int HOLDER = BAGS+2; + public static final int BANDOLIER = BAGS+3; + public static final int HOLSTER = BAGS+4; + + //64 free slots } diff --git a/src/com/shatteredpixel/shatteredpixeldungeon/windows/WndBag.java b/src/com/shatteredpixel/shatteredpixeldungeon/windows/WndBag.java index f01236984..be753d8c3 100644 --- a/src/com/shatteredpixel/shatteredpixeldungeon/windows/WndBag.java +++ b/src/com/shatteredpixel/shatteredpixeldungeon/windows/WndBag.java @@ -167,10 +167,10 @@ public class WndBag extends WndTabbed { // Equipped items Belongings stuff = Dungeon.hero.belongings; - placeItem( stuff.weapon != null ? stuff.weapon : new Placeholder( ItemSpriteSheet.WEAPON ) ); - placeItem( stuff.armor != null ? stuff.armor : new Placeholder( ItemSpriteSheet.ARMOR ) ); - placeItem( stuff.misc1 != null ? stuff.misc1 : new Placeholder( ItemSpriteSheet.RING ) ); - placeItem( stuff.misc2 != null ? stuff.misc2 : new Placeholder( ItemSpriteSheet.RING ) ); + placeItem( stuff.weapon != null ? stuff.weapon : new Placeholder( ItemSpriteSheet.WEAPON_HOLDER ) ); + placeItem( stuff.armor != null ? stuff.armor : new Placeholder( ItemSpriteSheet.ARMOR_HOLDER ) ); + placeItem( stuff.misc1 != null ? stuff.misc1 : new Placeholder( ItemSpriteSheet.RING_HOLDER ) ); + placeItem( stuff.misc2 != null ? stuff.misc2 : new Placeholder( ItemSpriteSheet.RING_HOLDER ) ); boolean backpack = (container == Dungeon.hero.belongings.backpack); if (!backpack) {