summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt4
-rw-r--r--conf-tmpl/inter_athena.conf4
-rw-r--r--src/map/mob.c5
3 files changed, 9 insertions, 4 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 18d726167..a80b29af3 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -4,6 +4,10 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/08/16
+ * Updated mob_ai so that mobs will use their rude-attacked skill when they
+ can't reach their current target. [Skotlex]
+ * Fixed the default txt config making pets be saved to the homun file
+ instead of to the pet file. [Skotlex]
* Now arrow-consuming skills where your main weapon is a whip or musical
instrument WILL count as arrow-type attacks, using the atk of the arrow and
all related bonuses. [Skotlex]
diff --git a/conf-tmpl/inter_athena.conf b/conf-tmpl/inter_athena.conf
index 82e318c8c..9d841a39f 100644
--- a/conf-tmpl/inter_athena.conf
+++ b/conf-tmpl/inter_athena.conf
@@ -14,8 +14,8 @@ guild_txt: save/guild.txt
// Pet flatfile database, for pet names, and other pet info.
pet_txt: save/pet.txt
-// Pet flatfile database, for homunculus information.
-pet_txt: save/homun.txt
+// Homunculus flatfile database, for homunculus information.
+homun_txt: save/homun.txt
// Castle flatfile database, for emperium war castles, etc.
castle_txt: save/castle.txt
diff --git a/src/map/mob.c b/src/map/mob.c
index d57272177..7a499bc09 100644
--- a/src/map/mob.c
+++ b/src/map/mob.c
@@ -1094,8 +1094,9 @@ static int mob_ai_sub_hard(struct block_list *bl,va_list ap)
{
if (md->attacked_id == md->target_id)
{
- if (!can_move && (battle_config.mob_ai&2) &&
- !battle_check_range(&md->bl, tbl, md->status.rhw.range))
+ if (!battle_check_range(&md->bl, tbl, md->status.rhw.range) &&
+ ((!can_move && battle_config.mob_ai&2) ||
+ (!mob_can_reach(md, tbl, dist+2, MSS_RUSH))))
{ //Rude-attacked (avoid triggering due to can-walk delay).
if (DIFF_TICK(tick, md->ud.canmove_tick) > 0 &&
md->attacked_count++ >= RUDE_ATTACKED_COUNT)