@umm/game-object-extension-component
Extension class for UnityEngine.GameObject to handling Component
Last updated 2 years ago by monry .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @umm/game-object-extension-component 
SYNC missed versions from official npm registry.

What?

  • UnityEngine.GameObject の拡張クラスです。
  • 主に GameObject に対する Component 関連の操作を拡張します。

Why?

  • 毎回 if (gameObject.GetComponent<Hoge>() != null) とか書くのが面倒だったのが発端。
  • 「未追加なら追加」的な操作も何回書いたか分からんレベルだったので、同じく拡張する。
  • AddComponent 後にインスタンスフィールドを初期化したくなる衝動に駆られることも多かったので、それも追加。

Install

$ npm install @umm/game-object-extension-component

Usage

using UnityEngine;
// ココがポイント
using GameObjectExtension;

public class Hoge : MonoBehaviour {
    
    public void Start() {
        // コンポーネントの有無をチェック
        if (this.gameObject.HasComponent<Fuga>()) {
            Debug.Log("Hoge has component: Fuga");
        }
        // AddComponent 直後 (= Awake() 直後) に呼び出される処理を記述
        this.gameObject.AddComponent<Piyo>(
            (piyoInstance) => {
                piyoInstance.isPonyo = true;
            }
        );
    }

}

public class Fuga : MonoBehaviour {
    
    public void Start() {
        Piyo piyo;
        // 未追加のハズなので、追加される
        piyo = this.gameObject.GetOrAddComponent<Piyo>();
        // 上で追加済なので、そのインスタンスを取得
        piyo = this.gameObject.GetOrAddComponent<Piyo>();
    }

}

public class Piyo : MonoBehaviour {

    public bool isPonyo = false;

}
  • GameObjectExtension namespace を using するコトで拡張が有効になります。

License

Copyright (c) 2017 Tetsuya Mori

Released under the MIT license, see LICENSE.txt

Current Tags

  • 1.1.0                                ...           latest (2 years ago)

4 Versions

  • 1.1.0                                ...           2 years ago
  • 0.1.2                                ...           2 years ago
  • 0.1.1                                ...           2 years ago
  • 0.1.0                                ...           2 years ago
Downloads
Today 0
This Week 0
This Month 1
Last Day 0
Last Week 1
Last Month 0
Dependencies (4)
Dev Dependencies (0)
None
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |