improvements
This commit is contained in:
@@ -124,11 +124,13 @@ public class FaraonAI : IFaraonAI
|
||||
|
||||
private Card ChooseBestCardSmart(List<Card> playable, Player player, GameState state)
|
||||
{
|
||||
// 1. Ak čelíme sedme, prioritne zahráme obyčajnú sedmu pred Červenou sedmou (ak je niekto vonku, šetríme ju)
|
||||
// 1. Ak čelíme sedme, zahráme obyčajnú sedmu, Zeleného dolníka na zrušenie trestu, alebo Červenú sedmu
|
||||
if (state.PendingDrawCount > 0)
|
||||
{
|
||||
var regularSeven = playable.FirstOrDefault(c => c.IsSeven && !c.IsRedSeven);
|
||||
if (regularSeven != null) return regularSeven;
|
||||
var greenUnderKnave = playable.FirstOrDefault(c => c.IsGreenUnderKnave);
|
||||
if (greenUnderKnave != null) return greenUnderKnave;
|
||||
var redSeven = playable.FirstOrDefault(c => c.IsRedSeven);
|
||||
if (redSeven != null) return redSeven;
|
||||
}
|
||||
@@ -147,7 +149,7 @@ public class FaraonAI : IFaraonAI
|
||||
}
|
||||
|
||||
// 4. Ak má Červenú sedmu a na stole je niekto na oživenie (LastFinishedPlayer), oživíme ho!
|
||||
if (state.Rules.RedSevenRevives && state.LastFinishedPlayer != null)
|
||||
if (state.Rules.RedSevenRevives && state.LastFinishedPlayer != null && state.ReviveTurnsRemaining > 0)
|
||||
{
|
||||
var redSeven = playable.FirstOrDefault(c => c.IsRedSeven);
|
||||
if (redSeven != null) return redSeven;
|
||||
|
||||
Reference in New Issue
Block a user