private void DisplayScrollMessage(scrollmessage m) { if (!String.IsNullOrEmpty(m.controlCommand)) { ParseCommand(m.controlCommand); return; } if (skipping == true) { return; } if (m.overrideLast) { SHGUI.current.PlaySound(SHGUIsound.messageswitch); var lastMessage = messages.Last(); lastMessage.KillInstant(); //Debug.Log("killing last"); if (lastMessage is SHGUItext) { lines -= (lastMessage as SHGUItext).CountLines(); } else if (lastMessage is SHGUIguruchatwindow) { lines -= (lastMessage as SHGUIguruchatwindow).height; } } messages.Add(m.view); AddSubViewBottom(m.view); m.view.overrideFadeInSpeed = .75f; if (showFadeForChatMessages) { m.view.ForceFadeRecursive(0f); m.view.overrideFadeInSpeed = .45f; } m.view.y = lines; m.view.fade = m.baseFade; delay = m.delay; lines += m.height; noPropmterInteractionTime = 0; if (m.view is SHGUIguruchatwindow && m.overrideLast) { (m.view as SHGUIguruchatwindow).ShowInstantPunchIn(); } if (!(m.view is SHGUIprompter || m.view is SHGUIguruchatwindow)) { SHGUI.current.PlaySound(SHGUIsound.tick); } }
private scrollmessage AddChatMessage(string sender, string message, bool leftright, bool interactive, bool poor, bool overrideLast = false) { if (dontDisplaySender) { sender = ""; } SHGUIguruchatwindow chat; chat = new SHGUIguruchatwindow(); chat.SetLeftRight(leftright); if (interactive) { chat.SetInteractive(); } if (poor) { chat.poorMode = true; } chat.SetWidth(desiredFrameWidth); chat.SetContent(message); chat.SetLabel(sender); chat.x = chatMargin; if (!leftright) { chat.x = SHGUI.current.resolutionX - chatMargin - chat.width; } int h = chat.GetHeightOfCompleteTextWithFrameVERYSLOWandMOODY(); var msg = new scrollmessage(chat, h, 0, false, 0); msg.overrideLast = overrideLast; queue.Add(msg); if (defaultConsoleCallback != null) { chat.SetCallback(defaultConsoleCallback); } //chat.ForceFadeRecursive (1f); return(msg); }
protected void DisplayEmptyMessage() { scrollmessage m = new scrollmessage(new SHGUIview(), 1, .2f); DisplayScrollMessage(m); }