* Projectile code additions * Adds !prehit checks and corrects the check for energy cannon spam * Adds checks for machines and structures to stop double hitting * JJRcop Requesting Fixes #1 * JJRcop Requested Fixes #2 * Fixes projectiles unable to hit mobs in machines * Adds in a new proc select_target, and rewrites some bits Fixes projectiles double hitting when targetting machines with mobs on them, also makes it so weapons with forcedodge can hit targets inside walls. * AnturK requested fix #1