//*****************************************
// Filename: ai.h
// Author: Aaron Rogers
// Updated: 11/04/02
// Purpose: Hearts game AI
//*****************************************
// This file is part of HAM Tutorial Hearts
// Copyright 2002 Aaron Rogers
// See README.txt for more information
//*****************************************


#ifndef AI_H
#define AI_H

// Library Includes
#include "game.h"

// Main AI functions
void ai_setup_passed_cards(HEARTS *game, u8 skill); // Setup AI cards to pass
u8 ai_choose_card(HEARTS *game, u8 skill); // Returns the AI chosen card

// Other AI functions
u8 card_value(HEARTS *game, u8 player, Card cv_card);
u8 Two_of_Clubs(HEARTS *game, u8 player);
u8 Queen_of_Spades(HEARTS *game, u8 player);
u8 has_card(HEARTS *game, u8 player, u8 number, u8 suit);
bool has_suit(HEARTS *game, u8 player, u8 suit);
u8 get_high(HEARTS *game, u8 suit);
u8 get_closest_high(HEARTS *game, u8 player, u8 suit, u8 high);
u8 get_closest_low(HEARTS *game, u8 player, u8 suit, u8 low);
u8 lowest_of_suit(HEARTS *game, u8 player, u8 suit);
u8 highest_of_suit(HEARTS *game, u8 player, u8 suit);
u8 lowest_card(HEARTS *game, u8 player);
u8 highest_card(HEARTS *game, u8 player);
u8 void_suit(HEARTS *game, u8 player);
u8 number_of_suit(HEARTS *game, u8 player, u8 suit);
u8 num_sp_below_eight(HEARTS *game, u8 player);

u8 play_AKsp(HEARTS *game, u8 player);
u8 play_Qsp(HEARTS *game, u8 player);

#endif