v2.5.0: made a few adjustments to improve imp visibility and quest text

This commit is contained in:
Evan Debenham
2024-08-08 12:51:53 -04:00
parent afe3f71cb5
commit 00b4300f0f
3 changed files with 15 additions and 7 deletions

View File

@@ -1020,10 +1020,11 @@ actors.mobs.npcs.ghost.find_me=Thank you... come find me...
actors.mobs.npcs.ghost.desc=The ghost is barely visible. It looks like a shapeless spot of faint light with a sorrowful face.
actors.mobs.npcs.imp.name=ambitious imp
actors.mobs.npcs.imp.golems_1=Are you an adventurer? I love adventurers! You can always rely on them if something needs to be killed. Am I right? For a bounty of course ;)\nIn my case this is _golems_ who need to be killed. You see, I'm going to start a little business here, but these stupid golems are bad for business! It's very hard to negotiate with wandering lumps of granite, damn them! So please, kill... let's say _4 of them_ and a reward is yours.
actors.mobs.npcs.imp.monks_1=Are you an adventurer? I love adventurers! You can always rely on them if something needs to be killed. Am I right? For a bounty of course ;)\nIn my case this is _monks_ who need to be killed. You see, I'm going to start a little business here, but these lunatics don't buy anything themselves and will scare away other customers. So please, kill... let's say _5 of them_ and a reward is yours.
actors.mobs.npcs.imp.golems_2=How is your golem safari going?
actors.mobs.npcs.imp.monks_2=Oh, you are still alive! I knew that your kung-fu is stronger ;) Just don't forget to grab these monks' tokens.
actors.mobs.npcs.imp.intro=Are you an adventurer? I love adventurers! You can always rely on them if something needs to be killed, am I right? For a bounty of course ;)
actors.mobs.npcs.imp.golems_1=In my case it's _golems_ that need to be killed. You see, I'm going to start a little business here, but those stupid golems are bad for business! It's very hard to negotiate with wandering lumps of granite, damn them! So please kill... let's say _4 of them_ and a reward is yours.
actors.mobs.npcs.imp.monks_1=In my case it's _monks_ who need to be killed. You see, I'm going to start a little business here, but those lunatics don't buy anything themselves and will scare away other customers. So please kill... let's say _5 of them_ and a reward is yours.
actors.mobs.npcs.imp.golems_2=How is your golem safari going? Just don't forget to grab those tokens.
actors.mobs.npcs.imp.monks_2=Oh, you're still alive! I knew that your kung-fu would be stronger ;) Just don't forget to grab those tokens.
actors.mobs.npcs.imp.cya=See you, %s!
actors.mobs.npcs.imp.hey=Psst, %s!
actors.mobs.npcs.imp.desc=Imps are lesser demons. They are notable for neither their strength nor their magic talent, but they are quite smart and sociable. Many imps prefer to live among non-demons.

View File

@@ -34,6 +34,7 @@ import com.shatteredpixel.shatteredpixeldungeon.items.quest.DwarfToken;
import com.shatteredpixel.shatteredpixeldungeon.items.rings.Ring;
import com.shatteredpixel.shatteredpixeldungeon.journal.Notes;
import com.shatteredpixel.shatteredpixeldungeon.levels.CityLevel;
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ImpSprite;
@@ -124,7 +125,9 @@ public class Imp extends NPC {
}
} else {
tell( Quest.alternative ? Messages.get(this, "monks_1") : Messages.get(this, "golems_1") );
tell( Messages.get(this, "intro") + "\n\n" + (Quest.alternative ?
Messages.get(this, "monks_1", Messages.titleCase(Dungeon.hero.name()))
: Messages.get(this, "golems_1", Messages.titleCase(Dungeon.hero.name()))) );
Quest.given = true;
Quest.completed = false;
}
@@ -206,13 +209,14 @@ public class Imp extends NPC {
}
public static void spawn( CityLevel level ) {
if (!spawned && Dungeon.depth > 16 && Random.Int( 20 - Dungeon.depth ) == 0) {
if (!spawned && Dungeon.depth == 18) {
Imp npc = new Imp();
do {
npc.pos = level.randomRespawnCell( npc );
} while (
npc.pos == -1 ||
level.map[ npc.pos ] == Terrain.EMPTY_SP || //visibility issues on these tiles
level.heaps.get( npc.pos ) != null ||
level.traps.get( npc.pos) != null ||
level.findMob( npc.pos ) != null ||
@@ -223,6 +227,9 @@ public class Imp extends NPC {
spawned = true;
//imp always spawns on an empty tile, for better visibility
level.map[ npc.pos ] = Terrain.EMPTY;
//always assigns monks on floor 17, golems on floor 19, and 50/50 between either on 18
switch (Dungeon.depth){
case 17: default:

View File

@@ -55,7 +55,7 @@ public class ImpSprite extends MobSprite {
super.link( ch );
if (ch instanceof Imp) {
alpha( 0.4f );
alpha( 0.5f );
}
}