summaryrefslogtreecommitdiff
path: root/src/chatmsg.h
diff options
context:
space:
mode:
authorGravatar Michael Smith <mikesmiffy128@gmail.com> 2026-10-25 02:12:32 +0000
committerGravatar Michael Smith <mikesmiffy128@gmail.com> 2026-11-11 23:15:15 +0000
commitcebf5fed741b15bd70198513db89b68178306b9d (patch)
tree044d66db8123c247102936d42e12af8c691f9bbf /src/chatmsg.h
parent4b3f24c1b08025c855bc68509e9e42fef87402eb (diff)
downloadsst-cebf5fed741b15bd70198513db89b68178306b9d.tar.gz
sst-cebf5fed741b15bd70198513db89b68178306b9d.zip
Add chat message broadcast feature
Based on an earlier patch worked on by aciidz and bill, but I found an easier way to do it, with less asm-searching for internal stuff.
Diffstat (limited to 'src/chatmsg.h')
-rw-r--r--src/chatmsg.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/chatmsg.h b/src/chatmsg.h
new file mode 100644
index 0000000..b5f63bb
--- /dev/null
+++ b/src/chatmsg.h
@@ -0,0 +1,38 @@
+/*
+ * Copyright © Michael Smith <mikesmiffy128@gmail.com>
+ * Copyright © Hayden K <imaciidz@gmail.com>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
+ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+ * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
+ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+ * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef INC_CHATMSG_H
+#define INC_CHATMSG_H
+
+/*
+ * Sends a message to the in-game chat for all players. Strings can have control
+ * characters embedded to set colors. A control character must be at the start
+ * of the string to use any subsequent ones. \x02 (STX) only works at the start
+ * of the string, and precludes using the other control characters.
+ *
+ * The list of possible control characters is as follows:
+ * - \x02 (STX) - Use team color up to the end of the player name
+ * - \x03 (ETX) - Use team color from this point forward
+ * - \x04 (EOT) - Use location color from this point forward
+ * - \x05 (ENQ) - Use achievement color from this point forward
+ * - \x01 (SOH) - Use normal color from this point forward
+ */
+void chatmsg_broadcast(const char *msg);
+
+#endif
+
+// vi: sw=4 ts=4 noet tw=80 cc=80