simon PR review
This commit is contained in:
@@ -1,12 +1,72 @@
|
|||||||
#include "AppMenu.h"
|
#include "AppMenu.h"
|
||||||
|
|
||||||
|
#include "../Settings.h"
|
||||||
|
#include "../PlayerCursor.h"
|
||||||
#include "../../Utils/AssetManager.h"
|
#include "../../Utils/AssetManager.h"
|
||||||
|
|
||||||
AppMenu::AppMenu(std::shared_ptr<MenuStack> menuStack, std::shared_ptr<Settings> settings, std::shared_ptr<sf::RenderWindow> renderWindow) : menuStack(menuStack),
|
#include <stack>
|
||||||
settings(settings),
|
#include <memory>
|
||||||
renderWindow(renderWindow)
|
#include <optional>
|
||||||
{
|
#include <SFML/Graphics.hpp>
|
||||||
|
|
||||||
|
|
||||||
|
AppMenu::AppMenu(std::shared_ptr<MenuStack> menuStack, std::shared_ptr<Settings> settings, std::shared_ptr<sf::RenderWindow> renderWindow) :
|
||||||
|
menuStack(menuStack),
|
||||||
|
settings(settings),
|
||||||
|
renderWindow(renderWindow) {
|
||||||
|
|
||||||
const Asset& file = getResource(AssetName::data_fonts_pressstart_prstartk_ttf);
|
const Asset& file = getResource(AssetName::data_fonts_pressstart_prstartk_ttf);
|
||||||
|
|
||||||
this->pressStartFont = sf::Font(file.data, file.size);
|
this->pressStartFont = sf::Font(file.data, file.size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AppMenu::updateMetaBinds() {
|
||||||
|
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Key::Enter)) {
|
||||||
|
this->enterPressed = true;
|
||||||
|
this->enterReleased = false;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this->enterReleased = this->enterPressed;
|
||||||
|
this->enterPressed = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Key::Escape)) {
|
||||||
|
this->escPressed = true;
|
||||||
|
this->escReleased = false;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this->escReleased = this->escPressed;
|
||||||
|
this->escPressed = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void AppMenu::placeText(sf::Text& text, const std::optional<PlayerCursor>& playerCursor, const sf::String& string, float xPos, float yPos, const std::optional<sf::Vector2u>& cursorPos) const {
|
||||||
|
float sizeMultiplier = this->settings->getWindowSizeMultiplier();
|
||||||
|
|
||||||
|
text.setString(string);
|
||||||
|
if (playerCursor.has_value() && cursorPos.has_value()) {
|
||||||
|
text.setOutlineThickness((playerCursor.value().getPosition() == cursorPos.value()) ? (sizeMultiplier / 2) : 0);
|
||||||
|
}
|
||||||
|
text.setOrigin(sf::Vector2f({0, text.getLocalBounds().size.y / 2}));
|
||||||
|
text.setPosition(sf::Vector2f({sizeMultiplier * xPos, sizeMultiplier * yPos}));
|
||||||
|
this->renderWindow->draw(text);
|
||||||
|
}
|
||||||
|
|
||||||
|
void AppMenu::placeTitle(sf::Text& text, const std::optional<PlayerCursor>& playerCursor, const sf::String& string, float yPos, const std::optional<sf::Vector2u>& cursorPos) const {
|
||||||
|
float sizeMultiplier = this->settings->getWindowSizeMultiplier();
|
||||||
|
|
||||||
|
text.setString(string);
|
||||||
|
if (playerCursor.has_value() && cursorPos.has_value()) {
|
||||||
|
text.setOutlineThickness((playerCursor.value().getPosition() == cursorPos.value()) ? (sizeMultiplier / 2) : 0);
|
||||||
|
}
|
||||||
|
text.setOrigin({text.getLocalBounds().getCenter().x, text.getLocalBounds().size.y / 2});
|
||||||
|
text.setPosition(sf::Vector2f({sizeMultiplier * 40.f, sizeMultiplier * yPos}));
|
||||||
|
this->renderWindow->draw(text);
|
||||||
|
}
|
||||||
|
|
||||||
|
sf::Color AppMenu::getColorOfBlock(Block block, int luminosityShift) const {
|
||||||
|
Color rgbColor = BLOCKS_COLOR[block];
|
||||||
|
return sf::Color(std::clamp(rgbColor.red + luminosityShift, 0, 255),
|
||||||
|
std::clamp(rgbColor.green + luminosityShift, 0, 255),
|
||||||
|
std::clamp(rgbColor.blue + luminosityShift, 0, 255));
|
||||||
|
}
|
||||||
|
|||||||
@@ -31,54 +31,11 @@ class AppMenu {
|
|||||||
virtual void drawFrame() const = 0;
|
virtual void drawFrame() const = 0;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void updateMetaBinds() {
|
void updateMetaBinds();
|
||||||
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Key::Enter)) {
|
|
||||||
enterPressed = true;
|
|
||||||
enterReleased = false;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
enterReleased = enterPressed;
|
|
||||||
enterPressed = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Key::Escape)) {
|
void placeText(sf::Text& text, const std::optional<PlayerCursor>& playerCursor, const sf::String& string, float xPos, float yPos, const std::optional<sf::Vector2u>& cursorPos) const;
|
||||||
escPressed = true;
|
|
||||||
escReleased = false;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
escReleased = escPressed;
|
|
||||||
escPressed = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void placeText(sf::Text& text, const std::optional<PlayerCursor>& playerCursor, const sf::String& string, float xPos, float yPos, const std::optional<sf::Vector2u>& cursorPos) const {
|
void placeTitle(sf::Text& text, const std::optional<PlayerCursor>& playerCursor, const sf::String& string, float yPos, const std::optional<sf::Vector2u>& cursorPos) const;
|
||||||
float sizeMultiplier = this->settings->getWindowSizeMultiplier();
|
|
||||||
|
|
||||||
text.setString(string);
|
sf::Color getColorOfBlock(Block block, int luminosityShift) const;
|
||||||
if (playerCursor.has_value() && cursorPos.has_value()) {
|
|
||||||
text.setOutlineThickness((playerCursor.value().getPosition() == cursorPos.value()) ? (sizeMultiplier / 2) : 0);
|
|
||||||
}
|
|
||||||
text.setOrigin(sf::Vector2f({0, text.getLocalBounds().size.y / 2}));
|
|
||||||
text.setPosition(sf::Vector2f({sizeMultiplier * xPos, sizeMultiplier * yPos}));
|
|
||||||
this->renderWindow->draw(text);
|
|
||||||
}
|
|
||||||
|
|
||||||
void placeTitle(sf::Text& text, const std::optional<PlayerCursor>& playerCursor, const sf::String& string, float yPos, const std::optional<sf::Vector2u>& cursorPos) const {
|
|
||||||
float sizeMultiplier = this->settings->getWindowSizeMultiplier();
|
|
||||||
|
|
||||||
text.setString(string);
|
|
||||||
if (playerCursor.has_value() && cursorPos.has_value()) {
|
|
||||||
text.setOutlineThickness((playerCursor.value().getPosition() == cursorPos.value()) ? (sizeMultiplier / 2) : 0);
|
|
||||||
}
|
|
||||||
text.setOrigin({text.getLocalBounds().getCenter().x, text.getLocalBounds().size.y / 2});
|
|
||||||
text.setPosition(sf::Vector2f({sizeMultiplier * 40.f, sizeMultiplier * yPos}));
|
|
||||||
this->renderWindow->draw(text);
|
|
||||||
}
|
|
||||||
|
|
||||||
sf::Color getColorOfBlock(Block block, int luminosityShift) const {
|
|
||||||
Color rgbColor = BLOCKS_COLOR[block];
|
|
||||||
return sf::Color(std::clamp(rgbColor.red + luminosityShift, 0, 255),
|
|
||||||
std::clamp(rgbColor.green + luminosityShift, 0, 255),
|
|
||||||
std::clamp(rgbColor.blue + luminosityShift, 0, 255));
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ int main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifndef NDEBUG
|
#ifndef NDEBUG
|
||||||
std::cout << "IMPORTANT: you are currently in debug mode, if you wish to use bigger pieces, type 'xmake f -m release'." << std::endl;
|
std::cout << "IMPORTANT: You are currently in debug mode, if you wish to use bigger pieces, type 'xmake f -m release'." << std::endl;
|
||||||
|
|
||||||
bool everythingGenerated = true;
|
bool everythingGenerated = true;
|
||||||
for (int i = DEBUG_PIECES_SIZE; i <= RELEASE_PIECES_SIZE; i++) {
|
for (int i = DEBUG_PIECES_SIZE; i <= RELEASE_PIECES_SIZE; i++) {
|
||||||
@@ -33,7 +33,7 @@ int main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!everythingGenerated) {
|
if (!everythingGenerated) {
|
||||||
std::cout << "NOTE : you do not have all pieces generated, generating can take several minutes." << std::endl;
|
std::cout << "NOTE: You do not have all pieces generated, generating can take several minutes." << std::endl;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -70,7 +70,10 @@ int main() {
|
|||||||
|
|
||||||
|
|
||||||
void resetSettingsFile() {
|
void resetSettingsFile() {
|
||||||
std::filesystem::create_directories("data/config");
|
if (!std::filesystem::exists("data/config")) {
|
||||||
|
std::filesystem::create_directories("data/config");
|
||||||
|
}
|
||||||
|
|
||||||
std::ofstream settingsFile("data/config/settings.bin", std::ios::trunc | std::ios::binary);
|
std::ofstream settingsFile("data/config/settings.bin", std::ios::trunc | std::ios::binary);
|
||||||
char byte;
|
char byte;
|
||||||
|
|
||||||
@@ -138,7 +141,6 @@ void resetSettingsFile() {
|
|||||||
void resetKeybindFile(int layout) {
|
void resetKeybindFile(int layout) {
|
||||||
if (layout < 0 || layout > 4) return;
|
if (layout < 0 || layout > 4) return;
|
||||||
|
|
||||||
std::filesystem::create_directories("data/config/keybinds/layout");
|
|
||||||
std::ofstream layoutFile("data/config/keybinds/layout" + std::to_string(layout) + ".bin", std::ios::trunc | std::ios::binary);
|
std::ofstream layoutFile("data/config/keybinds/layout" + std::to_string(layout) + ".bin", std::ios::trunc | std::ios::binary);
|
||||||
std::map<Action, sfKey> keybinds;
|
std::map<Action, sfKey> keybinds;
|
||||||
|
|
||||||
|
|||||||
@@ -10,8 +10,6 @@
|
|||||||
#include <filesystem>
|
#include <filesystem>
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
|
|
||||||
namespace fs = std::filesystem;
|
|
||||||
|
|
||||||
|
|
||||||
PiecesFiles::PiecesFiles() {
|
PiecesFiles::PiecesFiles() {
|
||||||
}
|
}
|
||||||
@@ -135,11 +133,11 @@ bool PiecesFiles::loadPieces(int polyominoSize, std::vector<Piece>& pieces, std:
|
|||||||
bool PiecesFiles::getFilePath(int polyominoSize, std::string& filePath) const {
|
bool PiecesFiles::getFilePath(int polyominoSize, std::string& filePath) const {
|
||||||
std::string dataFolderPath = "data/pieces/";
|
std::string dataFolderPath = "data/pieces/";
|
||||||
|
|
||||||
if (!fs::exists(dataFolderPath)) {
|
if (!std::filesystem::exists(dataFolderPath)) {
|
||||||
fs::create_directories(dataFolderPath);
|
std::filesystem::create_directories(dataFolderPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!fs::is_directory(dataFolderPath)) {
|
if (!std::filesystem::is_directory(dataFolderPath)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -22,11 +22,12 @@ int main(int argc, char** argv) {
|
|||||||
std::srand(std::time(NULL));
|
std::srand(std::time(NULL));
|
||||||
|
|
||||||
#ifdef BENCHMARK
|
#ifdef BENCHMARK
|
||||||
|
#ifndef NDEBUG
|
||||||
|
std::cout << "IMPORTANT: You are currently in debug mode, debug mode has lowest optimization settings and thus yields worse benchmarking results, to switch to release mode, type 'xmake f -m debug'." << std::endl;
|
||||||
|
#endif
|
||||||
|
|
||||||
benchmarking(1, BENCHMARK_PIECES_SIZE);
|
benchmarking(1, BENCHMARK_PIECES_SIZE);
|
||||||
#else
|
#else
|
||||||
// dev: generate files if it hasn't been done before, UI will NOT generate the files
|
|
||||||
//generateFilesForAllSizes(10);
|
|
||||||
|
|
||||||
PiecesFiles pf;
|
PiecesFiles pf;
|
||||||
for (int i = 1; i <= MAXIMUM_PIECES_SIZE; i++) {
|
for (int i = 1; i <= MAXIMUM_PIECES_SIZE; i++) {
|
||||||
if (!std::filesystem::exists("data/pieces/" + std::to_string(i) + "minos.bin")) {
|
if (!std::filesystem::exists("data/pieces/" + std::to_string(i) + "minos.bin")) {
|
||||||
|
|||||||
@@ -2,28 +2,44 @@
|
|||||||
|
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
|
static const unsigned char data_fonts_pressstart_prstart_ttf[] = {
|
||||||
|
#include <data/fonts/pressstart/prstart.ttf.h>
|
||||||
|
};
|
||||||
|
|
||||||
static const unsigned char data_fonts_pressstart_prstartk_ttf[] = {
|
static const unsigned char data_fonts_pressstart_prstartk_ttf[] = {
|
||||||
#include <data/fonts/pressstart/prstartk.ttf.h>
|
#include <data/fonts/pressstart/prstartk.ttf.h>
|
||||||
};
|
};
|
||||||
|
|
||||||
static const unsigned char data_fonts_pressstart_prstart_ttf[] = {
|
static const unsigned char data_images_keybinds_Rotate180_png[] = {
|
||||||
#include <data/fonts/pressstart/prstart.ttf.h>
|
#include <data/images/keybinds/Rotate180.png.h>
|
||||||
};
|
};
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_Rotate0_png[] = {
|
static const unsigned char data_images_keybinds_Rotate0_png[] = {
|
||||||
#include <data/images/keybinds/Rotate0.png.h>
|
#include <data/images/keybinds/Rotate0.png.h>
|
||||||
};
|
};
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_Moveright_png[] = {
|
static const unsigned char data_images_keybinds_RotateCCW_png[] = {
|
||||||
#include <data/images/keybinds/Moveright.png.h>
|
#include <data/images/keybinds/RotateCCW.png.h>
|
||||||
|
};
|
||||||
|
|
||||||
|
static const unsigned char data_images_keybinds_Retry_png[] = {
|
||||||
|
#include <data/images/keybinds/Retry.png.h>
|
||||||
};
|
};
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_RotateCW_png[] = {
|
static const unsigned char data_images_keybinds_RotateCW_png[] = {
|
||||||
#include <data/images/keybinds/RotateCW.png.h>
|
#include <data/images/keybinds/RotateCW.png.h>
|
||||||
};
|
};
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_Pause_png[] = {
|
static const unsigned char data_images_keybinds_Moveright_png[] = {
|
||||||
#include <data/images/keybinds/Pause.png.h>
|
#include <data/images/keybinds/Moveright.png.h>
|
||||||
|
};
|
||||||
|
|
||||||
|
static const unsigned char data_images_keybinds_Harddrop_png[] = {
|
||||||
|
#include <data/images/keybinds/Harddrop.png.h>
|
||||||
|
};
|
||||||
|
|
||||||
|
static const unsigned char data_images_keybinds_Moveleft_png[] = {
|
||||||
|
#include <data/images/keybinds/Moveleft.png.h>
|
||||||
};
|
};
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_Hold_png[] = {
|
static const unsigned char data_images_keybinds_Hold_png[] = {
|
||||||
@@ -34,57 +50,41 @@ static const unsigned char data_images_keybinds_Softdrop_png[] = {
|
|||||||
#include <data/images/keybinds/Softdrop.png.h>
|
#include <data/images/keybinds/Softdrop.png.h>
|
||||||
};
|
};
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_RotateCCW_png[] = {
|
static const unsigned char data_images_keybinds_Pause_png[] = {
|
||||||
#include <data/images/keybinds/RotateCCW.png.h>
|
#include <data/images/keybinds/Pause.png.h>
|
||||||
};
|
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_Moveleft_png[] = {
|
|
||||||
#include <data/images/keybinds/Moveleft.png.h>
|
|
||||||
};
|
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_Rotate180_png[] = {
|
|
||||||
#include <data/images/keybinds/Rotate180.png.h>
|
|
||||||
};
|
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_Retry_png[] = {
|
|
||||||
#include <data/images/keybinds/Retry.png.h>
|
|
||||||
};
|
|
||||||
|
|
||||||
static const unsigned char data_images_keybinds_Harddrop_png[] = {
|
|
||||||
#include <data/images/keybinds/Harddrop.png.h>
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const Asset assets[] = {
|
static const Asset assets[] = {
|
||||||
{data_fonts_pressstart_prstartk_ttf, sizeof(data_fonts_pressstart_prstartk_ttf)},
|
|
||||||
{data_fonts_pressstart_prstart_ttf, sizeof(data_fonts_pressstart_prstart_ttf)},
|
{data_fonts_pressstart_prstart_ttf, sizeof(data_fonts_pressstart_prstart_ttf)},
|
||||||
|
{data_fonts_pressstart_prstartk_ttf, sizeof(data_fonts_pressstart_prstartk_ttf)},
|
||||||
|
{data_images_keybinds_Rotate180_png, sizeof(data_images_keybinds_Rotate180_png)},
|
||||||
{data_images_keybinds_Rotate0_png, sizeof(data_images_keybinds_Rotate0_png)},
|
{data_images_keybinds_Rotate0_png, sizeof(data_images_keybinds_Rotate0_png)},
|
||||||
{data_images_keybinds_Moveright_png, sizeof(data_images_keybinds_Moveright_png)},
|
{data_images_keybinds_RotateCCW_png, sizeof(data_images_keybinds_RotateCCW_png)},
|
||||||
|
{data_images_keybinds_Retry_png, sizeof(data_images_keybinds_Retry_png)},
|
||||||
{data_images_keybinds_RotateCW_png, sizeof(data_images_keybinds_RotateCW_png)},
|
{data_images_keybinds_RotateCW_png, sizeof(data_images_keybinds_RotateCW_png)},
|
||||||
{data_images_keybinds_Pause_png, sizeof(data_images_keybinds_Pause_png)},
|
{data_images_keybinds_Moveright_png, sizeof(data_images_keybinds_Moveright_png)},
|
||||||
|
{data_images_keybinds_Harddrop_png, sizeof(data_images_keybinds_Harddrop_png)},
|
||||||
|
{data_images_keybinds_Moveleft_png, sizeof(data_images_keybinds_Moveleft_png)},
|
||||||
{data_images_keybinds_Hold_png, sizeof(data_images_keybinds_Hold_png)},
|
{data_images_keybinds_Hold_png, sizeof(data_images_keybinds_Hold_png)},
|
||||||
{data_images_keybinds_Softdrop_png, sizeof(data_images_keybinds_Softdrop_png)},
|
{data_images_keybinds_Softdrop_png, sizeof(data_images_keybinds_Softdrop_png)},
|
||||||
{data_images_keybinds_RotateCCW_png, sizeof(data_images_keybinds_RotateCCW_png)},
|
{data_images_keybinds_Pause_png, sizeof(data_images_keybinds_Pause_png)},
|
||||||
{data_images_keybinds_Moveleft_png, sizeof(data_images_keybinds_Moveleft_png)},
|
|
||||||
{data_images_keybinds_Rotate180_png, sizeof(data_images_keybinds_Rotate180_png)},
|
|
||||||
{data_images_keybinds_Retry_png, sizeof(data_images_keybinds_Retry_png)},
|
|
||||||
{data_images_keybinds_Harddrop_png, sizeof(data_images_keybinds_Harddrop_png)},
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const std::map<std::string, AssetName> assetMap = {
|
static const std::map<std::string, AssetName> assetMap = {
|
||||||
{"data/fonts/pressstart/prstartk.ttf", AssetName::data_fonts_pressstart_prstartk_ttf},
|
|
||||||
{"data/fonts/pressstart/prstart.ttf", AssetName::data_fonts_pressstart_prstart_ttf},
|
{"data/fonts/pressstart/prstart.ttf", AssetName::data_fonts_pressstart_prstart_ttf},
|
||||||
|
{"data/fonts/pressstart/prstartk.ttf", AssetName::data_fonts_pressstart_prstartk_ttf},
|
||||||
|
{"data/images/keybinds/Rotate180.png", AssetName::data_images_keybinds_Rotate180_png},
|
||||||
{"data/images/keybinds/Rotate0.png", AssetName::data_images_keybinds_Rotate0_png},
|
{"data/images/keybinds/Rotate0.png", AssetName::data_images_keybinds_Rotate0_png},
|
||||||
{"data/images/keybinds/Moveright.png", AssetName::data_images_keybinds_Moveright_png},
|
{"data/images/keybinds/RotateCCW.png", AssetName::data_images_keybinds_RotateCCW_png},
|
||||||
|
{"data/images/keybinds/Retry.png", AssetName::data_images_keybinds_Retry_png},
|
||||||
{"data/images/keybinds/RotateCW.png", AssetName::data_images_keybinds_RotateCW_png},
|
{"data/images/keybinds/RotateCW.png", AssetName::data_images_keybinds_RotateCW_png},
|
||||||
{"data/images/keybinds/Pause.png", AssetName::data_images_keybinds_Pause_png},
|
{"data/images/keybinds/Moveright.png", AssetName::data_images_keybinds_Moveright_png},
|
||||||
|
{"data/images/keybinds/Harddrop.png", AssetName::data_images_keybinds_Harddrop_png},
|
||||||
|
{"data/images/keybinds/Moveleft.png", AssetName::data_images_keybinds_Moveleft_png},
|
||||||
{"data/images/keybinds/Hold.png", AssetName::data_images_keybinds_Hold_png},
|
{"data/images/keybinds/Hold.png", AssetName::data_images_keybinds_Hold_png},
|
||||||
{"data/images/keybinds/Softdrop.png", AssetName::data_images_keybinds_Softdrop_png},
|
{"data/images/keybinds/Softdrop.png", AssetName::data_images_keybinds_Softdrop_png},
|
||||||
{"data/images/keybinds/RotateCCW.png", AssetName::data_images_keybinds_RotateCCW_png},
|
{"data/images/keybinds/Pause.png", AssetName::data_images_keybinds_Pause_png},
|
||||||
{"data/images/keybinds/Moveleft.png", AssetName::data_images_keybinds_Moveleft_png},
|
|
||||||
{"data/images/keybinds/Rotate180.png", AssetName::data_images_keybinds_Rotate180_png},
|
|
||||||
{"data/images/keybinds/Retry.png", AssetName::data_images_keybinds_Retry_png},
|
|
||||||
{"data/images/keybinds/Harddrop.png", AssetName::data_images_keybinds_Harddrop_png},
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -9,19 +9,19 @@ struct Asset {
|
|||||||
};
|
};
|
||||||
|
|
||||||
enum class AssetName {
|
enum class AssetName {
|
||||||
data_fonts_pressstart_prstartk_ttf,
|
|
||||||
data_fonts_pressstart_prstart_ttf,
|
data_fonts_pressstart_prstart_ttf,
|
||||||
|
data_fonts_pressstart_prstartk_ttf,
|
||||||
|
data_images_keybinds_Rotate180_png,
|
||||||
data_images_keybinds_Rotate0_png,
|
data_images_keybinds_Rotate0_png,
|
||||||
data_images_keybinds_Moveright_png,
|
data_images_keybinds_RotateCCW_png,
|
||||||
|
data_images_keybinds_Retry_png,
|
||||||
data_images_keybinds_RotateCW_png,
|
data_images_keybinds_RotateCW_png,
|
||||||
data_images_keybinds_Pause_png,
|
data_images_keybinds_Moveright_png,
|
||||||
|
data_images_keybinds_Harddrop_png,
|
||||||
|
data_images_keybinds_Moveleft_png,
|
||||||
data_images_keybinds_Hold_png,
|
data_images_keybinds_Hold_png,
|
||||||
data_images_keybinds_Softdrop_png,
|
data_images_keybinds_Softdrop_png,
|
||||||
data_images_keybinds_RotateCCW_png,
|
data_images_keybinds_Pause_png,
|
||||||
data_images_keybinds_Moveleft_png,
|
|
||||||
data_images_keybinds_Rotate180_png,
|
|
||||||
data_images_keybinds_Retry_png,
|
|
||||||
data_images_keybinds_Harddrop_png,
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
30
xmake.lua
30
xmake.lua
@@ -13,6 +13,19 @@ target("core")
|
|||||||
add_files("src/Pieces/*.cpp")
|
add_files("src/Pieces/*.cpp")
|
||||||
add_files("src/Core/*.cpp")
|
add_files("src/Core/*.cpp")
|
||||||
|
|
||||||
|
target("text")
|
||||||
|
set_default(false)
|
||||||
|
set_kind("binary")
|
||||||
|
add_files("./src/TextUI/*.cpp")
|
||||||
|
add_deps("core")
|
||||||
|
|
||||||
|
target("benchmark")
|
||||||
|
set_default(false)
|
||||||
|
set_kind("binary")
|
||||||
|
add_files("./src/TextUI/*.cpp")
|
||||||
|
add_deps("core")
|
||||||
|
add_defines("BENCHMARK")
|
||||||
|
|
||||||
target("graph")
|
target("graph")
|
||||||
set_default(true)
|
set_default(true)
|
||||||
add_rules("bin2c", {
|
add_rules("bin2c", {
|
||||||
@@ -26,18 +39,13 @@ target("graph")
|
|||||||
add_deps("core")
|
add_deps("core")
|
||||||
add_packages("sfml")
|
add_packages("sfml")
|
||||||
|
|
||||||
target("text")
|
if is_mode("release") then
|
||||||
set_default(false)
|
add_defines("NDEBUG")
|
||||||
set_kind("binary")
|
end
|
||||||
add_files("./src/TextUI/*.cpp")
|
|
||||||
add_deps("core")
|
|
||||||
|
|
||||||
target("benchmark")
|
if is_plat("mingw") then
|
||||||
set_default(false)
|
add_ldflags("-static-libstdc++")
|
||||||
set_kind("binary")
|
end
|
||||||
add_files("./src/TextUI/*.cpp")
|
|
||||||
add_deps("core")
|
|
||||||
add_defines("BENCHMARK")
|
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
|
|||||||
Reference in New Issue
Block a user