我现在正在编写拾音器(硬币等),但是当你捡起东西时......它不再在地上了。
但我得到一个例外:System.InvalidOperationException
. 由: 引起,并由循环map.Remove()
抛出。foreach
那么,如何从列表中正确删除取件?
foreach (CollisionTiles tile in map.CollissionTiles)
{
if (!tile.isTransparant)
player.Collision(tile.Rectangle, map.Width, map.Height);
else
{
if (player.PickUp(tile, map.Width, map.Height))
map.Remove(tile);
}
camera.Update(player.Position, map.Width, map.Height);
}
map.Remove()
虚空:
public void Remove(CollisionTiles tile)
{
this.collissionTiles.Remove(tile);
}