in csrc/SmartBot.cc [203:221]
void CardKnowledge::setIsValuable(bool knownValuable)
{
for (Color k = RED; k <= BLUE; ++k) {
for (int v = 1; v <= 5; ++v) {
if (this->cantBe_[k][v]) continue;
if (bot_->isValuable(Card(k,v)) != knownValuable) {
this->cantBe_[k][v] = true;
}
}
}
possibilities_ = -1;
if (color_ == -1) color_ = -2;
if (value_ == -1) value_ = -2;
if (playable_ == MAYBE) probabilityPlayable_ = -1.0;
valuable_ = (knownValuable ? YES : NO);
probabilityValuable_ = (knownValuable ? 1.0 : 0.0);
if (worthless_ == MAYBE) probabilityWorthless_ = -1.0;
if (knownValuable) { worthless_ = NO; probabilityWorthless_ = 0.0; }
}