2013-04-10 2 views
0

C# & XNA에서 우노 (uno) 게임을 개발 중입니다. 게임의 특정 단계에서 어떤 카드가 특정 위치에 있는지 감지해야합니다. 그러면 화면 좌표를 전달하여 특정 위치에있는 스프라이트를 어떻게 감지 할 수 있습니까 ??C# -XNA에서 스프라이트 감지하기

+0

, 스프라이트는 그것을 그리는 데 사용되는 위치 속성이 없습니다? –

+0

특정 단계에서 나는 화면의 특정 위치에 배치 된 카드를 화면에서 지울 필요가 있습니다. 그래서 특정 좌표에서 카드 (스프라이트)를 찾을 필요가 있습니다 –

+0

화면 위치를 기준으로하지 마십시오. 문자 그대로 화면에서 화면을 지워야하는지 여부를 결정하지 않는 한 의미가 없습니다 (이 사실이 의심 스럽습니다. 두 가지 원인이되는 다른 기준 일 수도 있습니다). – AlexFoxGill

답변

0

일부 변수에 스프라이트 위치를 저장하고 화면 좌표를 해당 변수와 비교합니다. 스프라이트는 특정 영역을 다루기 때문에 원점뿐만 아니라 높이와 너비도 저장하는 것이 좋습니다. 직사각형은 작업을 멋지게 처리합니다.

예 :이 질문을 이해하지

class Game1 
{ 
    List<Rectangle> cardSpriteAreas; // this is where you store the card's areas 

    public void Update() 
    { 
     Point position = GetInterestingPosition(); // this is the point you want to check 
     foreach(var spriteArea in cardSpriteAreas) 
     { 
       if (spriteArea.Contains(position)) 
       { 
        // position is contained within the card's area! 
       } 
     } 
    } 
} 
+0

많이 고맙습니다. Dr_Asik –

관련 문제