public static void EndProjectile(LSProjectile projectile)
 {
     if (projectile.Deterministic)
     {
         int id = projectile.ID;
         if (!ProjectileBucket.SafeRemoveAt(id, projectile))
         {
             Debug.Log("BOO! This is a terrible bug.");
         }
     }
     else
     {
         if (!NDProjectileBucket.SafeRemoveAt(projectile.ID, projectile))
         {
             Debug.Log("BOO! This is a terrible bug.");
         }
     }
     CacheProjectile(projectile);
     projectile.Deactivate();
 }