PlotSquared/src/main/java/com/intellectualcrafters/plot/object/PlotPlayer.java

80 lines
1.6 KiB
Java
Raw Normal View History

2015-02-20 11:53:18 +01:00
package com.intellectualcrafters.plot.object;
2015-07-27 19:50:04 +02:00
import java.util.UUID;
2015-07-27 17:14:38 +02:00
2015-07-30 16:25:16 +02:00
import com.intellectualcrafters.plot.util.PlotGamemode;
import com.intellectualcrafters.plot.util.PlotWeather;
import com.plotsquared.general.commands.CommandCaller;
2015-02-20 11:53:18 +01:00
/**
* Created 2015-02-20 for PlotSquared
*
* @author Citymonstret
*/
2015-07-27 17:14:38 +02:00
public interface PlotPlayer extends CommandCaller {
2015-04-06 14:16:24 +02:00
2015-07-27 19:50:04 +02:00
long getPreviousLogin();
2015-04-06 14:16:24 +02:00
2015-07-27 19:50:04 +02:00
Location getLocation();
2015-02-23 02:32:27 +01:00
2015-07-27 19:50:04 +02:00
Location getLocationFull();
2015-02-23 12:37:36 +01:00
2015-07-27 19:50:04 +02:00
UUID getUUID();
2015-02-23 02:32:27 +01:00
2015-07-27 19:50:04 +02:00
boolean hasPermission(final String perm);
2015-02-20 12:23:48 +01:00
2015-07-27 19:50:04 +02:00
void sendMessage(final String message);
2015-02-23 02:32:27 +01:00
2015-07-27 19:50:04 +02:00
void teleport(final Location loc);
2015-07-20 07:14:46 +02:00
2015-07-27 19:50:04 +02:00
boolean isOp();
2015-02-23 02:32:27 +01:00
2015-07-27 19:50:04 +02:00
boolean isOnline();
2015-02-22 13:46:47 +01:00
2015-07-27 19:50:04 +02:00
String getName();
2015-02-23 02:32:27 +01:00
2015-07-27 19:50:04 +02:00
void setCompassTarget(Location loc);
2015-05-04 11:52:37 +02:00
2015-07-27 19:50:04 +02:00
void loadData();
2015-07-27 19:50:04 +02:00
void saveData();
2015-06-05 14:39:31 +02:00
/**
* Set player data that will persist restarts
* - Please note that this is not intended to store large values
* - For session only data use meta
* @param key
*/
2015-07-27 19:50:04 +02:00
void setAttribute(String key);
2015-06-05 14:39:31 +02:00
/**
* The attribute will be either true or false
* @param key
*/
2015-07-27 19:50:04 +02:00
boolean getAttribute(String key);
2015-06-05 14:39:31 +02:00
/**
* Remove an attribute from a player
* @param key
*/
2015-07-27 19:50:04 +02:00
void removeAttribute(String key);
2015-06-05 14:39:31 +02:00
2015-07-27 19:50:04 +02:00
void setMeta(String key, Object value);
Object getMeta(String key);
void deleteMeta(String key);
2015-07-30 16:25:16 +02:00
void setWeather(PlotWeather weather);
PlotGamemode getGamemode();
void setGamemode(PlotGamemode gamemode);
void setTime(long time);
void setFlight(boolean fly);
void playMusic(Location loc, int id);
void kick(String message);
2015-02-20 11:53:18 +01:00
}