update p2.925
This commit is contained in:
parent
bbfeb335f0
commit
27349df73c
|
@ -16,8 +16,8 @@ allprojects {
|
|||
appName = 'Magic Ling Pixel Dungeon'
|
||||
appPackageName = 'com.ansdomagiclingpixeldungeon.ling'
|
||||
|
||||
appVersionCode =700800
|
||||
appVersionName = '0.6.0.0-Beta21-p2.910-INDEV'
|
||||
appVersionCode =700925
|
||||
appVersionName = '0.6.0.0-Beta21-p2.925-INDEV'
|
||||
|
||||
appJavaCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
|
|
|
@ -1206,7 +1206,7 @@ actors.hero.abilities.ratmogrify$transmograt.rankings_desc=死于:鼠化敌人
|
|||
actors.hero.hero.name=你
|
||||
actors.hero.hero.leave=现在还不能离去,埋藏在地牢之下的名利正呼唤着你!
|
||||
|
||||
actors.hero.hero.leave2=魔法入口已经被关闭了,属于我的试炼已经开始了。\n或许只有拿到传说中的水晶之心,我才能回去……
|
||||
actors.hero.hero.leave2=现在还不能离去,埋藏在地牢之下的名利正呼唤着你!
|
||||
|
||||
actors.hero.hero.acs=冒险者,你应该知道地牢的危险,所以我们封印了那里。\n如果你确定要前往地牢的话,这个魔法入口会带你进入危机四伏的地牢。\n一旦你准备好了,就可以继续前进了!\n当然,出发所需要的东西带上,因为你去了后就不能回头了……
|
||||
|
||||
|
|
|
@ -485,5 +485,7 @@ ui.changelist.mlpd.vm0_6_7_x_changes.bug_06x37=-P2.910\n1.修复基因突变的
|
|||
|
||||
ui.changelist.mlpd.vm0_6_7_x_changes.bug_06x38=-P2.920\n1.修复水晶钥匙可能不见的问题\n2.修复一些更小的错误崩溃
|
||||
|
||||
ui.changelist.mlpd.vm0_6_7_x_changes.bug_06x39=-P2.925\n1.修复红龙之王的极端情况下的崩溃\n2.修复火魔女的三阶段极端情况下的减伤错误导致出现不可预料的更恐怖的突发第四阶段。
|
||||
|
||||
|
||||
//ui.changelist.mlpd.vm0_5_x_changes.xxx//
|
Binary file not shown.
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
@ -22,7 +22,6 @@
|
|||
package com.shatteredpixel.shatteredpixeldungeon.actors.buffs;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||
|
@ -68,6 +67,7 @@ public class Dread extends Buff {
|
|||
target.destroy();
|
||||
target.sprite.killAndErase();
|
||||
Dungeon.level.mobs.remove(target);
|
||||
target.die(true);
|
||||
} else {
|
||||
left--;
|
||||
if (left <= 0){
|
||||
|
|
|
@ -699,7 +699,7 @@ public class FireMagicDied extends Mob implements Callback {
|
|||
|
||||
this.pos = FALSEPosition;
|
||||
|
||||
Buff.affect(this, DwarfMaster.DKBarrior.class).setShield(1000);
|
||||
Buff.affect(this, DwarfMaster.DKBarrior.class).setShield(300);
|
||||
|
||||
Buff.append(hero, BeamTowerAdbility.class).towerPos = TRUEPosition;
|
||||
|
||||
|
@ -721,22 +721,7 @@ public class FireMagicDied extends Mob implements Callback {
|
|||
Buff.affect(this, FireMagicDied.YogScanHalf.class).setPos(pos, direction);
|
||||
beamCD = 40 + 8 - (phase == 10 ? 38 : 0);
|
||||
sprite.showStatus(0xff0000, Messages.get(this, "dead"));
|
||||
switch (Random.Int(7)){
|
||||
case 0: default: Buff.affect(this, ChampionEnemy.Blazing.class);
|
||||
break;
|
||||
case 1: Buff.affect(this, ChampionEnemy.Projecting.class);
|
||||
break;
|
||||
case 2: Buff.affect(this, ChampionEnemy.AntiMagic.class);
|
||||
break;
|
||||
case 3: Buff.affect(this, ChampionEnemy.Giant.class);
|
||||
break;
|
||||
case 4: Buff.affect(this, ChampionEnemy.Blessed.class);
|
||||
break;
|
||||
case 5: Buff.affect(this, ChampionEnemy.Growing.class);
|
||||
break;
|
||||
case 6: Buff.affect(this, ChampionEnemy.Halo.class);
|
||||
break;
|
||||
}
|
||||
Buff.affect(this, ChampionEnemy.Halo.class);
|
||||
} else if (phase == 3 && preHP > 80 && HP <= 80){
|
||||
yell( Messages.get(this, "losing") );
|
||||
}
|
||||
|
|
|
@ -34,8 +34,10 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.SkullShaman;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Generator;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.Artifact;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.CapeOfThorns;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.brews.BlizzardBrew;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.brews.Brew;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.brews.CausticBrew;
|
||||
|
@ -47,6 +49,7 @@ import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ScrollOfAff
|
|||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ScrollOfAntiMagic;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ScrollOfConfusion;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ScrollOfPsionicBlast;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.journal.Notes;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.CavesLevel;
|
||||
|
@ -236,7 +239,7 @@ public class RedDragon extends NPC {
|
|||
private static int depth;
|
||||
|
||||
public static Ring weapon;
|
||||
public static Ring RingT;
|
||||
public static Wand RingT;
|
||||
public static Artifact armor;
|
||||
public static Brew food;
|
||||
public static ExoticScroll scrolls;
|
||||
|
@ -251,6 +254,7 @@ public class RedDragon extends NPC {
|
|||
enchant = null;
|
||||
glyph = null;
|
||||
RingT = null;
|
||||
food = null;
|
||||
}
|
||||
|
||||
private static final String NODE = "sads";
|
||||
|
@ -267,6 +271,8 @@ public class RedDragon extends NPC {
|
|||
private static final String ENCHANT = "enchant";
|
||||
private static final String GLYPH = "glyph";
|
||||
|
||||
private static final String RINGT = "ringt";
|
||||
|
||||
public static void storeInBundle( Bundle bundle ) {
|
||||
|
||||
Bundle node = new Bundle();
|
||||
|
@ -281,8 +287,12 @@ public class RedDragon extends NPC {
|
|||
node.put( DEPTH, depth );
|
||||
node.put( PROCESSED, processed );
|
||||
|
||||
node.put( WEAPON, weapon );
|
||||
|
||||
node.put( ARMOR, armor );
|
||||
node.put( RINGT, RingT );
|
||||
|
||||
node.put( WEAPON, weapon );
|
||||
|
||||
node.put( FOOD, food );
|
||||
node.put( SCROLLS, scrolls);
|
||||
|
||||
|
@ -302,22 +312,24 @@ public class RedDragon extends NPC {
|
|||
if (!node.isNull() && (spawned = node.getBoolean( SPAWNED ))) {
|
||||
|
||||
type = node.getInt(TYPE);
|
||||
given = node.getBoolean( GIVEN );
|
||||
processed = node.getBoolean( PROCESSED );
|
||||
given = node.getBoolean(GIVEN);
|
||||
processed = node.getBoolean(PROCESSED);
|
||||
|
||||
depth = node.getInt( DEPTH );
|
||||
depth = node.getInt(DEPTH);
|
||||
|
||||
weapon = (Ring)node.get( WEAPON );
|
||||
armor = (Artifact) node.get( ARMOR );
|
||||
food = (Brew) node.get( FOOD );
|
||||
scrolls = (ExoticScroll) node.get( SCROLLS );
|
||||
weapon = (Ring) node.get(WEAPON);
|
||||
|
||||
armor = (Artifact) node.get(ARMOR);
|
||||
RingT = (Wand) node.get(RINGT);
|
||||
|
||||
|
||||
food = (Brew) node.get(FOOD);
|
||||
scrolls = (ExoticScroll) node.get(SCROLLS);
|
||||
|
||||
if (node.contains(ENCHANT)) {
|
||||
enchant = (Weapon.Enchantment) node.get(ENCHANT);
|
||||
glyph = (Armor.Glyph) node.get(GLYPH);
|
||||
glyph = (Armor.Glyph) node.get(GLYPH);
|
||||
}
|
||||
} else {
|
||||
reset();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -348,12 +360,19 @@ public class RedDragon extends NPC {
|
|||
case 5: food = new ShockingBrew(); break;
|
||||
}
|
||||
|
||||
//TODO Fixed Ring Spawn;
|
||||
if(randomArtifact() != null){
|
||||
armor = (Artifact)Generator.random( Generator.Category.ARTIFACT );
|
||||
Item item = randomArtifact();
|
||||
if(item != null) {
|
||||
armor = (Artifact) Generator.random(Generator.Category.ARTIFACT);
|
||||
} else {
|
||||
RingT = (Ring)Generator.random(Generator.Category.RING);
|
||||
switch (Random.chances(new float[]{0, 0, 10, 6, 3, 1})){
|
||||
default:
|
||||
case 2: armor = new CapeOfThorns(); break;
|
||||
case 3: armor = new CapeOfThorns();break;
|
||||
case 4: armor = new CapeOfThorns(); break;
|
||||
case 5: armor = new CapeOfThorns(); break;
|
||||
}
|
||||
}
|
||||
RingT = (Wand) Generator.random(Generator.Category.WAND);
|
||||
|
||||
switch (Random.chances(new float[]{0, 0, 10, 6, 3, 1})){
|
||||
default:
|
||||
|
@ -382,6 +401,7 @@ public class RedDragon extends NPC {
|
|||
}
|
||||
weapon.upgrade(itemLevel);
|
||||
armor.upgrade(itemLevel);
|
||||
RingT.upgrade(itemLevel);
|
||||
|
||||
//10% to be enchanted. We store it separately so enchant status isn't revealed early
|
||||
if (Random.Int(10) == 0){
|
||||
|
|
|
@ -82,8 +82,8 @@ public class ExoticPotion extends Potion {
|
|||
regToExo.put(PotionOfLevitation.class, PotionOfStormClouds.class);
|
||||
exoToReg.put(PotionOfStormClouds.class, PotionOfLevitation.class);
|
||||
|
||||
regToExo.put(PotionOfExperience.class, PotionOfHolyFuror.class);
|
||||
exoToReg.put(PotionOfHolyFuror.class, PotionOfExperience.class);
|
||||
regToExo.put(PotionOfExperience.class, PotionOfDivineInspiration.class);
|
||||
exoToReg.put(PotionOfDivineInspiration.class, PotionOfExperience.class);
|
||||
|
||||
regToExo.put(PotionOfPurity.class, PotionOfCleansing.class);
|
||||
exoToReg.put(PotionOfCleansing.class, PotionOfPurity.class);
|
||||
|
|
|
@ -59,14 +59,14 @@ public abstract class ExoticScroll extends Scroll {
|
|||
regToExo.put(ScrollOfRemoveCurse.class, ScrollOfAntiMagic.class);
|
||||
exoToReg.put(ScrollOfAntiMagic.class, ScrollOfRemoveCurse.class);
|
||||
|
||||
regToExo.put(ScrollOfLullaby.class, ScrollOfAffection.class);
|
||||
exoToReg.put(ScrollOfAffection.class, ScrollOfLullaby.class);
|
||||
regToExo.put(ScrollOfLullaby.class, ScrollOfSirensSong.class);
|
||||
exoToReg.put(ScrollOfSirensSong.class, ScrollOfLullaby.class);
|
||||
|
||||
regToExo.put(ScrollOfRage.class, ScrollOfConfusion.class);
|
||||
exoToReg.put(ScrollOfConfusion.class, ScrollOfRage.class);
|
||||
regToExo.put(ScrollOfRage.class, ScrollOfChallenge.class);
|
||||
exoToReg.put(ScrollOfChallenge.class, ScrollOfRage.class);
|
||||
|
||||
regToExo.put(ScrollOfTerror.class, ScrollOfPetrification.class);
|
||||
exoToReg.put(ScrollOfPetrification.class, ScrollOfTerror.class);
|
||||
regToExo.put(ScrollOfTerror.class, ScrollOfDread.class);
|
||||
exoToReg.put(ScrollOfDread.class, ScrollOfTerror.class);
|
||||
|
||||
regToExo.put(ScrollOfRecharging.class, ScrollOfMysticalEnergy.class);
|
||||
exoToReg.put(ScrollOfMysticalEnergy.class, ScrollOfRecharging.class);
|
||||
|
@ -83,8 +83,8 @@ public abstract class ExoticScroll extends Scroll {
|
|||
regToExo.put(ScrollOfMirrorImage.class, ScrollOfPrismaticImage.class);
|
||||
exoToReg.put(ScrollOfPrismaticImage.class, ScrollOfMirrorImage.class);
|
||||
|
||||
regToExo.put(ScrollOfTransmutation.class, ScrollOfPolymorph.class);
|
||||
exoToReg.put(ScrollOfPolymorph.class, ScrollOfTransmutation.class);
|
||||
regToExo.put(ScrollOfTransmutation.class, ScrollOfMetamorphosis.class);
|
||||
exoToReg.put(ScrollOfMetamorphosis.class, ScrollOfTransmutation.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -34,7 +34,7 @@ import com.watabou.noosa.audio.Sample;
|
|||
public class ScrollOfPetrification extends ExoticScroll {
|
||||
|
||||
{
|
||||
icon = ItemSpriteSheet.Icons.SCROLL_PETRIF;
|
||||
icon = ItemSpriteSheet.Icons.SCROLL_STONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -38,7 +38,7 @@ import com.watabou.utils.Random;
|
|||
public class ScrollOfPolymorph extends ExoticScroll {
|
||||
|
||||
{
|
||||
icon = ItemSpriteSheet.Icons.SCROLL_POLYMORPH;
|
||||
icon = ItemSpriteSheet.Icons.SCROLL_SHEEP;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -42,7 +42,7 @@ import com.watabou.noosa.audio.Sample;
|
|||
public class ScrollOfSirensSong extends ExoticScroll {
|
||||
|
||||
{
|
||||
icon = ItemSpriteSheet.Icons.SCROLL_SIREN;
|
||||
icon = ItemSpriteSheet.Icons.SCROLL_AFFECTION;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -34,7 +34,6 @@ import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.items.LiquidMetal;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Recipe;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.AlchemistsToolkit;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.darts.Dart;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.journal.Document;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.journal.Journal;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||
|
@ -54,7 +53,6 @@ import com.shatteredpixel.shatteredpixeldungeon.windows.WndJournal;
|
|||
import com.watabou.gltextures.TextureCache;
|
||||
import com.watabou.glwrap.Blending;
|
||||
import com.watabou.noosa.Camera;
|
||||
import com.watabou.noosa.ColorBlock;
|
||||
import com.watabou.noosa.Game;
|
||||
import com.watabou.noosa.Image;
|
||||
import com.watabou.noosa.NinePatch;
|
||||
|
|
|
@ -869,13 +869,19 @@ public class ItemSpriteSheet {
|
|||
public static final int SCROLL_CONFUSION= EXOTIC_SCROLLS+8;
|
||||
|
||||
public static final int SCROLL_PSIBLAST = EXOTIC_SCROLLS+9;
|
||||
public static final int SCROLL_PETRIF = EXOTIC_SCROLLS+10;
|
||||
public static final int SCROLL_POLYMORPH= EXOTIC_SCROLLS+11;
|
||||
public static final int SCROLL_CHALLENGE= EXOTIC_SCROLLS+8;
|
||||
|
||||
public static final int SCROLL_SHEEP= EXOTIC_SCROLLS+11;
|
||||
|
||||
public static final int SCROLL_SIREN = EXOTIC_SCROLLS+12;
|
||||
public static final int SCROLL_CHALLENGE= EXOTIC_SCROLLS+13;
|
||||
public static final int SCROLL_STONE = EXOTIC_SCROLLS+13;
|
||||
public static final int SCROLL_DREAD = EXOTIC_SCROLLS+14;
|
||||
public static final int SCROLL_METAMORPH = EXOTIC_SCROLLS+15;
|
||||
|
||||
public static final int SCROLL_ = EXOTIC_SCROLLS+16;
|
||||
|
||||
public static final int SCROLL_POLYMORPH = EXOTIC_SCROLLS+17;
|
||||
|
||||
static {
|
||||
assignIconRect( SCROLL_ENCHANT, 7, 7 );
|
||||
assignIconRect( SCROLL_DIVINATE, 7, 6 );
|
||||
|
@ -887,12 +893,12 @@ public class ItemSpriteSheet {
|
|||
assignIconRect( SCROLL_FORESIGHT, 7, 5 );
|
||||
assignIconRect( SCROLL_CONFUSION, 7, 7 );
|
||||
assignIconRect( SCROLL_PSIBLAST, 5, 6 );
|
||||
assignIconRect( SCROLL_PETRIF, 7, 5 );
|
||||
assignIconRect( SCROLL_POLYMORPH, 7, 6 );
|
||||
assignIconRect( SCROLL_STONE, 7, 8 );
|
||||
assignIconRect( SCROLL_SHEEP, 7, 8 );
|
||||
assignIconRect( SCROLL_CHALLENGE, 7, 7 );
|
||||
assignIconRect( SCROLL_SIREN, 7, 6 );
|
||||
assignIconRect( SCROLL_DREAD, 5, 7 );
|
||||
assignIconRect( SCROLL_METAMORPH, 7, 7 );
|
||||
assignIconRect( SCROLL_DREAD, 8, 8 );
|
||||
assignIconRect( SCROLL_METAMORPH, 8, 8 );
|
||||
}
|
||||
|
||||
//16 free slots
|
||||
|
|
|
@ -88,7 +88,7 @@ public class vM0_6_7_X_Changes {
|
|||
|
||||
public static void add_v0_6_19_Changes( ArrayList<ChangeInfo> changeInfos ) {
|
||||
|
||||
ChangeInfo changesx = new ChangeInfo("v0.6.0.0-Beta21-p2.920", true, "");
|
||||
ChangeInfo changesx = new ChangeInfo("v0.6.0.0-Beta21-p2.920-925", true, "");
|
||||
changesx.hardlight(Window.TITLE_COLOR);
|
||||
changeInfos.add(changesx);
|
||||
|
||||
|
@ -99,10 +99,21 @@ public class vM0_6_7_X_Changes {
|
|||
changesx.addButton(new ChangeButton(new ItemSprite(ItemSpriteSheet.AMULET), ("0层改动"),
|
||||
("现在0层不可以随进随出了,且水晶之心的背景故事略做调整" )));
|
||||
|
||||
changesx.addButton(new ChangeButton(new ItemSprite(ItemSpriteSheet.EXOTIC_CRIMSON), ("炼金迁移"),
|
||||
("羊化秘卷==>蜕变秘卷\n" +
|
||||
"石化秘卷==>极度恐慌秘卷\n" +
|
||||
"迷乱秘卷==>决斗秘卷\n" +
|
||||
"神意祝福合剂==>神意启发合剂\n" +
|
||||
"魅惑秘卷==>塞壬秘卷\n" )));
|
||||
|
||||
changesx = new ChangeInfo("修复", false, null);
|
||||
changesx.hardlight(Window.CYELLOW);
|
||||
changeInfos.add(changesx);
|
||||
|
||||
changesx.addButton(new ChangeButton(new Image("sprites/spinner.png", 144, 0, 16, 16),
|
||||
(Messages.get(ChangesScene.class, "bugfixes")),
|
||||
Messages.get(vM0_6_7_X_Changes.class, "bug_06X39")));
|
||||
|
||||
changesx.addButton(new ChangeButton(new Image("sprites/spinner.png", 144, 0, 16, 16),
|
||||
(Messages.get(ChangesScene.class, "bugfixes")),
|
||||
Messages.get(vM0_6_7_X_Changes.class, "bug_06X38")));
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
package com.shatteredpixel.shatteredpixeldungeon.windows;
|
||||
|
||||
import static com.shatteredpixel.shatteredpixeldungeon.Dungeon.hero;
|
||||
import static com.shatteredpixel.shatteredpixeldungeon.items.Generator.randomArtifact;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Chrome;
|
||||
|
@ -102,7 +103,8 @@ public class WndRedDragon extends Window {
|
|||
btnRing.setRect( (WIDTH - BTN_GAP) / 2 - BTN_SIZE, message.top() + message.height() + BTN_GAP, BTN_SIZE, BTN_SIZE );
|
||||
add( btnRing );
|
||||
|
||||
RewardButton btnFood = new RewardButton( RedDragon.Quest.armor );
|
||||
RewardButton btnFood = new RewardButton( randomArtifact() != null ? RedDragon.Quest.armor:
|
||||
RedDragon.Quest.RingT );
|
||||
btnFood.setRect( btnRing.right() + BTN_GAP, btnRing.top(), BTN_SIZE, BTN_SIZE );
|
||||
|
||||
add(btnFood);
|
||||
|
|
Loading…
Reference in New Issue
Block a user