2013-06-20 3 views
1

Я создаю игру pacman, используя приложение C# для windows c.IntersectsWith Ошибка при создании игры в Windows8

В настоящее время у меня есть некоторые ошибки в «Интерсексуалах».

Как показано ниже, я на самом деле пытаюсь заставить пакмана съесть гранулы. Может кто-нибудь, пожалуйста, скажите мне, почему есть ошибка в коде? :

Код:

 var rectPacman = pacman.GetRect(cnvMain); 
     bool gotPellet = false; 
     foreach (var pellet in pellets) 
     { 
      if (pellet.Visibility == Visibility.Visible) 
      { 
       var rectPellet = pellet.GetRect(cnvMain); 
       var pelletCellPoint = pellet.GetCellPoint(); 

       if (rectPacman.IntersectsWith(rectPellet)) 
       { 
        gotPellet = true; 

        pellet.Visibility = Visibility.Collapsed; 

        AddPellet(pellet); 
        mazeValues[(int)pelletCellPoint.X, (int)pelletCellPoint.Y] = ' '; 
        break; 
       } 
      } 
     } 

Показаны ошибки:

'Windows.Foundation.Rect' does not contain a definition for 'IntersectsWith' and no extension method 'IntersectsWith' accepting a first argument of type 'Windows.Foundation.Rect' could be found (are you missing a using directive or an assembly reference?) 
+0

не достаточно информации здесь. Что такое код для 'rectPackman'? В любом случае это звучит так, как будто бы метод IntersectsWith (Rect) не существует. Вы пишете? –

+0

@RussellUhl Извините, я пропустил эту часть, потому что я объявил ее в верхней части метода. Я редактировал приведенный выше код. – fafarifah

+0

gotcha. по крайней мере, вы нашли свой ответ! –

ответ

2

Как было указано в ошибке компиляции, тип Windows.Foundation.Rect (http://msdn.microsoft.com/en-us/library/windows/apps/windows.foundation.rect) не имеет InteresectsWith метод.

System.Drawing.Rectangle (http://msdn.microsoft.com/en-us/library/system.drawing.rectangle.aspx), но, похоже, вы кодируете приложение WinRT, обычные системные библиотеки .Net не применяются.

Смежные вопросы