summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/map/skill.c6
-rw-r--r--src/map/status.c2
-rw-r--r--src/map/unit.c2
3 files changed, 4 insertions, 6 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 7193cb98a..2ba07fecb 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -5543,11 +5543,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
case SG_FEEL:
if (sd) {
if(!sd->feel_map[skilllv-1].index) {
- for (i = 0; i<3 && sd->feel_map[i].index != sd->mapindex; i++);
- if (i < 3) { //Avoid memorizing already known maps. [Skotlex]
- clif_skill_fail(sd, skillid, 0, 0);
- break;
- }
+ //AuronX reported you CAN memorize the same map as all three. [Skotlex]
clif_skill_nodamage(src,bl,skillid,skilllv,1);
clif_parse_ReqFeel(sd->fd,sd, skilllv);
}
diff --git a/src/map/status.c b/src/map/status.c
index d2a744504..35c37bb25 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -4799,7 +4799,7 @@ int status_change_clear(struct block_list *bl,int type)
// Do not reset Xmas status when killed. [Valaris]
if(sc->data[i].timer == -1 ||
(type == 0 &&
- (i == SC_EDP || i == SC_MELTDOWN || i == SC_XMAS || i == SC_NOCHAT)))
+ (i == SC_EDP || i == SC_MELTDOWN || i == SC_XMAS || i == SC_NOCHAT || i == SC_FUSION)))
continue;
status_change_end(bl, i, -1);
diff --git a/src/map/unit.c b/src/map/unit.c
index 84d964fe9..227e2bd43 100644
--- a/src/map/unit.c
+++ b/src/map/unit.c
@@ -364,7 +364,9 @@ int unit_run(struct block_list *bl)
}
if(to_x == bl->x && to_y == bl->y) {
+ //If you can't run forward, you must be next to a wall, so bounce back. [Skotlex]
status_change_end(bl,SC_RUN,-1);
+ skill_blown(bl,bl,skill_get_blewcount(TK_RUN,sc->data[SC_RUN].val1)|0x10000);
return 0;
}
unit_walktoxy(bl, to_x, to_y, 1);