public void handleFireballs() { //remove all thhe fireballs that aren't alive for (int i = 0; i < map.getFireballs().Count; i++) { if (!map.getFireballs()[i].isAlive()) { map.removeFireball(i); TransparentPictureBox.removePictureBox(ui.getFireball(i)); ui.killFireball(i); i--; } } //handle each arrow for (int i = 0; i < map.getFireballs().Count; i++) { //get the CollisionLines in the arrow's room CollisionLine[] collLines = map.getRooms()[map.getFireballs()[i].getRoomNumber() - 1].getRoomEdges(); //get the list of objects that can collide with the arrows List <PhysicsObject> collidingObjs = new List <PhysicsObject>(); collidingObjs.Add(map.getPlayer()); //handle the arrow map.getFireballs()[i].FireballHandler(map.getPlayer(), collLines, collidingObjs.ToArray()); } }
public void killProjectiles() { int numArrows = map.getArrows().Count; for (int i = 0; i < numArrows; i++) { map.removeArrow(0); TransparentPictureBox.removePictureBox(ui.getArrow(0)); ui.killArrow(0); } int numFireballs = map.getFireballs().Count; for (int i = 0; i < numFireballs; i++) { map.removeFireball(0); TransparentPictureBox.removePictureBox(ui.getArrow(0)); ui.killFireball(0); } }