much cleaner approach to group lock update

This commit is contained in:
Hanusiak Piotr
2022-03-10 12:20:53 +01:00
parent 3a5aa3c3c5
commit 5a8cba24fa
12 changed files with 13 additions and 107 deletions
-31
View File
@@ -51,7 +51,6 @@ import { PathfindingManager } from "../../Utils/PathfindingManager";
import { ActivatablesManager } from "./ActivatablesManager";
import type {
GroupCreatedUpdatedMessageInterface,
LockGroupMessageInterface,
MessageUserMovedInterface,
MessageUserPositionInterface,
OnConnectInterface,
@@ -134,11 +133,6 @@ interface DeleteGroupEventInterface {
groupId: number;
}
interface LockGroupEventInterface {
type: "LockGroupEvent";
event: LockGroupMessageInterface;
}
interface PlayerDetailsUpdatedInterface {
type: "PlayerDetailsUpdated";
details: PlayerDetailsUpdatedMessageInterface;
@@ -163,7 +157,6 @@ export class GameScene extends DirtyScene {
| UserMovedEventInterface
| GroupCreatedUpdatedEventInterface
| DeleteGroupEventInterface
| LockGroupEventInterface
| PlayerDetailsUpdatedInterface
>();
private initPosition: PositionInterface | null = null;
@@ -808,10 +801,6 @@ export class GameScene extends DirtyScene {
}
});
this.connection.lockGroupMessageStream.subscribe((message) => {
this.lockGroup(message);
});
this.connection.onServerDisconnected(() => {
console.log("Player disconnected from server. Reloading scene.");
this.cleanupClosingScene();
@@ -1847,10 +1836,6 @@ ${escapedMessage}
currentPlayerGroupLockStateStore.set(undefined);
break;
}
case "LockGroupEvent": {
this.doLockGroup(event.event);
break;
}
default: {
const tmp: never = event;
}
@@ -2049,22 +2034,6 @@ ${escapedMessage}
this.groups.delete(groupId);
}
lockGroup(event: LockGroupMessageInterface): void {
this.pendingEvents.enqueue({
type: "LockGroupEvent",
event,
});
}
doLockGroup(event: LockGroupMessageInterface): void {
const group = this.groups.get(event.groupId);
if (!group) {
return;
}
currentPlayerGroupLockStateStore.set(event.lock);
group.setTexture(event.lock ? "circleSprite-red" : "circleSprite-white");
}
doUpdatePlayerDetails(message: PlayerDetailsUpdatedMessageInterface): void {
const character = this.MapPlayersByKey.get(message.userId);
if (character === undefined) {