/*
* checkers.h
*
Header file for Project 1
*
*/
#include "stdio.h"
/* boolean constants */
#define TRUE 1
#define FALSE 0
/* check functions will return valid/invalid status of moves */
#define VALID_MOVE 1
#define INVALID_MOVE 2
/* each checker board square will encode its contents */
#define EMPTY 0
#define RED 1
#define WHITE 2
#define RED_KING 3
#define WHITE_KING 4
#define BOARD_SIZE 8
extern int the_board[ BOARD_SIZE] [ BOARD_SIZE] ;
/* Required Functions */
void print_board( ) ;
int jump_exists( int color) ;
void move_piece( int color, int x_from, int y_from, int x_to, int y_to, int jump) ;
int check_move( int color, int x_from, int y_from, int x_to, int y_to, int jump) ;
int check_jump( int x_from, int y_from, int x_to, int y_to, int dir) ;
int check_step( int x_from, int y_from, int x_to, int y_to, int dir) ;
int is_jumper( int x, int y) ;
/*Added Variable and Constatns*/
#define redTurn 93
#define whiteTurn 91
int currentPlayer;
int x_from, y_from, x_to, y_to;
/*Added functions*/
int printPlayer( ) ;
int checkBounds( int input1, int input2, int input3, int input4) ;
int changePlayer( ) ;
int checkDir( ) ;
int checkPlayerPiece( ) ;
LyoKICogY2hlY2tlcnMuaAogKgogSGVhZGVyIGZpbGUgZm9yIFByb2plY3QgMQogKgogKi8KCiNpbmNsdWRlICJzdGRpby5oIgoKLyogYm9vbGVhbiBjb25zdGFudHMgKi8KI2RlZmluZSBUUlVFIDEKI2RlZmluZSBGQUxTRSAwCgovKiBjaGVjayBmdW5jdGlvbnMgd2lsbCByZXR1cm4gdmFsaWQvaW52YWxpZCBzdGF0dXMgb2YgbW92ZXMgKi8KI2RlZmluZSBWQUxJRF9NT1ZFIDEKI2RlZmluZSBJTlZBTElEX01PVkUgMgoKLyogZWFjaCBjaGVja2VyIGJvYXJkIHNxdWFyZSB3aWxsIGVuY29kZSBpdHMgY29udGVudHMgKi8KI2RlZmluZSBFTVBUWSAwCiNkZWZpbmUgUkVEIDEKI2RlZmluZSBXSElURSAyCiNkZWZpbmUgUkVEX0tJTkcgMwojZGVmaW5lIFdISVRFX0tJTkcgNAoKI2RlZmluZSBCT0FSRF9TSVpFIDgKZXh0ZXJuIGludCB0aGVfYm9hcmRbQk9BUkRfU0laRV1bQk9BUkRfU0laRV07CgovKiBSZXF1aXJlZCBGdW5jdGlvbnMgKi8Kdm9pZCBwcmludF9ib2FyZCgpOwppbnQganVtcF9leGlzdHMoaW50IGNvbG9yKTsKdm9pZCBtb3ZlX3BpZWNlKGludCBjb2xvciwgaW50IHhfZnJvbSwgaW50IHlfZnJvbSwgaW50IHhfdG8sIGludCB5X3RvLCBpbnQganVtcCk7CmludCBjaGVja19tb3ZlKGludCBjb2xvciwgaW50IHhfZnJvbSwgaW50IHlfZnJvbSwgaW50IHhfdG8sIGludCB5X3RvLCBpbnQganVtcCk7CmludCBjaGVja19qdW1wKGludCB4X2Zyb20sIGludCB5X2Zyb20sIGludCB4X3RvLCBpbnQgeV90bywgaW50IGRpcik7CmludCBjaGVja19zdGVwKGludCB4X2Zyb20sIGludCB5X2Zyb20sIGludCB4X3RvLCBpbnQgeV90bywgaW50IGRpcik7CmludCBpc19qdW1wZXIoaW50IHgsIGludCB5KTsKCgovKkFkZGVkIFZhcmlhYmxlIGFuZCBDb25zdGF0bnMqLwojZGVmaW5lIHJlZFR1cm4gOTMKI2RlZmluZSB3aGl0ZVR1cm4gOTEKIAppbnQgY3VycmVudFBsYXllcjsKaW50IHhfZnJvbSwgeV9mcm9tLCB4X3RvLCB5X3RvOwoKLypBZGRlZCBmdW5jdGlvbnMqLwppbnQgcHJpbnRQbGF5ZXIoKTsKaW50IGNoZWNrQm91bmRzKGludCBpbnB1dDEsIGludCBpbnB1dDIsIGludCBpbnB1dDMsIGludCBpbnB1dDQpOwppbnQgY2hhbmdlUGxheWVyKCk7CmludCBjaGVja0RpcigpOwppbnQgY2hlY2tQbGF5ZXJQaWVjZSgpOwo=