💣
#cluster クリックしたらアイテム生成するアイテムを作る [個数制限付き]
この記事の応用でこんなのが作れます。 10個まで生成できるようになっていますが、
数値を変更することで 数の制限を変更する事ができます。
使うコンポーネント
-
Item
ワールド上に配置できるインタラクティブなオブジェクトの総称 -
On Create Item Trigger
アイテムが生成された時に通知するトリガー -
Interact Item Trigger
掴めないアイテムに「使う」機能を追加し、使われたことを通知するトリガー -
Create Item Gimmick
アイテムを生成するギミック -
Item Logic
メッセージを読み取り、計算した結果をアイテムへメッセージとして通知するオペレーション
作り方
生成するアイテムを作る
はじめに生成するアイテムとして シンプルなキューブ を用意します。

- Hierarchyで右クリック CreateEmpty して GameObject をつくる
- 名前を
CubeContainerにする -
CubeContainer以下に Cube を追加する - Cube の Scale を 0.2,0.2,0.2 にする
-
CubeContainerを Hierarchyで選択する。 - Inspector で Add Component で
Rigidbodyを追加する - Inspector で Add Component で
Itemを追加する -
CubeContainerを Project 欄に ドラッグ&ドロップして Prefab にしておく。
この操作で CubeContainer が 青色アイコンで Prefab として Hierarchyに表示されている筈。
ボタンの見た目を作る
次はタップするボタンになる アイテムを用意します。

- Hierarchyで右クリック CreateEmpty して GameObject をつくる
- 名前を
ButtonContainerにする -
ButtonContainer以下に Sphere を追加する - Sphere の Scale を 0.2,0.2,0.2 にする
-
ButtonContainerの Transform Y を 1.0 にする。
ボタンを押すとアイテムが生成されるようにする
まずは 個数制限ナシで アイテムが生成できるようにしてみます。
ButtonContainer に Creator Kit コンポーネントを追加して設定します。

- Hierarchy で
ButtonContainerを選択する。 - Inspector で Add Component で
Interact Item Triggerを追加する - Triggersの+ボタンを押す
- Target This
ClickSignal を設定する - Inspector で Add Component で
Create Item Gimmickを追加する - Target This
ClickItem Template - Item Template 欄に Projectの CubeContainer Prefabを ドラッグ&ドロップして設定する
ここまでの設定で個数制限ナシで アイテムが生成できるようになった筈です。
個数制限を追加してみる。
アイテム生成ができるようになったので ButtonContainer に Creator Kit オペレーションコンポーネント を追加して個数制限をつけてみます。

- Hierarchy で
ButtonContainerを選択する。 - アイテム生成時に生成する個数とカウントの為の数値を設定する
Inspector で Add Component でOn Create Item Triggerを追加する - Triggersの+ボタンを押す
- Target This
MAX_COUNTInteger 10 を設定する - Triggersの+ボタンを押す
- Target This
countInteger 0 を設定する - Inspector で Add Component で
Item Logicを追加する - This
Clickを設定する - +ボタンを押す
- count を加算する設定を追加する。
Target ThiscountInteger
RoomState Integer Thiscount
Constant Integer 1 - +ボタンを押す
-
count<=MAX_COUNTの場合だけアイテムが生成されるようにする
Target ThisCreateSignal
LessThanOrEqual
RoomState Integer Thiscount
RoomState Integer ThisMAX_COUNT -
Create Item Gimmickに設定している Key をClickからCreateに変更する
生成する個数を変更してみる
値を変更することで 20個 まで生成できるようにしてみます。
- Hierarchy で
ButtonContainerを選択する。 - Inspector で
On Create Item Triggerを選択 -
MAX_COUNTの数字を 20 に設定する
これで 20個 生成できるようになる筈です。
リセット
20個まで生成した状態をリセット(countを 0 にする)ボタンを作ってみます。

- Hierarchyで右クリック CreateEmpty して GameObject をつくる
- 名前を
ResetContainerにする -
ResetContainer以下に Sphere を追加する - Sphere の Scale を 0.2,0.2,0.2 にする
- Inspector で Add Component で
Interact Item Triggerを追加する - Triggersの+ボタンを押す
- Target
SpecifiedItemcountを設定
※ SpecifiedItem にすると this の値を書き換える事ができる。 - Item 欄に Hierarchyの
ButtonContainerをドラッグ&ドロップして設定 - Value Integer 0 を設定
Discussion