Installation & Usage example
package net.example;
import net.flawe.offlinemanager.api.OfflineManagerAPI;
import net.flawe.offlinemanager.api.data.entity.IPlayerData;
import net.flawe.offlinemanager.api.enums.SavePlayerType;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import org.jetbrains.annotations.NotNull;
public class Example extends JavaPlugin {
private OfflineManagerAPI offlineManagerAPI;
@Override
public void onEnable() {
Plugin plugin = Bukkit.getPluginManager().getPlugin("OfflineManager");
if (plugin == null) {
getLogger().severe("Could not find OfflineManager! This plugin is required!");
Bukkit.getPluginManager().disablePlugin(this);
return;
}
offlineManagerAPI = (OfflineManagerAPI) plugin;
Bukkit.getPluginCommand("example").setExecutor(this);
}
@Override
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
if (!(sender instanceof Player))
return false;
Player player = (Player) sender;
String playerName = args[0];
if (!offlineManagerAPI.getStorage().hasPlayer(playerName))
return false;
String sub = args[1];
IPlayerData playerData;
switch (sub.toLowerCase()) {
case "teleport":
playerData = offlineManagerAPI.getPlayerData(playerName);
player.teleport(playerData.getLocation());
break;
case "feed":
playerData = offlineManagerAPI.getPlayerData(playerName);
playerData.setFoodLevel(20);
playerData.save(SavePlayerType.FOOD_LEVEL);
break;
default:
sender.sendMessage("Sub command not found");
break;
}
return true;
}
}
Comments