Bot class: first iteration, refactoring fix (Worm -> Snake)

This commit is contained in:
programsnail 2024-07-25 22:55:59 +03:00
parent 360c3b064a
commit a92c96f91e
3 changed files with 27 additions and 8 deletions

View file

@ -2,6 +2,7 @@
#include <deque>
#include <iostream>
#include <optional>
#include "Canvas.hpp"
#include "Utils.hpp"
@ -61,6 +62,21 @@ public:
}
}
std::optional<Veci> find_nearest_food(Veci pos) {
if (food_.empty()) {
return std::nullopt;
}
Veci target = food_.front().pos;
for (const auto &food : food_) {
if ((pos - food.pos).len_sq() < (pos - target).len_sq()) {
target = food.pos;
}
}
return target;
}
private:
void generate() {
++current_gen_;