From 25eefbd9898fb05bfe5f08d25d48fe05b40cad9d Mon Sep 17 00:00:00 2001 From: Light2 Date: Sun, 6 Apr 2014 21:43:58 +0200 Subject: [PATCH] fixed #388 --- src/services/ai/AIActor.java | 1 - src/services/ai/states/AttackState.java | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/services/ai/AIActor.java b/src/services/ai/AIActor.java index fcaf3e7d..f3f406b7 100644 --- a/src/services/ai/AIActor.java +++ b/src/services/ai/AIActor.java @@ -237,7 +237,6 @@ public class AIActor { case StateResult.DEAD: setCurrentState(new DeathState()); case StateResult.FINISHED: - // TODO: add state transitions case StateResult.UNFINISHED: return; case StateResult.IDLE: diff --git a/src/services/ai/states/AttackState.java b/src/services/ai/states/AttackState.java index 57e8e4a6..dbc0a54d 100644 --- a/src/services/ai/states/AttackState.java +++ b/src/services/ai/states/AttackState.java @@ -120,6 +120,7 @@ public class AttackState extends AIState { creature.setLookAtTarget(0); creature.setIntendedTarget(0); actor.setFollowObject(null); + actor.setCurrentState(new RetreatState()); return StateResult.FINISHED; } CreatureObject target = actor.getFollowObject(); @@ -133,7 +134,7 @@ public class AttackState extends AIState { return StateResult.UNFINISHED; } if(target.getPosture() == 13 || target.getPosture() == 14) { - actor.getDamageMap().remove(target); + actor.removeDefender(target); actor.setFollowObject(actor.getHighestDamageDealer()); target = actor.getFollowObject(); if(target == null)