ニュース

Top  >   15. C#とMonoBehaviour  >   Q, ゲームの設定データ(HPや攻撃力など)を一括管理したい

Q, ゲームの設定データ(HPや攻撃力など)を一括管理したい

2026/03/18

メインコンテンツへスキップ
< すべてのカテゴリに戻る

A,結論

「ScriptableObject」を作成してアセット化します。

原因 / 背景

全ての敵プレハブに同じ数値を手入力するのは非効率で、ミスが起きやすいためです。

実装 / 手順

ScriptableObjectを継承したクラスを作成し、Projectウィンドウから「データファイル」として作成します。

サンプルコード

using UnityEngine;

[CreateAssetMenu(fileName = "CharacterBalanceData", menuName = "Game Data/Character Balance Data")]
public class CharacterBalanceData : ScriptableObject
{
    [Header("Basic Stats")]
    public int maxHp = 100;
    public int attackPower = 10;
    public float moveSpeed = 3.5f;

    [Header("XR Settings")]
    public float grabDistance = 0.2f;
    public float teleportCooldown = 0.5f;
}

※ 実機確認が必要な項目は、Editor だけで判断せず対象デバイスでも必ず動作確認してください。

難易度:Level 2(初心者)
対象プラットフォーム:PC,Android,iOS,Unity
関連キーワード:アセット,データ管理,共通化

Level 1-2 向けバナー