Spaces:
Running
Running
| export default class Cursors { | |
| constructor(scene, channel) { | |
| this.channel = channel | |
| this.cursors = scene.input.keyboard.createCursorKeys() | |
| scene.events.on('update', this.update, this) | |
| } | |
| update() { | |
| let move = { | |
| left: false, | |
| right: false, | |
| up: false, | |
| none: true | |
| } | |
| if (this.cursors.left.isDown) { | |
| move.left = true | |
| move.none = false | |
| } else if (this.cursors.right.isDown) { | |
| move.right = true | |
| move.none = false | |
| } | |
| if (this.cursors.up.isDown) { | |
| move.up = true | |
| move.none = false | |
| } | |
| if (move.left || move.right || move.up || move.none !== this.prevNoMovement) { | |
| let total = 0 | |
| if (move.left) total += 1 | |
| if (move.right) total += 2 | |
| if (move.up) total += 4 | |
| let str36 = total.toString(36) | |
| this.channel.emit('playerMove', str36) | |
| } | |
| this.prevNoMovement = move.none | |
| } | |
| } | |