--- deliantra/server/common/object.c 2006/05/29 15:28:24 1.5 +++ deliantra/server/common/object.c 2006/06/04 19:46:55 1.6 @@ -1546,9 +1546,14 @@ /* Debugging information so you can see the last coordinates this object had */ op->ox=op->x; op->oy=op->y; + + /* Ideally, the caller figures this out. However, it complicates a lot + * of areas of callers (eg, anything that uses find_free_spot would now + * need extra work + */ + op->map=get_map_from_coord(m, &op->x, &op->y); x = op->x; y = op->y; - op->map=get_map_from_coord(m, &x, &y); /* this has to be done after we translate the coordinates. */ @@ -1561,16 +1566,6 @@ } } - /* Ideally, the caller figures this out. However, it complicates a lot - * of areas of callers (eg, anything that uses find_free_spot would now - * need extra work - */ - if (op->map != m) { - /* coordinates should not change unless map also changes */ - op->x = x; - op->y = y; - } - CLEAR_FLAG(op,FLAG_APPLIED); /* hack for fixing F_APPLIED in items of dead people */ CLEAR_FLAG(op, FLAG_INV_LOCKED); if (!QUERY_FLAG(op, FLAG_ALIVE))