タイムトライアル:ピザ配送 は、制限時間内にピザをピックアップし、指定された配送ゾーンまで配送するシングルプレイヤー ゲームです。配送が成功するたびに、カウントダウンまでの時間が延長されます。
毎回ピザをピックアップすると、この例では ピックアップ レベル と呼ばれる 難易度メーター が増加します。ピックアップ ゾーンはピックアップ レベルに紐づけられ、新しいピックアップ ゾーンは現在のピックアップ レベルで利用可能なピックアップ ゾーンから選択されます。
ピックアップのレベルが高くなるほど難易度は上がりますが、プレイヤーに付与される得点も高くなります。
配送後、ピックアップ レベルはリセットされます。
このチュートリアルでは、Verse を使用してこのゲームを作成する方法についてステップごとに説明します。
使用する Verse 言語の機能
- loop (ループ):この例では
loop
式を使用してピックアップ ゾーンと配送ゾーンの選択を繰り返し、コアとなるゲームプレイをループします。 - race (競合):
race
式はピックアップ / 配送ループを実行し、制限時間になるとループを停止します。race
式は複数の式を同時に実行し、最初に終了しない式をキャンセルします。 - spawn (スポーン):
spawn
式は任意のコンテキストで非同期式を開始します。 - option (オプション):
option
型には 1 つの値を含めることも、空にすることもできます。 - defer (遅延):
defer
式は、コードの実行を現在のスコープが終了するまで遅らせます。 - block (ブロック):この例では
block
式を使用し、非同期コンテキストのrace
式でコードを順番に実行します。 - if (条件):
if
式は条件をテストし、失敗する可能性のある値にアクセスします。 - class (クラス):この例では、プレイヤーのスコアを管理して表示する Verse クラスを作成します。
- constructor (コンストラクタ):コンストラクタは、関連付けられているクラスのインスタンスを作成する特別な関数です。
- Access specifier (アクセス指定子):アクセス指定子を使用してコードのアクセス レベルを設定できます。
使用する Verse API
- Gameplay Tag (ゲームプレイ タグ):ゲームプレイ タグで、ゲームの実行中に特定のタグでマークされたアクタを見つけることができます。
- Event (イベント):Verse で独自のイベントを作成し、イベントの発生時にカスタム仕様の機能を追加できます。
- Verse UI:プレイヤーとゲームに関する情報を表示するカスタム仕様のインゲーム UI を作成します。
概要
次に示すのは、この島と理想的なシーケンスを作り直すのに必要な手順の概要です。
このプロジェクトは次のチュートリアルに基づいて構築されているため、次へ進む前にこれらを実行してください。
- 「移動する目標マーカー」の手順に従って目標マーカーを作成する。
- 「カスタム仕様のカウントダウン タイマー」の手順に従ってカウントダウン タイマーを作成する。
目標マーカーとカウントダウン タイマーを作成したら、次の手順を実行して完全なゲームを作成します。