# .setAccelerationX and .setAccelerationY only work on left and down key

**URL:** <https://phaser.discourse.group/t/setaccelerationx-and-setaccelerationy-only-work-on-left-and-down-key/11220>\
**Category:** Phaser 3\
**Created:** [February 11, 2022, 3:53pm UTC](https://phaser.discourse.group/t/setaccelerationx-and-setaccelerationy-only-work-on-left-and-down-key/11220 "2022-02-11T15:53:04Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![vegetable](https://avatars.discourse-cdn.com/v4/letter/v/e9a140/32.png) [@vegetable](https://phaser.discourse.group/u/vegetable)\
**Post date:** [February 11, 2022, 3:53pm UTC](https://phaser.discourse.group/t/setaccelerationx-and-setaccelerationy-only-work-on-left-and-down-key/11220/1 "2022-02-11T15:53:04Z")

</div>

Hi all,  
I have a movement system which moves the player ship across the map, what it is supposed to do is allow smooth movement using WASD, but it only works for S and A right now. I have no clue why it is doing this.

```javascript
        if (keyboardInputs.keyRight.isDown) {
            gameWorld.player.setAccelerationX(100);
        } else {
            gameWorld.player.setAccelerationX(0);
        }

        if (keyboardInputs.keyLeft.isDown) {
            gameWorld.player.setAccelerationX(-100);
        } else {
            gameWorld.player.setAccelerationX(0);
        }

        if (keyboardInputs.keyUp.isDown) {
            gameWorld.player.setAccelerationY(-100);
        } else {
            gameWorld.player.setAccelerationY(0);
        }

        if (keyboardInputs.keyDown.isDown) {
            gameWorld.player.setAccelerationY(100);
        } else {
            gameWorld.player.setAccelerationY(0);
        }

```

---

<div class="post-metadata">

**Author:** ![samme](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/samme/32/5275_2.png) [@samme](https://phaser.discourse.group/u/samme)\
**Post date:** [February 11, 2022, 3:55pm UTC](https://phaser.discourse.group/t/setaccelerationx-and-setaccelerationy-only-work-on-left-and-down-key/11220/2 "2022-02-11T15:55:12Z")

</div>

You have to do like

```nohighlight
if (keyboardInputs.keyRight.isDown) {
  gameWorld.player.setAccelerationX(100);
} else if (keyboardInputs.keyLeft.isDown) {
  gameWorld.player.setAccelerationX(-100);
} else {
  gameWorld.player.setAccelerationX(0);
}

```

---

<div class="post-metadata">

**Author:** ![vegetable](https://avatars.discourse-cdn.com/v4/letter/v/e9a140/32.png) [@vegetable](https://phaser.discourse.group/u/vegetable)\
**Post date:** [February 12, 2022, 12:56am UTC](https://phaser.discourse.group/t/setaccelerationx-and-setaccelerationy-only-work-on-left-and-down-key/11220/3 "2022-02-12T00:56:39Z")

</div>

worked! thank you!
