--- deliantra/server/socket/request.C 2011/04/22 06:10:34 1.178 +++ deliantra/server/socket/request.C 2011/05/03 11:23:48 1.180 @@ -1,7 +1,7 @@ /* * This file is part of Deliantra, the Roguelike Realtime MMORPG. * - * Copyright (©) 2005,2006,2007,2008,2009,2010 Marc Alexander Lehmann / Robin Redeker / the Deliantra team + * Copyright (©) 2005,2006,2007,2008,2009,2010,2011 Marc Alexander Lehmann / Robin Redeker / the Deliantra team * Copyright (©) 2001 Mark Wedel * Copyright (©) 1992 Frank Tore Johansen * @@ -893,20 +893,23 @@ op->x + range + 1, op->y + range + 1); rect->m; ++rect) - rect->m->touch (); + { + rect->m->touch (); + rect->m->activate (); + } } // prefetch a generous area around the player, also up and down -static void -prefetch_surrounding_maps (object *op) +void +object::prefetch_surrounding_maps () { - prefetch_surrounding_area (op, op->map, 40); + prefetch_surrounding_area (this, map, 40); - if (maptile *m = op->map->tile_available (TILE_DOWN)) - prefetch_surrounding_area (op, m, 20); + if (maptile *m = map->tile_available (TILE_DOWN)) + prefetch_surrounding_area (this, m, 20); - if (maptile *m = op->map->tile_available (TILE_UP)) - prefetch_surrounding_area (op, m, 20); + if (maptile *m = map->tile_available (TILE_UP)) + prefetch_surrounding_area (this, m, 20); } //+GPL @@ -931,7 +934,7 @@ int startlen, oldlen; check_map_change (pl); - prefetch_surrounding_maps (pl->ob); + pl->ob->prefetch_surrounding_maps (); /* do LOS after calls to update_position */ /* unfortunately, we need to udpate los when observing, currently */