以下の内容はhttps://baba-s.hatenablog.com/entry/2018/11/12/073000より取得しました。


【Unity】シンプルなメッセージバス「KLab Message Buses for Unity」紹介

はじめに

「KLab Message Buses for Unity」を Unity プロジェクトに導入することで
シンプルなメッセージバスを使用できるようになります

使用例

送信側のスクリプト

using KLab.MessageBuses;
using UnityEngine;

// メッセージの型
public class MyMessageBus : MessageBus<string> { }

public class Example1 : MonoBehaviour
{
    private MyMessageBus m_bus;

    private void Start()
    {
        m_bus = MessageBus.GetBus<MyMessageBus>();
    }

    // 毎フレーム
    private void Update()
    {
        // メッセージを送信
        m_bus.Broadcast( "ピカチュウ" );
    }
}

受信側のスクリプト

using KLab.MessageBuses;
using UnityEngine;

public class Example2 : MonoBehaviour
{
    // メッセージを受信する関数
    private void OnMessage( string message )
    {
        // メッセージを受信したらログ出力
        Debug.Log( message );
    }

    // オブジェクトが有効になったら
    private void OnEnable()
    {
        // メッセージの受信する関数を登録
        MessageBus
            .GetBus<MyMessageBus>()
            .Connect( OnMessage )
        ;
    }

    // オブジェクトが無効になったら
    private void OnDisable()
    {
        // メッセージの受信する関数を解除
        MessageBus
            .GetBus<MyMessageBus>()
            .Disconnect( OnMessage )
        ;
    }
}

関連記事




以上の内容はhttps://baba-s.hatenablog.com/entry/2018/11/12/073000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14