aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaleb <caleb.mabry.15@cnu.edu>2022-08-30 17:39:51 -0400
committerCaleb <caleb.mabry.15@cnu.edu>2022-08-30 17:39:51 -0400
commitc95c943938b2254bdb9581fc4b00e72d15e91436 (patch)
tree2e53b0401f8c52a0f4dfd0604f4d11ed97b3a87f
parentf07d77c3d40b2ebf5da0f3399e31f6741c60024e (diff)
More packets moved
-rw-r--r--webAO/client.ts68
-rw-r--r--webAO/packets/handlers/handleFA.ts14
-rw-r--r--webAO/packets/handlers/handleFL.ts88
-rw-r--r--webAO/packets/handlers/handleFM.ts16
-rw-r--r--webAO/packets/handlers/handleSM.ts36
5 files changed, 116 insertions, 106 deletions
diff --git a/webAO/client.ts b/webAO/client.ts
index 636ac83..c13a6e0 100644
--- a/webAO/client.ts
+++ b/webAO/client.ts
@@ -22,6 +22,9 @@ import { handleEM } from './packets/handlers/handleEM'
import { handleEI } from './packets/handlers/handleEI'
import { handleSC } from './packets/handlers/handleSC'
import { handleCI } from './packets/handlers/handleCI'
+import { handleFM } from './packets/handlers/handleFM'
+import { handleFA } from './packets/handlers/handleFA'
+import { handleSM } from './packets/handlers/handleSM'
import chatbox_arr from "./styles/chatbox/chatboxes.js";
import iniParse from "./iniParse";
import getCookie from "./utils/getCookie";
@@ -234,9 +237,9 @@ class Client extends EventEmitter {
this.on("FL", handleFL);
this.on("LE", handleLE);
this.on("EM", handleEM);
- this.on("FM", this.handleFM.bind(this));
- this.on("FA", this.handleFA.bind(this));
- this.on("SM", this.handleSM.bind(this));
+ this.on("FM", handleFM);
+ this.on("FA", handleFA);
+ this.on("SM", handleSM);
this.on("MM", this.handleMM.bind(this));
this.on("BD", this.handleBD.bind(this));
this.on("BB", this.handleBB.bind(this));
@@ -991,66 +994,7 @@ class Client extends EventEmitter {
- /**
- * Handles incoming music information, containing all music in one packet.
- * @param {Array} args packet arguments
- */
- handleSM(args: string[]) {
- document.getElementById("client_loadingtext").innerHTML = "Loading Music ";
- this.resetMusicList();
- this.resetAreaList();
-
- this.musics_time = false;
-
- for (let i = 1; i < args.length - 1; i++) {
- // Check when found the song for the first time
- const trackname = args[i];
- const trackindex = i - 1;
- document.getElementById(
- "client_loadingtext"
- ).innerHTML = `Loading Music ${i}/${this.music_list_length}`;
- (<HTMLProgressElement>(
- document.getElementById("client_loadingbar")
- )).value = this.char_list_length + this.evidence_list_length + i;
- if (this.musics_time) {
- this.addTrack(trackname);
- } else if (this.isAudio(trackname)) {
- this.musics_time = true;
- this.fix_last_area();
- this.addTrack(trackname);
- } else {
- this.createArea(trackindex, trackname);
- }
- }
-
- // Music done, carry on
- this.sendServer("RD#%");
- }
- /**
- * Handles updated music list
- * @param {Array} args packet arguments
- */
- handleFM(args: string[]) {
- this.resetMusicList();
-
- for (let i = 1; i < args.length - 1; i++) {
- // Check when found the song for the first time
- this.addTrack(safeTags(args[i]));
- }
- }
-
- /**
- * Handles updated area list
- * @param {Array} args packet arguments
- */
- handleFA(args: string[]) {
- this.resetAreaList();
-
- for (let i = 1; i < args.length - 1; i++) {
- this.createArea(i - 1, safeTags(args[i]));
- }
- }
/**
* Handles the "MusicMode" packet
diff --git a/webAO/packets/handlers/handleFA.ts b/webAO/packets/handlers/handleFA.ts
new file mode 100644
index 0000000..ccfe923
--- /dev/null
+++ b/webAO/packets/handlers/handleFA.ts
@@ -0,0 +1,14 @@
+import { client } from '../../client'
+import { safeTags } from '../../encoding';
+
+/**
+ * Handles updated area list
+ * @param {Array} args packet arguments
+ */
+export const handleFA = (args: string[]) => {
+ client.resetAreaList();
+
+ for (let i = 1; i < args.length - 1; i++) {
+ client.createArea(i - 1, safeTags(args[i]));
+ }
+}
diff --git a/webAO/packets/handlers/handleFL.ts b/webAO/packets/handlers/handleFL.ts
index d9e67e5..378d5a9 100644
--- a/webAO/packets/handlers/handleFL.ts
+++ b/webAO/packets/handlers/handleFL.ts
@@ -1,48 +1,48 @@
import { setExtraFeatures } from "../../client";
-
- /**
- * With this the server tells us which features it supports
- * @param {Array} args list of features
- */
+
+/**
+ * With this the server tells us which features it supports
+ * @param {Array} args list of features
+ */
export const handleFL = (args: string[]) => {
- console.info("Server-supported features:");
- console.info(args);
- setExtraFeatures(args);
-
- if (args.includes("yellowtext")) {
- const colorselect = <HTMLSelectElement>(
- document.getElementById("textcolor")
- );
-
- colorselect.options[colorselect.options.length] = new Option(
- "Yellow",
- "5"
- );
- colorselect.options[colorselect.options.length] = new Option("Grey", "6");
- colorselect.options[colorselect.options.length] = new Option("Pink", "7");
- colorselect.options[colorselect.options.length] = new Option("Cyan", "8");
- }
-
- if (args.includes("cccc_ic_support")) {
- document.getElementById("cccc")!.style.display = "";
- document.getElementById("pairing")!.style.display = "";
- }
-
- if (args.includes("flipping")) {
- document.getElementById("button_flip")!.style.display = "";
- }
-
- if (args.includes("looping_sfx")) {
- document.getElementById("button_shake")!.style.display = "";
- document.getElementById("2.7")!.style.display = "";
- }
-
- if (args.includes("effects")) {
- document.getElementById("2.8")!.style.display = "";
- }
-
- if (args.includes("y_offset")) {
- document.getElementById("y_offset")!.style.display = "";
- }
+ console.info("Server-supported features:");
+ console.info(args);
+ setExtraFeatures(args);
+
+ if (args.includes("yellowtext")) {
+ const colorselect = <HTMLSelectElement>(
+ document.getElementById("textcolor")
+ );
+
+ colorselect.options[colorselect.options.length] = new Option(
+ "Yellow",
+ "5"
+ );
+ colorselect.options[colorselect.options.length] = new Option("Grey", "6");
+ colorselect.options[colorselect.options.length] = new Option("Pink", "7");
+ colorselect.options[colorselect.options.length] = new Option("Cyan", "8");
+ }
+
+ if (args.includes("cccc_ic_support")) {
+ document.getElementById("cccc")!.style.display = "";
+ document.getElementById("pairing")!.style.display = "";
+ }
+
+ if (args.includes("flipping")) {
+ document.getElementById("button_flip")!.style.display = "";
+ }
+
+ if (args.includes("looping_sfx")) {
+ document.getElementById("button_shake")!.style.display = "";
+ document.getElementById("2.7")!.style.display = "";
+ }
+
+ if (args.includes("effects")) {
+ document.getElementById("2.8")!.style.display = "";
+ }
+
+ if (args.includes("y_offset")) {
+ document.getElementById("y_offset")!.style.display = "";
}
+}
diff --git a/webAO/packets/handlers/handleFM.ts b/webAO/packets/handlers/handleFM.ts
new file mode 100644
index 0000000..630477b
--- /dev/null
+++ b/webAO/packets/handlers/handleFM.ts
@@ -0,0 +1,16 @@
+import { client } from "../../client";
+import { safeTags } from "../../encoding";
+
+
+/**
+ * Handles updated music list
+ * @param {Array} args packet arguments
+ */
+export const handleFM = (args: string[]) => {
+ client.resetMusicList();
+
+ for (let i = 1; i < args.length - 1; i++) {
+ // Check when found the song for the first time
+ client.addTrack(safeTags(args[i]));
+ }
+}
diff --git a/webAO/packets/handlers/handleSM.ts b/webAO/packets/handlers/handleSM.ts
new file mode 100644
index 0000000..5dab83e
--- /dev/null
+++ b/webAO/packets/handlers/handleSM.ts
@@ -0,0 +1,36 @@
+import { client } from '../../client'
+/**
+ * Handles incoming music information, containing all music in one packet.
+ * @param {Array} args packet arguments
+ */
+export const handleSM = (args: string[]) => {
+ document.getElementById("client_loadingtext")!.innerHTML = "Loading Music ";
+ client.resetMusicList();
+ client.resetAreaList();
+
+ client.musics_time = false;
+
+ for (let i = 1; i < args.length - 1; i++) {
+ // Check when found the song for the first time
+ const trackname = args[i];
+ const trackindex = i - 1;
+ document.getElementById(
+ "client_loadingtext"
+ )!.innerHTML = `Loading Music ${i}/${client.music_list_length}`;
+ (<HTMLProgressElement>(
+ document.getElementById("client_loadingbar")
+ )).value = client.char_list_length + client.evidence_list_length + i;
+ if (client.musics_time) {
+ client.addTrack(trackname);
+ } else if (client.isAudio(trackname)) {
+ client.musics_time = true;
+ client.fix_last_area();
+ client.addTrack(trackname);
+ } else {
+ client.createArea(trackindex, trackname);
+ }
+ }
+
+ // Music done, carry on
+ client.sendServer("RD#%");
+}