public override void OnEnter() { MascotController component = Mascot.Value.GetComponent <MascotController>(); if (component != null) { Service.Get <EventDispatcher>().DispatchEvent(new CinematicSpeechEvents.PlayMascotAnimation(component, AnimationTrigger.Value)); } Finish(); }
public override void OnEnter() { GameObject mascotObject = Service.Get <MascotService>().GetMascotObject(MascotName); if (mascotObject != null) { MascotController component = mascotObject.GetComponent <MascotController>(); component.AutoStopDialog = false; if (!string.IsNullOrEmpty(AnimTriggerToReset)) { component.GetComponent <Animator>().ResetTrigger(AnimTriggerToReset); } } Finish(); }
protected override void OnEnable() { if (!Owner.CompareTag("Player")) { return; } EventDispatcher eventDispatcher = Service.Get <EventDispatcher>(); MascotController componentInParent = ClubPenguin.SceneRefs.ActionSequencer.GetTrigger(Owner).GetComponentInParent <MascotController>(); mascot = componentInParent.Mascot; if (mascot.InteractionBehaviours.ZoomOut && Controller != null) { CinematographyEvents.CameraLogicResetEvent evt = default(CinematographyEvents.CameraLogicResetEvent); evt.Controller = Controller; eventDispatcher.DispatchEvent(evt); } if (mascot.InteractionBehaviours.RestoreTray) { GameObject gameObject = GameObject.FindWithTag(UIConstants.Tags.UI_Tray_Root); if (gameObject != null) { StateMachineContext component = gameObject.GetComponent <StateMachineContext>(); component.SendEvent(new ExternalEvent("Root", "exit_cinematic")); if (!string.IsNullOrEmpty(ScreenName)) { component.SendEvent(new ExternalEvent("ScreenContainerContent", ScreenName)); } } eventDispatcher.DispatchEvent(new PlayerCardEvents.SetEnablePlayerCard(enable: true)); eventDispatcher.DispatchEvent(new UIDisablerEvents.EnableUIElementGroup("MainNavButtons")); } if (mascot.InteractionBehaviours.RestoreQuestNotifier) { eventDispatcher.DispatchEvent(new HudEvents.SuppressQuestNotifier(suppress: false)); } }
public PlayMascotAnimation(MascotController mascot, string animationTrigger) { Mascot = mascot; AnimationTrigger = animationTrigger; }
public override void OnEnter() { dispatcher = Service.Get <EventDispatcher>(); DCinematicSpeech dCinematicSpeech = new DCinematicSpeech(); DialogList.Entry entry = default(DialogList.Entry); if (!UseDialogList) { dCinematicSpeech.Text = Service.Get <Localizer>().GetTokenTranslation(i18nContents); } else if (DialogList != null) { entry = ((!RandomDialog) ? DialogList.Entries[DialogListItemIndex] : DialogList.Entries[Random.Range(0, DialogList.Entries.Length)]); dCinematicSpeech.Text = Service.Get <Localizer>().GetTokenTranslation(entry.ContentToken); } dCinematicSpeech.BubbleContentKey = DialogPrefabKey; dCinematicSpeech.Buttons = null; dCinematicSpeech.BackgroundImageKey = BackgroundImageKey; dCinematicSpeech.ContentImageKey = ContentImageKey; dCinematicSpeech.TextStyle = TextStyle; dCinematicSpeech.RichText = RichText; dCinematicSpeech.MascotName = (string.IsNullOrEmpty(CustomName) ? MascotName : CustomName); dCinematicSpeech.DismissTime = ((AutoCloseTime > 0f) ? AutoCloseTime : ((float)DismissTime)); dCinematicSpeech.CenterX = CenterX; dCinematicSpeech.CenterY = CenterY; dCinematicSpeech.OffsetY = OffsetY; dCinematicSpeech.OffsetYPercent = OffsetYPercent; dCinematicSpeech.HideTail = HideTail; dCinematicSpeech.ClickToClose = ClickToClose; dispatcher.DispatchEvent(new CinematicSpeechEvents.ShowSpeechEvent(dCinematicSpeech, HideQuestHud)); dispatcher.AddListener <CinematicSpeechEvents.SpeechCompleteEvent>(OnSpeechComplete); string text = ""; string overrideAnimationName = ""; string overrideStopAnimationName = ""; bool flag = false; if (UseDialogList && DialogList != null) { text = entry.AudioEventName; overrideAnimationName = entry.DialogAnimationTrigger; overrideStopAnimationName = entry.DialogAnimationEndTrigger; flag = entry.AdvanceSequence; } else if (!AudioEventName.IsNone) { text = AudioEventName.Value; overrideAnimationName = DialogAnimationOverride.Value; overrideStopAnimationName = EndDialogAnimationOverride.Value; flag = AdvanceSequence; } if (!string.IsNullOrEmpty(text)) { EventAction eventAction = EventAction.PlaySound; if (flag) { eventAction = EventAction.AdvanceSequence; } GameObject mascotObject = Service.Get <MascotService>().GetMascotObject(MascotName); if (mascotObject != null && PlayDialogAnimation) { MascotController component = mascotObject.GetComponent <MascotController>(); EventManager.Instance.PostEventNotify(text, eventAction, base.Owner, component.dialogAudioCallback); component.StartDialogAnimation(text, overrideAnimationName, AutoStopDialogAnimation, overrideStopAnimationName); } else { EventManager.Instance.PostEventNotify(text, eventAction, base.Owner, onMascotAudioComplete); } } if (!WaitForFinish) { Finish(); } }