ツールは、プレイヤーが手に持ち、ゲーム内で使用できるアイテムを管理するための簡単な方法です。ツールは剣のような武器から食べ物のアイテムまで様々です。
このチュートリアルでは、装備またはアクティベートされたときに音声効果を再生するレーザーブラスターの形をしたツールを作成する方法を学びます。

ツールの作成
Toolオブジェクトは、Robloxのツールの基礎となるものですので、これを作成する必要があります。ツールの見た目を変更するには、視覚的に表示されるワークスペースのツールにPartsやMeshPartsを追加することが簡単です。
WorkspaceにToolを挿入し、名前をブラスターにします。

ツールにMeshPartを挿入します。

MeshIdプロパティをrbxassetid://92656610に設定します。
TextureIdプロパティをrbxassetid://92658105に設定します。


プレイヤーが持つために、ツールにはHandleという名前のパーツが必要です。MeshPartの名前をHandleに変更します。

ツールの格納
ツールは、3D空間に収集可能なツールとして保持することも、すべてのプレイヤーにスタートツールとして与えることもできます。
収集可能なツール
ブラスターは現在Workspaceの子であるため、収集可能です。プレイヤーはツールに触れることでツールを拾うことができ、これによりツールはキャラクターモデルの子になります。そして、ツールは装備され、ホットバーに配置されます。
ゲームプレイ中、装備されていないツールはプレイヤーのバックパック内の階層に保管され、装備されるとキャラクターモデルに移動します。キャラクターの子となったツールは自動的に装備されます。


スタートツール
StarterPackにツールを格納すると、プレイヤーが参加またはリスポーンする際に、そのツールがプレイヤーのBackpackに配置されます。
ブラスターをExplorerのStarterPackに移動します。

経験を再生してツールをテストします。画面下部のホットバーをクリックするか、キーボードの1を押してツールを装備します。
ツールのプロパティ
位置/向き
ツールの位置と向きは、gripプロパティを使用して変更できます。GripPosはグリップの位置を変更し、GripForward、GripRight、GripUpは回転に影響します。
現在、プレイヤーはグリップではなくブラスターの中心を持っています。
ツールのGripPosプロパティを0, -0.4, 1.1に設定します。

プレイテストを開始してツールをテストします。ツールが異なる位置でグリップされることに気付きます。

以前 
後
ホットバーアイコン
デフォルトでは、ツールの名前がホットバーアイコンに表示されます。ツールのアイコンをその画像に変更することは良いプラクティスです。ツールのTextureIdプロパティをrbxassetid://92628145に設定します。


ツールチップ
ツールチップは、ホットバーのツールにマウスをホバーさせたときに表示される小さなテキスト説明です。通常、ツールの名前および/または機能の簡単な説明が含まれます。ToolTipプロパティをブラスターに変更します。

ツールでスクリプトを使用する
ツールには、接続できる3つのキーイベントがあります:Equipped、Unequipped、およびActivated。
| イベント | 説明 |
|---|---|
| Equipped | プレイヤーによってツールが装備されたときに発火します。たとえば、ホットバーでツールが選択されたときです。 |
| Unequipped | プレイヤーによってツールが未装備のときに発火します。たとえば、ホットバーでツールが選択解除されたときです。 |
| Activated | プレイヤーによってツールがアクティベートされたときに発火します。たとえば、プレイヤーが左クリックしたときです。 |
これらのメソッドはLocalScriptsでのみ機能します。なぜなら、プレイヤーのデバイスだけが、マウスボタンがクリックされたり画面がタッチされたときに入力が発生したかどうかを知っているからです。
サウンドを追加する
これらのイベントを実際に体験するために、発火時にサウンドを再生することができます。まず、使用するためのSoundオブジェクトを作成する必要があります。
Handleに2つのSoundオブジェクトを挿入します。
1つのサウンドの名前をEquipに変更し、そのSoundIdプロパティをrbxassetid://282906960に設定します。
もう1つのサウンドの名前をActivateに変更し、そのSoundIdプロパティをrbxassetid://130113322に設定します。

コードを追加する
以下のサンプルコードは、ツールが装備されたときにEquipサウンドを再生し、アクティベートされたときにFireサウンドを再生します。
ツールにLocalScriptを挿入し、名前をToolControllerにします。

スクリプトに次の行を追加します。
local tool = script.Parentlocal function toolEquipped()tool.Handle.Equip:Play()endlocal function toolActivated()tool.Handle.Activate:Play()endtool.Equipped:Connect(toolEquipped)tool.Activated:Connect(toolActivated)ツールを装備してクリックして、ブラスターのサウンド効果をテストします。
これで、基本的なツールを作成してスクリプトを作成する方法がわかりました。他にも懐中電灯やスピーカーなどのシンプルなツールを作成してみてください。