This commit is contained in:
DarthMooMancer
2025-09-25 21:11:34 -04:00
parent 119c1422c0
commit abef01d7b8
5 changed files with 218 additions and 92 deletions
+117 -18
View File
@@ -6,6 +6,7 @@
#include "input.hpp"
int main () {
// int g = 0;
std::srand(std::time(0));
Window window;
Input input;
@@ -15,17 +16,115 @@ int main () {
Point* segments[ROW * COL] = {};
segments[0] = new Point { 5, 5, '*', 1 };
segments[1] = new Point { 6, 5, '@', 0 };
segments[2] = new Point { 3, 5, '@', 0 };
segments[3] = new Point { 4, 5, '@', 0 };
segments[4] = new Point { 5, 5, '@', 0 };
segments[5] = new Point { 6, 5, '@', 0 };
// segments[3] = new Point { 4, 5, '@', 0 };
// segments[4] = new Point { 5, 5, '@', 0 };
// segments[5] = new Point { 6, 5, '@', 0 };
std::thread input_thread(
&Input::get_input, &input,
std::ref(segments[0]->m_direction),
std::ref(running),
std::ref(_score));
for(int i = 0; i < 10; i++) {
if(segments[i] != nullptr) segments[i]->to_string();
else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
}
std::cout << "\n";
Point* index;
for(int i = 10; i >= 2; i--) {
if(segments[i] == nullptr) {
index = segments[i - 1];
continue;
}
segments[i] = segments[i - 1];
}
while (running) {
get_new_pos(window.m_board, segments);
check_new_tail(segments);
segments[2] = index;
for(int i = 0; i < 10; i++) {
if(segments[i] != nullptr) segments[i]->to_string();
else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
}
std::cout << "\n";
segments[6] = new Point { 0, 0, '@', 0 };
for(int i = 0; i < 10; i++) {
if(segments[i] != nullptr) segments[i]->to_string();
else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
}
std::cout << "\n";
for(int i = 10; i >= 2; i--) {
if(segments[i] == nullptr) {
index = segments[i - 1];
continue;
}
segments[i] = segments[i - 1];
}
segments[2] = index;
for(int i = 0; i < 10; i++) {
if(segments[i] != nullptr) segments[i]->to_string();
else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
}
std::cout << "\n";
// segments[2]->set_new_point(new_row, new_col);
// move_tail_indicies(segments);
// for(int i = 0; i < 10; i++) {
// if(segments[i] != nullptr) segments[i]->to_string();
// else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
// }
// std::cout << "\n";
// for(int i = ROW * COL; i > 0; i--) {
// if(segments[i] == nullptr) continue;
// if(segments[i] != nullptr) {
// segments[i] = new Point{ 10, 10, '*', 0 };
// break;
// }
// }
// for(int i = 0; i < 10; i++) {
// if(segments[i] != nullptr) segments[i]->to_string();
// else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
// }
// std::cout << "\n";
// move_tail_indicies(segments);
// for(int i = 0; i < 10; i++) {
// if(segments[i] != nullptr) segments[i]->to_string();
// else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
// }
// std::cout << "\n";
// move_tail_indicies(segments);
// for(int i = 0; i < 10; i++) {
// if(segments[i] != nullptr) segments[i]->to_string();
// else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
// }
// std::cout << "\n";
// std::thread input_thread(
// &Input::get_input, &input,
// std::ref(segments[0]->m_direction),
// std::ref(running),
// std::ref(_score));
// while (g < 5) {
// while (running) {
// for(int i = 0; i < 10; i++) {
// if(segments[i] != nullptr) segments[i]->to_string();
// else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
// }
// std::cout << "\n";
// determine_index_zero_pos(window.m_board, segments);
// move_tail_indicies(segments);
// g++;
// for(int i = 0; i < ROW; i++) {
// for(int j = 0; j < COL; j++) {
// if(window.m_board[i][j] == nullptr) std::cout << "0 ";
// if(window.m_board[i][j] != nullptr) std::cout << "p ";
// }
// std::cout << "\r\n";
// if(segments[i] != nullptr) segments[i]->to_string();
// else if(segments[i] == nullptr) std::cout << "NULLPTR" << "\n";
// }
// std::cout << "\n";
// segments[0]->to_string();
// segments[1]->to_string();
// check_new_tail(segments);
// body.check_new_tail();
// if(body.m_body.size() >= (ROW * COL)) {
// std::cout << "You win! Score: " + std::to_string(body.m_body.size()) << std::endl;
@@ -39,16 +138,16 @@ int main () {
// body.get_new_pos(head);
//
// head.m_previous_head.set_new_point(head.m_head);
std::cout << _score << "\n";
window.draw_display();
window.update_display(segments);
}
for(int i = 0; i < ROW; i++) {
for(int j = 0; j < COL; j++) {
delete window.m_board[i][j];
}
// std::cout << _score << "\n";
// window.clear_display();
// window.update_display(segments);
// window.draw_display(200);
// }
// input_thread.join();
for(int i = 0; i < ROW * COL; i++) {
if(segments[i] == nullptr) continue;
delete segments[i];
}
input_thread.join();
return 0;
}