we're starting to get somewhere here

This commit is contained in:
Karma Riuk
2025-02-06 17:31:16 +01:00
parent 42484f4217
commit f540246817
8 changed files with 213 additions and 7 deletions

View File

@ -0,0 +1,14 @@
#pragma once
#include "../model/board/board.hpp"
class View;
class Controller {
protected:
Board board;
public:
// Controller(Board, View);
virtual void on_tile_selected(int, int) = 0;
};

View File

@ -0,0 +1,17 @@
#include "manual.hpp"
ManualController::ManualController(Board b, View& view): view(view) {
board = b;
selected_piece = Piece::None;
legal_moves = {};
view.update_board(b, selected_piece, legal_moves);
}
void ManualController::on_tile_selected(int x, int y) {}
void ManualController::reset_selection() {}
void ManualController::show_legal_moves(Coords) {}
void ManualController::make_move(Move) {}

View File

@ -0,0 +1,21 @@
#pragma once
#include "../model/utils/coords.hpp"
#include "../model/utils/move.hpp"
#include "../view/view.hpp"
#include "controller.hpp"
class ManualController : public Controller {
private:
View& view;
Piece selected_piece;
std::vector<Move> legal_moves;
void reset_selection();
void show_legal_moves(Coords);
void make_move(Move);
public:
ManualController(Board, View&);
void on_tile_selected(int, int) override;
};