Exploring raycasters and possibly make a little "doom like" game based on it.
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.
raycaster/autowalker.hpp

29 lines
668 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);
bool player_has_moved(Point target);
void process_move();
Pathing path_to_enemies();
Pathing path_to_items();
Pathing path_to_devices();
void show_map_overlay(matrix::Matrix& map, Point current);
};