diff --git a/desktop_version/src/Graphics.cpp b/desktop_version/src/Graphics.cpp index 2aadc234..1b0a1106 100644 --- a/desktop_version/src/Graphics.cpp +++ b/desktop_version/src/Graphics.cpp @@ -1398,6 +1398,16 @@ void Graphics::drawentities() SDL_Rect drawRect; + std::vector *tilesvec; + if (map.custommode) + { + tilesvec = &entcolours; + } + else + { + tilesvec = &tiles; + } + trinketcolset = false; for (int i = obj.entities.size() - 1; i >= 0; i--) @@ -1525,23 +1535,13 @@ void Graphics::drawentities() drawRect = tiles_rect; drawRect.x += tpoint.x; drawRect.y += tpoint.y; - if(map.custommode){ - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - }else{ - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - } + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); } else if (obj.entities[i].size == 3) // Big chunky pixels! { @@ -1589,39 +1589,21 @@ void Graphics::drawentities() drawRect.x += tpoint.x; drawRect.y += tpoint.y; - if(map.custommode){ - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(entcolours[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - }else{ - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - drawRect.x += 8; - BlitSurfaceStandard(tiles[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); - } + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); + drawRect.x += 8; + BlitSurfaceStandard((*tilesvec)[obj.entities[i].drawframe],NULL, backBuffer, &drawRect); } else if (obj.entities[i].size == 9) // Really Big Sprite! (2x2) {