Code: Select all
Game::Game( MainWindow& wnd )
:
wnd( wnd ),
gfx( wnd )
{
}
void Game::Go()
{
gfx.BeginFrame();
UpdateModel();
ComposeFrame();
gfx.EndFrame();
}
void Game::UpdateModel()
{
boxType(100, 50);
boxType(300, 400);
boxType(200, 250);
moveIng();
x =x+ vx ;
}
void Game::ComposeFrame()
{
gfx.PutPixel(x + 10, y, 0, 255, gb);
gfx.PutPixel(x + 11, y, 0, 255, gb);
gfx.PutPixel(x + 12, y, 0, 255, gb);
gfx.PutPixel(x + 13, y, 0, 255, gb);
gfx.PutPixel(x + 14, y, 0, 255, gb);
gfx.PutPixel(x + 15, y, 0, 255, gb);
gfx.PutPixel(x + 16, y, 0, 255, gb);
gfx.PutPixel(x + 17, y, 0, 255, gb);
gfx.PutPixel(x + 18, y, 0, 255, gb);
gfx.PutPixel(x + 19, y, 0, 255, gb);
gfx.PutPixel(x + 20, y, 0, 255, gb);
gfx.PutPixel(x + 10, y + 10, 0, 255, gb);
gfx.PutPixel(x + 11, y + 10, 0, 255, gb);
gfx.PutPixel(x + 12, y + 10, 0, 255, gb);
gfx.PutPixel(x + 13, y + 10, 0, 255, gb);
gfx.PutPixel(x + 14, y + 10, 0, 255, gb);
gfx.PutPixel(x + 15, y + 10, 0, 255, gb);
gfx.PutPixel(x + 16, y + 10, 0, 255, gb);
gfx.PutPixel(x + 17, y + 10, 0, 255, gb);
gfx.PutPixel(x + 18, y + 10, 0, 255, gb);
gfx.PutPixel(x + 19, y + 10, 0, 255, gb);
gfx.PutPixel(x + 20, y + 10, 0, 255, gb);
gfx.PutPixel(x + 10, y, 0, 255, gb);
gfx.PutPixel(x + 10, y + 1, 0, 255, gb);
gfx.PutPixel(x + 10, y + 2, 0, 255, gb);
gfx.PutPixel(x + 10, y + 3, 0, 255, gb);
gfx.PutPixel(x + 10, y + 4, 0, 255, gb);
gfx.PutPixel(x + 10, y + 5, 0, 255, gb);
gfx.PutPixel(x + 10, y + 6, 0, 255, gb);
gfx.PutPixel(x + 10, y + 7, 0, 255, gb);
gfx.PutPixel(x + 10, y + 8, 0, 255, gb);
gfx.PutPixel(x + 10, y + 9, 0, 255, gb);
gfx.PutPixel(x + 10, y + 10, 0, 255, gb);
gfx.PutPixel(x + 20, y, 0, 255, gb);
gfx.PutPixel(x + 20, y + 1, 0, 255, gb);
gfx.PutPixel(x + 20, y + 2, 0, 255, gb);
gfx.PutPixel(x + 20, y + 3, 0, 255, gb);
gfx.PutPixel(x + 20, y + 4, 0, 255, gb);
gfx.PutPixel(x + 20, y + 5, 0, 255, gb);
gfx.PutPixel(x + 20, y + 6, 0, 255, gb);
gfx.PutPixel(x + 20, y + 7, 0, 255, gb);
gfx.PutPixel(x + 20, y + 8, 0, 255, gb);
gfx.PutPixel(x + 20, y + 9, 0, 255, gb);
gfx.PutPixel(x + 20, y + 10, 0, 255, gb);
}
void Game::boxType(int x , int y)
{
gfx.PutPixel(x + 10, y, 0, 255, 0);
gfx.PutPixel(x + 11, y, 0, 255, 0);
gfx.PutPixel(x + 12, y, 0, 255, 0);
gfx.PutPixel(x + 13, y, 0, 255, 0);
gfx.PutPixel(x + 14, y, 0, 255, 0);
gfx.PutPixel(x + 15, y, 0, 255, 0);
gfx.PutPixel(x + 16, y, 0, 255, 0);
gfx.PutPixel(x + 17, y, 0, 255, 0);
gfx.PutPixel(x + 18, y, 0, 255, 0);
gfx.PutPixel(x + 19, y, 0, 255, 0);
gfx.PutPixel(x + 20, y, 0, 255, 0);
gfx.PutPixel(x + 10, y + 10, 0, 255, 0);
gfx.PutPixel(x + 11, y + 10, 0, 255, 0);
gfx.PutPixel(x + 12, y + 10, 0, 255, 0);
gfx.PutPixel(x + 13, y + 10, 0, 255, 0);
gfx.PutPixel(x + 14, y + 10, 0, 255, 0);
gfx.PutPixel(x + 15, y + 10, 0, 255, 0);
gfx.PutPixel(x + 16, y + 10, 0, 255, 0);
gfx.PutPixel(x + 17, y + 10, 0, 255, 0);
gfx.PutPixel(x + 18, y + 10, 0, 255, 0);
gfx.PutPixel(x + 19, y + 10, 0, 255, 0);
gfx.PutPixel(x + 20, y + 10, 0, 255, 0);
gfx.PutPixel(x + 10, y, 0, 255, 0);
gfx.PutPixel(x + 10, y + 1, 0, 255, 0);
gfx.PutPixel(x + 10, y + 2, 0, 255, 0);
gfx.PutPixel(x + 10, y + 3, 0, 255, 0);
gfx.PutPixel(x + 10, y + 4, 0, 255, 0);
gfx.PutPixel(x + 10, y + 5, 0, 255, 0);
gfx.PutPixel(x + 10, y + 6, 0, 255, 0);
gfx.PutPixel(x + 10, y + 7, 0, 255, 0);
gfx.PutPixel(x + 10, y + 8, 0, 255, 0);
gfx.PutPixel(x + 10, y + 9, 0, 255, 0);
gfx.PutPixel(x + 10, y + 10, 0, 255, 0);
gfx.PutPixel(x + 20, y, 0, 255, 0);
gfx.PutPixel(x + 20, y + 1, 0, 255, 0);
gfx.PutPixel(x + 20, y + 2, 0, 255, 0);
gfx.PutPixel(x + 20, y + 3, 0, 255, 0);
gfx.PutPixel(x + 20, y + 4, 0, 255, 0);
gfx.PutPixel(x + 20, y + 5, 0, 255, 0);
gfx.PutPixel(x + 20, y + 6, 0, 255, 0);
gfx.PutPixel(x + 20, y + 7, 0, 255, 0);
gfx.PutPixel(x + 20, y + 8, 0, 255, 0);
gfx.PutPixel(x + 20, y + 9, 0, 255, 0);
gfx.PutPixel(x + 20, y + 10, 0, 255, 0);
}
May I know why "else { stop = false;}" is needed for the box to keep increasing in moving speed when press UP?
Code: Select all
void Game::moveIng()
{
boxType(400, 500);
if (wnd.kbd.KeyIsPressed(VK_RIGHT))
{
if (stop)
{
}
else
{ vx = vx + 1; stop = true;
}
}
else
{
stop = false;
}
}