CMAKE changes
This commit is contained in:
+2
-4
@@ -4,8 +4,6 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
project(snake)
|
||||
|
||||
include_directories(include)
|
||||
|
||||
set(SOURCES
|
||||
src/main.cpp
|
||||
src/element.cpp
|
||||
@@ -13,6 +11,6 @@ set(SOURCES
|
||||
)
|
||||
add_executable(snake ${SOURCES})
|
||||
|
||||
target_include_directories(snake PRIVATE include)
|
||||
find_package(Curses REQUIRED)
|
||||
include_directories(${CURSES_INCLUDE_DIR})
|
||||
target_link_libraries(snake ${CURSES_LIBRARIES})
|
||||
target_link_libraries(snake PRIVATE ${CURSES_LIBRARIES})
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
#ifndef ELEMENT_HPP
|
||||
#define ELEMENT_HPP
|
||||
|
||||
#include <cstdint>
|
||||
#include <vector>
|
||||
#include "globals.hpp"
|
||||
|
||||
@@ -25,11 +26,11 @@ public:
|
||||
void run();
|
||||
|
||||
private:
|
||||
Window* win;
|
||||
std::vector<Vector2i> buf;
|
||||
bool running = true;
|
||||
enum Direction m_dir;
|
||||
int m_score = 0;
|
||||
Window* win;
|
||||
uint8_t m_score = 0;
|
||||
void process_input();
|
||||
void determine_index_zero_pos();
|
||||
void move_tail_indicies();
|
||||
|
||||
+6
-6
@@ -1,9 +1,9 @@
|
||||
#ifndef GLOBALS_HPP
|
||||
#define GLOBALS_HPP
|
||||
#define ROW 11
|
||||
#define COL 11
|
||||
#define MAX_LEN (ROW * COL) + 3
|
||||
#define HEAD 0
|
||||
#define PREVIOUS_HEAD 1
|
||||
#define FRUIT 2
|
||||
constexpr int ROW = 11;
|
||||
constexpr int COL = 11;
|
||||
constexpr int MAX_LEN = (ROW * COL) + 3;
|
||||
constexpr int HEAD = 0;
|
||||
constexpr int PREVIOUS_HEAD = 1;
|
||||
constexpr int FRUIT = 2;
|
||||
#endif // GLOBALS_HPP
|
||||
|
||||
+2
-4
@@ -99,15 +99,13 @@ void SnakeGame::on_fruit_eaten(Vector2i (*board)[COL]) {
|
||||
col = (rand() % COL);
|
||||
} while (board[row][col].id != '.');
|
||||
buf[FRUIT].set(row, col);
|
||||
buf.insert(buf.begin() + 3, Vector2i { ROW, COL, '@' });
|
||||
buf.insert(buf.begin() + 3, Vector2i { ROW, COL, '~' });
|
||||
m_score++;
|
||||
}
|
||||
|
||||
bool SnakeGame::segment_overlap() {
|
||||
for(int i : std::ranges::views::iota(3, (int)buf.size())) {
|
||||
if( buf[i].y == buf[HEAD].y &&
|
||||
buf[i].x == buf[HEAD].x)
|
||||
{
|
||||
if( buf[i].y == buf[HEAD].y && buf[i].x == buf[HEAD].x) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,7 +25,6 @@ void Window::draw_display() {
|
||||
|
||||
void Window::update_display(std::vector<Vector2i> &buf) {
|
||||
for(int i : std::ranges::views::iota(0, (int)buf.size())) {
|
||||
// if(i == 1 || buf[i]->y > ROW - 1 || buf[i]->x > COL - 1) continue;
|
||||
if(i == 1) continue;
|
||||
board[buf[i].y][buf[i].x].id = buf[i].id;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user