merged develop

This commit is contained in:
Piotr 'pwh' Hanusiak
2022-03-28 13:16:29 +02:00
284 changed files with 13296 additions and 3161 deletions
+4 -2
View File
@@ -92,8 +92,10 @@ export class PositionDispatcher {
public removeViewport(socket: ExSocketInterface): void {
// Also, let's stop listening on viewports
for (const zone of socket.listenedZones) {
this.stopListening(zone, socket);
if (socket.listenedZones) {
for (const zone of socket.listenedZones) {
this.stopListening(zone, socket);
}
}
}
@@ -9,13 +9,13 @@ import {
ServerToClientMessage,
SubMessage,
} from "../../Messages/generated/messages_pb";
import { WebSocket } from "uWebSockets.js";
import { compressors } from "hyper-express";
import { ClientDuplexStream } from "grpc";
import { Zone } from "_Model/Zone";
export type AdminConnection = ClientDuplexStream<AdminPusherToBackMessage, ServerToAdminClientMessage>;
export interface ExAdminSocketInterface extends WebSocket {
export interface ExAdminSocketInterface extends compressors.WebSocket {
adminConnection: AdminConnection;
disconnecting: boolean;
}
@@ -8,26 +8,21 @@ import {
ServerToClientMessage,
SubMessage,
} from "../../Messages/generated/messages_pb";
import { WebSocket } from "uWebSockets.js";
import { ClientDuplexStream } from "grpc";
import { Zone } from "_Model/Zone";
import { CharacterTexture } from "../../Messages/JsonMessages/CharacterTexture";
import { compressors } from "hyper-express";
import { WokaDetail } from "../../Messages/JsonMessages/PlayerTextures";
export type BackConnection = ClientDuplexStream<PusherToBackMessage, ServerToClientMessage>;
export interface CharacterLayer {
name: string;
url: string | undefined;
}
export interface ExSocketInterface extends WebSocket, Identificable {
export interface ExSocketInterface extends compressors.WebSocket, Identificable {
token: string;
roomId: string;
//userId: number; // A temporary (autoincremented) identifier for this user
userUuid: string; // A unique identifier for this user
IPAddress: string; // IP address
name: string;
characterLayers: CharacterLayer[];
characterLayers: WokaDetail[];
position: PointInterface;
viewport: ViewportInterface;
companion?: CompanionMessage;
@@ -41,7 +36,6 @@ export interface ExSocketInterface extends WebSocket, Identificable {
messages: unknown;
tags: string[];
visitCardUrl: string | null;
textures: CharacterTexture[];
backConnection: BackConnection;
listenedZones: Set<Zone>;
userRoomToken: string | undefined;
+7 -3
View File
@@ -5,10 +5,11 @@ import {
PointMessage,
PositionMessage,
} from "../../Messages/generated/messages_pb";
import { CharacterLayer, ExSocketInterface } from "_Model/Websocket/ExSocketInterface";
import { ExSocketInterface } from "_Model/Websocket/ExSocketInterface";
import Direction = PositionMessage.Direction;
import { ItemEventMessageInterface } from "_Model/Websocket/ItemEventMessage";
import { PositionInterface } from "_Model/PositionInterface";
import { WokaDetail } from "../../Messages/JsonMessages/PlayerTextures";
export class ProtobufUtils {
public static toPositionMessage(point: PointInterface): PositionMessage {
@@ -94,13 +95,16 @@ export class ProtobufUtils {
return itemEventMessage;
}
public static toCharacterLayerMessages(characterLayers: CharacterLayer[]): CharacterLayerMessage[] {
public static toCharacterLayerMessages(characterLayers: WokaDetail[]): CharacterLayerMessage[] {
return characterLayers.map(function (characterLayer): CharacterLayerMessage {
const message = new CharacterLayerMessage();
message.setName(characterLayer.name);
message.setName(characterLayer.id);
if (characterLayer.url) {
message.setUrl(characterLayer.url);
}
if (characterLayer.layer) {
message.setLayer(characterLayer.layer);
}
return message;
});
}