From 10e470c603157722a4c4ac78a04e2a2db62de571 Mon Sep 17 00:00:00 2001
From: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>
Date: Tue, 21 Apr 2020 10:15:03 -0400
Subject: [PATCH] Say now shows up in the chat window when present.

---
 lib/aethyr/core/commands/say.rb   |  1 +
 lib/aethyr/core/objects/player.rb | 20 +++++++++++---------
 lib/aethyr/core/render/display.rb |  4 ----
 3 files changed, 12 insertions(+), 13 deletions(-)

diff --git a/lib/aethyr/core/commands/say.rb b/lib/aethyr/core/commands/say.rb
index 798cbde..1626c75 100644
--- a/lib/aethyr/core/commands/say.rb
+++ b/lib/aethyr/core/commands/say.rb
@@ -143,6 +143,7 @@ EOF
 
             phrase = "<say>\"#{phrase}#{ender}\"</say>"
 
+            event[:message_type] = :chat
             event[:target] = target
             if target and pvoice == "ask"
               event[:to_target] = prefix + "#{@player.name} #{rvoice} you, #{phrase}"
diff --git a/lib/aethyr/core/objects/player.rb b/lib/aethyr/core/objects/player.rb
index 3d9db09..41bd411 100644
--- a/lib/aethyr/core/objects/player.rb
+++ b/lib/aethyr/core/objects/player.rb
@@ -129,27 +129,29 @@ class Player < LivingObject
 
   #Sends an event to the player.
   def out_event(event)
+    message_type = :main
+    message_type = event[:message_type] unless event[:message_type].nil?
     if event[:target] == self and event[:player] != self
       if self.blind? and not self.deaf?
-        self.output event[:to_blind_target]
+        self.output(event[:to_blind_target], message_type: message_type)
       elsif self.deaf? and not self.blind?
-        self.output event[:to_deaf_target]
+        self.output(event[:to_deaf_target], message_type: message_type)
       elsif self.deaf? and self.blind?
-        self.output event[:to_deafandblind_target]
+        self.output(event[:to_deafandblind_target], message_type: message_type)
       else
-        self.output event[:to_target]
+        self.output(event[:to_target], message_type: message_type)
       end
     elsif event[:player] == self
-      self.output event[:to_player]
+      self.output(event[:to_player], message_type: message_type)
     else
       if self.blind? and not self.deaf?
-        self.output event[:to_blind_other]
+        self.output(event[:to_blind_other], message_type: message_type)
       elsif self.deaf? and not self.blind?
-        self.output event[:to_deaf_other]
+        self.output(event[:to_deaf_other], message_type: message_type)
       elsif self.deaf? and self.blind?
-        self.output event[:to_deafandblind_other]
+        self.output(event[:to_deafandblind_other], message_type: message_type)
       else
-        self.output event[:to_other]
+        self.output(event[:to_other], message_type: message_type)
       end
     end
   end
diff --git a/lib/aethyr/core/render/display.rb b/lib/aethyr/core/render/display.rb
index 36219b4..d26d74f 100644
--- a/lib/aethyr/core/render/display.rb
+++ b/lib/aethyr/core/render/display.rb
@@ -296,10 +296,6 @@ CONF
       send("this is the quick bar", message_type: :quick_bar, internal_clear: true, add_newline: false)
     end
 
-    if @windows[:chat].exists?
-      send("This is the chat window", message_type: :chat, internal_clear: false, add_newline: true)
-    end
-
     if @windows[:status].exists?
       send("This is the status window", message_type: :status, internal_clear: true, add_newline: false)
     end
-- 
GitLab