90 lines
2.3 KiB
Java
90 lines
2.3 KiB
Java
package org.bukkit.craftbukkit.entity;
|
|
|
|
import java.util.UUID;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.OfflinePlayer;
|
|
import org.bukkit.craftbukkit.CraftServer;
|
|
import org.bukkit.entity.Interaction;
|
|
|
|
public class CraftInteraction extends CraftEntity implements Interaction {
|
|
|
|
public CraftInteraction(CraftServer server, net.minecraft.world.entity.Interaction entity) {
|
|
super(server, entity);
|
|
}
|
|
|
|
@Override
|
|
public net.minecraft.world.entity.Interaction getHandle() {
|
|
return (net.minecraft.world.entity.Interaction) super.getHandle();
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
return "CraftInteraction";
|
|
}
|
|
|
|
@Override
|
|
public float getInteractionWidth() {
|
|
return getHandle().getWidth();
|
|
}
|
|
|
|
@Override
|
|
public void setInteractionWidth(float width) {
|
|
getHandle().setWidth(width);
|
|
}
|
|
|
|
@Override
|
|
public float getInteractionHeight() {
|
|
return getHandle().getHeight();
|
|
}
|
|
|
|
@Override
|
|
public void setInteractionHeight(float height) {
|
|
getHandle().setHeight(height);
|
|
}
|
|
|
|
@Override
|
|
public boolean isResponsive() {
|
|
return getHandle().getResponse();
|
|
}
|
|
|
|
@Override
|
|
public void setResponsive(boolean response) {
|
|
getHandle().setResponse(response);
|
|
}
|
|
|
|
@Override
|
|
public PreviousInteraction getLastAttack() {
|
|
net.minecraft.world.entity.Interaction.PlayerAction last = getHandle().attack;
|
|
|
|
return (last != null) ? new CraftPreviousInteraction(last.player(), last.timestamp()) : null;
|
|
}
|
|
|
|
@Override
|
|
public PreviousInteraction getLastInteraction() {
|
|
net.minecraft.world.entity.Interaction.PlayerAction last = getHandle().interaction;
|
|
|
|
return (last != null) ? new CraftPreviousInteraction(last.player(), last.timestamp()) : null;
|
|
}
|
|
|
|
private static class CraftPreviousInteraction implements PreviousInteraction {
|
|
|
|
private final UUID uuid;
|
|
private final long timestamp;
|
|
|
|
public CraftPreviousInteraction(UUID uuid, long timestamp) {
|
|
this.uuid = uuid;
|
|
this.timestamp = timestamp;
|
|
}
|
|
|
|
@Override
|
|
public OfflinePlayer getPlayer() {
|
|
return Bukkit.getOfflinePlayer(uuid);
|
|
}
|
|
|
|
@Override
|
|
public long getTimestamp() {
|
|
return timestamp;
|
|
}
|
|
}
|
|
}
|