--- a/src/spriteloader/grf.cpp Wed Jun 13 12:05:56 2007 +0000
+++ b/src/spriteloader/grf.cpp Tue Jun 19 07:21:01 2007 +0000
@@ -1,10 +1,14 @@
+/* $Id$ */
+
+/** @file grf.cpp */
+
#include "../stdafx.h"
#include "../gfx.h"
#include "../fileio.h"
#include "../debug.h"
#include "grf.hpp"
-bool SpriteLoaderGrf::LoadSprite(SpriteLoader::Sprite *sprite, uint32 file_pos)
+bool SpriteLoaderGrf::LoadSprite(SpriteLoader::Sprite *sprite, const char *filename, uint32 file_pos)
{
/* Open the right file and go to the correct position */
FioSeekToFile(file_pos);
@@ -91,6 +95,10 @@
sprite->data[i].m = dest[i];
}
+ /* Make sure to mark all transparent pixels transparent on the alpha channel too */
+ for (int i = 0; i < sprite->width * sprite->height; i++)
+ if (sprite->data[i].m != 0) sprite->data[i].a = 0xFF;
+
free(dest_orig);
return true;
}