private IEnumerator showQuestMessage(HudEvents.ShowQuestMessage evt)
        {
            Mascot mascot = Service.Get <MascotService>().GetMascot(evt.SpeechData.MascotName);

            Service.Get <EventDispatcher>().AddListener <QuestEvents.MascotAudioComplete>(onMascotAudioComplete);
            if (ContinueImage != null)
            {
                ContinueImage.gameObject.SetActive(value: false);
            }
            if (mascot == null)
            {
                Log.LogError(this, "QuestMascotMessageHud recieved a ShowQuestMessage event with a mascot that was not present in the mascot service: " + evt.SpeechData.MascotName);
                yield break;
            }
            yield return(CoroutineRunner.Start(loadImageSprite(mascot.Definition.CommunicatorIconContentKey, CommunicatorIconImage), this, "LoadIconImage"));

            yield return(CoroutineRunner.Start(loadImageSprite(mascot.Definition.HudAvatarContentKey, MascotImage), this, "LoadMascotImage"));

            if (this.MascotImageLoaded != null)
            {
                this.MascotImageLoaded();
            }
            SetSpeechData(evt.SpeechData);
            setCanvasParent(topCanvasParentTransform);
            questHudTransform.anchorMin        = Vector2.zero;
            questHudTransform.anchorMax        = Vector2.one;
            questHudTransform.sizeDelta        = Vector2.zero;
            questHudTransform.anchoredPosition = Vector2.zero;
            yield return(new WaitForSeconds(0.8f));

            IsOpening = false;
            IsOpen    = true;
            FullScreenButton.gameObject.SetActive(evt.SpeechData.ClickToClose);
        }
 private bool onShowQuestMessage(HudEvents.ShowQuestMessage evt)
 {
     IsOpening = true;
     CoroutineRunner.Start(showQuestMessage(evt), this, "QuestMessageHud.showQuestMessage");
     return(false);
 }