summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/map/mob.c18
-rw-r--r--src/map/unit.c2
2 files changed, 9 insertions, 11 deletions
diff --git a/src/map/mob.c b/src/map/mob.c
index 3d22baa80..fe4b32a12 100644
--- a/src/map/mob.c
+++ b/src/map/mob.c
@@ -288,28 +288,26 @@ int mob_once_spawn (struct map_session_data *sd, char *mapname,
}
strncpy(data.eventname, event, 50);
- if (sd && (x < 0 || y < 0))
- { //Locate spot around player.
+ if (sd && (x < 0 || y < 0)) //Locate spot around player.
map_search_freecell(&sd->bl, m, &x, &y, 1, 1, 0);
- data.x = x;
- data.y = y;
- }
if (x <= 0 || y <= 0 || map_getcell(m,x,y,CELL_CHKNOREACH))
rand_flag = 1; //Randomize spot on map for each mob.
-
+ else {
+ data.x = x;
+ data.y = y;
+ }
if (!mob_parse_dataset(&data))
return 0;
for (count = 0; count < amount; count++) {
if (rand_flag) { //Get a random cell for this mob.
map_search_freecell(NULL, m, &x, &y, -1, -1, 1);
+ // This should ALWAYS be done. [blackhole89]
+ data.x = x;
+ data.y = y;
}
- // This should ALWAYS be done. [blackhole89]
- data.x = x;
- data.y = y;
-
md =mob_spawn_dataset (&data);
if (class_ < 0 && battle_config.dead_branch_active)
diff --git a/src/map/unit.c b/src/map/unit.c
index 01814b296..cf7d88aea 100644
--- a/src/map/unit.c
+++ b/src/map/unit.c
@@ -392,7 +392,7 @@ int unit_movepos(struct block_list *bl,int dst_x,int dst_y, int easy, int checkp
unit_stop_walking(bl,1);
unit_stop_attack(bl);
- if(checkpath && (map_getcell(bl->m,bl->x,bl->y, CELL_CHKNOPASS) || path_search_real(&wpd,bl->m,bl->x,bl->y,dst_x,dst_y,easy, CELL_CHKNOREACH)))
+ if(checkpath && (map_getcell(bl->m,dst_x,dst_y, CELL_CHKNOPASS) || path_search_real(&wpd,bl->m,bl->x,bl->y,dst_x,dst_y,easy, CELL_CHKNOREACH)))
return 0;
dir = map_calc_dir(bl, dst_x,dst_y);