Code:
#ifndef GAMEPLAY_H
#define GAMEPLAY_H
#include "SDL.h"
enum PlayerTypes
{
PLAYER_1,
PLAYER_2,
PLAYER_3,
PLAYER_4
};
enum PositionTypes
{
NO_POSITION = -1,
POSITION_1,
POSITION_2,
POSITION_3,
POSITION_4
};
enum CardTypes
{
NO_CARD = -1,
SPADES_ACE,
SPADES_2,
SPADES_3,
SPADES_4,
SPADES_5,
SPADES_6,
SPADES_7,
SPADES_8,
SPADES_9,
SPADES_10,
SPADES_JACK,
SPADES_QUEEN,
SPADES_KING,
DIAMONDS_ACE,
DIAMONDS_2,
DIAMONDS_3,
DIAMONDS_4,
DIAMONDS_5,
DIAMONDS_6,
DIAMONDS_7,
DIAMONDS_8,
DIAMONDS_9,
DIAMONDS_10,
DIAMONDS_JACK,
DIAMONDS_QUEEN,
DIAMONDS_KING,
CLUBS_ACE,
CLUBS_2,
CLUBS_3,
CLUBS_4,
CLUBS_5,
CLUBS_6,
CLUBS_7,
CLUBS_8,
CLUBS_9,
CLUBS_10,
CLUBS_JACK,
CLUBS_QUEEN,
CLUBS_KING,
HEARTS_ACE,
HEARTS_2,
HEARTS_3,
HEARTS_4,
HEARTS_5,
HEARTS_6,
HEARTS_7,
HEARTS_8,
HEARTS_9,
HEARTS_10,
HEARTS_JACK,
HEARTS_QUEEN,
HEARTS_KING,
RED_JOKER,
BLACK_JOKER
};
class GamePlayers
{
public:
GamePlayers();
void AssignCard(CardTypes Card);
void AssignPosition(PositionTypes Position);
private:
CardTypes Hand[14];
PlayerTypes PlayerID;
PositionTypes Position;
bool Human;
int Score;
} Player1, Player2, Player3, Player4;
class Cards
{
public:
Cards();
void ApplyCard(int X, int Y);
private:
SDL_Rect Clip;
CardTypes CardID;
PlayerTypes Owner;
int Value;
} BlackJoker, RedJoker, SpadesTwo, DiamondsTwo, ClubsTwo, HeartsTwo,
SpadesAce, DiamondsAce, ClubsAce, HeartsAce, SpadesKing, DiamondsKing, ClubsKing, HeartsKing,
SpadesQueen, DiamondsQueen, ClubsQueen, HeartsQueen, SpadesJack, DiamondsJack, ClubsJack, HeartsJack,
SpadesTen, DiamondsTen, ClubsTen, HeartsTen, SpadesNine, DiamondsNine, ClubsNine, HeartsNine,
SpadesEight, DiamondsEight, ClubsEight, HeartsEight, SpadesSeven, DiamondsSeven, ClubsSeven, HeartsSeven,
SpadesSix, DiamondsSix, ClubsSix, HeartsSix, SpadesFive, DiamondsFive, ClubsFive, HeartsFive,
SpadesFour, DiamondsFour, ClubsFour, HeartsFour, SpadesThree, DiamondsThree, ClubsThree, HeartsThree;
static PlayerTypes Dealer = PLAYER_1;
GamePlayers* GetPlayer(PlayerTypes PlayerID);
Cards* GetCard(CardTypes CardID);
#endif