Как заставить прямоугольник исчезнуть, когда другой пересекается с ним? - PullRequest
0 голосов
/ 26 октября 2018

Я хочу, чтобы, если образец коснулся mfire, mfire исчезнет навсегда.Я не знаю, как «вырвать» спрайт, если это возможно.: / Спасибо, люди - отчаянные ученики

 foreach (Platform mfire in mfires)
 if (sample.rectangle.Intersects(mfire.rectangle))
      {
             //What to put here?

      }

Ответы [ 2 ]

0 голосов
/ 29 октября 2018

Если вы используете массив или список для сохранения своих объектов, вы можете вызвать функцию в этом массиве для удаления объекта.

В вашей ситуации:

foreach (Platform mfire in mfires)
if (sample.rectangle.Intersects(mfire.rectangle))
{
    //put this here
    mfires.Remove(mfire);
}

Я не могу сказать, используете ли вы массив или список, поэтому это решение работает, если вы используете список.

0 голосов
/ 29 октября 2018

Все нарисовано в каждом кадре.

Итак, вы хотите, чтобы в вашем методе обновления проверили, пересекается ли он.Если да, удалите его из массива.

Затем в своем методе рисования вы просто рисуете все в массиве.

...