2016 ソフトウェア設計及び演習用の班Wiki
g09::othello.h::
/* ------------------------- * 必須関数 * ------------------------- *//* ゲーム開始 */ int gameStart(int len); /* ゲーム終了 */ int gameEnd(); /* ------------------------- * 1.ボード上の操作 (返り値が0ならば正常に動作) * ------------------------- */ /* 座標xとyにcolorで指定した色を置く。置けない時は置かずに-1を返す */ int cellPut(int y, int x, int color); /* 相手の石を挟んだ時の処理 */ int onSandwich(int y, int x, int color); /* 指定された方向へ可能ならばひっくり返す */ int directReverse(int y, int x, int dy, int dx, int color); /* 石をひっくり返す */ int cellReverse(int y, int x); /* ------------------------- * 2.ボード上の読み取り(返り値は読み取った値) * ------------------------- */ /* 座標を受け取って、そのマス目に置かれている石の種類を返す */ int cellGet(int y, int x); /* ボード上の全体の石の数を数える */ int boardCount(int color); /* ボード上の全体の石が置ける場所の数を数える */ int beAblePutCount(int color); /* マス目の座標を受けとり、おける場所かどうかを判定する */ int beAblePut( int y,int x,int color); /* 指定されたマス目に置かれたとしたら、いくつ取れるかを返す */ int getAbleCount(int y, int x, int color); /* 指定された方向へ数えていく */ int directCount( int y, int x, int dy, int dx ,int color); /* ボードの中かどうか */ int beInBoard( int y, int x); /* 現在はどちらのターンなのか */ int whichIsTurn(); /* 決着がついているか判定 */ int isSettle(); /* 勝敗を判定 */ int isVictory(); /* -------------------------------------- * 3.ボードの状態のメモリの操作 * -------------------------------------- *//* メモリを確保する */ int memSet(int len); int memFree(); /* ボード状態を変更する */ int memWrite( int n,int value); /* ボード状態を読み込む*/ int memRead(int n); /* マス目の数の設定値を読み出す */ int Length(); /* 経過ターン数を変更する */ int turnModify(int value); /* 現在のターンを取得 */ int turnNow(); /* オセロの初期配置 */ int boardInit(); /* メモリが初期化が成功しているのか調べる */ int memCheck(); /* ------------------------ * 5.その他の処理 * ------------------------ */ //現在のボード状態をファイルとして保存する int saveGame(char *filename); //ファイを読み込んでボード状態を復元する int loadGame(char *filename); /* Undo する(動作が不安定) */ int gameUndo(); /* Undo するためのバッファを格納する */ int storeUndo();
最終更新日:2016/07/29 14:34:22