-1
개체에 사용되는 Elevator 클래스가 있는데이를 배열에 넣습니다. 그러나 캔버스를 지우는 내 준비 기능은이 개체를 제외하고는 화면의 모든 항목에 적용됩니다. 내가 resrawing 기능을 둘러 보았고, 내가 그들을 부르지 만 아무것도 그것을 고칠 것 같지 않은데, 나는이 객체가 그렇지 않다면 다른 사람들이 영향을받는 것을 보지 못한다.캔버스 다시 그리기가 작동하지 않습니다.
클릭하고 무슨 뜻인지 참조 : http://www.taffatech.com/Platformer.html
function drawElevators()
{
for (var i=0;i<Elevators.length;i++)
{
Elevators[i].y--;
ctx.fillStyle = "grey";
ctx.fillRect(Elevators[i].x,Elevators[i].y,Elevators[i].width,Elevators[i].height);
}
}
내 루프 :
function Loop(){
Prepare();
movePlayer();
if(level == 1)
{
Level1();
}
else if(level == 2)
{
Level2();
}
else if (Level ==3)
{
Level3();
}
else
{
Level4;
}
if(ElevatorOn == true)
{
drawElevators();
}
checkCol();
drawPlayer();
requestAnimFrame(Loop);
}
을하지만 난 단지 내가 레벨 당 1 개 이상의 엘리베이터를 원한다면 그래서 뭐 하나 개 엘리베이터 객체를 생성? 객체를 그냥 올리면 (y--) 객체를 다시 그릴 수 있도록 어떻게 만들 수 있습니까? –
이미 개체를 다시 그립니다. 그러나 그들은 너무 천천히 움직이므로 모두 붙어 있습니다. 신속하게 'y- = 50'으로 만들거나 예를 들어를 사용하여 분리하십시오. 다른 초기 x 좌표. – simonzack
증가분을 크게하지 않겠지 만, 문제는 그 중 하나를 지우지 않는 것입니다. 그게 뭐가 잘못 됐어. 플레이어가 움직이는 것처럼 엘리베이터는 왜 안되습니까? –