Code: for (Entity en : p.getWorld().getNearbyEntities(p.getLocation(),5.0, 5.0, 5.0)) { if (en.getEntityId() == mobID) { Silverfish sfish = (Silverfish) en; sfish.getPassengers().add(p); sfish.removePotionEffect(PotionEffectType.INVISIBILITY); } } I also tried setPassanger but that doesn't work either. The event fires, invisibility is gone, but the player isn't mounted back on. (This is inside EntityDismountEvent )