2014-05-13 4 views
0

현재 2D 게임 인 xna 프로젝트에서 작업 중입니다. 내 문제는 Up 키를 누른 후 글 머리 기호 (똥)가 나타나기를 원할 때 내 총알 (똥)의 Vector2에 초기 위치를 지정하는 줄에서 오류가 발생합니다. 탑 (1) 우 (2) 아래 (3) 왼쪽 : 똥 클래스에서 XNA : 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.

// for each bullet in the list, update it 
foreach (Poop p in poopList) 
{ 
    p.Update(gameTime); 
} 

는 업데이트 방법에, 나는 총알이 가야하는 방향에 따라 경우가 (4)

case 1: 
       position = new Vector2(monitoPosition.X + monitoTexture.Width/2 -  poopTexture.Width/2, monitoPosition.Y + monitoTexture.Height/2); 

       position.Y = position.Y - speed; 

        if (position.Y <= 0 || position.Y >=500) 
         isVisible = false; 
        if (position.X <= 0 || position.X >= 800) 
         isVisible = false; 

       break; 

그래서 글 머리 기호 (똥)에 새 위치를 지정하면 오류가 발생합니다. 그것은 기본적 아무것도 때문에

, 당신은 Object reference not set an instance of an Object 오류가 발생합니다 의미 코드에서

답변

0

변수가 null입니다 제발 도와주세요. 자세한 내용은 this StackOverflow 질문을 참조하십시오.

모든 변수가 할당되었는지 다시 확인하십시오.

이 라인에 대해 얘기하는 가정 :

position = new Vector2(monitoPosition.X + monitoTexture.Width/2 -  poopTexture.Width/2, monitoPosition.Y + monitoTexture.Height/2); 

monitoPositionpoopTexture가 설정되어 있는지 확인합니다. 이 줄에 중단 점을 설정하여 코드를 일시 중지하고 변수 위로 마우스를 가져 가면 null인지 확인할 수 있습니다.

+0

나는 지금 점검했고, 나는 poopTexture가 null이라는 것을 알아 냈다. 어떻게 텍스처를 할당해야합니까? 나에 따르면, 나는 이미 그것을 초기화했다. public void LoadContent (ContentManager Content) { monitoTexture = Content.Load ("Monito"); foreach (poopList의 Poop p) { p.LoadContent (Content); ? } } – Ainvy

+0

무엇이 당신의'p.LoadContent에 ('방법 – Cyral

+0

공공 무효 LoadContent (ContentManager 내용) { poopTexture = Content.Load ("똥"); } – Ainvy

관련 문제