MXVK Vulkan Framework
0.35.0
C++20 Vulkan rendering framework for practical 2D and 3D application development with SDL3.
Loading...
Searching...
No Matches
game_grid.cpp
Go to the documentation of this file.
1
#include "
game_grid.hpp
"
2
3
#include <cstddef>
4
5
namespace
mutatris
{
6
7
GameGrid::GameGrid
() :
gamePiece
(this) {}
8
9
void
GameGrid::initGrid
(
int
width
,
int
height
) {
10
gridWidth =
width
;
11
gridHeight =
height
;
12
cells.assign(
static_cast<
std::size_t
>
(
width
*
height
), {});
13
gamePiece
.
reset
();
14
}
15
16
Block
*
GameGrid::at
(
int
x,
int
y) {
17
if
(x < 0 || x >= gridWidth || y < 0 || y >= gridHeight) {
18
return
nullptr
;
19
}
20
return
&cells[
static_cast<
std::size_t
>
(y * gridWidth + x)];
21
}
22
23
const
Block
*
GameGrid::at
(
int
x,
int
y)
const
{
24
if
(x < 0 || x >= gridWidth || y < 0 || y >= gridHeight) {
25
return
nullptr
;
26
}
27
return
&cells[
static_cast<
std::size_t
>
(y * gridWidth + x)];
28
}
29
30
bool
GameGrid::canMoveDown
()
const
{
return
gamePiece
.
getDirection
() == 3 ||
gamePiece
.
checkLocation
(
gamePiece
.
getX
(),
gamePiece
.
getY
()) ||
gamePiece
.
getY
() != 0; }
31
32
}
// namespace mutatris
mutatris::GameGrid::width
int width() const
Definition
game_grid.hpp:18
mutatris::GameGrid::canMoveDown
bool canMoveDown() const
Definition
game_grid.cpp:30
mutatris::GameGrid::initGrid
void initGrid(int width, int height)
Definition
game_grid.cpp:9
mutatris::GameGrid::gamePiece
Piece gamePiece
Definition
game_grid.hpp:22
mutatris::GameGrid::height
int height() const
Definition
game_grid.hpp:19
mutatris::GameGrid::GameGrid
GameGrid()
Definition
game_grid.cpp:7
mutatris::GameGrid::at
Block * at(int x, int y)
Definition
game_grid.cpp:16
mutatris::Piece::getY
int getY() const
Definition
piece.hpp:28
mutatris::Piece::checkLocation
bool checkLocation(int next_x, int next_y) const
Definition
piece.cpp:31
mutatris::Piece::getX
int getX() const
Definition
piece.hpp:27
mutatris::Piece::getDirection
int getDirection() const
Definition
piece.hpp:29
mutatris::Piece::reset
void reset()
Definition
piece.cpp:13
game_grid.hpp
mutatris
Definition
common.hpp:6
mutatris::Block
Definition
common.hpp:43
examples
mutatris
game_grid.cpp
Generated by
1.18.0