diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/map/skill.c | 6 | ||||
-rw-r--r-- | src/map/status.c | 2 | ||||
-rw-r--r-- | src/map/unit.c | 2 |
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);
|