コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】シンプルなメッセージバス「Unibus」紹介

はじめに

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

下準備

f:id:baba_s:20190731205107p:plain

シーンに「Unibus」プレハブを配置しておきます

使用例

送信側のスクリプト

using UnibusEvent;
using UnityEngine;

public class PlayerRespawnAction { }

public class Player : MonoBehaviour
{
    private void Start()
    {
        Unibus.Dispatch( new PlayerRespawnAction() );
    }
}

受信側のスクリプト

using UnibusEvent;
using UnityEngine;

public class GameScene : MonoBehaviour
{
    private void OnEnable()
    {
        this.BindUntilDisable<PlayerRespawnAction>( OnPlayerRespawn );
    }
    
    private void OnPlayerRespawn( PlayerRespawnAction _ )
    {
        Debug.Log( "プレイヤーが復活" );
    }
}

関連記事