Example #1
0
        /// <summary>
        /// Auto-grabs the MmRelaySwitchNode. Also assigns/invokes
        /// Awake callbacks.
        /// </summary>
        public override void Awake()
        {
            MmLogger.LogResponder("MmSwitchResponder Awake");

            MmRelaySwitchNode = GetComponent <MmRelaySwitchNode>();

            //This is to avoid the situation where the MmRelaySwitchNode is started
            //  before this script is.
            if (MmRelaySwitchNode.Initialized)
            {
                OnMmSwitchNodeAwakeCompleteCallback();
            }
            else
            {
                MmRelaySwitchNode.MmRegisterAwakeCompleteCallback(OnMmSwitchNodeAwakeCompleteCallback);
            }

            MmRelaySwitchNode.MmRegisterStartCompleteCallback(OnMmNodeSwitchStartCompleteCallback);

            if (MmRelaySwitchNode.MmNetworkResponder == null ||
                MmRelaySwitchNode.MmNetworkResponder.IsActiveAndEnabled)
            {
                MmRegisterStartCompleteCallback(MmSwitchSetup);
            }
            else
            {
                MmRelaySwitchNode.MmNetworkResponder.MmRegisterStartCompleteCallback(MmSwitchSetup);
            }

            base.Awake();
        }