2010-04-12 23:42:21 -03:00
|
|
|
#ifndef GAME_H
|
|
|
|
#define GAME_H
|
|
|
|
|
2011-02-20 18:45:15 -03:00
|
|
|
#include "stack.h"
|
2010-04-12 23:42:21 -03:00
|
|
|
#include "deck.h"
|
2011-02-06 00:15:21 -02:00
|
|
|
#include "cursor.h"
|
2010-04-12 23:42:21 -03:00
|
|
|
|
|
|
|
#define NUMBER_OF_CARDS 52
|
|
|
|
|
2011-05-09 00:38:31 -03:00
|
|
|
#define STOCK_BEGIN_X 1
|
|
|
|
#define STOCK_BEGIN_Y 1
|
|
|
|
|
|
|
|
#define WASTE_PILE_BEGIN_X 9
|
|
|
|
#define WASTE_PILE_BEGIN_Y 1
|
|
|
|
|
|
|
|
#define FOUNDATION_BEGIN_Y 1
|
|
|
|
#define FOUNDATION_0_BEGIN_X 25
|
|
|
|
#define FOUNDATION_1_BEGIN_X 33
|
|
|
|
#define FOUNDATION_2_BEGIN_X 41
|
|
|
|
#define FOUNDATION_3_BEGIN_X 49
|
|
|
|
|
|
|
|
#define MANEUVRE_BEGIN_Y 9
|
|
|
|
#define MANEUVRE_0_BEGIN_X 1
|
|
|
|
#define MANEUVRE_1_BEGIN_X 9
|
|
|
|
#define MANEUVRE_2_BEGIN_X 17
|
|
|
|
#define MANEUVRE_3_BEGIN_X 25
|
|
|
|
#define MANEUVRE_4_BEGIN_X 33
|
|
|
|
#define MANEUVRE_5_BEGIN_X 41
|
|
|
|
#define MANEUVRE_6_BEGIN_X 49
|
2011-02-20 18:45:15 -03:00
|
|
|
|
2010-04-20 01:10:42 -03:00
|
|
|
struct deck *deck;
|
2011-02-06 00:15:21 -02:00
|
|
|
struct cursor *cursor;
|
2010-04-20 01:10:42 -03:00
|
|
|
|
2011-05-29 17:12:52 -03:00
|
|
|
int foundation_begin_x(int);
|
|
|
|
int maneuvre_begin_x(int);
|
2011-05-07 23:09:39 -03:00
|
|
|
bool valid_move(struct stack *, struct stack *);
|
|
|
|
bool maneuvre_stack(struct stack *);
|
2011-02-16 22:26:18 -02:00
|
|
|
void move_card(struct stack **, struct stack **);
|
2010-04-13 01:07:00 -03:00
|
|
|
void greet_player();
|
2010-04-12 23:42:21 -03:00
|
|
|
void initialize_game();
|
|
|
|
void end_game();
|
|
|
|
|
|
|
|
#endif
|