Otóż piszę sobie mini grę i mam problem z wyświetlaniem. Program strasznie się przycina w przypadku 1 gdy załaduje mapę z pliku.
public void rysujMape(Graphics g)
{
StreamReader sr = new StreamReader("mapflags.txt");
Bitmap ne;
for (int i = 0; i < 20; i++)
{
for (int j = 0; j < 20; j++)
{
float fx = i;
float fy = j;
ne = new Bitmap(@"gfx/" + sr.ReadLine());
if (gameMatrix[i, j] == 1)
{
g.DrawImage(image2, 50+i *elementSize, 50+j*elementSize,elementSize,elementSize);
}
if (gameMatrix[i, j] == 2)
{
Bitmap ziemia = new Bitmap(titleMapY[i]);
Bitmap ziemiaX = new Bitmap(titleMapX[j]);
g.FillRectangle(Brushes.Red, 50 + j * elementSize,
50 + i * elementSize, elementSize, elementSize);
// g.DrawImage(ziemia, 50 + fx * elementSize, 50 + fy * elementSize, elementSize, elementSize);
// g.DrawImage(ziemiaX, 50 + fx * elementSize, 50 + fy * elementSize, elementSize, elementSize);
ziemia = null;
ziemiaX = null;
}
}
}
}
W pliku mapflags.txt znajduje się około 400 linii. W każdej linii jest tekst typu (101.jpg,102,jpg...) są to nazwy plików które mają zostać wyświetlone.
Ładnie jest wszystko narysowane lecz strasznie się tnie. Jak to inaczej uporządkować ?
A w przypadku 2 wszystko ładnie działa ale jest tylko jedna tekstura ;/
// Bitmap ne;
for (int i = 0; i < 20; i++)
{
for (int j = 0; j < 20; j++)
{
float fx = i;
float fy = j;
//ne = new Bitmap(@"gfx/" + sr.ReadLine());
g.DrawImage(image1, 50 + fx * elementSize, 50 + fy * elementSize, elementSize, elementSize);
// g.DrawRectangle(new Pen(Brushes.Brown), 50 + j * elementSize,
// 50 + i * elementSize, elementSize, elementSize);
// g.DrawImage(ne, 50 + i * elementSize, 50 + j * elementSize, elementSize, elementSize);
if (gameMatrix[i, j] == 1)
{
//g.FillRectangle(Brushes.Black, 50 + j * elementSize,
// 50 + i * elementSize, elementSize, elementSize);
g.DrawImage(image2, 50+i *elementSize, 50+j*elementSize,elementSize,elementSize);
}
if (gameMatrix[i, j] == 2)
{
Bitmap ziemia = new Bitmap(titleMapY[i]);
Bitmap ziemiaX = new Bitmap(titleMapX[j]);
g.FillRectangle(Brushes.Red, 50 + j * elementSize,
50 + i * elementSize, elementSize, elementSize);
// g.DrawImage(ziemia, 50 + fx * elementSize, 50 + fy * elementSize, elementSize, elementSize);
// g.DrawImage(ziemiaX, 50 + fx * elementSize, 50 + fy * elementSize, elementSize, elementSize);
ziemia = null;
ziemiaX = null;
}
}
}