気ままなUnityエンジニアブログ

新米Unityエンジニアが送る解説アウトプットブログです。Twitter : @UjinUnity

MENU

【Unity ゲーム制作】神経衰弱ゲームを作ろう!〜その2

スポンサーリンク

前回は Grid Layout Group を使ったゲーム場面のフレーム作成を行いました。

今回は「カードクラス」のスクリプトを作成して行きたいと思います!

スクリプトを作成しよう!

まずは「Script」フォルダを生成しましょう。

Assets を右クリックして Create → Folder を選択し、名前をScript に変更しましょう。

その後、Scriptフォルダに 「Card」スクリプトを生成しましょう。

「Script」フォルダ内を右クリックして 「Create → Script」を選択。

f:id:Wojtek:20190922213403p:plain


名前を 「Card」を設定しましょう。


f:id:Wojtek:20190922213835p:plain


上記の様になっていれば成功です!


Card.csにソースコードを記述しよう!

今回は「Card.cs」の要素作成をメインとします。

以下のコードをCard.csに記述して下さい。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Card : MonoBehaviour {

    // カードのID
    public int Id;

    // 表示するカードの画像
    public Image CardImage;

}


記述し、Card.cs を保存したら次に進みましょう。

Cardプレハブ( Prefab ) を作成しよう!

まずは前回作成したimageの名前を「Card」に変更しましょう。

f:id:Wojtek:20190922214846p:plain


そしたら新たに「Prefabs」フォルダを作成しましょう。

但し、その前に「Resources」フォルダが作成されているか確認してください。

存在しない場合はまずは「Resources」フォルダをAssetの下に作成しましょう。
その後、「Resources」フォルダの内部に「Prefabs」フォルダを作成します。

CardオブジェクトをPrefabsフォルダにアタッチする

次はHierarchyにある「Card」オブジェクトをクリックします。
そのまま下にある「Prefabs」フォルダまで引っ張っていき、フォルダ内にきたらクリックを解除しましょう。


f:id:Wojtek:20190922215259p:plain


画像の様に青色のオブジェクトが出てきたらPrefab化が成功しました。


「Card」Prefabに 「Card.cs」をアタッチしよう!


次は先ほど作った「Card」Prefabに スクリプトをアタッチしましょう。

Script フォルダにある「Card.cs」を選択したまま、Hierarchy にある「Card」オブジェクトにアタッチしましょう!


f:id:Wojtek:20190922215756g:plain


アタッチが成功すれば以下の画像の通り、「Card」オブジェクトのinspectorに「Card.cs」が追加されています。

f:id:Wojtek:20190922215830p:plain



アタッチした 「Card.cs」のプロパティを設定しよう!


アタッチした「Card.cs」を見てみると 「Id」と「 CardImage」が表示されています。

今回はこの「CardImage」に、「Card」オブジェクトに追加されてあるImageコンポーネントをアタッチしましょう。


アタッチ方法
f:id:Wojtek:20190922220243g:plain


以下の様に、「Card.cs」のプロパティに「Card」オブジェクトの Imageコンポーネントが選択されました。

f:id:Wojtek:20190922220332p:plain


変更した情報をPrefabに反映しよう!


注意すべきポイントはここです。
ここまで変更した「Card」オブジェクトですが、変更した内容を保存しないとPrefabには反映されません。

Cardオブジェクトの inspectorの右上にある「Override」を選択しましょう。


f:id:Wojtek:20190922220624p:plain


そうしたら、右下の「Apply All」をクリックしましょう。
今までの変更内容が全て反映されます。

Hierarchyにある「Card」オブジェクトを削除しよう

Prefabへの更新も終わったため、一旦Hierarchyにある「Card」オブジェクトを削除しましょう。
( Prefabsフォルダにある「Card」は削除しないで下さい!)


Cardオブジェクトを右クリックして、Delete 項目を選択します。


f:id:Wojtek:20190922221023p:plain


Hierarchyから Card オブジェクトが消滅したら成功です。


今回はここまでになります。

次回はいよいよ 「Card.cs」の内部を記述していきます!