public void ExplodeByVirus() { float radius = Body.FixtureList.First().Shape.Radius; for (int i = 0; i < 1 + _virusList.Count; i++) { Vector2 position; position.X = this.Position.X - radius / 2 + (float)Shared.Random.NextDouble() * radius; position.Y = this.Position.Y - radius / 2 + (float)Shared.Random.NextDouble() * radius; Virus newVirus = new Virus(PlayWindow, position); PlayWindow.RegisterVirus(newVirus); ApplyExplodeForce(newVirus); } foreach (var item in _virusList) { PlayWindow.RemoveVirus(item); } PlayWindow.RemoveGoodCell(this); }