2021-07-07 11:24:51 +02:00
|
|
|
import type { SignalData } from "simple-peer";
|
|
|
|
import type { RoomConnection } from "./RoomConnection";
|
|
|
|
import type { BodyResourceDescriptionInterface } from "../Phaser/Entity/PlayerTextures";
|
2020-09-25 18:29:22 +02:00
|
|
|
|
|
|
|
export interface PointInterface {
|
|
|
|
x: number;
|
|
|
|
y: number;
|
2022-01-03 15:23:28 +01:00
|
|
|
direction: string; // TODO: modify this to the enum from ts-proto
|
2020-09-25 18:29:22 +02:00
|
|
|
moving: boolean;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface MessageUserPositionInterface {
|
|
|
|
userId: number;
|
|
|
|
name: string;
|
2020-10-20 16:39:23 +02:00
|
|
|
characterLayers: BodyResourceDescriptionInterface[];
|
2020-09-25 18:29:22 +02:00
|
|
|
position: PointInterface;
|
2021-07-07 11:24:51 +02:00
|
|
|
visitCardUrl: string | null;
|
|
|
|
companion: string | null;
|
|
|
|
userUuid: string;
|
2020-09-25 18:29:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface MessageUserMovedInterface {
|
|
|
|
userId: number;
|
|
|
|
position: PointInterface;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface MessageUserJoined {
|
|
|
|
userId: number;
|
|
|
|
name: string;
|
2020-10-20 16:39:23 +02:00
|
|
|
characterLayers: BodyResourceDescriptionInterface[];
|
2021-04-02 21:21:11 +02:00
|
|
|
position: PointInterface;
|
2021-06-08 16:30:58 +02:00
|
|
|
visitCardUrl: string | null;
|
2021-07-07 11:24:51 +02:00
|
|
|
companion: string | null;
|
|
|
|
userUuid: string;
|
2021-12-23 10:22:19 +01:00
|
|
|
outlineColor: number | undefined;
|
2020-09-25 18:29:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface PositionInterface {
|
2021-07-07 11:24:51 +02:00
|
|
|
x: number;
|
|
|
|
y: number;
|
2020-09-25 18:29:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface GroupCreatedUpdatedMessageInterface {
|
2021-07-07 11:24:51 +02:00
|
|
|
position: PositionInterface;
|
|
|
|
groupId: number;
|
|
|
|
groupSize: number;
|
2020-09-25 18:29:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface WebRtcDisconnectMessageInterface {
|
2021-07-07 11:24:51 +02:00
|
|
|
userId: number;
|
2020-09-25 18:29:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface WebRtcSignalReceivedMessageInterface {
|
2021-07-07 11:24:51 +02:00
|
|
|
userId: number;
|
|
|
|
signal: SignalData;
|
|
|
|
webRtcUser: string | undefined;
|
|
|
|
webRtcPassword: string | undefined;
|
2020-09-25 18:29:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface ViewportInterface {
|
2021-07-07 11:24:51 +02:00
|
|
|
left: number;
|
|
|
|
top: number;
|
|
|
|
right: number;
|
|
|
|
bottom: number;
|
2020-09-25 18:29:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface ItemEventMessageInterface {
|
2021-07-07 11:24:51 +02:00
|
|
|
itemId: number;
|
|
|
|
event: string;
|
|
|
|
state: unknown;
|
|
|
|
parameters: unknown;
|
2020-09-25 18:29:22 +02:00
|
|
|
}
|
|
|
|
|
2021-12-22 18:30:23 +01:00
|
|
|
export interface PlayerDetailsUpdatedMessageInterface {
|
|
|
|
userId: number;
|
|
|
|
outlineColor: number;
|
|
|
|
removeOutlineColor: boolean;
|
|
|
|
}
|
|
|
|
|
2020-09-25 18:29:22 +02:00
|
|
|
export interface RoomJoinedMessageInterface {
|
2020-11-13 18:00:22 +01:00
|
|
|
//users: MessageUserPositionInterface[],
|
|
|
|
//groups: GroupCreatedUpdatedMessageInterface[],
|
2021-07-07 11:24:51 +02:00
|
|
|
items: { [itemId: number]: unknown };
|
2021-07-07 17:17:28 +02:00
|
|
|
variables: Map<string, unknown>;
|
2022-03-11 17:02:58 +01:00
|
|
|
characterLayers: BodyResourceDescriptionInterface[];
|
2020-10-01 14:11:34 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface PlayGlobalMessageInterface {
|
2021-07-20 15:16:51 +02:00
|
|
|
type: string;
|
|
|
|
content: string;
|
|
|
|
broadcastToWorld: boolean;
|
|
|
|
}
|
|
|
|
|
2020-12-03 16:39:44 +01:00
|
|
|
export interface OnConnectInterface {
|
2021-07-07 11:24:51 +02:00
|
|
|
connection: RoomConnection;
|
|
|
|
room: RoomJoinedMessageInterface;
|
2020-12-03 16:39:44 +01:00
|
|
|
}
|