let keys = [];
let vel = [0, 0];
let posM = [0,0];
let r = document.querySelector('canvas').getBoundingClientRect();
let x = r.x + r.width / 2;
let y = r.y + r.height / 2;

let id = '';

function down(e) {
    let k = e.key.toLowerCase();
    keys[k] = true;

    if (k == 'r') game.placeBlock(6,false,posM[0],posM[1]);
    if (k == 'f') game.placeBlock(5,false,posM[0],posM[1]);
};

function up(e) {
    keys[e.key.toLowerCase()] = false;
};

function move() {
    var isShift = keys['q'];
    vel[0] += ((keys['a'] ? 1 : 0) - (keys['d'] ? 1 : 0)) * (isShift ? 2.3 : 1);
    vel[1] += ((keys['w'] ? 1 : 0) - (keys['s'] ? 1 : 0)) * (isShift ? 2.3 : 1);

    vel[0] *= 0.8;
    vel[1] *= 0.8;

    game.camera[0] -= vel[0] * 1.8;
    game.camera[1] -= vel[1] * 1.8;
}

function mouse(e) {
    posM[0] = game.camera[0] + (e.pageX - x) / r.width * document.querySelector('canvas').width;
    posM[0] -= tileSize / 2;
    posM[1] = game.camera[1] + (e.pageY - y) / r.height * document.querySelector('canvas').height;
    posM[1] -= tileSize / 2;
}

setInterval(move, 10);

window.addEventListener('keydown', down);
window.addEventListener('keyup', up);
window.addEventListener('mousemove', mouse);