1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-07-15 01:24:45 +02:00

Readability and micro optimization.

This commit is contained in:
Frank Zago
2009-06-11 03:57:21 +00:00
parent e2c30df5a6
commit cc1c7c83c5

View File

@ -384,9 +384,11 @@ void CMapHandler::initObjectRects()
CDefHandler * curd = map->objects[f]->defInfo->handler; CDefHandler * curd = map->objects[f]->defInfo->handler;
if(curd) if(curd)
{ {
for(int fx=0; fx<curd->ourImages[0].bitmap->w>>5; ++fx) //curd->ourImages[0].bitmap->w/32 const SDL_Surface *bitmap = curd->ourImages[0].bitmap;
for(int fx=0; fx<bitmap->w>>5; ++fx) //bitmap->w/32
{ {
for(int fy=0; fy<curd->ourImages[0].bitmap->h>>5; ++fy) //curd->ourImages[0].bitmap->h/32 for(int fy=0; fy<bitmap->h>>5; ++fy) //bitmap->h/32
{ {
SDL_Rect cr; SDL_Rect cr;
cr.w = 32; cr.w = 32;
@ -395,21 +397,21 @@ void CMapHandler::initObjectRects()
cr.y = fy<<5; //fy*32 cr.y = fy<<5; //fy*32
std::pair<CGObjectInstance*,SDL_Rect> toAdd = std::make_pair(map->objects[f],cr); std::pair<CGObjectInstance*,SDL_Rect> toAdd = std::make_pair(map->objects[f],cr);
if( (map->objects[f]->pos.x + fx - curd->ourImages[0].bitmap->w/32+1) >= 0 if( (map->objects[f]->pos.x + fx - bitmap->w/32+1) >= 0
&& (map->objects[f]->pos.x + fx - curd->ourImages[0].bitmap->w/32+1) < ttiles.size() - Woff && (map->objects[f]->pos.x + fx - bitmap->w/32+1) < ttiles.size() - Woff
&& (map->objects[f]->pos.y + fy - curd->ourImages[0].bitmap->h/32+1) >= 0 && (map->objects[f]->pos.y + fy - bitmap->h/32+1) >= 0
&& (map->objects[f]->pos.y + fy - curd->ourImages[0].bitmap->h/32+1) < ttiles[0].size() - Hoff && (map->objects[f]->pos.y + fy - bitmap->h/32+1) < ttiles[0].size() - Hoff
) )
{ {
//TerrainTile2 & curt = //TerrainTile2 & curt =
// ttiles // ttiles
// [map->objects[f]->pos.x + fx - curd->ourImages[0].bitmap->w/32] // [map->objects[f]->pos.x + fx - bitmap->w/32]
//[map->objects[f]->pos.y + fy - curd->ourImages[0].bitmap->h/32] //[map->objects[f]->pos.y + fy - bitmap->h/32]
//[map->objects[f]->pos.z]; //[map->objects[f]->pos.z];
ttiles[map->objects[f]->pos.x + fx - curd->ourImages[0].bitmap->w/32+1][map->objects[f]->pos.y + fy - curd->ourImages[0].bitmap->h/32+1][map->objects[f]->pos.z].objects.push_back(toAdd); ttiles[map->objects[f]->pos.x + fx - bitmap->w/32+1][map->objects[f]->pos.y + fy - bitmap->h/32+1][map->objects[f]->pos.z].objects.push_back(toAdd);
} }
} // for(int fy=0; fy<curd->ourImages[0].bitmap->h/32; ++fy) } // for(int fy=0; fy<bitmap->h/32; ++fy)
} //for(int fx=0; fx<curd->ourImages[0].bitmap->w/32; ++fx) } //for(int fx=0; fx<bitmap->w/32; ++fx)
}//if curd }//if curd
} // for(int f=0; f<map->objects.size(); ++f) } // for(int f=0; f<map->objects.size(); ++f)
for(int ix=0; ix<ttiles.size()-Woff; ++ix) for(int ix=0; ix<ttiles.size()-Woff; ++ix)
@ -1218,10 +1220,10 @@ std::string CMapHandler::getDefName(int id, int subid)
bool CMapHandler::printObject(const CGObjectInstance *obj) bool CMapHandler::printObject(const CGObjectInstance *obj)
{ {
CDefHandler * curd = obj->defInfo->handler; const SDL_Surface *bitmap = obj->defInfo->handler->ourImages[0].bitmap;
for(int fx=0; fx<curd->ourImages[0].bitmap->w/32; ++fx) for(int fx=0; fx<bitmap->w/32; ++fx)
{ {
for(int fy=0; fy<curd->ourImages[0].bitmap->h/32; ++fy) for(int fy=0; fy<bitmap->h/32; ++fy)
{ {
SDL_Rect cr; SDL_Rect cr;
cr.w = 32; cr.w = 32;
@ -1229,20 +1231,20 @@ bool CMapHandler::printObject(const CGObjectInstance *obj)
cr.x = fx*32; cr.x = fx*32;
cr.y = fy*32; cr.y = fy*32;
std::pair<const CGObjectInstance*,SDL_Rect> toAdd = std::make_pair(obj, cr); std::pair<const CGObjectInstance*,SDL_Rect> toAdd = std::make_pair(obj, cr);
if((obj->pos.x + fx - curd->ourImages[0].bitmap->w/32+1)>=0 && (obj->pos.x + fx - curd->ourImages[0].bitmap->w/32+1)<ttiles.size()-Woff && (obj->pos.y + fy - curd->ourImages[0].bitmap->h/32+1)>=0 && (obj->pos.y + fy - curd->ourImages[0].bitmap->h/32+1)<ttiles[0].size()-Hoff) if((obj->pos.x + fx - bitmap->w/32+1)>=0 && (obj->pos.x + fx - bitmap->w/32+1)<ttiles.size()-Woff && (obj->pos.y + fy - bitmap->h/32+1)>=0 && (obj->pos.y + fy - bitmap->h/32+1)<ttiles[0].size()-Hoff)
{ {
TerrainTile2 & curt = //TODO use me TerrainTile2 & curt = //TODO use me
ttiles ttiles
[obj->pos.x + fx - curd->ourImages[0].bitmap->w/32] [obj->pos.x + fx - bitmap->w/32]
[obj->pos.y + fy - curd->ourImages[0].bitmap->h/32] [obj->pos.y + fy - bitmap->h/32]
[obj->pos.z]; [obj->pos.z];
ttiles[obj->pos.x + fx - curd->ourImages[0].bitmap->w/32+1][obj->pos.y + fy - curd->ourImages[0].bitmap->h/32+1][obj->pos.z].objects.push_back(toAdd); ttiles[obj->pos.x + fx - bitmap->w/32+1][obj->pos.y + fy - bitmap->h/32+1][obj->pos.z].objects.push_back(toAdd);
} }
} // for(int fy=0; fy<curd->ourImages[0].bitmap->h/32; ++fy) } // for(int fy=0; fy<bitmap->h/32; ++fy)
} //for(int fx=0; fx<curd->ourImages[0].bitmap->w/32; ++fx) } //for(int fx=0; fx<bitmap->w/32; ++fx)
return true; return true;
} }
@ -1250,13 +1252,14 @@ bool CMapHandler::hideObject(const CGObjectInstance *obj)
{ {
CDefHandler * curd = obj->defInfo->handler; CDefHandler * curd = obj->defInfo->handler;
if(!curd) return false; if(!curd) return false;
for(int fx=0; fx<curd->ourImages[0].bitmap->w/32; ++fx) const SDL_Surface *bitmap = curd->ourImages[0].bitmap;
for(int fx=0; fx<bitmap->w/32; ++fx)
{ {
for(int fy=0; fy<curd->ourImages[0].bitmap->h/32; ++fy) for(int fy=0; fy<bitmap->h/32; ++fy)
{ {
if((obj->pos.x + fx - curd->ourImages[0].bitmap->w/32+1)>=0 && (obj->pos.x + fx - curd->ourImages[0].bitmap->w/32+1)<ttiles.size()-Woff && (obj->pos.y + fy - curd->ourImages[0].bitmap->h/32+1)>=0 && (obj->pos.y + fy - curd->ourImages[0].bitmap->h/32+1)<ttiles[0].size()-Hoff) if((obj->pos.x + fx - bitmap->w/32+1)>=0 && (obj->pos.x + fx - bitmap->w/32+1)<ttiles.size()-Woff && (obj->pos.y + fy - bitmap->h/32+1)>=0 && (obj->pos.y + fy - bitmap->h/32+1)<ttiles[0].size()-Hoff)
{ {
std::vector < std::pair<const CGObjectInstance*,SDL_Rect> > & ctile = ttiles[obj->pos.x + fx - curd->ourImages[0].bitmap->w/32+1][obj->pos.y + fy - curd->ourImages[0].bitmap->h/32+1][obj->pos.z].objects; std::vector < std::pair<const CGObjectInstance*,SDL_Rect> > & ctile = ttiles[obj->pos.x + fx - bitmap->w/32+1][obj->pos.y + fy - bitmap->h/32+1][obj->pos.z].objects;
for(size_t dd=0; dd < ctile.size(); ++dd) for(size_t dd=0; dd < ctile.size(); ++dd)
{ {
if(ctile[dd].first->id==obj->id) if(ctile[dd].first->id==obj->id)
@ -1264,8 +1267,8 @@ bool CMapHandler::hideObject(const CGObjectInstance *obj)
} }
} }
} // for(int fy=0; fy<curd->ourImages[0].bitmap->h/32; ++fy) } // for(int fy=0; fy<bitmap->h/32; ++fy)
} //for(int fx=0; fx<curd->ourImages[0].bitmap->w/32; ++fx) } //for(int fx=0; fx<bitmap->w/32; ++fx)
return true; return true;
} }
bool CMapHandler::removeObject(CGObjectInstance *obj) bool CMapHandler::removeObject(CGObjectInstance *obj)