v0.8.0: Adjustments to new bosses:
- Added a hint to DM-300's supercharge phase - Reduced DK's damage and accuracy slightly - Slightly slowed down summons on phase 2 wave 3 of DK fight - The first warlock/monk on DK's final phase is now the 3rd summon, not 1st - Reduced the damage of both bright and dark fists (bright moreso) - slightly increased the cooldown of Yog's laser and summoning - Yog's fist now take 4 turns before acting, up from 3.
This commit is contained in:
parent
17deae840c
commit
8283bd543b
|
@ -79,12 +79,12 @@ public class DwarfKing extends Mob {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int damageRoll() {
|
public int damageRoll() {
|
||||||
return Random.NormalIntRange( 15, 30 );
|
return Random.NormalIntRange( 15, 25 );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int attackSkill( Char target ) {
|
public int attackSkill( Char target ) {
|
||||||
return 28;
|
return 26;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -207,10 +207,10 @@ public class DwarfKing extends Mob {
|
||||||
sprite.centerEmitter().start( Speck.factory( Speck.SCREAM ), 0.4f, 2 );
|
sprite.centerEmitter().start( Speck.factory( Speck.SCREAM ), 0.4f, 2 );
|
||||||
Sample.INSTANCE.play( Assets.SND_CHALLENGE );
|
Sample.INSTANCE.play( Assets.SND_CHALLENGE );
|
||||||
yell(Messages.get(this, "wave_3"));
|
yell(Messages.get(this, "wave_3"));
|
||||||
summonSubject(3, DKWarlock.class);
|
summonSubject(4, DKWarlock.class);
|
||||||
summonSubject(3, DKMonk.class);
|
summonSubject(4, DKMonk.class);
|
||||||
summonSubject(3, DKGhoul.class);
|
summonSubject(4, DKGhoul.class);
|
||||||
summonSubject(3, DKGhoul.class);
|
summonSubject(4, DKGhoul.class);
|
||||||
summonsMade = 12;
|
summonsMade = 12;
|
||||||
spend(TICK);
|
spend(TICK);
|
||||||
return true;
|
return true;
|
||||||
|
@ -286,7 +286,6 @@ public class DwarfKing extends Mob {
|
||||||
Mob furthest = null;
|
Mob furthest = null;
|
||||||
|
|
||||||
for (Mob m : getSubjects()){
|
for (Mob m : getSubjects()){
|
||||||
//TODO avoid warlocks?
|
|
||||||
if (furthest == null || Dungeon.level.distance(pos, furthest.pos) < Dungeon.level.distance(pos, m.pos)){
|
if (furthest == null || Dungeon.level.distance(pos, furthest.pos) < Dungeon.level.distance(pos, m.pos)){
|
||||||
furthest = m;
|
furthest = m;
|
||||||
}
|
}
|
||||||
|
@ -401,7 +400,7 @@ public class DwarfKing extends Mob {
|
||||||
} else if (phase == 2 && shielding() == 0) {
|
} else if (phase == 2 && shielding() == 0) {
|
||||||
properties.remove(Property.IMMOVABLE);
|
properties.remove(Property.IMMOVABLE);
|
||||||
phase = 3;
|
phase = 3;
|
||||||
summonsMade = 3; //opens with a monk/warlock
|
summonsMade = 1; //monk/warlock on 3rd summon
|
||||||
sprite.centerEmitter().start( Speck.factory( Speck.SCREAM ), 0.4f, 2 );
|
sprite.centerEmitter().start( Speck.factory( Speck.SCREAM ), 0.4f, 2 );
|
||||||
Sample.INSTANCE.play( Assets.SND_CHALLENGE );
|
Sample.INSTANCE.play( Assets.SND_CHALLENGE );
|
||||||
yell( Messages.get(this, "enraged", Dungeon.hero.name()) );
|
yell( Messages.get(this, "enraged", Dungeon.hero.name()) );
|
||||||
|
|
|
@ -438,6 +438,8 @@ public class NewDM300 extends Mob {
|
||||||
sprite.showStatus(CharSprite.POSITIVE, Messages.get(this, "invulnerable"));
|
sprite.showStatus(CharSprite.POSITIVE, Messages.get(this, "invulnerable"));
|
||||||
sprite.resetColor();
|
sprite.resetColor();
|
||||||
chargeAnnounced = false;
|
chargeAnnounced = false;
|
||||||
|
|
||||||
|
GLog.h(Messages.get(this, "charging_hint"));
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isSupercharged(){
|
public boolean isSupercharged(){
|
||||||
|
|
|
@ -214,7 +214,7 @@ public class YogDzewa extends Mob {
|
||||||
Dungeon.hero.interrupt();
|
Dungeon.hero.interrupt();
|
||||||
|
|
||||||
abilityCooldown += Random.NormalFloat(MIN_ABILITY_CD, MAX_ABILITY_CD);
|
abilityCooldown += Random.NormalFloat(MIN_ABILITY_CD, MAX_ABILITY_CD);
|
||||||
abilityCooldown -= phase;
|
abilityCooldown -= (phase - 1);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
spend(TICK);
|
spend(TICK);
|
||||||
|
@ -242,9 +242,9 @@ public class YogDzewa extends Mob {
|
||||||
summon.beckon(Dungeon.hero.pos);
|
summon.beckon(Dungeon.hero.pos);
|
||||||
|
|
||||||
summonCooldown += Random.NormalFloat(MIN_SUMMON_CD, MAX_SUMMON_CD);
|
summonCooldown += Random.NormalFloat(MIN_SUMMON_CD, MAX_SUMMON_CD);
|
||||||
summonCooldown -= phase;
|
summonCooldown -= (phase - 1);
|
||||||
if (findFist() != null){
|
if (findFist() != null){
|
||||||
summonCooldown += MIN_SUMMON_CD - phase;
|
summonCooldown += MIN_SUMMON_CD - (phase - 1);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
break;
|
break;
|
||||||
|
@ -317,7 +317,7 @@ public class YogDzewa extends Mob {
|
||||||
fist.pos = targetPos+1;
|
fist.pos = targetPos+1;
|
||||||
}
|
}
|
||||||
|
|
||||||
GameScene.add(fist, 3);
|
GameScene.add(fist, 4);
|
||||||
Actor.addDelayed( new Pushing( fist, Dungeon.level.exit, fist.pos ), -1 );
|
Actor.addDelayed( new Pushing( fist, Dungeon.level.exit, fist.pos ), -1 );
|
||||||
phase++;
|
phase++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -441,7 +441,7 @@ public abstract class YogFist extends Mob {
|
||||||
|
|
||||||
if (hit( this, enemy, true )) {
|
if (hit( this, enemy, true )) {
|
||||||
|
|
||||||
enemy.damage( damageRoll(), new LightBeam() );
|
enemy.damage( Random.NormalIntRange(12, 24), new LightBeam() );
|
||||||
Buff.prolong( enemy, Blindness.class, 4f );
|
Buff.prolong( enemy, Blindness.class, 4f );
|
||||||
|
|
||||||
if (!enemy.isAlive() && enemy == Dungeon.hero) {
|
if (!enemy.isAlive() && enemy == Dungeon.hero) {
|
||||||
|
@ -501,7 +501,7 @@ public abstract class YogFist extends Mob {
|
||||||
|
|
||||||
if (hit( this, enemy, true )) {
|
if (hit( this, enemy, true )) {
|
||||||
|
|
||||||
enemy.damage( damageRoll(), new DarkBolt() );
|
enemy.damage( Random.NormalIntRange(15, 30), new DarkBolt() );
|
||||||
|
|
||||||
Light l = enemy.buff(Light.class);
|
Light l = enemy.buff(Light.class);
|
||||||
if (l != null){
|
if (l != null){
|
||||||
|
|
|
@ -510,7 +510,8 @@ actors.mobs.newdm300.notice=UNAUTHORIZED PERSONNEL DETECTED!
|
||||||
actors.mobs.newdm300.shield=DM-300 pulls power from the exposed wires and shields itself!
|
actors.mobs.newdm300.shield=DM-300 pulls power from the exposed wires and shields itself!
|
||||||
actors.mobs.newdm300.vent=DM-300 fires a jet of toxic exhaust!
|
actors.mobs.newdm300.vent=DM-300 fires a jet of toxic exhaust!
|
||||||
actors.mobs.newdm300.rocks=DM-300 slams the ground, loosening rocks from the ceiling!
|
actors.mobs.newdm300.rocks=DM-300 slams the ground, loosening rocks from the ceiling!
|
||||||
actors.mobs.newdm300.charging=SUSTAINING DAMAGE! CHARGING FROM POWER GRID...
|
actors.mobs.newdm300.charging=SUSTAINING DAMAGE! CHARGING FROM POWER PYLON...
|
||||||
|
actors.mobs.newdm300.charging_hint=Sparks erupt all around you! They seem to be gravitating somewhere...
|
||||||
actors.mobs.newdm300.supercharged=SUPERCHARGE COMPLETE, OPERATING AT 200% POWER!
|
actors.mobs.newdm300.supercharged=SUPERCHARGE COMPLETE, OPERATING AT 200% POWER!
|
||||||
actors.mobs.newdm300.charge_lost=POWER GRID DAMAGED, REVERTING TO LOCAL POWER!
|
actors.mobs.newdm300.charge_lost=POWER GRID DAMAGED, REVERTING TO LOCAL POWER!
|
||||||
actors.mobs.newdm300.pylons_destroyed=ALERT, INSTABILITY DETECTED IN POWER GRID!
|
actors.mobs.newdm300.pylons_destroyed=ALERT, INSTABILITY DETECTED IN POWER GRID!
|
||||||
|
|
|
@ -129,7 +129,7 @@ levels.traps.worndarttrap.desc=A small dart-blower must be hidden nearby, activa
|
||||||
|
|
||||||
###levels
|
###levels
|
||||||
levels.newcavesbosslevel.wires_name=Exposed wiring
|
levels.newcavesbosslevel.wires_name=Exposed wiring
|
||||||
levels.newcavesbosslevel.wires_desc=The ground is partially dug up here, showing some large exposed wires. They must be connecting the various electrical machines together.\n\nThe wires must have some current running through them. If DM-300 steps here it may be able to draw power from there.
|
levels.newcavesbosslevel.wires_desc=The ground is partially dug up here, showing some large exposed wires. They must be connecting the various electrical machines together.\n\nThe wires must have some current running through them. If DM-300 steps here it may be able to draw power from them.
|
||||||
levels.newcavesbosslevel.energy_desc=The ground here is sparking with electricity, and is harmful to step on. The sparks seem to be gravitating in a certain direction... perhaps they lead to the power source?
|
levels.newcavesbosslevel.energy_desc=The ground here is sparking with electricity, and is harmful to step on. The sparks seem to be gravitating in a certain direction... perhaps they lead to the power source?
|
||||||
levels.newcavesbosslevel.gate_name=Metal gate
|
levels.newcavesbosslevel.gate_name=Metal gate
|
||||||
levels.newcavesbosslevel.gate_desc=A large metal gate that blocks the path into the dwarven metropolis. The metal box in the center is producing a loud humming noise, it must be connected to the circuitry and machines nearby. Perhaps destroying DM-300 will open the gate?
|
levels.newcavesbosslevel.gate_desc=A large metal gate that blocks the path into the dwarven metropolis. The metal box in the center is producing a loud humming noise, it must be connected to the circuitry and machines nearby. Perhaps destroying DM-300 will open the gate?
|
||||||
|
|
Loading…
Reference in New Issue
Block a user