/**
   * This method is called to adjust the portal location to the actual portal location (and not
   * right outside of it.
   *
   * @param event The Event that was fired.
   */
  @EventHandler(priority = EventPriority.LOWEST)
  public void playerPortalCheck(PlayerPortalEvent event) {
    if (event.isCancelled() || event.getFrom() == null) {
      return;
    }

    // REMEMBER! getTo MAY be NULL HERE!!!
    // If the player was actually outside of the portal, adjust the from location
    if (event.getFrom().getWorld().getBlockAt(event.getFrom()).getType() != Material.PORTAL) {
      Location newloc = this.plugin.getSafeTTeleporter().findPortalBlockNextTo(event.getFrom());
      // TODO: Fix this. Currently, we only check for PORTAL blocks. I'll have to figure out what
      // TODO: we want to do here.
      if (newloc != null) {
        event.setFrom(newloc);
      }
    }
    // Wait for the adjust, then return!
    if (event.getTo() == null) {
      return;
    }
  }