<<プロジェクト名>> オセロ <<プロジェクト概要>> シンプルなデザインのオセロゲーム 綺麗なグラフィックと 自作のサウンドを聞きながら プレイできます AI対戦の実装 自作BGM <<動作>> <<もの>> ・コマ(白) ・コマ(黒) ・盤面 ・プレイヤー <<動作内容>> ・プログラム手順 :: whileで先手(黒)と後手(白)が交互にループし、ユーザーによって「待った」、「終了」などの動作が指定されたときには別の操作へと移行する。 ・ボード全体のメモリ :: ボードは8x8(基本的には)=64(byte)のメモリで表し、1byteの内容によって各マス目の状態を保存する。 :: 基本は黒は01、白は10、空ならば00で表す。 ・コマを置く :: 入力値がオセロ盤から外れていたらその場でエラーを返す :: GTK(p.318マウスボタンのクリックの検出)によってマウスが座標を表示されたマス目上にあるか、判定しその座標をボード状態を変更するための関数へ渡す :: また同時にコマの反転処理も行う ・コマの反転処理 :: 8方向に判定し、可能であったら反転する ・表示 :: 毎ターンのメモリを読み更新をする ・待った機能 :: プレイヤーがユーザーであるときのみ使用可能。 :: ターンごとに全てのボード状態を保存するのでメモリを圧迫する可能性がある。またセーブファイルが大きくなる可能性もある。 ・AI設定 :: 最初は取れるコマの数が少ない場所を優先的に、後半は多めに取れるところを優先的に置く。 :: 後半に切り替わるタイミングが残り10ターンから。 ・音楽 ::楽曲はMusic Maker MX2を使用して自分たちで作っています(門脇担当)
公式サイトhttp://www.ah-soft.com/musicmaker/
グループで推しているポイントです <<{menu.WAV}
<<{jazz.WAV}
<<{texas.WAV}
○セーブファイル :: セーブファイルはヘッダに経過ターン数とボード幅、それ以降をボード状態を保存し、読み込みの際にボード幅を利用してマスの数を判定する。(セーブファイルが正常であるか判定するため) <<モジュール分け>> ○判定モジュール 担当 江渡 崇明・千葉 啓太 配置、勝敗、挟めるかどうかの判定 ○操作モジュール 担当 鈴木 大樹・千葉 啓太     石の配置、ひっくり返す、マウス入力 ○メニューモジュール 担当 伊藤 敬祐・門脇 啓介・千葉 啓太   メニュー作成、背景 ○磐石モジュール 担当 伊藤 敬祐・門脇 啓介・千葉 啓太       盤面、石、絵、モーション ○コンピュータモジュール 担当 千葉 啓太 ○音楽モジュール  担当 門脇 啓介 <<[[ヘッダファイル|gr09::ヘッダファイル]]>> <<スクリーンショット>> :<<{Screenshot from 2016-08-01 17:36:06.png} :<<{demo3.png} <<班員個々の感想>> ・[[江渡崇陽|g09::江渡崇陽::]]
・[[伊藤敬祐|g09::伊藤敬祐::]]
・[[門脇啓介|g09::門脇啓介::]]
・[[鈴木大樹|g09::鈴木大樹::]]
・[[千葉啓太|g09::千葉啓太::]]
<<班のリポジトリ>> https://wiki.cis.iwate-u.ac.jp/svn/csd/16/g09/proj/ "othello"ファイルに実行ファイルがあります。 実行する場合はファイル"shellmake"内の、使い方.txtを参考にしてください