summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Schodet2012-05-19 06:20:01 +0200
committerNicolas Schodet2012-05-19 06:20:01 +0200
commit4620ac34bfd91fdc338d9ff640dfb5acef09280c (patch)
tree469bf73cf233cf94b194aa4db5f97c4c5f359bbe
parent43d3ed3da8f87720db5fd287d8145d1e7cfd69cd (diff)
digital/io-hub/src/guybrush: go unload if near end of match
-rw-r--r--digital/io-hub/src/guybrush/strat.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/digital/io-hub/src/guybrush/strat.c b/digital/io-hub/src/guybrush/strat.c
index a45084fc..db10c871 100644
--- a/digital/io-hub/src/guybrush/strat.c
+++ b/digital/io-hub/src/guybrush/strat.c
@@ -30,6 +30,7 @@
#include "path.h"
#include "asserv.h"
+#include "chrono.h"
/*
* This file implements strategic decisions.
@@ -193,11 +194,18 @@ strat_place_score (uint8_t i)
}
if (i < STRAT_PLACE_UNLOAD_NB)
{
- if (strat.load > 3)
+ if (strat.load && chrono_remaining_time () < 7000)
+ score += strat.load * 4000;
+ else if (strat.load && chrono_remaining_time () < 15000)
+ score += strat.load * 2000;
+ else if (strat.load > 3)
score += 7000;
else
score -= 7000;
}
+ if (strat_place[i].decision == STRAT_DECISION_TOTEM
+ && chrono_remaining_time () < 20000)
+ score -= 2000;
if (strat.upper_clamp_dead
&& strat_place[i].decision == STRAT_DECISION_TOTEM)
score -= 3000;