Замечания по коду
Почему-то у меня анимация криво работает, всё мигает, см. скринкаст
- Аргументы без имени https://mks2.cs.msu.ru/skajida/2048/-/blob/master/src/display/display.h#L32 . Снижает читаемость кода.
- Пробелы перед ; https://mks2.cs.msu.ru/skajida/2048/-/blob/master/src/game/game_manager.cpp#L23
- Выглядит страшно) Лучше, как ниже https://mks2.cs.msu.ru/skajida/2048/-/blob/master/src/game/game_manager.cpp#L42
Request[i * Size + j] = {
TTileAnimationState::NO_ANIMATION,
static_cast<float>(i),
static_cast<float>(j),
0.,
0.,
static_cast<ETileType>(Cells[i * Size + j]),
0.
};
- mode мог бы быть enum, было бы понятнее https://mks2.cs.msu.ru/skajida/2048/-/blob/master/src/game/game_manager.cpp#L35
- Нижние подчёркивания не используются https://mks2.cs.msu.ru/skajida/2048/-/blob/master/src/game/grid.cpp#L15
- Сокращение avail было бы логичнее https://mks2.cs.msu.ru/skajida/2048/-/blob/master/src/game/grid.cpp#L22
- Два! метода ничего не меняют, должны быть const https://mks2.cs.msu.ru/skajida/2048/-/blob/master/src/game/grid.cpp#L21
- Базовый класс должен иметь виртуальный деструктор https://mks2.cs.msu.ru/skajida/2048/-/blob/master/src/game/smart_grid.h#L13