What is Drac?
Drac is a completely free, open-source, portable card game library that uses
SDL (Simple DirectMedia Layer). It provides almost everything you need to create
your very own card games. Drac is a set of C++ classes and functions that help
simplify the development of card games. Any simple game specially solitaire
games can be created using Drac with minimal effort. It can also be extended to
accommodate more elaborate games.
Some of its notable features:
Card drag and drop support. Dragging cards around and dropping them to other
destinations is a standard feature in most card games though this takes some
effort to code, good thing Drac handles this for you. Not only that, Drac
supports four types of dragging, you'll get to know them when you start using
Drac in your card game projects. Also, dropping cards is as simple as setting
flags that determine how a certain area accepts cards that are being dropped on
it.
Uses data structures to represent cards and card collections. Cards, card
stacks, and card regions, including the game itself, is represented by a class.
This greatly simplifies development since you only need to define what regions
your game will need, and control those regions based on the rules of the game.
Includes useful functions such as getting card information like card rank, suit,
value, etc. Functions for overlapped cards and determining what card to accept
based on the amount of area that overlaps are already built-in.
To show how simple it is to use Drac, a sample game, the famous Klondike is
included. The game was coded in just a few lines. A tutorial explaining how
Klondike was made can be found here.
Includes a simple animation that you can use whenever a player wins a game.
Remember the animation you see whenever you win a solitaire game in windows,
Drac also has one, and you can make your own too with a bit of coding effort.
Portable or assumed to be at the moment since no actual testing was done yet.
Drac was developed in a win32 environment using Dev-C++. No OS specific APIs
were used. The only libraries used were SDL and the STL included in Dev-C++.
Linux users and other SDL supported systems besides win32 may check it out, if
it works, contact me. cardlibATyahooDOTcom
| |