src/game.h

Mon, 31 Mar 2014 11:16:32 +0200

author
Mike Becker <universe@uap-core.de>
date
Mon, 31 Mar 2014 11:16:32 +0200
changeset 19
6a26114297a1
parent 18
6008840b859e
child 23
824c9522ce66
permissions
-rw-r--r--

moved chess rules to separate lib

universe@6 1 /*
universe@6 2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
universe@6 3 *
universe@6 4 * Copyright 2014 Mike Becker. All rights reserved.
universe@6 5 *
universe@6 6 * Redistribution and use in source and binary forms, with or without
universe@6 7 * modification, are permitted provided that the following conditions are met:
universe@6 8 *
universe@6 9 * 1. Redistributions of source code must retain the above copyright
universe@6 10 * notice, this list of conditions and the following disclaimer.
universe@6 11 *
universe@6 12 * 2. Redistributions in binary form must reproduce the above copyright
universe@6 13 * notice, this list of conditions and the following disclaimer in the
universe@6 14 * documentation and/or other materials provided with the distribution.
universe@6 15 *
universe@6 16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
universe@6 17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
universe@6 18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
universe@6 19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
universe@6 20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
universe@6 21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
universe@6 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
universe@6 23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
universe@6 24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
universe@6 25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
universe@6 26 * POSSIBILITY OF SUCH DAMAGE.
universe@6 27 *
universe@6 28 */
universe@6 29
universe@6 30 #ifndef GAME_H
universe@6 31 #define GAME_H
universe@6 32
universe@19 33 #include "chess/chess.h"
universe@6 34 #include "terminal-chess.h"
universe@6 35
universe@6 36 #ifdef __cplusplus
universe@6 37 extern "C" {
universe@6 38 #endif
universe@6 39
universe@18 40 typedef struct MoveList MoveList;
universe@18 41 typedef struct MoveListRoot MoveListRoot;
universe@18 42
universe@18 43 struct MoveListRoot {
universe@18 44 MoveList* first;
universe@18 45 MoveList* last;
universe@18 46 };
universe@18 47
universe@18 48 struct MoveList {
universe@18 49 Move move;
universe@18 50 MoveList* next;
universe@18 51 };
universe@18 52
universe@13 53
universe@6 54 void game_start(Settings *settings, int opponent);
universe@6 55
universe@18 56 void freemovelist(MoveListRoot* list);
universe@18 57 void addmove(MoveListRoot *movelist, Move *move);
universe@18 58
universe@6 59 #ifdef __cplusplus
universe@6 60 }
universe@6 61 #endif
universe@6 62
universe@6 63 #endif /* GAME_H */
universe@6 64

mercurial