]> git.sesse.net Git - pkanalytics/commitdiff
Make SHOULD_PULL into an enum.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Tue, 2 May 2023 19:18:24 +0000 (21:18 +0200)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Tue, 2 May 2023 19:18:24 +0000 (21:18 +0200)
events.cpp
events.h
main.cpp

index 231d6ee125d5c2205604e724c5fd868d177da52d..2fca843ad3f904284afa4c9b79b7205366eb6f0b 100644 (file)
@@ -232,7 +232,7 @@ EventsModel::Status EventsModel::get_status_at(uint64_t t)
        s.their_score = 0;
        s.attack_state = Status::NOT_STARTED;
        s.stoppage = false;
-       s.should_pull = true;
+       s.pull_state = Status::SHOULD_PULL;
        uint64_t last_gained_possession = 0;
        uint64_t last_stoppage = 0;
        uint64_t time_spent_in_stoppage = 0;
@@ -247,11 +247,11 @@ EventsModel::Status EventsModel::get_status_at(uint64_t t)
                }
 
                if (e.type == "goal" || e.type == "their_goal") {
-                       s.should_pull = true;
+                       s.pull_state = Status::SHOULD_PULL;
                } else if (e.type == "in" || e.type == "out" || e.type == "stoppage" || e.type == "restart" || e.type == "unknown") {
                        // No effect on pull status.
                } else {
-                       s.should_pull = false;
+                       s.pull_state = Status::NOT_PULLING;
                }
 
                if (e.type == "set_offense") {
index 00c5f1d97f52556ae186cd38fd54d46a61687ef5..b33f0b6e255e5e613d535b5e084247717a2afeac 100644 (file)
--- a/events.h
+++ b/events.h
@@ -35,7 +35,7 @@ public:
                unsigned our_score, their_score;
                enum { NOT_STARTED, OFFENSE, DEFENSE } attack_state;
                bool stoppage;
-               bool should_pull;
+               enum { NOT_PULLING, SHOULD_PULL, PULL_IN_AIR } pull_state;
                unsigned num_passes;
                unsigned possession_sec;
                unsigned stoppage_sec;
index 74aff9ba95d11cd84595a94d5901a58524177886..13fd81e5a64fa696351b68558115a037247ab246 100644 (file)
--- a/main.cpp
+++ b/main.cpp
@@ -335,7 +335,7 @@ void MainWindow::update_action_buttons(uint64_t t)
        ui->offensive_soft_minus->setEnabled(s.attack_state == EventsModel::Status::OFFENSE && has_selection_with_player);
 
        // TODO: be stricter
-       ui->pull->setEnabled(s.attack_state == EventsModel::Status::DEFENSE && s.should_pull && has_selection_with_player);
+       ui->pull->setEnabled(s.attack_state == EventsModel::Status::DEFENSE && s.pull_state == EventsModel::Status::SHOULD_PULL && has_selection_with_player);
        ui->pull_landed->setEnabled(s.attack_state == EventsModel::Status::DEFENSE && has_selection_with_player);
 
        ui->interception->setEnabled(s.attack_state == EventsModel::Status::DEFENSE && has_selection_with_player);
@@ -344,7 +344,7 @@ void MainWindow::update_action_buttons(uint64_t t)
        ui->their_goal->setEnabled(s.attack_state == EventsModel::Status::DEFENSE);
        ui->defensive_soft_plus->setEnabled(s.attack_state == EventsModel::Status::DEFENSE && has_selection_with_player);
        ui->defensive_soft_minus->setEnabled(s.attack_state == EventsModel::Status::DEFENSE && has_selection_with_player);
-       ui->their_pull->setEnabled(s.attack_state == EventsModel::Status::OFFENSE && s.should_pull);
+       ui->their_pull->setEnabled(s.attack_state == EventsModel::Status::OFFENSE && s.pull_state == EventsModel::Status::SHOULD_PULL);
        ui->our_foul->setEnabled(s.attack_state == EventsModel::Status::DEFENSE && has_selection_with_player);
 }