Teleporting Player who also has passengers

Discussion in 'Plugin Development' started by Chr0mosom3, Dec 1, 2021.

  1. Offline



    I am trying to teleport a player who has passengers riding him, a silverfish, a armorstand, another silverfish, and another armor stand. When I try to teleport the player it doesn't work. When I /kill the armorstand and silverfish the teleport suddenly works. Anyone know the problem?

    My code, but probably useless
    if (!EndLock.isEndLocked() && !EndLock.isEndPvpEnabled()) {
           player.sendMessage(ChatColor.GRAY + "Teleported to the end");
         } else {
           player.sendMessage(ChatColor.RED + "ERROR: End teleport is disabled");
    I know for sure the code runs because I when I added debugging messages they displayed. Another thing I should point out is that PlayerPortalEvent (going into the end portal) is not called when the entities are riding the player also.
  2. Offline


    @Chr0mosom3 I don't think you can teleport entities when someone is riding them. However, you can remove them as passengers, then teleport the entity and add them back as passengers.
    Chr0mosom3 likes this.
  3. Offline



    That's wierd. I have another question, can I detect when any plugin is trying to teleport a player and remove the passengers and add them again. Is there something I can listen to?

    Another thing, if the playerportalevent isn't recognized when the player has passengers, how am I supposed to detect when the player enters the nether/end?
    Last edited: Dec 1, 2021
  4. Offline


    Unfortunately, no. Unless the other plugin is calling the teleport event, you cannot listen for it.

    Did you test it?
  5. Offline


    I did test it. It doesn't work and now I'm depressed. I'm trying to find a workaround by checking the player's location every tick and seeing if he's standing in a end_portal object and calling the teleport event. Do you know a better method to do this?

Share This Page