aboutsummaryrefslogtreecommitdiff
path: root/webAO/client/sender/sendOOC.ts
diff options
context:
space:
mode:
authorCaleb <caleb.mabry.15@cnu.edu>2022-09-08 22:20:32 -0400
committerCaleb <caleb.mabry.15@cnu.edu>2022-09-08 22:20:32 -0400
commit776fe2f4241a67be354908df546f300f413a7d42 (patch)
treedeb962d3fa12966f0f7a29c9ed1784b3c83b5e40 /webAO/client/sender/sendOOC.ts
parent23d4ef48f894adf601039fe574a0e7dfe918a105 (diff)
I'm so sorry
Diffstat (limited to 'webAO/client/sender/sendOOC.ts')
-rw-r--r--webAO/client/sender/sendOOC.ts33
1 files changed, 33 insertions, 0 deletions
diff --git a/webAO/client/sender/sendOOC.ts b/webAO/client/sender/sendOOC.ts
new file mode 100644
index 0000000..a410b5f
--- /dev/null
+++ b/webAO/client/sender/sendOOC.ts
@@ -0,0 +1,33 @@
+import { client } from '../../client'
+import { escapeChat } from '../../encoding';
+import setCookie from '../../utils/setCookie';
+
+/**
+ * Sends an out-of-character chat message.
+ * @param {string} message the message to send
+ */
+export const sendOOC = (message: string) => {
+ setCookie(
+ "OOC_name",
+ (<HTMLInputElement>document.getElementById("OOC_name")).value
+ );
+ const oocName = `${escapeChat(
+ (<HTMLInputElement>document.getElementById("OOC_name")).value
+ )}`;
+ const oocMessage = `${escapeChat(message)}`;
+
+ const commands = {
+ "/save_chatlog": client.saveChatlogHandle,
+ };
+ const commandsMap = new Map(Object.entries(commands));
+
+ if (oocMessage && commandsMap.has(oocMessage.toLowerCase())) {
+ try {
+ commandsMap.get(oocMessage.toLowerCase())();
+ } catch (e) {
+ // Command Not Recognized
+ }
+ } else {
+ client.sender.sendServer(`CT#${oocName}#${oocMessage}#%`);
+ }
+} \ No newline at end of file