Кажется, проблема в том, что вы не узнаете, что ваш захватчик взорван в строке 524 Game1.cs. У вас есть оператор FOR, который вращается через ваших захватчиков, выясняет, где должен быть захватчик, и затем проверяетесли хит-боксы пересекаются.Вы не проверяете, является ли тот захватчик, чей хитбокс пересекается, уже мертвым.
В вашем объекте Invaders (Invader1, Invader2 и т. Д.) Вам нужно отслеживать переменную, чтобы определить, жив ли Invarder,Похоже, вы можете использовать переменную invaderVis, если хотите, поскольку она, похоже, определяет, следует ли показывать этот захватчик.
Так что строка 524 должна быть изменена на что-то вроде
if (Type1Invaders[Count].invaderVis && rectMissile.Intersects(rectInvader))
{
//Do logic for hit
}
Также измените вашу проверку попадания НЛО на lne 539, чтобы сделать то же самое.