Skip to content

Simple Player Example

Oğuzhan edited this page Oct 3, 2021 · 3 revisions

Creating player

    const player = new Entity(
        new EntityData()
            .setX(0) // spawn position of player
            .setY(0)
            .setModel(new SquareModel(20, 20)) // width, height
    );

Registering player to scene

    scene.addEntity(player);

Storing keys they are held

    const heldKeys = {};
    addEventListener("keydown", key => {
        heldKeys[key.key] = true;
    });
    addEventListener("keyup", key => {
        delete heldKeys[key.key];
    });

Moving player

    setInterval(() => {
        let dx = 0;
        let dy = 0;
        if (heldKeys["w"]) dy--;
        if (heldKeys["a"]) dx--;
        if (heldKeys["s"]) dy++;
        if (heldKeys["d"]) dx++;
        player.x += dx;
        player.y += dy; // simply change player's position
    });

To prevent going outside from canvas

    setInterval(() => {
        let dx = 0;
        let dy = 0;
        if (heldKeys["w"]) dy--;
        if (heldKeys["a"]) dx--;
        if (heldKeys["s"]) dy++;
        if (heldKeys["d"]) dx++;
        player.x += dx;
        player.y += dy;
        player.preventBorder(scene);
    });

Clone this wiki locally