Welcome to the Achaea Forums! Please be sure to read the Forum Rules.

GUI Help: How do I insert all chat into this untabbed window?

AshliaAshlia Member Posts: 18 ✭✭ - Stalwart
edited March 2019 in Tech Support
I've been looking around the internet and I can't seem to find exactly what I'm looking for. Essentially, I was using Akaya's GUI template (found here) and Zulah's chat window (found here) separately on my old laptop. I bought a new laptop and Zulah's GUI no longer works for me at all. I figured I could simplify things by inserting a chat window into Akaya's GUI template and be done with it, but, it turns out, I have no idea how to do that.

This is what I'm currently working with. I'd like to put the chat window above the map window.

And this is the box I want to send ALL of the chat to (say/tell/exclaim/scream/ask/yell/shout/ct/clans/etc. I don't want any tabs):

GUI.Box1 = Geyser.Label:new({
  name = "GUI.Box1",
  x = 0, y = 0,
  width = "100%",
  height = "50%",

(Please forgive me. I don't know how to make code spoilers.)

Any help would be greatly appreciated.


  • CaelanCaelan Member Posts: 2,840 @@ - Legendary Achaean
    edited March 2019
    I do it all in one window because I color each one so it keeps seperate and I can scroll back easier.
    <div><br></div><div>My function does this:<br></div><div><br></div>function chatCapturing()<br>&nbsp; openUserWindow("ChatCapturing")<br>&nbsp; setWindowWrap("ChatCapturing", 160)<br>end<br>chatCapturing()<br><div><br></div><div><br></div><div>Then I have a trigger for each channel (I don't send them all to the window because I want House and Order tells on the main screen so I don't miss them)</div><div><br></div><div>Trigger is:<br></div><div>^\(Eleusis\)\:<br></div><div><br></div><div>And I have the Highlight box checked and colored green for Eleusis... Other colors for other channels</div><div>Then in the main code section I put:</div><div><br></div><div>selectString(line,1)<br>copy()<br>appendBuffer("ChatCapturing")<br>deleteLine()<br>resetFormat()</div>

    No idea how "right" it is, but it's what works for me..

    Obviously you could just do something like trigger on ^.* say{|s} .*\.$  or whatever (not exactly that but making the point you can copy says, tells, whatever...

    And just change the window name "ChatCapturing" to whatever you call your window.
  • AshliaAshlia Member Posts: 18 ✭✭ - Stalwart
    This worked, but now I have a separate window opening for the chat. How do I get that window into GUI.Chat_Container?

  • AshliaAshlia Member Posts: 18 ✭✭ - Stalwart
    Big thanks to Kasa from the Mudlet Discord channel for helping me figure this one out! I'll post a how-to below in case anyone else needs the information.
  • AccipiterAccipiter Member Posts: 829 ✭✭✭✭ - Eminent
    If you use config colour to change the background to something you won't use you can use a color trigger to change the color back to what you want it to be and then copyCurrentLine() appendBuffer(GUI.Box1)

    You will probably want a few triggers to color the different channels properly, but it is the easiest way to capture everything (including the weird say and tell types that appear) without diving into GMCP. I use this method because the ansi to rgb function in Mudlet wasn't working for a while after Achaea let you use a lot more colours, but it works now so if you want to use the comm GMCP event you can do it that way too.
  • CaelanCaelan Member Posts: 2,840 @@ - Legendary Achaean
    Ashlia said:
    This worked, but now I have a separate window opening for the chat. How do I get that window into GUI.Chat_Container?

    You should just have to change the name of the window it is sending it to from my "ChatCapture" to Gui.YourWindowName.  
Sign In to Comment.