V0.2.1: Updated quest dialog & descriptions, more pending

This commit is contained in:
Evan Debenham 2014-10-07 17:15:00 -04:00
parent c39762c9ed
commit 6ba6a54a91
2 changed files with 55 additions and 36 deletions

View File

@ -74,34 +74,35 @@ public class Ghost extends Mob.NPC {
state = State.WANDERING;
}
private static final String TXT_ROSE1 =
"Hello adventurer... Once I was like you - strong and confident... " +
"And now I'm dead... But I can't leave this place... Not until I have my _dried rose_... " +
"It's very important to me... Some monster stole it from my body...";
private static final String TXT_ROSE2 =
"Please... Help me... Find the rose...";
private static final String TXT_RAT1 =
"Hello adventurer... Once I was like you - strong and confident... " +
"And now I'm dead... But I can't leave this place... Not until I have my revenge... " +
"Slay the _fetid rat_, that has taken my life...";
"But I was slain by a foul beast... I can't leave this place... Not until I have my revenge... " +
"Slay the _fetid rat_, that has taken my life...\n\n" +
"It stalks this floor... Spreading filth everywhere... " +
"Beware its cloud of stink and acidic bite... ";
private static final String TXT_RAT2 =
"Please... Help me... Slay the abomination...";
//this is totally the text that's going into production.. yeah.
private static final String TXT_GNOLL1 =
"kill a gnoll for me.";
"Hello adventurer... Once I was like you - strong and confident... " +
"But I was slain by a devious foe... I can't leave this place... Not until I have my revenge... " +
"Slay the _gnoll trickster_, that has taken my life...\n\n" +
"It is not like the other gnolls... It hides and uses thrown weapons... " +
"Beware its poisonous and incendiary darts... ";
private static final String TXT_GNOLL2 =
"I want that gnoll dead!";
"Please... Help me... Slay the trickster...";
private static final String TXT_CRAB1 =
"kill a crab for me";
"Hello adventurer... Once I was like you - strong and confident... " +
"But I was slain by an ancient creature... I can't leave this place... Not until I have my revenge... " +
"Slay the _great crab_, that has taken my life...\n\n" +
"It is unnaturally old... With a massive single claw and a thick shell. " +
"Beware its claw, the crab blocks and strikes with it...";
private static final String TXT_CRAB2 =
"I want that crab dead!";
"Please... Help me... Slay the abomination...";
public Ghost() {
super();
@ -151,9 +152,7 @@ public class Ghost extends Mob.NPC {
if (Quest.given) {
if (Quest.processed){
Item item = Dungeon.hero.belongings.getItem( DriedRose.class );
if (item != null)
GameScene.show( new WndSadGhost( this, item ) );
GameScene.show( new WndSadGhost( this, Quest.type ) );
} else {
switch (Quest.type){
case 1: default:
@ -418,7 +417,11 @@ public class Ghost extends Mob.NPC {
@Override
public String description() {
return
"This marsupial rat is much larger, than a regular one. It is surrounded by a foul cloud.";
"Something is clearly wrong with this rat. Its matted fur and rotting skin are very " +
"different from the healthy rats you've seen previously. It's bright orange eyes " +
"and larger size make it especially menacing.\n\n" +
"The rat carries a cloud of horrible stench with it, it's overpoweringly strong up close.\n\n" +
"Dark ooze drips from the rat's teeth, it eats through the floor but seems to dissolve in water.";
}
private static final HashSet<Class<?>> IMMUNITIES = new HashSet<Class<?>>();
@ -491,6 +494,11 @@ public class Ghost extends Mob.NPC {
Quest.process();
}
@Override
public String description() {
return
"A Gnoll";
}
}
@ -532,5 +540,11 @@ public class Ghost extends Mob.NPC {
Dungeon.level.drop( new MysteryMeat(), pos );
Dungeon.level.drop( new MysteryMeat(), pos ).sprite.drop();
}
@Override
public String description() {
return
"A Crab";
}
}
}

View File

@ -32,14 +32,21 @@ import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
public class WndSadGhost extends Window {
private static final String TXT_ROSE =
"Yes! Yes!!! This is it! Please give it to me! " +
"And you can take one of these items, maybe they " +
"will be useful to you in your journey...";
private static final String TXT_RAT =
"Yes! The ugly creature is slain and I can finally rest... " +
"Please take one of these items, maybe they " +
"will be useful to you in your journey...";
"Thank you, that horrid rad is slain and I can finally rest..." +
"I wonder what twisted magic created such a foul creature...\n\n";
private static final String TXT_GNOLL =
"Thank you, that scheming gnoll is slain and I can finally rest..." +
"I wonder what twisted magic made it so smart...\n\n";
private static final String TXT_Crab =
"Thank you, that giant crab is slain and I can finally rest..." +
"I wonder what twisted magic allowed it to live so long...\n\n";
private static final String TXT_GiveItem=
"Please take one of these items, they are useless to me now... " +
"Maybe they will help you in your journey...";
private static final String TXT_TotallyNotATeaser=
"Also... There is an item lost in this dungeon that is very dear to me..." +
"If you ever... find my... rose......";
private static final String TXT_WEAPON = "Ghost's weapon";
private static final String TXT_ARMOR = "Ghost's armor";
@ -47,17 +54,17 @@ public class WndSadGhost extends Window {
private static final int BTN_HEIGHT = 18;
private static final float GAP = 2;
public WndSadGhost( final Ghost ghost, final Item item ) {
public WndSadGhost( final Ghost ghost, final int type ) {
super();
IconTitle titlebar = new IconTitle();
titlebar.icon( new ItemSprite( item.image(), null ) );
titlebar.label( Utils.capitalize( item.name() ) );
//titlebar.icon( new ItemSprite( item.image(), null ) );
//titlebar.label( Utils.capitalize( item.name() ) );
titlebar.setRect( 0, 0, WIDTH, 0 );
add( titlebar );
BitmapTextMultiline message = PixelScene.createMultiline( item instanceof DriedRose ? TXT_ROSE : TXT_RAT, 6 );
//BitmapTextMultiline message = PixelScene.createMultiline( item instanceof DriedRose ? TXT_ROSE : TXT_RAT, 6 );
message.maxWidth = WIDTH;
message.measure();
message.y = titlebar.bottom() + GAP;
@ -66,7 +73,7 @@ public class WndSadGhost extends Window {
RedButton btnWeapon = new RedButton( TXT_WEAPON ) {
@Override
protected void onClick() {
selectReward( ghost, item, Ghost.Quest.weapon );
selectReward( ghost, Ghost.Quest.weapon );
}
};
btnWeapon.setRect( 0, message.y + message.height() + GAP, WIDTH, BTN_HEIGHT );
@ -75,7 +82,7 @@ public class WndSadGhost extends Window {
RedButton btnArmor = new RedButton( TXT_ARMOR ) {
@Override
protected void onClick() {
selectReward( ghost, item, Ghost.Quest.armor );
selectReward( ghost, Ghost.Quest.armor );
}
};
btnArmor.setRect( 0, btnWeapon.bottom() + GAP, WIDTH, BTN_HEIGHT );
@ -84,12 +91,10 @@ public class WndSadGhost extends Window {
resize( WIDTH, (int)btnArmor.bottom() );
}
private void selectReward( Ghost ghost, Item item, Item reward ) {
private void selectReward( Ghost ghost, Item reward ) {
hide();
item.detach( Dungeon.hero.belongings.backpack );
if (reward.doPickUp( Dungeon.hero )) {
GLog.i( Hero.TXT_YOU_NOW_HAVE, reward.name() );
} else {