Merge pull request #1680 from workadventure-xce/fix/follow-via-keyboard

Fix follow requests via keyboard
This commit is contained in:
David Négrier 2022-01-03 18:24:03 +01:00 committed by GitHub
commit 4eb2ebd034
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 22 additions and 28 deletions

View file

@ -100,10 +100,6 @@ export class Player extends Character {
return [xMovement, yMovement];
}
public enableFollowing() {
followStateStore.set("active");
}
public moveUser(delta: number): void {
const activeEvents = this.userInputManager.getEventListForGameTick();
const state = get(followStateStore);
@ -111,8 +107,7 @@ export class Player extends Character {
if (activeEvents.get(UserInputEvent.Follow)) {
if (state === "off" && this.scene.groups.size > 0) {
followStateStore.set("requesting");
followRoleStore.set("leader");
this.sendFollowRequest();
} else if (state === "active") {
followStateStore.set("ending");
}
@ -125,4 +120,15 @@ export class Player extends Character {
}
this.inputStep(activeEvents, x, y);
}
public sendFollowRequest() {
this.scene.connection?.emitFollowRequest();
followRoleStore.set("leader");
followStateStore.set("active");
}
public startFollowing() {
followStateStore.set("active");
this.scene.connection?.emitFollowConfirmation();
}
}