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

20312106::東大野泰慶

12/18

・バトルモジュール作成に関して、switch文からfor文に変更
・構造体をポインタで宣言
・switch文からfor文にしたらプログラムが比較的すっきりしました。

1/8

担当モジュール:バトル(クイズ)モジュール
バトル(クイズ)モジュール

バトル(最終試験)に移行した際にこのモジュールを持ってくる。

まずはじめに相手側からのセリフを発言する。
その後バトルへ移行。
バトルの進行はターン制としており、相手のターン周期に関しては
プレイヤーのステータスに応じて決めていく。
毎ターンごとに問題が出題され、問題を正解すると相手にダメージを与えることができるが、
間違えると相手側のセリフが現れる。(「問題を間違えるな」など。)
なお、この時にはプレイヤー側にはダメージは発生しない。(相手のセリフが発現されるだけ。)
アイテムを使用する際は他のモジュールで宣言しているものを使用する。
相手ターンが0になった場合は相手側からのセリフが発現された後にダメージを食らう。
そして、最終的に相手のライフが0になったら勝利し、
プレイヤーのライフが0になったら敗北(ゲームオーバー)する。
それぞれに応じたセリフがその後発言される。

1/22

クイズモジュールを新たに作成(問題分は今のところ30問ほど)

バトルモジュール内に新たにitem関数を作成。
item関数を作成した理由としては、他のモジュールとの干渉が多いため。
バトルモジュールのヘッダファイルは以下となります。

-----ヘッダファイル-----
#ifndef BATTLE_H
#define BATTLE_H

int battle();
/*バトル(関数)

バトル(最終試験)に移行した際にこのモジュールを持ってくる。

まずはじめに相手側からのセリフを発言する。その後バトルへ移行。バトルの進行はターン制としており、相手のターン周期に関しては
プレイヤーのステータスに応じて決めていく。毎ターンごとに問題が出題され、問題を正解すると相手にダメージを与えることができるが、
間違えると相手側のセリフが現れる。(「問題を間違えるな」など。)なお、この時にはプレイヤー側にはダメージは発生しない。(相手のセリフが発言されるだけ。)
相手ターンが0になった場合は相手側からのセリフが発現された後にダメージを食らう。そして、最終的に相手のライフが0になったら勝利し、
プレイヤーのライフが0になったら敗北(ゲームオーバー)する。それぞれに応じたセリフがその後発言される。

  • /

    int item();
    /*アイテム関数
    アイテムを使用する際に、他のモジュールと統合するために、関数として宣言する。
  • /

#endif

2/5

アイテムモジュールを作成した。
プログラミングは以下のとおりである。(未完成)

item.c

2/17

統合により、大幅なプログラム変更を行った。
班員の協力により統合後のプログラムが概ね完成
担当モジュール、バトルモジュールのヘッダファイルは以下の通り。
g02:ヘッダファイル battle.h

感想

班員の中にプログラミングに関する理解が深い人がいて、その人に頼りっぱなしの状況でした。
しかし、その中で自分でもできることを探して、ある程度は班のプログラムに貢献できたと思います。
RPGは簡単だと言っていましたが、自分としては、そんなことはなかったです。
この講義では実習の他に先生方からのGTKの講習がありましたが、もう少し生徒にやらせる形を
とったほうがいいと思います。ただ説明を流しているようにしか感じませんでした。
生徒参加型にしたほうがより理解も深まると思います。


最終更新日:2015/02/18 02:26:48