This commit is contained in:
DarthMooMancer
2025-10-08 09:18:26 -04:00
parent 74cb3971cc
commit baf2e21358
5 changed files with 56 additions and 55 deletions
+13 -13
View File
@@ -11,35 +11,35 @@ int main () {
Input input;
bool running = true;
Point* segments[(ROW * COL) + 3] = {}; // 2 for head, 1 for fruit, rest for tail
segments[0] = new Point { ROW / 2, COL / 2, '*' }; // Head
segments[2] = new Point { (rand() % ROW), (rand() % COL), 'o' }; // Fruit
Point* buffer[(ROW * COL) + 3] = {}; // 2 for head, 1 for fruit, rest for tail
buffer[0] = new Point { ROW / 2, COL / 2, '*' }; // Head
buffer[2] = new Point { (rand() % ROW), (rand() % COL), 'o' }; // Fruit
std::thread input_thread([&] { input.get_input(segments[0]->m_dir, running); } );
std::thread input_thread([&] { input.get_input(buffer[0]->m_dir, running); } );
while (running) {
on_fruit_eaten(window.m_board, segments);
determine_index_zero_pos(window.m_board, segments);
move_tail_indicies(segments);
on_fruit_eaten(window.m_board, buffer);
determine_index_zero_pos(window.m_board, buffer);
move_tail_indicies(buffer);
for(int i = (ROW * COL) - 1; i > 3; i--) {
if(segments[i] == nullptr) break;
if(buffer[i] == nullptr) break;
std::cout << "You win! Score: " << get_score() << std::endl;
running = false;
}
if(segment_overlap(segments)) {
if(segment_overlap(buffer)) {
std::cout << "You died! Score: " << get_score() << std::endl;
running = false;
}
window.clear_display();
window.update_display(segments);
window.update_display(buffer);
window.draw_display(200);
}
input_thread.join();
for(int i = (ROW * COL) - 1; i > 0; i--) {
if(segments[i] == nullptr) continue;
delete segments[i];
for(int i = ((ROW * COL) + 3) - 1; i > 0; i--) {
if(buffer[i] == nullptr) continue;
delete buffer[i];
}
return 0;
}