summaryrefslogtreecommitdiff
path: root/engine/network
diff options
context:
space:
mode:
authorElizabeth Hunt <elizabeth.hunt@simponic.xyz>2023-08-23 19:44:59 -0600
committerElizabeth Hunt <elizabeth.hunt@simponic.xyz>2023-08-23 19:44:59 -0600
commitdec7b614d895a1b507137e4a96a8999ff63aa179 (patch)
tree827437755bf9674db51818ee59d919c74a4ea2fc /engine/network
parentd64ffb5016119e54f0e20d05ae8ac9c96955d9d5 (diff)
downloadjumpstorm-dec7b614d895a1b507137e4a96a8999ff63aa179.tar.gz
jumpstorm-dec7b614d895a1b507137e4a96a8999ff63aa179.zip
holy fuck we actually got somewhere
Diffstat (limited to 'engine/network')
-rw-r--r--engine/network/index.ts29
1 files changed, 29 insertions, 0 deletions
diff --git a/engine/network/index.ts b/engine/network/index.ts
new file mode 100644
index 0000000..1726ffc
--- /dev/null
+++ b/engine/network/index.ts
@@ -0,0 +1,29 @@
+export enum MessageType {
+ NEW_ENTITY = "NEW_ENTITY",
+ REMOVE_ENTITY = "REMOVE_ENTITY",
+ UPDATE_ENTITY = "UPDATE_ENTITY",
+}
+
+export type EntityAddBody = {
+ entityName: string;
+ args: any;
+};
+
+export type Message = {
+ type: MessageType;
+ body: any;
+};
+
+export interface MessageQueueProvider {
+ getNewMessages(): Message[];
+ clearMessages(): void;
+}
+
+export interface MessagePublisher {
+ addMessage(message: Message): void;
+ publish(): void;
+}
+
+export interface MessageProcessor {
+ process(message: Message): void;
+}