//Function to move the Player Rockets and Check if we have hit a EnemyPlane or the Boss public void moveTheRocekts() { for (int i = 0; i < playerPlane.getFiredRocekts().Count; i++) { playerPlane.moveUpFiredRocket(i); if (playerPlane.getFiredRocekts()[i].getY() < 0) { playerPlane.removeRocket(i); } else { if (!BosFight) { for (int y = 0; y < Planes.Count; y++) { Rectangle r1 = new Rectangle(playerPlane.getFiredRocekts()[i].getX(), playerPlane.getFiredRocekts()[i].getY(), playerPlane.getFiredRocekts()[i].getImage().Width, playerPlane.getFiredRocekts()[i].getImage().Height); Rectangle r2 = new Rectangle(Planes[y].getX(), Planes[y].getY(), Planes[y].getImg().Width, Planes[y].getImg().Height); if (r1.IntersectsWith(r2)) { playerPlane.removeRocket(i); Planes.Remove(Planes[y]); fillList(); scoore.UpdateMissileScore(); Blast = true; xBam = r1.X; yBam = r1.Y; break; } } } else { Rectangle r1 = new Rectangle(playerPlane.getFiredRocekts()[i].getX(), playerPlane.getFiredRocekts()[i].getY(), playerPlane.getFiredRocekts()[i].getImage().Width, playerPlane.getFiredRocekts()[i].getImage().Height); Rectangle b = new Rectangle(boss.getX(), boss.getY(), boss.getImg().Width, boss.getImg().Height); if (r1.IntersectsWith(b)) { boss.loseLife(); BosLife.Value = boss.getLife(); playerPlane.removeRocket(i); } } } } }