GameCreate

【Unity2D・ゲーム制作】適当に小さなタップゲームを作ってみる Part3

投稿日:2017年12月7日 更新日:

こんにちは、PORTABLE SHELL ぽたぼぅ です。

私たちが作っているゲームの、今作・前作のシナリオは「いさ」が担当してくれたのですが、

私も将来ゲームのシナリオくらいかけるようになりたくて、最近「小説」の書き方を猛勉強中です。

まだ稚拙な文章ですが、現在執筆中の作品がある程度完成したらこのブログにアップしたいと思います。

それでは、タップゲームのPart3、やっていきます。

 

EXPテキストを更新する

今回の目標は「モンスターをタップで倒す」システムの実装ですが、

先に、モンスターをタップで倒した時に魔王経験値が入るようにシステムに書き加えます。

GameManagerのスクリプトに記述を追加します。

オブジェクト参照に、「textScore」、メンバ変数に「score」「nextScore」を追加します。

記述が終わったら「GameManager」オブジェクトのインスペクターに「TextScore」を追加しましょう。

 

次に「GetMob」メソッドを追加します。

public void GetMob(){
score += 1;
RefreshScoreText ();
}

中身は、スコアを1ポイント追加し、「RefreshScoreText」を呼び出すという簡単な記述です。

 

前回も同じような順番でメソッドを作りましたが、

これでは、ゲームを開始した時点で「RefreshScoreText ();」がありません。

という内容でエラーが起きてしまうので、「RefreshScoreText ();」をさっさと作ります。

void RefreshScoreText(){
textScore.GetComponent ().text =
“EXP” + score + ” / ” + nextScore;
}

中身は、テキストを上書きするという記述ですが、

2行目が上書きしろという命令で、3行目が上書きする内容の記述です。

モンスターを1匹もタップしていない状態だと、メンバ変数として、

「score」「0」「nextScore」「10」と設定しているので、「EXP0/10」と表示されるはずです。

 

今のままでは、「RefreshScoreText ();」を呼び出すのはモンスターをタップした時だけです。

ゲームスタートに、「EXP0/10」と表示させたいので、

「Start」関数の中にも「RefreshScoreText ();」と記述してあげましょう。

 

イベントトリガーでタッチ判定

次にスライムにタッチの判定を追加します。

まず最初に、「Prefab化」した時に与えてあげた、

「MonsterController」「TouchMob」メソッドを追加します。

次に、「ImageMons001」Prefabのコンポーネントに、

イベントトリガーコンポーネントを追加し、「Add New Event Type」

「PointerEnter」を選択してタッチを検出させます。

「PointerEnter」「BaseEventData」の中身を設定します。

「MonsterController」内の「TouchMob」を設定すると、タッチ時に「TouchMob」を呼び出します。

 

モンスターを倒す記述を追加

「MonsterController」の中身を記述して行きましょう。

オブジェクト参照に、「gameManager」を追加し、「Start」関数内で、GameManagerを探しておきます。

タッチ時に「TouchMob」を呼び出すように設定したので、「TouchMob」の中身を記述していきます。

public void TouchMob(){
if(Input.GetMouseButton (0) == false){
return;
}
gameManager.GetComponent ().GetMob ();
Destroy (this.gameObject);
}

簡単な説明をすると、

gameManager内のGetMob();を呼び出し、Destroy (this.gameObject);で自身(スライム)を消去します。

これで一通りの記述と設定が終わりました。

ゲームを起動するとタッチしたモンスターが消え、EXPが追加されるようになります。

マウスの場合はモンスターをドラッグするよう操作すると綺麗に消えてくれます。

 

Part3は以上です。

これで成長する魔王が出来上がりました。

今はゲームスタート時にモンスターを最大5匹生成しています。

タッチしてモンスターを倒しきってしまうと、ゲームが進まないので、

次回の目標は「モンスターが減ったら自動で追加生成する」ようにします。

記述が複雑なのでさらにいくつかに分けてあげるかもしれません。

 

この記事が参考になれば幸いです、それではまた。

 

スポンサーリンク





-GameCreate

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

【Unity2D・ゲーム制作】適当に小さなタップゲームを作ってみる Part2

こんにちは、PORTABLE SHELL ぽたぼぅ です。 前回あまりキリが良くなかったので、さっそく続きを書いていこうと思います。 今回はモンスターPrefabを作り、自動で生成させるところまでやっ …

【Unity2D・ゲーム制作】適当に小さなタップゲームを作ってみる Part1

こんにちは、PORTABLE SHELL ぽたぼぅ です。 今日はどんな内容の記事を書こうかな・・・と考えていたのですが、すぐには思い浮かばなく、 とりあえず何か映画でも見ながら考えよう、と軽い気持ち …

ASALATO BATTLE TIMER 【アサラト】タイマーアプリ・リリース

こんにちは、PORTABLE SHELL ぽたぼぅ です。 ASALATO BATTLE TIMER というタイマーアプリをリリースしたのでご紹介します。     ASALATO …

【Unity2D・ゲーム制作】適当に小さなタップゲームを作ってみる Part4

こんにちは、PORTABLE SHELL ぽたぼぅ です。 今日はクリスマスイヴですが、やっと制作もひと段落したので、 こんな日ですが「小さなタップゲーム開発Part4」更新していきます。 &nbsp …

【制作】「魔王の秘密」プロジェクト のチラ裏ばなし

こんにちは、PORTABLE SHELL ぽたぼぅ です。 現在制作を進めている、「魔王の秘密」が本格始動してから約1ヶ月が経ちました。 今回は「魔王の秘密」のゲーム部分を少し紹介できたらと思い記事を …

プロフィール


プロフィール

 管理人のぽたぼぅです。
1990年(平成2年)生まれ。
[趣味]ゲーム、アニメ、
ただのゲーム好きは独学で
どこまでゲームを作れるようになれるのか日々挑戦中。

カテゴリー

プライバシーポリシー

【著作権について】

当サイトは個人が運営している非公式サイトであり、運営企業とは異なります。また、当攻略記事のすべての画像や攻略データの著作権は、運営元に帰属します。著作情報の削除依頼に関しては、当サイトのお問い合わせからお願いします。著作者からの申請であれば、速やかに対応いたします。