Javascript 벽돌깨기 클리어

정종찬·2022년 4월 22일
let setStart = false;
function keyDownEventHandler(e)
{
    if(e.key == ' ')    
    {
        // setInterval(() => {        
        // }, update);
        inputStart();
        console.log("space bar")
        setStart = true
        setBricks();
    }
    if(e.key == 'ArrowRight')
    {
        // updateRec();
        // 바를 오른쪽으로 이동
        if(barPosX + barWidth < canvas.width && setStart == false)
        {
            barPosX += barMoveSpd;
            arcPosX = barPosX + 50;
            //1번씩(2-1)
        }
        else if(barPosX + barWidth < canvas.width){
            barPosX += barMoveSpd;
        }        
    }    
    else if(e.key == 'ArrowLeft')
    {
        // updateRec();
        // 바를 왼쪽으로 이동
        if(barPosX > 0  && setStart == false)
        {
            barPosX -= barMoveSpd;
            arcPosX = barPosX + 50;
            //1번씩(2-2)
        }  
        else if(barPosX > 0 ){
            barPosX -= barMoveSpd;
        }       
    }

    //2에 1번(1) 연산량이 많을수도 있다. 
    paddle.left = barPosX;
    paddle.right = barPosX + barWidth;
    paddle.top = barPosY;
    paddle.bottom = barPosY + barHight;
}

async function gameClear(timeout) {
    return new Promise(function(resolve, reject) {
        setTimeout(() => {
        resolve();
        }, timeout);        
    });    
}

// setTimeout(()=> {
//     window.location.reload();
//     alert("깸!!")
//     // console.log("test")
//     , 3000})


async function clear(){        
    await gameClear(3000);
    window.location.reload();
    alert("깸!!");
    
}
    setInterval(() => {if (setStart) {
        update();
        draw()}
    }, 10);

async await 활용해서 게임클리어 메시지 띄우게 하기
클리어 후 마지막 벽돌 깜박이다 없어지고 클리어메시지 띄우기

profile
dalssenger

0개의 댓글