summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/bukkit/craftbukkit/entity/CraftVehicle.java
blob: 3fbd7c008738e1cbd1fb58066bb5935693f567a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package org.bukkit.craftbukkit.entity;

import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.craftbukkit.CraftWorld;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Vehicle;

/**
 * A vehicle.
 * 
 * @author sk89q
 */
public abstract class CraftVehicle extends CraftEntity implements Vehicle {
    public CraftVehicle(CraftServer server, net.minecraft.server.Entity entity) {
        super(server, entity);
    }

    public Entity getPassenger() {
        return isEmpty()?null:(getHandle().j.getBukkitEntity());
    }
    
    public boolean setPassenger(Entity passenger) {
        ((CraftEntity)passenger).getHandle().setPassengerOf(getHandle());
        return true;
    }

    public boolean isEmpty() {
        return getHandle().j == null;
    }
    
    public boolean eject() {
        if (getHandle().j == null) {
            return false;
        }
        
        getHandle().j.setPassengerOf(null);
        return true;
    }
}