パート6:敵の追加 | hyperPad Documentation

Loading...

Logo
プラットフォームゲームの作成 - 完全ガイド

パート6:敵の追加

Last updated September 19, 2015

はじめに

ゲームに収集可能なコインを追加したので、次はプレイヤーに挑戦を与える障害物を加えましょう。

このガイドのこの部分は、 パート5 を基にしており、制御可能なキャラクター、収集可能なコイン、およびシーンにオブジェクトを追加する基本的な理解があることを前提としています。

最初の敵

アセットライブラリから、前のステップでダウンロードした「プラットフォーマースターターパック」に戻り、ピンクスライムを選択し、「Move」アニメーションをドックに追加します。

enemyAsset.png

ピンクスライムがドックに追加されたら、それをドックからドラッグしてシーンに配置します。

EnemyinScene.png

シーンに追加したスライムをタップしてオブジェクトプロパティを開き、物理オブジェクトに設定します。

enemyPhysics.png

次に、オブジェクトプロパティから、衝突アイコンをタップして衝突エディタを開きます。プレイヤーが早すぎる衝突を避けるために、衝突ボックスを少し縮小する必要があります。緑の点を指でスライムに近づけるように動かし、その後緑のチェックマークボタンを押して変更を受け入れます。

Enemycollision.png

さて、敵にパトロールするパスを指定する必要があります。これを行うために、スライムのビヘイビアに移動します。オブジェクトカテゴリから「パトロール」ビヘイビアを追加します。

patrol.png

次に、ビヘイビアプロパティから、スライムがどれくらい移動するべきか、そして目的地に到達するのにどれくらいの時間がかかるかを設定できます。

「移動」セクションのX値は、敵がX軸(左または右)にどのくらい移動するかを示します。負の数は左に移動することを意味し、正の数は右に移動することを意味します。

とりあえずデフォルト値(-6)のままにしておきますが、シーンに応じて変更できます。

PatrolProperties.png

敵の速度を遅くするために、移動の所要時間を2秒に変更します。これにより、-6メートル移動するのに2秒かかることを意味します。

patrolDuration.png

敵を消す

敵を消すために、hyperPadのタグシステムを使用します。タグを利用すると、追加のビヘイビアを各オブジェクトに設定しなくても、複数のオブジェクトを参照できます。この状況では、タグを使用することで1体の敵にだけビヘイビアを追加すれば、同じタグを持つ新しい敵にも自動的に機能します。タグについての詳細は、ここで学べます:オブジェクトタグタグ付けされたオブジェクトにビヘイビアを適用する

まず、ピンクスライムにタグを付けることから始めましょう。まずビヘイビアエディタを離れ、メインエディタに戻ります。次に、ピンクスライムを選択してオブジェクトプロパティを表示します。

下部のオブジェクトプロパティから「タグ」タブを選択します(これは下部の最後のタブです)。

タグを追加するには、上部の検索フィールドに名前を入力します。覚えやすいタグを選んでください。このチュートリアルでは、単に「Enemy」というタグを使用します。それから+ボタンを押してタグを追加します。

enemyTag.png

これでビヘイビアの追加に進むことができます。今度はプレイヤーキャラクターを選択し、 ではなくプレイヤーキャラクターを選択して、プレイヤーキャラクターのビヘイビアを開きます。

playerProperties.png

オブジェクトカテゴリから「衝突」ビヘイビアを追加し、それを選択してビヘイビアプロパティを表示します。

playerCollided.png

衝突ビヘイビアプロパティで、すべてのトグルをオフにして、「On Top」だけをオンにします。これにより、プレイヤーが敵の上に触れたときだけビヘイビアがトリガーされます。

CollidedProperties.png

次に、ビヘイビアプロパティの下部でタグタブに切り替えます。そして、以前に追加したEnemyタグを選択します。タグの横に緑の点があると、それが選択されていることを意味します。これで、特定の敵に触れたときにイベントをトリガーするのではなく、敵タグを持つ任意のオブジェクトの上に触れたときにイベントがトリガーされるようになります。

CollidedTag.png

オブジェクトカテゴリから「オブジェクトを無効にする」ビヘイビアを追加し、これを衝突に接続します。これにより、敵がパトロールと相互作用するのを停止します。

Destroy.png

再び、これをEnemyタグにのみ影響するように変更します。衝突とオブジェクト無効化の両方が同じタグを持っているので、特定の衝突オブジェクトのみが無効になり、同じタグを持つ他のすべてのオブジェクトは無効になりません。

Destroy_Tag.png

ゲームに少し工夫を加えるために、敵が踏みつけられたときに見た目が変わるようにします。「FX」カテゴリから「アニメーションを再生」ビヘイビアを追加し、これをオブジェクト無効化に接続します。

playAnimation.png

「アニメーションを選択」と書かれている部分をタップします。アセットライブラリでピンクスライムに移動し、「ヒット」アニメーションを選択します。

PlayAnimationProperties.png

再び、ビヘイビアをEnemyタグを持つオブジェクトのみに影響するように変更します。

tag.png

次に、短い時間(例:0.25秒)設定された待機ビヘイビアを追加し、前に追加した無効化のビヘイビアに接続します。

wait.png

最後に、オブジェクトカテゴリから「オブジェクトを消去」ビヘイビアを追加し、以前追加した待機に接続します。その後、再びEnemyタグに設定します。(以下の画像では、無効化が「8」にリネームされています)

これで完了です!今、破壊できる敵ができました。

destroy.png

チャレンジを作る

今度は、敵がプレイヤーを消し去り、ゲームを終わらせる能力を持たせます。

プレイヤーのビヘイビアのままで、「新しい衝突」ビヘイビアを追加します。今回は、衝突ビヘイビアプロパティの中で「On Top」トグルスイッチのみをオフにします。そしてもう一度、敵タグが選択されていることを確認します。

collided2.png

次に、「オブジェクトを消去」ビヘイビアを追加し、それを衝突に接続します。プレイヤービヘイビアにいるので、自動的にプレイヤーを消去するように設定されています。

destroyPlayer.png

最後に、「オーバーレイを読み込み」ビヘイビアをシーンカテゴリから追加し、以前追加したオブジェクト消去ビヘイビアに接続します。

loadOverlay.png

オーバーレイは、現在のシーンの上に実行できる特別なシーンのようなものです。これはメニュー、ポーズ画面、またはゲームオーバー画面に広く使用されます。hyperPadにはすでに作成された2つのオーバーレイが含まれています。1つはポーズメニュー用、もう1つはゲームオーバー画面用です。これらは<あ href="/documentation/project-menu">プロジェクトメニューからニーズに応じて修正できます。シーンオーバーレイについての詳細は、マニュアル内のトピックを検索することで読むことができます。

「オーバーレイを読み込む」ビヘイビアのプロパティで「オーバーレイを選択」をタップします。そして表示されたリストから、hyperPadが提供する「ゲームオーバー」オーバーレイを選択します。

gameOver.png

これで完了です!今、敵にぶつかるとプレイヤーが消え、ゲームオーバー画面が表示され、シーンを再起動できるようになります。

これで、レベルにさらに敵を追加できます。ただし、必ず敵としてタグを付けてください。