summaryrefslogtreecommitdiffstats
path: root/Essentials/src/net/ess3/api/server
diff options
context:
space:
mode:
Diffstat (limited to 'Essentials/src/net/ess3/api/server')
-rw-r--r--Essentials/src/net/ess3/api/server/CommandSender.java13
-rw-r--r--Essentials/src/net/ess3/api/server/Enchantment.java7
-rw-r--r--Essentials/src/net/ess3/api/server/IInventory.java19
-rw-r--r--Essentials/src/net/ess3/api/server/IPlugin.java32
-rw-r--r--Essentials/src/net/ess3/api/server/IServer.java28
-rw-r--r--Essentials/src/net/ess3/api/server/ItemStack.java47
-rw-r--r--Essentials/src/net/ess3/api/server/Location.java52
-rw-r--r--Essentials/src/net/ess3/api/server/Material.java37
-rw-r--r--Essentials/src/net/ess3/api/server/Permission.java27
-rw-r--r--Essentials/src/net/ess3/api/server/Player.java61
-rw-r--r--Essentials/src/net/ess3/api/server/World.java26
11 files changed, 349 insertions, 0 deletions
diff --git a/Essentials/src/net/ess3/api/server/CommandSender.java b/Essentials/src/net/ess3/api/server/CommandSender.java
new file mode 100644
index 000000000..768dde9bb
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/CommandSender.java
@@ -0,0 +1,13 @@
+package net.ess3.api.server;
+
+public interface CommandSender {
+ boolean isPlayer();
+
+ void sendMessage(String message);
+
+ boolean isOp();
+
+ boolean hasPermission(Permission bukkitPermission);
+
+ void sendMessage(String[] string);
+}
diff --git a/Essentials/src/net/ess3/api/server/Enchantment.java b/Essentials/src/net/ess3/api/server/Enchantment.java
new file mode 100644
index 000000000..3e7baa0cf
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/Enchantment.java
@@ -0,0 +1,7 @@
+package net.ess3.api.server;
+
+public abstract class Enchantment {
+
+ public abstract int getMaxLevel();
+
+}
diff --git a/Essentials/src/net/ess3/api/server/IInventory.java b/Essentials/src/net/ess3/api/server/IInventory.java
new file mode 100644
index 000000000..783495864
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/IInventory.java
@@ -0,0 +1,19 @@
+package net.ess3.api.server;
+
+import java.util.Map;
+
+public interface IInventory {
+
+ public boolean containsItem(boolean b, boolean b0, ItemStack itemStack);
+
+ public Map<Integer, ItemStack> addItem(ItemStack itemStack);
+
+ public Map<Integer, ItemStack> addItem(boolean b, ItemStack itemStack);
+
+ public Map<Integer, ItemStack> addItem(boolean b, int oversizedStacksize, ItemStack itemStack);
+
+ public boolean addAllItems(boolean b, ItemStack itemStack);
+
+ public void removeItem(boolean b, boolean b0, ItemStack itemStack);
+
+}
diff --git a/Essentials/src/net/ess3/api/server/IPlugin.java b/Essentials/src/net/ess3/api/server/IPlugin.java
new file mode 100644
index 000000000..d1f8719f1
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/IPlugin.java
@@ -0,0 +1,32 @@
+package net.ess3.api.server;
+
+import java.io.File;
+import java.io.InputStream;
+
+
+public interface IPlugin
+{
+ int scheduleAsyncDelayedTask(final Runnable run);
+
+ int scheduleSyncDelayedTask(final Runnable run);
+
+ int scheduleSyncDelayedTask(final Runnable run, final long delay);
+
+ int scheduleSyncRepeatingTask(final Runnable run, final long delay, final long period);
+
+ File getRootFolder();
+
+ File getDataFolder();
+
+ void cancelTask(int taskId);
+
+ String getVersion();
+
+ Class getClassByName(String name);
+
+ InputStream getResource(String string);
+
+ Location callRespawnEvent(Player player, Location loc, boolean bedSpawn);
+
+ void callSuicideEvent(Player player);
+}
diff --git a/Essentials/src/net/ess3/api/server/IServer.java b/Essentials/src/net/ess3/api/server/IServer.java
new file mode 100644
index 000000000..8bd23bb9d
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/IServer.java
@@ -0,0 +1,28 @@
+package net.ess3.api.server;
+
+import java.util.Collection;
+import java.util.List;
+
+
+public interface IServer
+{
+ List<World> getWorlds();
+
+ World getWorld(String name);
+
+ int broadcastMessage(String message);
+
+ Collection<Player> getOnlinePlayers();
+
+ CommandSender getConsoleSender();
+
+ void dispatchCommand(CommandSender sender, String command);
+
+ void banIP(String ip);
+
+ <T> T getServiceProvider(Class<T> clazz);
+
+ String getVersion();
+
+ public void unbanIP(String string);
+}
diff --git a/Essentials/src/net/ess3/api/server/ItemStack.java b/Essentials/src/net/ess3/api/server/ItemStack.java
new file mode 100644
index 000000000..d8315974c
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/ItemStack.java
@@ -0,0 +1,47 @@
+package net.ess3.api.server;
+
+
+public abstract class ItemStack implements Cloneable
+{
+ public interface ItemStackFactory
+ {
+ ItemStack create(int id, int amount, int data);
+ ItemStack clone(ItemStack stack);
+ }
+ private static ItemStackFactory factory;
+
+ public static void setFactory(final ItemStackFactory factory)
+ {
+ ItemStack.factory = factory;
+ }
+
+ public static ItemStack create(int id, int amount, int data)
+ {
+ return factory.create(id, amount, data);
+ }
+
+ public static ItemStack create(Material mat, int amount, int data)
+ {
+ return factory.create(mat.getId(), amount, data);
+ }
+
+ public abstract Material getType();
+
+ public abstract int getAmount();
+
+ public abstract void setAmount(int value);
+
+ public abstract short getDurability();
+
+ public abstract int getMaxStackSize();
+
+ public abstract boolean isAir();
+
+ public abstract void addEnchantment(Enchantment enchantment, int level);
+
+ @Override
+ public ItemStack clone()
+ {
+ return factory.clone(this);
+ }
+}
diff --git a/Essentials/src/net/ess3/api/server/Location.java b/Essentials/src/net/ess3/api/server/Location.java
new file mode 100644
index 000000000..825e2f814
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/Location.java
@@ -0,0 +1,52 @@
+package net.ess3.api.server;
+
+
+public abstract class Location
+{
+ public interface LocationFactory {
+ Location create(String worldName, double x, double y, double z, double yaw, double pitch);
+ Location create(World world, double x, double y, double z, double yaw, double pitch);
+ }
+ private static LocationFactory factory;
+
+ public static void setFactory(final LocationFactory factory) {
+ Location.factory = factory;
+ }
+
+ public static Location create(String worldName, double x, double y, double z) {
+ return factory.create(worldName, x, y, z, 0, 0);
+ }
+
+ public static Location create(String worldName, double x, double y, double z, double yaw, double pitch) {
+ return factory.create(worldName, x, y, z, yaw, pitch);
+ }
+
+ public static Location create(World world, double x, double y, double z) {
+ return factory.create(world, x, y, z, 0, 0);
+ }
+
+ public static Location create(World world, double x, double y, double z, double yaw, double pitch) {
+ return factory.create(world, x, y, z, yaw, pitch);
+ }
+
+
+ public abstract double getX();
+
+ public abstract double getY();
+
+ public abstract double getZ();
+
+ public abstract float getYaw();
+
+ public abstract float getPitch();
+
+ public abstract int getBlockX();
+
+ public abstract int getBlockY();
+
+ public abstract int getBlockZ();
+
+ public abstract World getWorld();
+
+ public abstract double distanceSquared(Location location);
+}
diff --git a/Essentials/src/net/ess3/api/server/Material.java b/Essentials/src/net/ess3/api/server/Material.java
new file mode 100644
index 000000000..bfda30775
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/Material.java
@@ -0,0 +1,37 @@
+package net.ess3.api.server;
+
+public abstract class Material {
+
+ private static Material instance;
+
+ public static void setInstance(final Material instance) {
+ Material.instance = instance;
+ }
+
+ public static Material get(final int id) {
+ return instance.getMaterialById(id);
+ }
+
+ public static Material get(final String name) {
+ return instance.getMaterialByName(name);
+ }
+
+ public static Material match(String string)
+ {
+ return instance.matchMaterial(string);
+ }
+
+ protected abstract Material getMaterialByName(String name);
+
+ protected abstract Material getMaterialById(int id);
+
+ public abstract int getId();
+
+ public abstract String getName();
+
+ public abstract int getMaxStackSize();
+
+ public abstract int getMaxDurability();
+
+ protected abstract Material matchMaterial(String string);
+}
diff --git a/Essentials/src/net/ess3/api/server/Permission.java b/Essentials/src/net/ess3/api/server/Permission.java
new file mode 100644
index 000000000..f4fb37cc4
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/Permission.java
@@ -0,0 +1,27 @@
+package net.ess3.api.server;
+
+
+public abstract class Permission
+{
+ public enum Default
+ {
+ TRUE, FALSE, OP, NOT_OP;
+ }
+
+
+ public interface PermissionFactory
+ {
+ Permission create(String name, Permission.Default defaultPermission);
+ }
+ private static PermissionFactory factory;
+
+ public static void setFactory(final PermissionFactory factory)
+ {
+ Permission.factory = factory;
+ }
+
+ public static Permission create(final String name, Permission.Default defaultPermission)
+ {
+ return factory.create(name, defaultPermission);
+ }
+}
diff --git a/Essentials/src/net/ess3/api/server/Player.java b/Essentials/src/net/ess3/api/server/Player.java
new file mode 100644
index 000000000..152c3f0c8
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/Player.java
@@ -0,0 +1,61 @@
+package net.ess3.api.server;
+
+import net.ess3.api.IUser;
+
+
+public interface Player extends CommandSender
+{
+ IUser getUser();
+
+ String getName();
+
+ String getDisplayName();
+
+ boolean isOnline();
+
+ void setBanned(boolean bool);
+
+ void kickPlayer(String reason);
+
+ World getWorld();
+
+ Location getLocation();
+
+ Location getEyeLocation();
+
+ void setFireTicks(int value);
+
+ void setFoodLevel(int value);
+
+ void setSaturation(float value);
+
+ int getHealth();
+
+ void setHealth(int value);
+
+ void updateInventory();
+
+ ItemStack getItemInHand();
+
+ Location getBedSpawnLocation();
+
+ boolean hasPlayedBefore();
+
+ IInventory getInventory();
+
+ void setTotalExperience(final int exp);
+
+ int getTotalExperience();
+
+ void setDisplayName(String name);
+
+ void setPlayerListName(String name);
+
+ void setSleepingIgnored(boolean b);
+
+ boolean isBanned();
+
+ void setCompassTarget(Location loc);
+
+ void damage(int value);
+}
diff --git a/Essentials/src/net/ess3/api/server/World.java b/Essentials/src/net/ess3/api/server/World.java
new file mode 100644
index 000000000..ecd129609
--- /dev/null
+++ b/Essentials/src/net/ess3/api/server/World.java
@@ -0,0 +1,26 @@
+package net.ess3.api.server;
+
+import java.util.UUID;
+import org.bukkit.TreeType;
+
+public interface World {
+ String getName();
+
+ boolean generateTree(Location safeLocation, TreeType tree);
+
+ int getHighestBlockYAt(int topX, int topZ);
+
+ ItemStack dropItem(Location loc, ItemStack stack);
+
+ UUID getUID();
+
+ Location getSpawnLocation();
+
+ void dropItemNaturally(Location location, ItemStack overflowStack);
+
+ void setStorm(boolean b);
+
+ void setWeatherDuration(int i);
+
+ long getTime();
+}