update to v2
This commit is contained in:
parent
53ca898b13
commit
4842cc268a
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -173,3 +173,4 @@ dist
|
|||
|
||||
# Finder (MacOS) folder config
|
||||
.DS_Store
|
||||
dump
|
23
client.ts
23
client.ts
|
@ -30,7 +30,6 @@ interface Player {
|
|||
y?: number;
|
||||
}
|
||||
|
||||
|
||||
export class Client extends (EventEmitter as new () => TypedEmitter<MessageEvents>) {
|
||||
private ws: WebSocket;
|
||||
me!: Player;
|
||||
|
@ -42,6 +41,10 @@ export class Client extends (EventEmitter as new () => TypedEmitter<MessageEvent
|
|||
rooms: proto.ServerMessage_Room[] = [];
|
||||
|
||||
players = new Map<string, proto.Profile>();
|
||||
|
||||
private resolvePingPromise?: (a: number) => void;
|
||||
private lastPing: number = -1;
|
||||
|
||||
move(x: number, y: number) {
|
||||
this.ws.send(
|
||||
new proto.ClientMessage({
|
||||
|
@ -53,6 +56,18 @@ export class Client extends (EventEmitter as new () => TypedEmitter<MessageEvent
|
|||
}).toBinary()
|
||||
);
|
||||
}
|
||||
getPing() {
|
||||
this.ws.send(
|
||||
new proto.ClientMessage({
|
||||
event: CEventType.PING,
|
||||
}).toBinary()
|
||||
);
|
||||
this.lastPing = Date.now();
|
||||
|
||||
return new Promise((res, rej) => {
|
||||
this.resolvePingPromise = res;
|
||||
});
|
||||
}
|
||||
message(chat: string) {
|
||||
chat.match(/.{1,200}/gm)?.forEach((z, i) => {
|
||||
setTimeout(() => {
|
||||
|
@ -142,6 +157,10 @@ export class Client extends (EventEmitter as new () => TypedEmitter<MessageEvent
|
|||
console.log(data);
|
||||
return;
|
||||
}
|
||||
if (decode.event == SEventType.PONG) {
|
||||
if (this.resolvePingPromise)
|
||||
this.resolvePingPromise(Date.now() - this.lastPing);
|
||||
}
|
||||
|
||||
if (decode.event == SEventType.CHOWN) {
|
||||
this.room.owner = decode.chown;
|
||||
|
@ -151,7 +170,7 @@ export class Client extends (EventEmitter as new () => TypedEmitter<MessageEvent
|
|||
this.emit("serverMessage", decode.message);
|
||||
}
|
||||
if (decode.event == SEventType.RATELIMIT) {
|
||||
console.log("Ratelimit reached! Time left: " + decode.rateLimit);
|
||||
console.log("Ratelimit reached! Time left: " + decode.ratelimit);
|
||||
}
|
||||
if (decode.event == SEventType.JOIN) {
|
||||
this.players.set(decode.join!.id, decode.join!);
|
||||
|
|
18
inspect-dump.ts
Normal file
18
inspect-dump.ts
Normal file
|
@ -0,0 +1,18 @@
|
|||
import { $ } from "bun";
|
||||
import * as fs from "fs/promises";
|
||||
|
||||
const dumps = ["EAMqERIGc29waGllGgcjZDlhMmMy", "16, 3, 42, 9, 10, 5, 76, 111, 98, 98, 121, 16, 4, 42, 8, 10, 4, 116, 101, 115, 116, 16, 1, 42, 20, 10, 16, 83, 111, 109, 101, 111, 110, 101, 32, 112, 114, 97, 99, 116, 105, 115, 101, 16, 1 "].map(
|
||||
(z) => {
|
||||
if(z.includes(",")) {
|
||||
return new Uint8Array(z.split(",").map(z=>+z))
|
||||
} else {
|
||||
return Buffer.from(z, "base64");
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
for await (const dump of dumps) {
|
||||
await fs.writeFile("dump", new Uint8Array(dump.buffer));
|
||||
const info = await $`~/.local/bin/protobuf_inspector < dump`;
|
||||
}
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
"name": "pianoverse",
|
||||
"module": "index.ts",
|
||||
"type": "module",
|
||||
"version": "v1.0.1",
|
||||
"version": "v2.0.0",
|
||||
"license": "GPL-3.0-only",
|
||||
"homepage": "https://git.sad.ovh/sophie/pianoverse",
|
||||
"bugs": "https://git.sad.ovh/sophie/pianoverse/issues",
|
||||
|
|
145
pianoverse.proto
145
pianoverse.proto
|
@ -1,4 +1,4 @@
|
|||
// PV version = 0cdf4ec01ef9a5de77ad785183b3f56fcd0b58db
|
||||
// PV version = 9a65ffd093eefcad972f715896bf35d9d5058a2d
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
|
@ -6,54 +6,52 @@ package pianoverse;
|
|||
|
||||
message ClientMessage {
|
||||
enum EventType {
|
||||
PING = 0;
|
||||
ROOM = 1;
|
||||
PROFILE = 2;
|
||||
CHAT = 3;
|
||||
MOVE = 4;
|
||||
MUTE = 5;
|
||||
UNMUTE = 6;
|
||||
KICK = 7;
|
||||
PRESS = 8;
|
||||
RELEASE = 9;
|
||||
SUSTAIN = 10;
|
||||
HEARTBEAT = 11;
|
||||
BAN = 12;
|
||||
CHOWN = 13;
|
||||
CHOWN = 0;
|
||||
PING = 1;
|
||||
ROOM = 2;
|
||||
PROFILE = 3;
|
||||
CHAT = 4;
|
||||
MOVE = 5;
|
||||
MUTE = 6;
|
||||
UNMUTE = 7;
|
||||
KICK = 8;
|
||||
PRESS = 9;
|
||||
RELEASE = 10;
|
||||
SUSTAIN = 11;
|
||||
HEARTBEAT = 12;
|
||||
BAN = 13;
|
||||
IPBAN = 14;
|
||||
MOD = 15;
|
||||
UNMOD = 16;
|
||||
}
|
||||
|
||||
EventType event = 1;
|
||||
|
||||
Room room = 3;
|
||||
string chown = 1;
|
||||
EventType event = 2;
|
||||
Heartbeat ping = 3;
|
||||
Room room = 4;
|
||||
message Room {
|
||||
string room = 1;
|
||||
bool private = 2;
|
||||
}
|
||||
Profile profile = 5;
|
||||
string chat = 6;
|
||||
Move move = 7;
|
||||
string mute = 8;
|
||||
string unmute = 9;
|
||||
string kick = 10;
|
||||
Press press = 11;
|
||||
Release release = 12;
|
||||
bool sustain = 13;
|
||||
Heartbeat heartbeat = 14;
|
||||
Ban ban = 15;
|
||||
string ipban = 16;
|
||||
string mod = 17;
|
||||
string unmod = 18;
|
||||
|
||||
Profile profile = 4;
|
||||
string chat = 5;
|
||||
|
||||
Move move = 6;
|
||||
|
||||
string mute = 7;
|
||||
string unmute = 8;
|
||||
string kick = 9;
|
||||
|
||||
Press press = 10;
|
||||
Release release = 11;
|
||||
|
||||
bool sustain = 12;
|
||||
|
||||
Heartbeat heartbeat = 13;
|
||||
message Heartbeat {}
|
||||
|
||||
Ban ban = 14;
|
||||
message Ban {
|
||||
string id = 1;
|
||||
uint32 minutes = 2;
|
||||
}
|
||||
|
||||
string chown = 15;
|
||||
}
|
||||
enum Role {
|
||||
USER = 0;
|
||||
|
@ -62,43 +60,39 @@ enum Role {
|
|||
}
|
||||
message ServerMessage {
|
||||
enum EventType {
|
||||
PONG = 0;
|
||||
CHAT = 1;
|
||||
ROOMS = 2;
|
||||
WELCOME = 3;
|
||||
MOVE = 4;
|
||||
PRESS = 5;
|
||||
RELEASE = 6;
|
||||
SUSTAIN = 7;
|
||||
PROFILE = 8;
|
||||
JOIN = 9;
|
||||
LEAVE = 10;
|
||||
RATELIMIT = 11;
|
||||
MESSAGE = 12;
|
||||
CHOWN = 13;
|
||||
CLEAR = 14;
|
||||
CLEAR = 0;
|
||||
PONG = 1;
|
||||
CHAT = 2;
|
||||
ROOMS = 3;
|
||||
WELCOME = 4;
|
||||
MOVE = 5;
|
||||
PRESS = 6;
|
||||
RELEASE = 7;
|
||||
SUSTAIN = 8;
|
||||
PROFILE = 9;
|
||||
JOIN = 10;
|
||||
LEAVE = 11;
|
||||
RATELIMIT = 12;
|
||||
MESSAGE = 13;
|
||||
CHOWN = 14;
|
||||
}
|
||||
|
||||
EventType event = 1;
|
||||
|
||||
Pong pong = 2;
|
||||
message Pong {}
|
||||
|
||||
Chat chat = 3;
|
||||
Profile clear = 1;
|
||||
EventType event = 2;
|
||||
Profile pong = 3;
|
||||
Chat chat = 4;
|
||||
message Chat {
|
||||
string id = 1;
|
||||
string content = 2;
|
||||
string name = 3;
|
||||
string color = 4;
|
||||
}
|
||||
|
||||
repeated Room rooms = 4;
|
||||
repeated Room rooms = 5;
|
||||
message Room {
|
||||
string room = 1;
|
||||
uint32 count = 2;
|
||||
}
|
||||
|
||||
Welcome welcome = 5;
|
||||
Welcome welcome = 6;
|
||||
message Welcome {
|
||||
string id = 1;
|
||||
string name = 2;
|
||||
|
@ -108,26 +102,21 @@ message ServerMessage {
|
|||
repeated Chat chat = 6;
|
||||
Role role = 7;
|
||||
}
|
||||
Move move = 7;
|
||||
Press press = 8;
|
||||
Release release = 9;
|
||||
|
||||
Move move = 6;
|
||||
Press press = 7;
|
||||
Release release = 8;
|
||||
|
||||
Sustain sustain = 9;
|
||||
Sustain sustain = 10;
|
||||
message Sustain {
|
||||
string id = 1;
|
||||
bool enabled = 2;
|
||||
}
|
||||
|
||||
Profile profile = 10;
|
||||
Profile join = 11;
|
||||
string leave = 12;
|
||||
|
||||
int32 rateLimit = 13;
|
||||
|
||||
string message = 14;
|
||||
string chown = 15;
|
||||
int32 clear = 16;
|
||||
Profile profile = 11;
|
||||
Profile join = 12;
|
||||
string leave = 13;
|
||||
uint32 ratelimit = 14;
|
||||
string message = 15;
|
||||
string chown = 16;
|
||||
}
|
||||
|
||||
message Profile {
|
||||
|
|
387
pianoverse_pb.ts
387
pianoverse_pb.ts
|
@ -1,4 +1,4 @@
|
|||
// PV version = 13661e19e8c210d990baa4d96aa8905430c709d5
|
||||
// PV version = 9a65ffd093eefcad972f715896bf35d9d5058a2d
|
||||
|
||||
// @generated by protoc-gen-es v1.10.0 with parameter "target=ts"
|
||||
// @generated from file pianoverse.proto (package pianoverse, syntax proto3)
|
||||
|
@ -39,74 +39,94 @@ proto3.util.setEnumType(Role, "pianoverse.Role", [
|
|||
*/
|
||||
export class ClientMessage extends Message<ClientMessage> {
|
||||
/**
|
||||
* @generated from field: pianoverse.ClientMessage.EventType event = 1;
|
||||
* @generated from field: string chown = 1;
|
||||
*/
|
||||
event = ClientMessage_EventType.PING;
|
||||
chown = "";
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ClientMessage.Room room = 3;
|
||||
* @generated from field: pianoverse.ClientMessage.EventType event = 2;
|
||||
*/
|
||||
event = ClientMessage_EventType.CHOWN;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ClientMessage.Heartbeat ping = 3;
|
||||
*/
|
||||
ping?: ClientMessage_Heartbeat;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ClientMessage.Room room = 4;
|
||||
*/
|
||||
room?: ClientMessage_Room;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Profile profile = 4;
|
||||
* @generated from field: pianoverse.Profile profile = 5;
|
||||
*/
|
||||
profile?: Profile;
|
||||
|
||||
/**
|
||||
* @generated from field: string chat = 5;
|
||||
* @generated from field: string chat = 6;
|
||||
*/
|
||||
chat = "";
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Move move = 6;
|
||||
* @generated from field: pianoverse.Move move = 7;
|
||||
*/
|
||||
move?: Move;
|
||||
|
||||
/**
|
||||
* @generated from field: string mute = 7;
|
||||
* @generated from field: string mute = 8;
|
||||
*/
|
||||
mute = "";
|
||||
|
||||
/**
|
||||
* @generated from field: string unmute = 8;
|
||||
* @generated from field: string unmute = 9;
|
||||
*/
|
||||
unmute = "";
|
||||
|
||||
/**
|
||||
* @generated from field: string kick = 9;
|
||||
* @generated from field: string kick = 10;
|
||||
*/
|
||||
kick = "";
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Press press = 10;
|
||||
* @generated from field: pianoverse.Press press = 11;
|
||||
*/
|
||||
press?: Press;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Release release = 11;
|
||||
* @generated from field: pianoverse.Release release = 12;
|
||||
*/
|
||||
release?: Release;
|
||||
|
||||
/**
|
||||
* @generated from field: bool sustain = 12;
|
||||
* @generated from field: bool sustain = 13;
|
||||
*/
|
||||
sustain = false;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ClientMessage.Heartbeat heartbeat = 13;
|
||||
* @generated from field: pianoverse.ClientMessage.Heartbeat heartbeat = 14;
|
||||
*/
|
||||
heartbeat?: ClientMessage_Heartbeat;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ClientMessage.Ban ban = 14;
|
||||
* @generated from field: pianoverse.ClientMessage.Ban ban = 15;
|
||||
*/
|
||||
ban?: ClientMessage_Ban;
|
||||
|
||||
/**
|
||||
* @generated from field: string chown = 15;
|
||||
* @generated from field: string ipban = 16;
|
||||
*/
|
||||
chown = "";
|
||||
ipban = "";
|
||||
|
||||
/**
|
||||
* @generated from field: string mod = 17;
|
||||
*/
|
||||
mod = "";
|
||||
|
||||
/**
|
||||
* @generated from field: string unmod = 18;
|
||||
*/
|
||||
unmod = "";
|
||||
|
||||
constructor(data?: PartialMessage<ClientMessage>) {
|
||||
super();
|
||||
|
@ -116,20 +136,24 @@ export class ClientMessage extends Message<ClientMessage> {
|
|||
static readonly runtime: typeof proto3 = proto3;
|
||||
static readonly typeName = "pianoverse.ClientMessage";
|
||||
static readonly fields: FieldList = proto3.util.newFieldList(() => [
|
||||
{ no: 1, name: "event", kind: "enum", T: proto3.getEnumType(ClientMessage_EventType) },
|
||||
{ no: 3, name: "room", kind: "message", T: ClientMessage_Room },
|
||||
{ no: 4, name: "profile", kind: "message", T: Profile },
|
||||
{ no: 5, name: "chat", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 6, name: "move", kind: "message", T: Move },
|
||||
{ no: 7, name: "mute", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 8, name: "unmute", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 9, name: "kick", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 10, name: "press", kind: "message", T: Press },
|
||||
{ no: 11, name: "release", kind: "message", T: Release },
|
||||
{ no: 12, name: "sustain", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
|
||||
{ no: 13, name: "heartbeat", kind: "message", T: ClientMessage_Heartbeat },
|
||||
{ no: 14, name: "ban", kind: "message", T: ClientMessage_Ban },
|
||||
{ no: 15, name: "chown", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 1, name: "chown", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 2, name: "event", kind: "enum", T: proto3.getEnumType(ClientMessage_EventType) },
|
||||
{ no: 3, name: "ping", kind: "message", T: ClientMessage_Heartbeat },
|
||||
{ no: 4, name: "room", kind: "message", T: ClientMessage_Room },
|
||||
{ no: 5, name: "profile", kind: "message", T: Profile },
|
||||
{ no: 6, name: "chat", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 7, name: "move", kind: "message", T: Move },
|
||||
{ no: 8, name: "mute", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 9, name: "unmute", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 10, name: "kick", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 11, name: "press", kind: "message", T: Press },
|
||||
{ no: 12, name: "release", kind: "message", T: Release },
|
||||
{ no: 13, name: "sustain", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
|
||||
{ no: 14, name: "heartbeat", kind: "message", T: ClientMessage_Heartbeat },
|
||||
{ no: 15, name: "ban", kind: "message", T: ClientMessage_Ban },
|
||||
{ no: 16, name: "ipban", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 17, name: "mod", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 18, name: "unmod", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
]);
|
||||
|
||||
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ClientMessage {
|
||||
|
@ -154,91 +178,109 @@ export class ClientMessage extends Message<ClientMessage> {
|
|||
*/
|
||||
export enum ClientMessage_EventType {
|
||||
/**
|
||||
* @generated from enum value: PING = 0;
|
||||
* @generated from enum value: CHOWN = 0;
|
||||
*/
|
||||
PING = 0,
|
||||
CHOWN = 0,
|
||||
|
||||
/**
|
||||
* @generated from enum value: ROOM = 1;
|
||||
* @generated from enum value: PING = 1;
|
||||
*/
|
||||
ROOM = 1,
|
||||
PING = 1,
|
||||
|
||||
/**
|
||||
* @generated from enum value: PROFILE = 2;
|
||||
* @generated from enum value: ROOM = 2;
|
||||
*/
|
||||
PROFILE = 2,
|
||||
ROOM = 2,
|
||||
|
||||
/**
|
||||
* @generated from enum value: CHAT = 3;
|
||||
* @generated from enum value: PROFILE = 3;
|
||||
*/
|
||||
CHAT = 3,
|
||||
PROFILE = 3,
|
||||
|
||||
/**
|
||||
* @generated from enum value: MOVE = 4;
|
||||
* @generated from enum value: CHAT = 4;
|
||||
*/
|
||||
MOVE = 4,
|
||||
CHAT = 4,
|
||||
|
||||
/**
|
||||
* @generated from enum value: MUTE = 5;
|
||||
* @generated from enum value: MOVE = 5;
|
||||
*/
|
||||
MUTE = 5,
|
||||
MOVE = 5,
|
||||
|
||||
/**
|
||||
* @generated from enum value: UNMUTE = 6;
|
||||
* @generated from enum value: MUTE = 6;
|
||||
*/
|
||||
UNMUTE = 6,
|
||||
MUTE = 6,
|
||||
|
||||
/**
|
||||
* @generated from enum value: KICK = 7;
|
||||
* @generated from enum value: UNMUTE = 7;
|
||||
*/
|
||||
KICK = 7,
|
||||
UNMUTE = 7,
|
||||
|
||||
/**
|
||||
* @generated from enum value: PRESS = 8;
|
||||
* @generated from enum value: KICK = 8;
|
||||
*/
|
||||
PRESS = 8,
|
||||
KICK = 8,
|
||||
|
||||
/**
|
||||
* @generated from enum value: RELEASE = 9;
|
||||
* @generated from enum value: PRESS = 9;
|
||||
*/
|
||||
RELEASE = 9,
|
||||
PRESS = 9,
|
||||
|
||||
/**
|
||||
* @generated from enum value: SUSTAIN = 10;
|
||||
* @generated from enum value: RELEASE = 10;
|
||||
*/
|
||||
SUSTAIN = 10,
|
||||
RELEASE = 10,
|
||||
|
||||
/**
|
||||
* @generated from enum value: HEARTBEAT = 11;
|
||||
* @generated from enum value: SUSTAIN = 11;
|
||||
*/
|
||||
HEARTBEAT = 11,
|
||||
SUSTAIN = 11,
|
||||
|
||||
/**
|
||||
* @generated from enum value: BAN = 12;
|
||||
* @generated from enum value: HEARTBEAT = 12;
|
||||
*/
|
||||
BAN = 12,
|
||||
HEARTBEAT = 12,
|
||||
|
||||
/**
|
||||
* @generated from enum value: CHOWN = 13;
|
||||
* @generated from enum value: BAN = 13;
|
||||
*/
|
||||
CHOWN = 13,
|
||||
BAN = 13,
|
||||
|
||||
/**
|
||||
* @generated from enum value: IPBAN = 14;
|
||||
*/
|
||||
IPBAN = 14,
|
||||
|
||||
/**
|
||||
* @generated from enum value: MOD = 15;
|
||||
*/
|
||||
MOD = 15,
|
||||
|
||||
/**
|
||||
* @generated from enum value: UNMOD = 16;
|
||||
*/
|
||||
UNMOD = 16,
|
||||
}
|
||||
// Retrieve enum metadata with: proto3.getEnumType(ClientMessage_EventType)
|
||||
proto3.util.setEnumType(ClientMessage_EventType, "pianoverse.ClientMessage.EventType", [
|
||||
{ no: 0, name: "PING" },
|
||||
{ no: 1, name: "ROOM" },
|
||||
{ no: 2, name: "PROFILE" },
|
||||
{ no: 3, name: "CHAT" },
|
||||
{ no: 4, name: "MOVE" },
|
||||
{ no: 5, name: "MUTE" },
|
||||
{ no: 6, name: "UNMUTE" },
|
||||
{ no: 7, name: "KICK" },
|
||||
{ no: 8, name: "PRESS" },
|
||||
{ no: 9, name: "RELEASE" },
|
||||
{ no: 10, name: "SUSTAIN" },
|
||||
{ no: 11, name: "HEARTBEAT" },
|
||||
{ no: 12, name: "BAN" },
|
||||
{ no: 13, name: "CHOWN" },
|
||||
{ no: 0, name: "CHOWN" },
|
||||
{ no: 1, name: "PING" },
|
||||
{ no: 2, name: "ROOM" },
|
||||
{ no: 3, name: "PROFILE" },
|
||||
{ no: 4, name: "CHAT" },
|
||||
{ no: 5, name: "MOVE" },
|
||||
{ no: 6, name: "MUTE" },
|
||||
{ no: 7, name: "UNMUTE" },
|
||||
{ no: 8, name: "KICK" },
|
||||
{ no: 9, name: "PRESS" },
|
||||
{ no: 10, name: "RELEASE" },
|
||||
{ no: 11, name: "SUSTAIN" },
|
||||
{ no: 12, name: "HEARTBEAT" },
|
||||
{ no: 13, name: "BAN" },
|
||||
{ no: 14, name: "IPBAN" },
|
||||
{ no: 15, name: "MOD" },
|
||||
{ no: 16, name: "UNMOD" },
|
||||
]);
|
||||
|
||||
/**
|
||||
|
@ -363,85 +405,85 @@ export class ClientMessage_Ban extends Message<ClientMessage_Ban> {
|
|||
*/
|
||||
export class ServerMessage extends Message<ServerMessage> {
|
||||
/**
|
||||
* @generated from field: pianoverse.ServerMessage.EventType event = 1;
|
||||
* @generated from field: pianoverse.Profile clear = 1;
|
||||
*/
|
||||
event = ServerMessage_EventType.PONG;
|
||||
clear?: Profile;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ServerMessage.Pong pong = 2;
|
||||
* @generated from field: pianoverse.ServerMessage.EventType event = 2;
|
||||
*/
|
||||
pong?: ServerMessage_Pong;
|
||||
event = ServerMessage_EventType.CLEAR;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ServerMessage.Chat chat = 3;
|
||||
* @generated from field: pianoverse.Profile pong = 3;
|
||||
*/
|
||||
pong?: Profile;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ServerMessage.Chat chat = 4;
|
||||
*/
|
||||
chat?: ServerMessage_Chat;
|
||||
|
||||
/**
|
||||
* @generated from field: repeated pianoverse.ServerMessage.Room rooms = 4;
|
||||
* @generated from field: repeated pianoverse.ServerMessage.Room rooms = 5;
|
||||
*/
|
||||
rooms: ServerMessage_Room[] = [];
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ServerMessage.Welcome welcome = 5;
|
||||
* @generated from field: pianoverse.ServerMessage.Welcome welcome = 6;
|
||||
*/
|
||||
welcome?: ServerMessage_Welcome;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Move move = 6;
|
||||
* @generated from field: pianoverse.Move move = 7;
|
||||
*/
|
||||
move?: Move;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Press press = 7;
|
||||
* @generated from field: pianoverse.Press press = 8;
|
||||
*/
|
||||
press?: Press;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Release release = 8;
|
||||
* @generated from field: pianoverse.Release release = 9;
|
||||
*/
|
||||
release?: Release;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.ServerMessage.Sustain sustain = 9;
|
||||
* @generated from field: pianoverse.ServerMessage.Sustain sustain = 10;
|
||||
*/
|
||||
sustain?: ServerMessage_Sustain;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Profile profile = 10;
|
||||
* @generated from field: pianoverse.Profile profile = 11;
|
||||
*/
|
||||
profile?: Profile;
|
||||
|
||||
/**
|
||||
* @generated from field: pianoverse.Profile join = 11;
|
||||
* @generated from field: pianoverse.Profile join = 12;
|
||||
*/
|
||||
join?: Profile;
|
||||
|
||||
/**
|
||||
* @generated from field: string leave = 12;
|
||||
* @generated from field: string leave = 13;
|
||||
*/
|
||||
leave = "";
|
||||
|
||||
/**
|
||||
* @generated from field: int32 rateLimit = 13;
|
||||
* @generated from field: uint32 ratelimit = 14;
|
||||
*/
|
||||
rateLimit = 0;
|
||||
ratelimit = 0;
|
||||
|
||||
/**
|
||||
* @generated from field: string message = 14;
|
||||
* @generated from field: string message = 15;
|
||||
*/
|
||||
message = "";
|
||||
|
||||
/**
|
||||
* @generated from field: string chown = 15;
|
||||
* @generated from field: string chown = 16;
|
||||
*/
|
||||
chown = "";
|
||||
|
||||
/**
|
||||
* @generated from field: int32 clear = 16;
|
||||
*/
|
||||
clear = 0;
|
||||
|
||||
constructor(data?: PartialMessage<ServerMessage>) {
|
||||
super();
|
||||
proto3.util.initPartial(data, this);
|
||||
|
@ -450,22 +492,22 @@ export class ServerMessage extends Message<ServerMessage> {
|
|||
static readonly runtime: typeof proto3 = proto3;
|
||||
static readonly typeName = "pianoverse.ServerMessage";
|
||||
static readonly fields: FieldList = proto3.util.newFieldList(() => [
|
||||
{ no: 1, name: "event", kind: "enum", T: proto3.getEnumType(ServerMessage_EventType) },
|
||||
{ no: 2, name: "pong", kind: "message", T: ServerMessage_Pong },
|
||||
{ no: 3, name: "chat", kind: "message", T: ServerMessage_Chat },
|
||||
{ no: 4, name: "rooms", kind: "message", T: ServerMessage_Room, repeated: true },
|
||||
{ no: 5, name: "welcome", kind: "message", T: ServerMessage_Welcome },
|
||||
{ no: 6, name: "move", kind: "message", T: Move },
|
||||
{ no: 7, name: "press", kind: "message", T: Press },
|
||||
{ no: 8, name: "release", kind: "message", T: Release },
|
||||
{ no: 9, name: "sustain", kind: "message", T: ServerMessage_Sustain },
|
||||
{ no: 10, name: "profile", kind: "message", T: Profile },
|
||||
{ no: 11, name: "join", kind: "message", T: Profile },
|
||||
{ no: 12, name: "leave", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 13, name: "rateLimit", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
|
||||
{ no: 14, name: "message", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 15, name: "chown", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 16, name: "clear", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
|
||||
{ no: 1, name: "clear", kind: "message", T: Profile },
|
||||
{ no: 2, name: "event", kind: "enum", T: proto3.getEnumType(ServerMessage_EventType) },
|
||||
{ no: 3, name: "pong", kind: "message", T: Profile },
|
||||
{ no: 4, name: "chat", kind: "message", T: ServerMessage_Chat },
|
||||
{ no: 5, name: "rooms", kind: "message", T: ServerMessage_Room, repeated: true },
|
||||
{ no: 6, name: "welcome", kind: "message", T: ServerMessage_Welcome },
|
||||
{ no: 7, name: "move", kind: "message", T: Move },
|
||||
{ no: 8, name: "press", kind: "message", T: Press },
|
||||
{ no: 9, name: "release", kind: "message", T: Release },
|
||||
{ no: 10, name: "sustain", kind: "message", T: ServerMessage_Sustain },
|
||||
{ no: 11, name: "profile", kind: "message", T: Profile },
|
||||
{ no: 12, name: "join", kind: "message", T: Profile },
|
||||
{ no: 13, name: "leave", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 14, name: "ratelimit", kind: "scalar", T: 13 /* ScalarType.UINT32 */ },
|
||||
{ no: 15, name: "message", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
{ no: 16, name: "chown", kind: "scalar", T: 9 /* ScalarType.STRING */ },
|
||||
]);
|
||||
|
||||
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ServerMessage {
|
||||
|
@ -490,130 +532,99 @@ export class ServerMessage extends Message<ServerMessage> {
|
|||
*/
|
||||
export enum ServerMessage_EventType {
|
||||
/**
|
||||
* @generated from enum value: PONG = 0;
|
||||
* @generated from enum value: CLEAR = 0;
|
||||
*/
|
||||
PONG = 0,
|
||||
CLEAR = 0,
|
||||
|
||||
/**
|
||||
* @generated from enum value: CHAT = 1;
|
||||
* @generated from enum value: PONG = 1;
|
||||
*/
|
||||
CHAT = 1,
|
||||
PONG = 1,
|
||||
|
||||
/**
|
||||
* @generated from enum value: ROOMS = 2;
|
||||
* @generated from enum value: CHAT = 2;
|
||||
*/
|
||||
ROOMS = 2,
|
||||
CHAT = 2,
|
||||
|
||||
/**
|
||||
* @generated from enum value: WELCOME = 3;
|
||||
* @generated from enum value: ROOMS = 3;
|
||||
*/
|
||||
WELCOME = 3,
|
||||
ROOMS = 3,
|
||||
|
||||
/**
|
||||
* @generated from enum value: MOVE = 4;
|
||||
* @generated from enum value: WELCOME = 4;
|
||||
*/
|
||||
MOVE = 4,
|
||||
WELCOME = 4,
|
||||
|
||||
/**
|
||||
* @generated from enum value: PRESS = 5;
|
||||
* @generated from enum value: MOVE = 5;
|
||||
*/
|
||||
PRESS = 5,
|
||||
MOVE = 5,
|
||||
|
||||
/**
|
||||
* @generated from enum value: RELEASE = 6;
|
||||
* @generated from enum value: PRESS = 6;
|
||||
*/
|
||||
RELEASE = 6,
|
||||
PRESS = 6,
|
||||
|
||||
/**
|
||||
* @generated from enum value: SUSTAIN = 7;
|
||||
* @generated from enum value: RELEASE = 7;
|
||||
*/
|
||||
SUSTAIN = 7,
|
||||
RELEASE = 7,
|
||||
|
||||
/**
|
||||
* @generated from enum value: PROFILE = 8;
|
||||
* @generated from enum value: SUSTAIN = 8;
|
||||
*/
|
||||
PROFILE = 8,
|
||||
SUSTAIN = 8,
|
||||
|
||||
/**
|
||||
* @generated from enum value: JOIN = 9;
|
||||
* @generated from enum value: PROFILE = 9;
|
||||
*/
|
||||
JOIN = 9,
|
||||
PROFILE = 9,
|
||||
|
||||
/**
|
||||
* @generated from enum value: LEAVE = 10;
|
||||
* @generated from enum value: JOIN = 10;
|
||||
*/
|
||||
LEAVE = 10,
|
||||
JOIN = 10,
|
||||
|
||||
/**
|
||||
* @generated from enum value: RATELIMIT = 11;
|
||||
* @generated from enum value: LEAVE = 11;
|
||||
*/
|
||||
RATELIMIT = 11,
|
||||
LEAVE = 11,
|
||||
|
||||
/**
|
||||
* @generated from enum value: MESSAGE = 12;
|
||||
* @generated from enum value: RATELIMIT = 12;
|
||||
*/
|
||||
MESSAGE = 12,
|
||||
RATELIMIT = 12,
|
||||
|
||||
/**
|
||||
* @generated from enum value: CHOWN = 13;
|
||||
* @generated from enum value: MESSAGE = 13;
|
||||
*/
|
||||
CHOWN = 13,
|
||||
MESSAGE = 13,
|
||||
|
||||
/**
|
||||
* @generated from enum value: CLEAR = 14;
|
||||
* @generated from enum value: CHOWN = 14;
|
||||
*/
|
||||
CLEAR = 14,
|
||||
CHOWN = 14,
|
||||
}
|
||||
// Retrieve enum metadata with: proto3.getEnumType(ServerMessage_EventType)
|
||||
proto3.util.setEnumType(ServerMessage_EventType, "pianoverse.ServerMessage.EventType", [
|
||||
{ no: 0, name: "PONG" },
|
||||
{ no: 1, name: "CHAT" },
|
||||
{ no: 2, name: "ROOMS" },
|
||||
{ no: 3, name: "WELCOME" },
|
||||
{ no: 4, name: "MOVE" },
|
||||
{ no: 5, name: "PRESS" },
|
||||
{ no: 6, name: "RELEASE" },
|
||||
{ no: 7, name: "SUSTAIN" },
|
||||
{ no: 8, name: "PROFILE" },
|
||||
{ no: 9, name: "JOIN" },
|
||||
{ no: 10, name: "LEAVE" },
|
||||
{ no: 11, name: "RATELIMIT" },
|
||||
{ no: 12, name: "MESSAGE" },
|
||||
{ no: 13, name: "CHOWN" },
|
||||
{ no: 14, name: "CLEAR" },
|
||||
{ no: 0, name: "CLEAR" },
|
||||
{ no: 1, name: "PONG" },
|
||||
{ no: 2, name: "CHAT" },
|
||||
{ no: 3, name: "ROOMS" },
|
||||
{ no: 4, name: "WELCOME" },
|
||||
{ no: 5, name: "MOVE" },
|
||||
{ no: 6, name: "PRESS" },
|
||||
{ no: 7, name: "RELEASE" },
|
||||
{ no: 8, name: "SUSTAIN" },
|
||||
{ no: 9, name: "PROFILE" },
|
||||
{ no: 10, name: "JOIN" },
|
||||
{ no: 11, name: "LEAVE" },
|
||||
{ no: 12, name: "RATELIMIT" },
|
||||
{ no: 13, name: "MESSAGE" },
|
||||
{ no: 14, name: "CHOWN" },
|
||||
]);
|
||||
|
||||
/**
|
||||
* @generated from message pianoverse.ServerMessage.Pong
|
||||
*/
|
||||
export class ServerMessage_Pong extends Message<ServerMessage_Pong> {
|
||||
constructor(data?: PartialMessage<ServerMessage_Pong>) {
|
||||
super();
|
||||
proto3.util.initPartial(data, this);
|
||||
}
|
||||
|
||||
static readonly runtime: typeof proto3 = proto3;
|
||||
static readonly typeName = "pianoverse.ServerMessage.Pong";
|
||||
static readonly fields: FieldList = proto3.util.newFieldList(() => [
|
||||
]);
|
||||
|
||||
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ServerMessage_Pong {
|
||||
return new ServerMessage_Pong().fromBinary(bytes, options);
|
||||
}
|
||||
|
||||
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ServerMessage_Pong {
|
||||
return new ServerMessage_Pong().fromJson(jsonValue, options);
|
||||
}
|
||||
|
||||
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ServerMessage_Pong {
|
||||
return new ServerMessage_Pong().fromJsonString(jsonString, options);
|
||||
}
|
||||
|
||||
static equals(a: ServerMessage_Pong | PlainMessage<ServerMessage_Pong> | undefined, b: ServerMessage_Pong | PlainMessage<ServerMessage_Pong> | undefined): boolean {
|
||||
return proto3.util.equals(ServerMessage_Pong, a, b);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @generated from message pianoverse.ServerMessage.Chat
|
||||
*/
|
||||
|
|
Loading…
Reference in a new issue