walk on dbl click

This commit is contained in:
_Bastler 2022-01-27 14:57:46 +01:00
parent 6c094b714b
commit 08816ae80f

View File

@ -4,6 +4,10 @@ import type { GameScene } from "../Game/GameScene";
export class GameSceneUserInputHandler implements UserInputHandlerInterface { export class GameSceneUserInputHandler implements UserInputHandlerInterface {
private gameScene: GameScene; private gameScene: GameScene;
private lastTime: number = 0;
private lastX: number = 0;
private lastY: number = 0;
constructor(gameScene: GameScene) { constructor(gameScene: GameScene) {
this.gameScene = gameScene; this.gameScene = gameScene;
} }
@ -22,6 +26,8 @@ export class GameSceneUserInputHandler implements UserInputHandlerInterface {
if (pointer.rightButtonReleased() || pointer.getDuration() > 250) { if (pointer.rightButtonReleased() || pointer.getDuration() > 250) {
return; return;
} }
if (this.lastTime > 0 && pointer.time - this.lastTime < 500 && this.lastX == pointer.x && this.lastY == pointer.y) {
const camera = this.gameScene.getCameraManager().getCamera(); const camera = this.gameScene.getCameraManager().getCamera();
const index = this.gameScene const index = this.gameScene
.getGameMap() .getGameMap()
@ -35,14 +41,19 @@ export class GameSceneUserInputHandler implements UserInputHandlerInterface {
.then((path) => { .then((path) => {
// Remove first step as it is for the tile we are currently standing on // Remove first step as it is for the tile we are currently standing on
path.shift(); path.shift();
this.gameScene.CurrentPlayer.setPathToFollow(path).catch((reason) => {}); this.gameScene.CurrentPlayer.setPathToFollow(path).catch((reason) => { });
}) })
.catch((reason) => { .catch((reason) => {
console.warn(reason); console.warn(reason);
}); });
} }
public handlePointerDownEvent(pointer: Phaser.Input.Pointer, gameObjects: Phaser.GameObjects.GameObject[]): void {} this.lastTime = pointer.time;
this.lastX = pointer.x;
this.lastY = pointer.y;
}
public handlePointerDownEvent(pointer: Phaser.Input.Pointer, gameObjects: Phaser.GameObjects.GameObject[]): void { }
public handleSpaceKeyUpEvent(event: Event): Event { public handleSpaceKeyUpEvent(event: Event): Event {
this.gameScene.activateOutlinedItem(); this.gameScene.activateOutlinedItem();