1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
void Labyrinth_Painter()
{
int i=0, j=0, NewX=0, NewY=0;
RECT rectObst, rectPath, rectM, rectL, rectO, rectMWon;
if (d3ddev->BeginScene())
{
//erase the entire background
d3ddev->ColorFill(backbuffer, NULL, D3DCOLOR_XRGB(0,0,0));
//d3ddev->StretchRect(back, NULL, backbuffer, NULL, D3DTEXF_NONE);
//draw the sprite
//d3ddev->StretchRect(kitty_image[kitty.curframe], NULL, backbuffer, &rect, D3DTEXF_NONE);
for (i = 0; i <20; i++)
{
for(j = 0; j < 50; j++)
{
if (Labyrinth[i][j]=='*')
{
d3ddev->StretchRect(Obstacle_Image, NULL, backbuffer, &rectObst, D3DTEXF_NONE);
rectObst.left = Obstacle.x+NewX ;
rectObst.right = Obstacle.x + Obstacle.width+NewX;
rectObst.top = Obstacle.y+NewY;
rectObst.bottom = Obstacle.y + Obstacle.height+NewY;
}
if (Labyrinth[i][j]=='.')
{
d3ddev->StretchRect(PathImage, NULL, backbuffer, &rectPath, D3DTEXF_NONE);
rectPath.left = PathBlock.x+NewX ;
rectPath.right = PathBlock.x + PathBlock.width+NewX;
rectPath.top = PathBlock.y+NewY;
rectPath.bottom = PathBlock.y + PathBlock.height+NewY;
}
if (Labyrinth[i][j]=='M')
{
d3ddev->StretchRect(MpamphsImage, NULL, backbuffer, &rectM, D3DTEXF_NONE);
rectM.left = Mpamphs.x+NewX ;
rectM.right = Mpamphs.x + Mpamphs.width+NewX;
rectM.top = Mpamphs.y+NewY;
rectM.bottom = Mpamphs.y + Mpamphs.height+NewY;
}
if (Labyrinth[i][j]=='L')
{
d3ddev->StretchRect(LuciusImage, NULL, backbuffer, &rectL, D3DTEXF_NONE);
rectL.left = Lucius.x+NewX ;
rectL.right = Lucius.x + Lucius.width+NewX;
rectL.top = Lucius.y+NewY;
rectL.bottom = Lucius.y + Lucius.height+NewY;
}
if (Labyrinth[i][j]=='O')
{
d3ddev->StretchRect(PetradiImage, NULL, backbuffer, &rectO, D3DTEXF_NONE);
rectO.left = Petradi.x+NewX ;
rectO.right = Petradi.x + Petradi.width+NewX;
rectO.top = Petradi.y+NewY;
rectO.bottom = Petradi.y + Petradi.height+NewY;
}
NewX=NewX+21;
}
NewY=NewY+21;
NewX=0;
}
//if (MpamphsWon==true || LuciusWon==true)
//{
d3ddev->StretchRect(MpamphsWonImage, NULL, backbuffer, &rectMWon, D3DTEXF_NONE);
rectMWon.left = 0 ;
rectMWon.right = 1046;
rectMWon.top = 400;
rectMWon.bottom = 460;
//}
//stop rendering
d3ddev->EndScene();
}
}
| |