0
, o.optString(JsonFieldNames.Monster.faction, null)
, o.optInt(JsonFieldNames.Monster.monsterClass, MonsterType.MONSTERCLASS_HUMANOID)
+ , o.optInt(JsonFieldNames.Monster.movementAggressionType, MonsterType.AGGRESSIONTYPE_NONE)
, ResourceParserUtils.parseSize(o.optString(JsonFieldNames.Monster.size, null), size1x1) //TODO: This could be loaded from the tileset size instead.
, ResourceParserUtils.parseImageID(tileLoader, o.getString(JsonFieldNames.Monster.iconID))
, maxAP
diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/resource/parsers/json/JsonFieldNames.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/resource/parsers/json/JsonFieldNames.java
index e33ae7879..59b221282 100644
--- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/resource/parsers/json/JsonFieldNames.java
+++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/resource/parsers/json/JsonFieldNames.java
@@ -109,6 +109,7 @@ public final class JsonFieldNames {
public static final String spawnGroup = "spawnGroup";
public static final String size = "size";
public static final String monsterClass = "monsterClass";
+ public static final String movementAggressionType = "movementAggressionType";
public static final String unique = "unique";
public static final String faction = "faction";
public static final String maxHP = "maxHP";
diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/view/MainView.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/view/MainView.java
index 5059e1517..60d23ce9c 100644
--- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/view/MainView.java
+++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/view/MainView.java
@@ -455,8 +455,13 @@ public final class MainView extends SurfaceView
@Override
public void onMonsterMoved(PredefinedMap map, Monster m, CoordRect previousPosition) {
if (map != currentMap) return;
- if (!mapViewArea.intersects(m.rectPosition)) return;
- redrawNextTick = true;
+ if (!mapViewArea.intersects(m.rectPosition) && !mapViewArea.intersects(previousPosition)) return;
+ if (model.uiSelections.isInCombat) {
+ redrawArea(previousPosition, REDRAW_AREA_MONSTER_MOVED);
+ redrawArea(m.rectPosition, REDRAW_AREA_MONSTER_MOVED);
+ } else {
+ redrawNextTick = true;
+ }
}
@Override
diff --git a/AndorsTrailEdit/js/defaults.js b/AndorsTrailEdit/js/defaults.js
index d6e8f1210..c742f02f5 100644
--- a/AndorsTrailEdit/js/defaults.js
+++ b/AndorsTrailEdit/js/defaults.js
@@ -34,6 +34,7 @@ var ATEditor = (function(ATEditor, _) {
,moveCost: 10
,unique: 0
,monsterClass: 0
+ ,movementAggressionType: 0
,attackDamage: {}
,hitEffect: { increaseCurrentHP: {}, increaseCurrentAP: {}, conditionsSource: [], conditionsTarget: [] }
}
diff --git a/AndorsTrailEdit/partials/edit_monster.html b/AndorsTrailEdit/partials/edit_monster.html
index c5be63e54..b97cc6c08 100644
--- a/AndorsTrailEdit/partials/edit_monster.html
+++ b/AndorsTrailEdit/partials/edit_monster.html
@@ -65,6 +65,14 @@
+
+
+
+