v0.7.1: huntress knuckledusters are now studded gloves (sprite is WIP)
This commit is contained in:
parent
4fb394214d
commit
2349e44099
Binary file not shown.
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 45 KiB |
|
@ -148,6 +148,10 @@ public class ShatteredPixelDungeon extends Game {
|
||||||
com.shatteredpixel.shatteredpixeldungeon.items.weapon.SpiritBow.class,
|
com.shatteredpixel.shatteredpixeldungeon.items.weapon.SpiritBow.class,
|
||||||
"com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.Boomerang" );
|
"com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.Boomerang" );
|
||||||
|
|
||||||
|
com.watabou.utils.Bundle.addAlias(
|
||||||
|
com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gloves.class,
|
||||||
|
"com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Knuckles" );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -47,7 +47,7 @@ import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfUpgrade;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfMagicMissile;
|
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfMagicMissile;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.SpiritBow;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.SpiritBow;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Dagger;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Dagger;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Knuckles;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gloves;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.WornShortsword;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.WornShortsword;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.ThrowingKnife;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.ThrowingKnife;
|
||||||
|
@ -181,7 +181,7 @@ public enum HeroClass {
|
||||||
|
|
||||||
private static void initHuntress( Hero hero ) {
|
private static void initHuntress( Hero hero ) {
|
||||||
|
|
||||||
(hero.belongings.weapon = new Knuckles()).identify();
|
(hero.belongings.weapon = new Gloves()).identify();
|
||||||
SpiritBow bow = new SpiritBow();
|
SpiritBow bow = new SpiritBow();
|
||||||
bow.identify().collect();
|
bow.identify().collect();
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.Imp;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.KindOfWeapon;
|
import com.shatteredpixel.shatteredpixeldungeon.items.KindOfWeapon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.food.Food;
|
import com.shatteredpixel.shatteredpixeldungeon.items.food.Food;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gauntlet;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gauntlet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Knuckles;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gloves;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.MonkSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.MonkSprite;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
|
@ -93,7 +93,7 @@ public class Monk extends Mob {
|
||||||
KindOfWeapon weapon = hero.belongings.weapon;
|
KindOfWeapon weapon = hero.belongings.weapon;
|
||||||
|
|
||||||
if (weapon != null
|
if (weapon != null
|
||||||
&& !(weapon instanceof Knuckles)
|
&& !(weapon instanceof Gloves)
|
||||||
&& !(weapon instanceof Gauntlet)
|
&& !(weapon instanceof Gauntlet)
|
||||||
&& !weapon.cursed) {
|
&& !weapon.cursed) {
|
||||||
if (hitsToDisarm == 0) hitsToDisarm = Random.NormalIntRange(4, 8);
|
if (hitsToDisarm == 0) hitsToDisarm = Random.NormalIntRange(4, 8);
|
||||||
|
|
|
@ -118,11 +118,11 @@ import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Dirk;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Flail;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Flail;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gauntlet;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gauntlet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Glaive;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Glaive;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gloves;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greataxe;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greataxe;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greatshield;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greatshield;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greatsword;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greatsword;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.HandAxe;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.HandAxe;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Knuckles;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Longsword;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Longsword;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Mace;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Mace;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
||||||
|
@ -316,7 +316,7 @@ public class Generator {
|
||||||
|
|
||||||
WEP_T1.classes = new Class<?>[]{
|
WEP_T1.classes = new Class<?>[]{
|
||||||
WornShortsword.class,
|
WornShortsword.class,
|
||||||
Knuckles.class,
|
Gloves.class,
|
||||||
Dagger.class,
|
Dagger.class,
|
||||||
MagesStaff.class
|
MagesStaff.class
|
||||||
};
|
};
|
||||||
|
|
|
@ -23,10 +23,10 @@ package com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee;
|
||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
|
|
||||||
public class Knuckles extends MeleeWeapon {
|
public class Gloves extends MeleeWeapon {
|
||||||
|
|
||||||
{
|
{
|
||||||
image = ItemSpriteSheet.KNUCKLEDUSTER;
|
image = ItemSpriteSheet.GLOVES;
|
||||||
|
|
||||||
tier = 1;
|
tier = 1;
|
||||||
DLY = 0.5f; //2x speed
|
DLY = 0.5f; //2x speed
|
|
@ -97,11 +97,11 @@ import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Dirk;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Flail;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Flail;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gauntlet;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gauntlet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Glaive;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Glaive;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Gloves;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greataxe;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greataxe;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greatshield;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greatshield;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greatsword;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Greatsword;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.HandAxe;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.HandAxe;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Knuckles;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Longsword;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Longsword;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Mace;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Mace;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
||||||
|
@ -151,7 +151,7 @@ public enum Catalog {
|
||||||
|
|
||||||
static {
|
static {
|
||||||
WEAPONS.seen.put( WornShortsword.class, false);
|
WEAPONS.seen.put( WornShortsword.class, false);
|
||||||
WEAPONS.seen.put( Knuckles.class, false);
|
WEAPONS.seen.put( Gloves.class, false);
|
||||||
WEAPONS.seen.put( Dagger.class, false);
|
WEAPONS.seen.put( Dagger.class, false);
|
||||||
WEAPONS.seen.put( MagesStaff.class, false);
|
WEAPONS.seen.put( MagesStaff.class, false);
|
||||||
//WEAPONS.seen.put( Boomerang.class, false);
|
//WEAPONS.seen.put( Boomerang.class, false);
|
||||||
|
|
|
@ -29,7 +29,6 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.KindOfWeapon;
|
import com.shatteredpixel.shatteredpixeldungeon.items.KindOfWeapon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Knuckles;
|
|
||||||
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.utils.GLog;
|
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||||
|
@ -66,7 +65,7 @@ public class DisarmingTrap extends Trap{
|
||||||
Hero hero = Dungeon.hero;
|
Hero hero = Dungeon.hero;
|
||||||
KindOfWeapon weapon = hero.belongings.weapon;
|
KindOfWeapon weapon = hero.belongings.weapon;
|
||||||
|
|
||||||
if (weapon != null && !(weapon instanceof Knuckles) && !weapon.cursed) {
|
if (weapon != null && !weapon.cursed) {
|
||||||
|
|
||||||
int cell = Dungeon.level.randomRespawnCell();
|
int cell = Dungeon.level.randomRespawnCell();
|
||||||
if (cell != -1) {
|
if (cell != -1) {
|
||||||
|
|
|
@ -183,13 +183,13 @@ public class ItemSpriteSheet {
|
||||||
private static final int WEP_TIER1 = xy(1, 7); //8 slots
|
private static final int WEP_TIER1 = xy(1, 7); //8 slots
|
||||||
public static final int WORN_SHORTSWORD = WEP_TIER1+0;
|
public static final int WORN_SHORTSWORD = WEP_TIER1+0;
|
||||||
public static final int CUDGEL = WEP_TIER1+1;
|
public static final int CUDGEL = WEP_TIER1+1;
|
||||||
public static final int KNUCKLEDUSTER = WEP_TIER1+2;
|
public static final int GLOVES = WEP_TIER1+2;
|
||||||
public static final int RAPIER = WEP_TIER1+3;
|
public static final int RAPIER = WEP_TIER1+3;
|
||||||
public static final int DAGGER = WEP_TIER1+4;
|
public static final int DAGGER = WEP_TIER1+4;
|
||||||
public static final int MAGES_STAFF = WEP_TIER1+5;
|
public static final int MAGES_STAFF = WEP_TIER1+5;
|
||||||
static{
|
static{
|
||||||
assignItemRect(WORN_SHORTSWORD, 13, 13);
|
assignItemRect(WORN_SHORTSWORD, 13, 13);
|
||||||
assignItemRect(KNUCKLEDUSTER, 15, 10);
|
assignItemRect(GLOVES, 12, 16);
|
||||||
assignItemRect(DAGGER, 12, 13);
|
assignItemRect(DAGGER, 12, 13);
|
||||||
assignItemRect(MAGES_STAFF, 15, 16);
|
assignItemRect(MAGES_STAFF, 15, 16);
|
||||||
}
|
}
|
||||||
|
|
|
@ -334,7 +334,7 @@ public class WndStartGame extends Window {
|
||||||
break;
|
break;
|
||||||
case HUNTRESS:
|
case HUNTRESS:
|
||||||
heroItem.icon(new ItemSprite(ItemSpriteSheet.SPIRIT_BOW, null));
|
heroItem.icon(new ItemSprite(ItemSpriteSheet.SPIRIT_BOW, null));
|
||||||
heroLoadout.icon(new ItemSprite(ItemSpriteSheet.KNUCKLEDUSTER, null));
|
heroLoadout.icon(new ItemSprite(ItemSpriteSheet.GLOVES, null));
|
||||||
heroMisc.icon(new Image(Assets.TILES_SEWERS, 112, 96, 16, 16 ));
|
heroMisc.icon(new Image(Assets.TILES_SEWERS, 112, 96, 16, 16 ));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -316,7 +316,7 @@ actors.hero.heroclass.rogue_desc_subclasses=A subclass can be chosen after defea
|
||||||
actors.hero.heroclass.huntress=huntress
|
actors.hero.heroclass.huntress=huntress
|
||||||
actors.hero.heroclass.huntress_unlock=The Huntress is a master of thrown weapons, and has a _unique magical bow_ with infinite arrows.\n\nTo unlock her _defeat 20 enemies with the help of thrown weapons in one run._
|
actors.hero.heroclass.huntress_unlock=The Huntress is a master of thrown weapons, and has a _unique magical bow_ with infinite arrows.\n\nTo unlock her _defeat 20 enemies with the help of thrown weapons in one run._
|
||||||
actors.hero.heroclass.huntress_desc_item=The Huntress starts with a _unique spirit bow,_ which can fire an infinite number of conjured arrows.\n\nThe bow steadily grows stronger as the huntress levels up, and can be augmented and enchanted.
|
actors.hero.heroclass.huntress_desc_item=The Huntress starts with a _unique spirit bow,_ which can fire an infinite number of conjured arrows.\n\nThe bow steadily grows stronger as the huntress levels up, and can be augmented and enchanted.
|
||||||
actors.hero.heroclass.huntress_desc_loadout=The Huntress starts with _knuckledusters,_ which attack much faster than other starter weapons.\n\nThe Huntress starts with her bow as a ranged option.\n\nThe Huntress starts with a _velvet pouch,_ which can store small items like seeds and runestones.
|
actors.hero.heroclass.huntress_desc_loadout=The Huntress starts with a pair of _studded gloves,_ which attack much faster than other starter weapons.\n\nThe Huntress starts with her bow as a ranged option.\n\nThe Huntress starts with a _velvet pouch,_ which can store small items like seeds and runestones.
|
||||||
actors.hero.heroclass.huntress_desc_misc=The Huntress can travel through tall grass without trampling it.\n\nThe Huntress can use thrown weapons for longer before they break.\n\nThe Huntress senses nearby enemies even if they are hidden behind obstacles.\n\nThe Huntress automatically identifies:\n- Scrolls of Identify\n- Potions of Mind Vision\n- Scrolls of Lullaby
|
actors.hero.heroclass.huntress_desc_misc=The Huntress can travel through tall grass without trampling it.\n\nThe Huntress can use thrown weapons for longer before they break.\n\nThe Huntress senses nearby enemies even if they are hidden behind obstacles.\n\nThe Huntress automatically identifies:\n- Scrolls of Identify\n- Potions of Mind Vision\n- Scrolls of Lullaby
|
||||||
actors.hero.heroclass.huntress_desc_subclasses=A subclass can be chosen after defeating the second boss. The Huntress has two subclasses:
|
actors.hero.heroclass.huntress_desc_subclasses=A subclass can be chosen after defeating the second boss. The Huntress has two subclasses:
|
||||||
|
|
||||||
|
|
|
@ -1233,6 +1233,10 @@ items.weapon.melee.glaive.name=glaive
|
||||||
items.weapon.melee.glaive.stats_desc=This is a rather slow weapon.\nThis weapon has extra reach.
|
items.weapon.melee.glaive.stats_desc=This is a rather slow weapon.\nThis weapon has extra reach.
|
||||||
items.weapon.melee.glaive.desc=A massive polearm consisting of a sword blade on the end of a pole.
|
items.weapon.melee.glaive.desc=A massive polearm consisting of a sword blade on the end of a pole.
|
||||||
|
|
||||||
|
items.weapon.melee.gloves.name=studded gloves
|
||||||
|
items.weapon.melee.gloves.stats_desc=This is a very fast weapon.
|
||||||
|
items.weapon.melee.gloves.desc=These studded gloves don't provide any real protection, but they act as a serviceable weapon while keeping the hands free.
|
||||||
|
|
||||||
items.weapon.melee.greataxe.name=greataxe
|
items.weapon.melee.greataxe.name=greataxe
|
||||||
items.weapon.melee.greataxe.stats_desc=This weapon is incredibly heavy.
|
items.weapon.melee.greataxe.stats_desc=This weapon is incredibly heavy.
|
||||||
items.weapon.melee.greataxe.desc=Meant to be wielded over the shoulder, this titanic axe is as powerful as it is heavy.
|
items.weapon.melee.greataxe.desc=Meant to be wielded over the shoulder, this titanic axe is as powerful as it is heavy.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user