--- deliantra/server/socket/item.C 2008/09/08 11:27:25 1.71 +++ deliantra/server/socket/item.C 2008/12/19 22:47:30 1.75 @@ -401,9 +401,9 @@ if (flags & UPD_WEIGHT) { - sint32 weight = op->flag [FLAG_NO_PICK] ? -1 : op->client_weight (); + sint32 weight = op->client_weight (); - if (op) + if (op == pl) ns->last_weight = weight; sl << uint32 (weight); @@ -731,13 +731,8 @@ if (player *opl = pl->observe->contr) if (client *ns = opl->ns) - { - if (fabs (dx) > ns->mapx / 2 || fabs (dy) > ns->mapy / 2) - return; - - if (opl->blocked_los[dx + ns->mapx / 2][dy + ns->mapy / 2]) - return; - } + if (opl->blocked_los (dx, dy) >= LOS_MAX) + return; look_at (pl, dx, dy); }