PictureBox Intesect - PullRequest
       4

PictureBox Intesect

2 голосов
/ 25 апреля 2011

Я работаю над простой 2d игрой с картинками, но я борюсь с обнаружением столкновений.

Я искал вокруг и придумал это:

     public bool ObstacleHit()
    {
        if (pbPlayer.Bounds.IntersectsWith(pbObstacle1.Bounds))
        {
            return false;
        }
        else
        {
            return true;
        }
    }

который называется здесь:

            if (e.KeyChar == 'w')
            {
                    ObstacleHit();
                    if(ObstacleHit() == true)
                    {
                        moveUp();     
                    } 
            }

но это не работает.

Ответы [ 2 ]

1 голос
/ 25 апреля 2011

Хм, посмотрите, работает ли это. Для выбора различных ключей, а не оператора if, вы также можете реализовать использование оператора switch-case.

if (e.KeyCode == Keys.W)
        {
                bool hit = ObstacleHit();

                if(hit == true)
                {
                    moveUp();     
                } 
        }
0 голосов
/ 25 апреля 2011

Используйте приведенный ниже код для проверки KeyChar

if (e.KeyChar == (char)Keys.W)  
{
     ObstacleHit();      // unnecessary call of method here        
     if(ObstacleHit())   // need not to compare a bool value  
      {
           moveUp();     
      } 

}   
...