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

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

関連記事

【中国語版】Pujia8スタジオで「ワタシノモノ」がローカライズされるお話

こんにちは、PORTABLE SHELL ぽたぼぅ です。 Android版をリリースしてから1週間ほどたった頃、「Pujia8スタジオ」様から1通のメールが届きました。 メールのタイトルには「中国語 …

【制作】タップ × ノベルゲーム 「魔王の秘密」(製品版リリース)

こんにちは、PORTABLE SHELL ぽたぼぅ です。 ついに(2018/01/25)に「Android」版「魔王の秘密」をリリースいたしました。 1週間ほどたった(01/31)に1度目のアップデ …

【テックアカデミー】1ヶ月間みっちり「Unity」を勉強してみた

こんにちは、PORTABLE SHELL ぽたぼぅ です。 約1ヶ月ほど放置していましたが、私「勉強」してました。 ゲームをリリースする為にあらゆる事を勉強しなければならないのは必至でしたが、 まずは …

【制作】ボコボコ岩だぬき(iOSリリース済)

ボコボコ岩だぬき   こんにちは、PORTABLE SHELL ぽたぼぅです。 今回はわたくしどもPORTABLE SHELL が初リリースしたアプリ、「ボコボコ岩だぬき」についてご説明をさ …

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

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

プロフィール


プロフィール

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

カテゴリー

プライバシーポリシー

【著作権について】

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