v0.8.0: bugfixes:
- reverted unintential commit of debug stats for ghouls - fixed ghoul life link not transferring correctly in some cases - mobs now retain their max level for xp between save/load - fixed DM-300 incorrectly being immune to rooting
This commit is contained in:
@@ -42,8 +42,8 @@ public class Ghoul extends Mob {
|
|||||||
{
|
{
|
||||||
spriteClass = GhoulSprite.class;
|
spriteClass = GhoulSprite.class;
|
||||||
|
|
||||||
HP = HT = 5;
|
HP = HT = 45;
|
||||||
defenseSkill = 0;
|
defenseSkill = 20;
|
||||||
|
|
||||||
EXP = 5;
|
EXP = 5;
|
||||||
maxLvl = 20;
|
maxLvl = 20;
|
||||||
@@ -313,7 +313,7 @@ public class Ghoul extends Mob {
|
|||||||
super.detach();
|
super.detach();
|
||||||
Ghoul newHost = searchForHost(ghoul);
|
Ghoul newHost = searchForHost(ghoul);
|
||||||
if (newHost != null){
|
if (newHost != null){
|
||||||
newHost.add(this);
|
attachTo(newHost);
|
||||||
} else {
|
} else {
|
||||||
ghoul.die(this);
|
ghoul.die(this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -107,6 +107,7 @@ public abstract class Mob extends Char {
|
|||||||
private static final String STATE = "state";
|
private static final String STATE = "state";
|
||||||
private static final String SEEN = "seen";
|
private static final String SEEN = "seen";
|
||||||
private static final String TARGET = "target";
|
private static final String TARGET = "target";
|
||||||
|
private static final String MAX_LVL = "max_lvl";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void storeInBundle( Bundle bundle ) {
|
public void storeInBundle( Bundle bundle ) {
|
||||||
@@ -126,6 +127,7 @@ public abstract class Mob extends Char {
|
|||||||
}
|
}
|
||||||
bundle.put( SEEN, enemySeen );
|
bundle.put( SEEN, enemySeen );
|
||||||
bundle.put( TARGET, target );
|
bundle.put( TARGET, target );
|
||||||
|
bundle.put( MAX_LVL, maxLvl );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -149,6 +151,8 @@ public abstract class Mob extends Char {
|
|||||||
enemySeen = bundle.getBoolean( SEEN );
|
enemySeen = bundle.getBoolean( SEEN );
|
||||||
|
|
||||||
target = bundle.getInt( TARGET );
|
target = bundle.getInt( TARGET );
|
||||||
|
|
||||||
|
if (bundle.contains(MAX_LVL)) maxLvl = bundle.getInt(MAX_LVL);
|
||||||
}
|
}
|
||||||
|
|
||||||
public CharSprite sprite() {
|
public CharSprite sprite() {
|
||||||
|
|||||||
@@ -490,6 +490,10 @@ public class NewDM300 extends Mob {
|
|||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
if (rooted || target == pos) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
int bestpos = pos;
|
int bestpos = pos;
|
||||||
for (int i : PathFinder.NEIGHBOURS8){
|
for (int i : PathFinder.NEIGHBOURS8){
|
||||||
if (Dungeon.level.openSpace[pos+i] && Actor.findChar(pos+i) == null &&
|
if (Dungeon.level.openSpace[pos+i] && Actor.findChar(pos+i) == null &&
|
||||||
|
|||||||
Reference in New Issue
Block a user