public void SetEmote(EmoteDefinition emoteDefinition) { if (emoteDefinition != null) { if (emoteDefinition.Id == "RecentEmoteKey") { EmoteIconText.text = null; GetComponent <Button>().interactable = false; RecentEmoteImage.enabled = true; return; } this.emoteDefinition = emoteDefinition; if (!string.IsNullOrEmpty(emoteDefinition.Sound)) { disableClickSound(); } emoteString = EmoteManager.GetEmoteString(emoteDefinition); EmoteIconText.text = emoteString; AccessibilitySettings component = GetComponent <AccessibilitySettings>(); component.CustomToken = emoteDefinition.Token; TutorialBreadcrumb.SetBreadcrumbId($"Emote_{emoteDefinition.name}"); GetComponent <Button>().interactable = true; RecentEmoteImage.enabled = false; } else { EmoteIconText.text = null; GetComponent <Button>().interactable = false; RecentEmoteImage.enabled = false; } }
private IEnumerator renderEmote(EmoteDefinition emoteDefinition) { AssetRequest <Sprite> request = Content.LoadAsync(emoteContentKey, emoteDefinition.Id); yield return(request); callback(request.Asset, null); }
internal static EmoteDefinition GetEmoteFromCharacter(char characterCode) { if (characterCodesToDefinitions.ContainsKey(characterCode)) { EmoteDefinition emoteDefinition = characterCodesToDefinitions[characterCode]; } return(characterCodesToDefinitions[characterCode]); }
public static string GetToken(char emoteChar) { EmoteDefinition emoteDefinition = GetEmoteDefinition(emoteChar); if (emoteDefinition != null) { return(emoteDefinition.Token); } return(null); }
private void playSoundForEmote(EmoteDefinition definition) { if (!string.IsNullOrEmpty(definition.Sound)) { DataEntityHandle handle = Service.Get <CPDataEntityCollection>().FindEntity <SessionIdData, long>(sessionId); if (Service.Get <CPDataEntityCollection>().TryGetComponent <GameObjectReferenceData>(handle, out var component)) { SoundUtils.PlayAudioEvent(definition.Sound, component.GameObject); } } }
public void RenderReward(DReward reward, RewardIconRenderComplete callback) { this.callback = callback; EmoteDefinition emoteByName = getEmoteByName((string)reward.UnlockID); if (emoteByName != null) { CoroutineRunner.Start(renderEmote(emoteByName), this, ""); return; } Log.LogError(this, "Unable to find emote definition of name: " + reward.UnlockID); CoroutineRunner.Start(loadDefaultIcon(), this, ""); }
private bool OnChatEmoteMessage(ChatEvents.ChatEmoteMessageShown evt) { if (!IsIncludingRemotePlayers && !isSessionIdLocalPlayer(evt.SessionId)) { return(false); } Dictionary <string, EmoteDefinition> dictionary = Service.Get <GameData>().Get <Dictionary <string, EmoteDefinition> >(); EmoteDefinition value = null; int num = 0; for (int i = 0; i < evt.Message.Length; i++) { if (EmoteManager.IsEmoteCharacter(evt.Message[i])) { dictionary.TryGetValue(EmoteNames[num], out value); if (!(value != null)) { continue; } if (evt.Message[i] == EmoteManager.GetEmoteChar(value)) { num++; if (num >= EmoteNames.Length) { base.Fsm.Event(MatchEvent); break; } continue; } if (EmoteNames.Length == 1 && i == evt.Message.Length - 1) { base.Fsm.Event(FailedEvent); break; } if (num != 0) { num = 0; i--; } } else if (num != 0) { break; } } return(false); }
public static EmoteDefinition[] GetEmoteDefinitionsFromMessage(string message) { List <EmoteDefinition> list = new List <EmoteDefinition>(); foreach (char c in message) { if (IsEmoteCharacter(c)) { EmoteDefinition emoteDefinition = GetEmoteDefinition(c); if (emoteDefinition != null) { list.Add(emoteDefinition); } } } return(list.ToArray()); }
public override void OnEnter() { dispatcher = Service.Get <EventDispatcher>(); Dictionary <string, EmoteDefinition> dictionary = Service.Get <GameData>().Get <Dictionary <string, EmoteDefinition> >(); EmoteDefinition value = null; StringBuilder stringBuilder = new StringBuilder(); for (int i = 0; i < Emotes.Length; i++) { dictionary.TryGetValue(Emotes[i], out value); if (value != null) { stringBuilder.Append(EmoteManager.GetEmoteString(value)); } } DCinematicSpeech dCinematicSpeech = new DCinematicSpeech(); dCinematicSpeech.Text = stringBuilder.ToString(); dCinematicSpeech.Buttons = null; dCinematicSpeech.MascotName = MascotName; dCinematicSpeech.DismissTime = ((AutoCloseTime > 0f) ? AutoCloseTime : ((float)DismissTime)); dCinematicSpeech.CenterX = CenterX; dCinematicSpeech.CenterY = CenterY; dCinematicSpeech.OffsetY = OffsetY; dCinematicSpeech.HideTail = HideTail; dCinematicSpeech.ClickToClose = ClickToClose; dCinematicSpeech.ShowContinueImageImmediately = ClickToClose; dCinematicSpeech.KeepTextStyle = true; dCinematicSpeech.BubbleContentKey = "Prefabs/Quest/CinematicSpeechBubbles/CinematicSpeechBubbleEmote"; dispatcher.DispatchEvent(new CinematicSpeechEvents.ShowSpeechEvent(dCinematicSpeech)); dispatcher.AddListener <CinematicSpeechEvents.SpeechCompleteEvent>(OnSpeechComplete); if (!WaitForFinish) { Finish(); } }
public static char GetEmoteChar(EmoteDefinition emoteDefinition) { return(Convert.ToChar(emoteDefinition.CharacterCode)); }
public static string GetEmoteString(EmoteDefinition emoteDefinition) { return(GetEmoteChar(emoteDefinition).ToString()); }