/* Copyright (C) 2019 June McEnroe * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ #ifndef CARDS_H #define CARDS_H #include #include #include enum { Cards_CardWidth = 71, Cards_CardHeight = 96, Cards_KingWidth = 32, Cards_KingHeight = 32, }; enum Cards_Card { Cards_Club, Cards_Diamond = 13, Cards_Heart = 26, Cards_Spade = 39, // Add rank to suit to obtain card index. Cards_A = 1, Cards_2, Cards_3, Cards_4, Cards_5, Cards_6, Cards_7, Cards_8, Cards_9, Cards_10, Cards_J, Cards_Q, Cards_K, Cards_Empty = 53, Cards_Back1, Cards_Back2, Cards_Back3, Cards_Back4, Cards_Back5, Cards_Back6, Cards_Back7, Cards_Back8, Cards_Back9, Cards_Back10, Cards_Back11, Cards_Back12, Cards_X = 67, Cards_O, Cards_CardCount, }; enum Cards_FreeCell { Cards_KingRight = 1, Cards_KingLeft, Cards_KingWin, Cards_FreeCellCount, }; enum Cards_Flag { Cards_ColorKey = 1 << 0, Cards_AlphaCorners = 1 << 1, Cards_BlackBorders = 1 << 2, }; int Cards_LoadCards( SDL_Surface *surfaces[], size_t count, SDL_RWops *rw, enum Cards_Flag flags ); int Cards_LoadFreeCell( SDL_Surface *surfaces[], size_t count, SDL_RWops *rw, enum Cards_Flag flags ); int Cards_InvertSurface(SDL_Surface *surface); #endif