summaryrefslogtreecommitdiffhomepage
path: root/digital/io-hub
diff options
context:
space:
mode:
authorNicolas Schodet2012-05-18 09:55:06 +0200
committerNicolas Schodet2012-05-18 09:55:06 +0200
commit749798804bbfa46a2980f6b440242ccdb020c63c (patch)
tree129df74720e302ce9f084c69576b076436c420ef /digital/io-hub
parentcf271206993cd8d69a8ef928b789cf7c04305e3b (diff)
digital/io-hub/src/guybrush: change totem score when upper clamp is dead
Diffstat (limited to 'digital/io-hub')
-rw-r--r--digital/io-hub/src/guybrush/strat.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/digital/io-hub/src/guybrush/strat.c b/digital/io-hub/src/guybrush/strat.c
index 97c88efa..4d76afea 100644
--- a/digital/io-hub/src/guybrush/strat.c
+++ b/digital/io-hub/src/guybrush/strat.c
@@ -115,6 +115,8 @@ struct strat_t
vect_t prepared_pos;
/** Robot content estimation. */
uint8_t load;
+ /** Upper clamp is dead. */
+ uint8_t upper_clamp_dead;
/** Places information. */
struct strat_place_dyn_t place[STRAT_PLACE_NB];
};
@@ -186,6 +188,9 @@ strat_place_score (uint8_t i)
else
score -= 5000;
}
+ if (strat.upper_clamp_dead
+ && strat_place[i].decision == STRAT_DECISION_TOTEM)
+ score -= 3000;
return score;
}
@@ -296,9 +301,6 @@ strat_clamp_dead (void)
void
strat_upper_clamp_dead (void)
{
- strat.place[STRAT_PLACE_TOTEM0].valid = 0;
- strat.place[STRAT_PLACE_TOTEM1].valid = 0;
- strat.place[STRAT_PLACE_TOTEM2].valid = 0;
- strat.place[STRAT_PLACE_TOTEM3].valid = 0;
+ strat.upper_clamp_dead = 1;
}