}
if (objectpos_over_limit(object->getBasePosition())) {
+ v3f p = object->getBasePosition();
errorstream << "ServerEnvironment::addActiveObjectRaw(): "
- << "object position outside maximum range" << std::endl;
+ << "object position (" << p.X << "," << p.Y << "," << p.Z
+ << ") outside maximum range" << std::endl;
if (object->environmentDeletes())
delete object;
return 0;
inline bool objectpos_over_limit(v3f p)
{
- const static u16 map_gen_limit = MYMIN(MAX_MAP_GENERATION_LIMIT,
- g_settings->getU16("map_generation_limit"));
- return (p.X < -map_gen_limit
- || p.X > map_gen_limit
- || p.Y < -map_gen_limit
- || p.Y > map_gen_limit
- || p.Z < -map_gen_limit
- || p.Z > map_gen_limit);
+ const static float map_gen_limit_bs = MYMIN(MAX_MAP_GENERATION_LIMIT,
+ g_settings->getU16("map_generation_limit")) * BS;
+ return (p.X < -map_gen_limit_bs
+ || p.X > map_gen_limit_bs
+ || p.Y < -map_gen_limit_bs
+ || p.Y > map_gen_limit_bs
+ || p.Z < -map_gen_limit_bs
+ || p.Z > map_gen_limit_bs);
}
inline bool blockpos_over_limit(v3s16 p)