2012-04-19 2 views
0

외계인이 사수와 교차하도록하려고하며 교차로가 발생하면 게임을 종료하고 싶습니다. 코드직사각형 교차 문제

Rectangle rectlauncher = new Rectangle(launcherXPos, 720, launcherImg.Width, launcherImg.Height); 
Rectangle rectinvader = new Rectangle(invaders[Count].GetXPos(), invaders[Count].GetYPos(),invaderImg.Width, invaderImg.Height); 

if (rectinvader.Intersects(rectlaucher)) 
    { 
    this.Exit(); 
} 

값 : 그러나,이 코드도

을 실행하지 않고 하단에있는 슈팅 게임을 통해 바로 통과하는 것은 내 코드입니다 아마

launcherXPos = 512; 

      invaderDirection = -1; 
      invaderSpeed = 20; 

      invader = new invader[55]; //displays the number entered of 'invaders' 

      int XPos = 512; 
      int YPos = 100; 
+0

귀하의 가치관은 잘못되었으며 귀하는 그 이유를 알아낼 수있는 유일한 사람입니다. 코드는 괜찮을 것입니다. –

+0

값이 잘 보입니다. 위의 편집 된 버전을 다시 확인해주십시오. 감사합니다. kuttah x. – user1275084

+0

코드가 여전히 정상적으로 보입니다. 나는 당신의 논리가 다른 곳에 있어야한다고 생각합니다. –

답변

1

당신의 일부를 그리는 당신의 원점이 제로가 아닌 요소가 있습니까?

이 문제를 해결하기위한 한 가지 방법은 Space 키를 누를 때만 트리거되는 충돌시 중단 점을 설정하는 것입니다. 게임을 시작하고 교차해야 할 때, 공간을 치고 직사각형에 설정 한 값으로 이동하십시오. 그들이 실제로 진행되고있는 것을 왜 표현하지 못하는지 알아보십시오.

+0

와우, 그 공간 중단 점 것은 굉장합니다, 나는 왜 전에 생각하지 못했는지 궁금합니다 :) – neeKo

관련 문제