2016 ソフトウェア設計及び演習用の班Wiki

16::gr11

プロジェクト名

りばーし

プロジェクト説明

概要

・基本ルールはリバーシに基づいて行う。 ・対人戦、CPU戦可能。 ・BGMあり。 ・正方形だけでなく、四つ角がないものなど盤面の選択が可能。

ものと操作、モジュール、ヘッダファイル

  • もの
    • タイトル
    • 盤面
    • プレイヤー
    • 石(黒)
    • 石(白)
  • 操作
    • 動作
    • 黒い石同士で白い石を挟んだら白い石を黒い石にひっくり返す。
    • 白い石同士で黒い石を挟んだら黒い石を白い石にひっくり返す。
    • 石を置く場所を選ぶ。
    • 選んだ場所に石をおけるかどうかどうかの判定。(石を置く場所を選択し石が置けない場合「そこには置けません」というようなエラー表示する。)
    • 置いた石の表示。 スキップ。
    • 勝敗判定。
  • モジュール
    • 表示モジュール 平賀史也
image-viewer.c
  • 実行するとスタート画面が開き同時にBGMも流れる。スタート画面には「musicchange」と 「gamestart」のボタンがありmusicchangeのボタンでBGMが変更され、gamestartボタンでゲーム画面に移行される。
  • ゲームモジュール  齋藤雅樹 藤原圭汰 
    • 実行と同時にゲーム画面開始も表示。startを押すとゲームの初期盤面に移動。今回はCPU対戦のみの実装。CPU先攻で固定、CPUがコマを置く位置は setup_board_weight()で8✕8盤面の各マスに優先度を割り当てたとえば四つ角は最も高い2を、四つ角の隣接マスは−1といったようにした。この優先度の高いところからCPUは置いていくようにした。これを繰り返し勝敗判定モジュールに白黒の個数を保存した関数の値を渡した。
engine.c
gtk_main.c
image-viewer.c
interface.c
list.c
sigal_callback.c
  • 勝敗判定モジュール  今川由太
    • すべてのコマ配置終了後にどちらが勝ったか判定しその後のリザルト画面をわける予定であったがうまくいかず、画面下にプレイヤーの駒数とCPUの駒数を表示し、終了画面を表示することで妥協した。終了画面には「ゲームを終了する」のボタンを設置。そのボタンを押すとすべてのゲームが終了される。
gui.c

ゲームの流れ

20_phixr-31.png

スクリーンショット

  • title.png mwAwN9QHUyO1uQw1470368769_1470369053.png
  • o.png

進行状況

  • 6/24 中間発表。 現時点ではタイトル画面からゲーム画面へ移行可能になった。また実際にゲームを行うオリジナルの盤面、コマを作成した。肝心のゲームは端末上ではできるが、作成した盤面、コマで行うことはまだできていない。リザルトとコンティニュー画面の作成はできているがゲーム終了後にその画面を映し出すまではまだできていない。
  • 7/1タイトル画面とゲーム画面にBGMをつけ加えることができた。ゲームはもう少しで盤面、コマを使い出きるようになりそう。
  • 7/8 今は自分たちで作成したサンプル画像でゲームが進行できるようになった。勝敗判定からスタート画面へ移行可能。来週からはスタート画面から実際にゲームの実装し、勝敗判定まで繋げていきたい    
  • 7/15 スタート画面から実際にゲームへの移行がうまくいかない。
  • 7/22 スターと画面からゲームへの移行に成功。しかしstartボタンからではなくquitボタンからゲームが開始されてしまうので次回そこを修正したい。
  • 7/29ゲーム終了時にthank you for playingが表示され終了するようにした。あとは班wikiの作成をした。

個々人の感想


最終更新日:2016/08/05 13:06:41