A retro style homage to 80s dungeon crawlers hand crafted in C++.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
raycaster/autowalker.hpp

28 lines
643 B

#pragma once
#include "gui_fsm.hpp"
struct Autowalker {
int enemy_count = 0;
int item_count = 0;
int device_count = 0;
gui::FSM& fsm;
Autowalker(gui::FSM& fsm)
: fsm(fsm) {}
void autowalk();
void start_autowalk();
void send_event(gui::Event ev);
void window_events();
void process_combat();
bool path_player(Pathing& paths, Point &target_out);
Point get_current_position();
void rotate_player(Point current, Point target);
void process_move(Pathing& paths);
Pathing path_to_enemies();
Pathing path_to_items();
Pathing path_to_devices();
void show_map_overlay(matrix::Matrix& map, Point current);
};