C# List удалить элемент списка

201
04 июля 2019, 21:20

Игра состоит из блоков List<Block>. И пуль Bullet. При столкновение с пулей блок должен удаляться с экрана. Функцию столкновения я написал. Все работает.

 foreach (Block blocks in blockList){               
    blocks.colide(bulletList);
} 

Но я не понимаю как удалить элемент списка Block так что бы это не приводило к ошибке. Я так понимаю при столкновении пули я должен получить id блока, чтобы его удалить. Потом перед отрисовкой проверять существует ли блок. Можно удалить прямо в функции столкновения. Только когда я делаю RemoveAt с любым значением игра крашиться.

Answer 1
for (int i = 0; i < blockList.Count; i++)
{               
  if (blockList[i].collide(bulletList))
  {
    blockList.RemoveAt(i);
    i--;
  }
} 
READ ALSO
Как получить данные из БД-MySql в ObservableCollection?

Как получить данные из БД-MySql в ObservableCollection?

Задача: получить данные из БД-MySql в ObservableCollection и затем передать в DataGrid

286
отчётность (ReportViewer)

отчётность (ReportViewer)

я создавал уже некоторую отчётность на одном листе(как в этом примере https://docsmicrosoft

161
Бэкенд для мобильного приложения

Бэкенд для мобильного приложения

Появилась необходимость в написании мобильного приложения, поддерживающего чат, что подразумевает под собой частый обмен данными с серверомВ...

178