@Override public Entity getVehicle() { return base.getVehicle(); }
public org.bukkit.entity.Entity getVehicle() { return entity.getVehicle(); }
/** * Check recursively for vehicles, returns null if players are vehicles, * otherwise the lowest vehicle (that has no vehicle). * * @param passenger * The passenger of vehicles. Typically the player. * @param includePassenger * If set to true, the passenger is counted as a vehicle as well * (meaning: vehicle enter, the player is not in a vehicle, test * with this set to true and the vehicle returned by the event). * @return Supposedly the vehicle that is steered. */ public Entity getLastNonPlayerVehicle(final Entity passenger, final boolean includePassenger) { Entity vehicle = includePassenger ? passenger : passenger.getVehicle(); while (vehicle != null){ if (vehicle instanceof Player){ return null; } else if (vehicle.isInsideVehicle()) { vehicle = vehicle.getVehicle(); } else { break; } } return vehicle; }
@Override public MCEntity getVehicle() { return BukkitConvertor.BukkitGetCorrectEntity(e.getVehicle()); }
private void debugNestedVehicleEnter(Player player) { debug(player, "Vehicle enter: Skip on nested vehicles, possibly with multiple players involved, who would do that?"); List<String> vehicles = new LinkedList<String>(); Entity tempVehicle = player.getVehicle(); while (tempVehicle != null) { vehicles.add(tempVehicle.getType().toString()); tempVehicle = tempVehicle.getVehicle(); } if (!vehicles.isEmpty()) { debug(player, "Vehicle enter: Nested vehicles: " + StringUtil.join(vehicles, ", ")); } }
@Override public void teleport(Location location, TeleportCause cause) { if (!isSpawned()) return; NPCTeleportEvent event = new NPCTeleportEvent(this, location); Bukkit.getPluginManager().callEvent(event); if (event.isCancelled()) return; Entity entity = getEntity(); while (entity.getVehicle() != null) { entity = entity.getVehicle(); } location.getBlock().getChunk(); teleport(entity, location, 5); }
@EventHandler(priority = EventPriority.HIGHEST) public void onInteractOtherUser(PlayerInteractEntityEvent event) { if (event.getPlayer() == null) { return; } Player player = event.getPlayer(); Game game = BedwarsRel.getInstance().getGameManager().getGameOfPlayer(player); if (game == null) { return; } if (game.getState() != GameState.RUNNING) { return; } if (event.getRightClicked() == null) { return; } if (event.getRightClicked() instanceof ITNTSheep) { event.setCancelled(true); return; } if (event.getRightClicked().getVehicle() != null && event.getRightClicked().getVehicle() instanceof ITNTSheep) { event.setCancelled(true); return; } }
@EventHandler(priority = EventPriority.HIGHEST) public void onInteractOtherUser(PlayerInteractEntityEvent event) { if (event.getPlayer() == null) { return; } Player player = event.getPlayer(); Game game = BedwarsRel.getInstance().getGameManager().getGameOfPlayer(player); if (game == null) { return; } if (game.getState() != GameState.RUNNING) { return; } if (event.getRightClicked() == null) { return; } if (event.getRightClicked() instanceof ITNTSheep) { event.setCancelled(true); return; } if (event.getRightClicked().getVehicle() != null && event.getRightClicked().getVehicle() instanceof ITNTSheep) { event.setCancelled(true); return; } }
Entity currentMount = isPassenger ? DeprecatedUtils.getPassenger(mounted) : mounted.getVehicle(); if (currentMount == null) { return SpellResult.CAST;
if (!passenger.isDead() && passenger.getVehicle() == entity) { CommonEntity<?> commonPassenger = get(passenger); commonPassenger.getController().onTick();
Entity mountEntity = entity.getVehicle(); while (mountEntity != null) { entity = mountEntity; mountEntity = entity.getVehicle();
vehicle.teleport(override.clone().add(0, 1, 0)); current = current.getVehicle();