Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.ashten.levelingplugin;
- import java.util.HashMap;
- import java.util.UUID;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.command.ConsoleCommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.permissions.Permission;
- import org.bukkit.permissions.PermissionAttachment;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.scoreboard.Scoreboard;
- import org.bukkit.scoreboard.Team;
- public class Main extends JavaPlugin {
- public HashMap<UUID, PermissionAttachment> playerPermissions = new HashMap<>();
- // LuckPermsApi api = LuckPerms.getApi();
- @Override
- public void onEnable() {
- getLogger().info(ChatColor.GREEN + "Plugin succesfully started!");
- getServer().getPluginManager().registerEvents(new Events(this), this);
- loadConfig();
- // BukkitScheduler scheduler = this.getServer().getScheduler();
- // scheduler.scheduleSyncRepeatingTask(this, new Runnable() {
- // @Override
- // public void run() {
- // fixStuff();
- // }
- // }, 0L, 40L);
- }
- public void addPermission(Player p, String permission) {
- String pname = p.getName();
- ConsoleCommandSender console = Bukkit.getServer().getConsoleSender();
- String command = "lp user " + pname + " permission set " + permission;
- Bukkit.dispatchCommand(console, command);
- }
- public void removePermission(Player p, String permission) {
- String pname = p.getName();
- ConsoleCommandSender console = Bukkit.getServer().getConsoleSender();
- String command = "lp user " + pname + " permission unset " + permission;
- Bukkit.dispatchCommand(console, command);
- }
- public void setupPermissions(Player player) {
- PermissionAttachment attachment = player.addAttachment(this);
- this.playerPermissions.put(player.getUniqueId(), attachment);
- playerSet(player.getUniqueId(), new Permission("ash.testperm"), true);
- }
- public void playerSet(UUID uuid, Permission perm, boolean b) {
- PermissionAttachment attachment = this.playerPermissions.get(uuid);
- attachment.setPermission(perm, b);
- }
- @SuppressWarnings("deprecation")
- public void onNameTag(Player p, String xp) {
- Scoreboard score = Bukkit.getScoreboardManager().getMainScoreboard();
- Team t = score.getTeam(xp);
- if (t == null) {
- t = score.registerNewTeam(xp);
- }
- t.setPrefix(xp);
- t.addPlayer(p);
- for (Player all : Bukkit.getOnlinePlayers()) {
- all.setScoreboard(score);
- }
- }
- private HashMap<String, Integer> map = new HashMap<String, Integer>();
- Scoreboard s;
- @Override
- public void onDisable() {
- getLogger().info(ChatColor.RED + "Plugin succesfully stopped!");
- saveConfig();
- playerPermissions.clear();
- }
- public void loadConfig() {
- getConfig().options().copyDefaults(true);
- saveConfig();
- }
- public void fixStuff(Player p, Integer level) {
- if (!(level == null)) {
- } else {
- level = 0;
- }
- if (level < 0) {
- level = 0;
- }
- if (level > 200) {
- level = 200;
- }
- if (level < 10) {
- removePermission(p, "ash.10");
- removePermission(p, "ash.20");
- removePermission(p, "ash.30");
- removePermission(p, "ash.40");
- removePermission(p, "ash.50");
- removePermission(p, "ash.60");
- }
- if (level > 9 && level < 20 && p.hasPermission("magicspells.rank.chuunin")) {
- addPermission(p, "ash.10");
- }
- if (level > 19 && level < 30 && p.hasPermission("magicspells.rank.chuunin")) {
- removePermission(p, "ash.10");
- addPermission(p, "ash.20");
- }
- if (level > 29 && level < 40 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.20");
- addPermission(p, "ash.30");
- }
- if (level >= 40 && level < 50 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.30");
- addPermission(p, "ash.40");
- }
- if (level >= 50 && level < 60 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.40");
- addPermission(p, "ash.50");
- }
- if (level >= 60 && level < 70 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.50");
- addPermission(p, "ash.60");
- }
- if (level >= 70 && level < 80 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.60");
- addPermission(p, "ash.70");
- }
- if (level >= 80 && level < 90 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.70");
- addPermission(p, "ash.80");
- }
- if (level >= 90 && level < 100 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.80");
- addPermission(p, "ash.90");
- }
- if (level >= 100 && level < 110 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.90");
- addPermission(p, "ash.100");
- }
- if (level >= 110 && level < 120 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.100");
- addPermission(p, "ash.110");
- }
- if (level >= 120 && level < 130 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.110");
- addPermission(p, "ash.120");
- }
- if (level >= 130 && level < 140 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.120");
- addPermission(p, "ash.130");
- }
- if (level >= 140 && level < 150 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.130");
- addPermission(p, "ash.140");
- }
- if (level >= 150 && level < 160 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.140");
- addPermission(p, "ash.150");
- }
- if (level >= 160 && level < 170 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.150");
- addPermission(p, "ash.160");
- }
- if (level >= 170 && level < 180 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.160");
- addPermission(p, "ash.170");
- }
- if (level >= 180 && level < 190 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.170");
- addPermission(p, "ash.180");
- }
- if (level >= 190 && level < 200 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.180");
- addPermission(p, "ash.190");
- }
- if (level >= 200 && p.hasPermission("magicspells.rank.jounin")) {
- removePermission(p, "ash.190");
- addPermission(p, "ash.200");
- }
- if (level > 9 && !p.hasPermission("magicspells.rank.chuunin")) {
- level = 9;
- }
- if (level > 29 && !p.hasPermission("magicspells.rank.jounin")) {
- level = 29;
- }
- if (level > 200) {
- level = 200;
- }
- onNameTag(p, ChatColor.DARK_GRAY + "LVL:" + ChatColor.AQUA + " " + (Integer) this.getConfig().get("LVL."+p.getName()) + " " + ChatColor.WHITE);
- }
- @SuppressWarnings("deprecation")
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
- if (sender instanceof Player) {
- // Credits command
- if (cmd.getName().equalsIgnoreCase("credits")) {
- sender.sendMessage(ChatColor.BOLD+""+ChatColor.GOLD + "This plugin is made by " + ChatColor.AQUA + "AshTen_ "
- + ChatColor.GOLD + "(" + ChatColor.RED + "Rosa#8710" + ChatColor.GOLD + ")");
- return true;
- }
- //
- // // set XP command
- // if (cmd.getName().equalsIgnoreCase("setxp")) {
- // if (args[0] != null) {
- // if (Integer.parseInt(args[0].replaceAll("[\\D]", "")) >= 0
- // && Integer.parseInt(args[0].replaceAll("[\\D]", "")) < 100000000) {
- // map.put(sender.getName(), Integer.parseInt(args[0].replaceAll("[\\D]", "")));
- // sender.sendMessage(ChatColor.GREEN + "Your XP has been set!");
- // this.getConfig().set("XP." + sender.getName(),
- // Integer.parseInt(args[0].replaceAll("[\\D]", "")));
- // this.saveConfig();
- // return true;
- // } else {
- // sender.sendMessage(ChatColor.RED + "Unknown error, please contact the
- // developer");
- // return true;
- // }
- // } else {
- // sender.sendMessage(ChatColor.RED + "This command needs an argument
- // (Number)");
- // return true;
- // }
- // }
- // see XP command
- if (cmd.getName().equalsIgnoreCase("level")) {
- if (sender.hasPermission("ash.level")) {
- if (this.getConfig().get("XP." + sender.getName()) != null) {
- Integer xp = (Integer) this.getConfig().get("XP." + sender.getName());
- Integer lvl = (Integer) this.getConfig().get("LVL." + sender.getName());
- Integer needed = (Integer) this.getConfig().get("NE." + sender.getName());
- sender.sendMessage(ChatColor.GOLD + "( ---" + ChatColor.RED + " Ninja Status "
- + ChatColor.GOLD + "--- ) \n" + ChatColor.GOLD + "Level: " + ChatColor.AQUA
- + lvl + ChatColor.GOLD + "\nExp: " + ChatColor.AQUA + xp + "/" + needed);
- return true;
- } else {
- this.getConfig().set("XP." + sender.getName(), 0);
- this.getConfig().set("LVL." + sender.getName(), 0);
- this.getConfig().get("XP." + sender.getName());
- this.getConfig().get("LVL." + sender.getName());
- this.getConfig().get("NE." + sender.getName());
- sender.sendMessage(ChatColor.GOLD + "( ---" + ChatColor.RED + "Ninja Status"
- + ChatColor.GOLD + "--- ) \n" + ChatColor.GOLD + "Level:" + ChatColor.AQUA
- + " 0\n" + ChatColor.GOLD + "Exp: " + ChatColor.AQUA + "0/100");
- return true;
- }
- } else {
- sender.sendMessage(ChatColor.DARK_RED + "NO PERMISSIONS");
- return true;
- }
- }
- // add XP command
- if (cmd.getName().equalsIgnoreCase("addxp")) {
- if (sender.hasPermission("ash.addxp")) {
- if (args.length > 1) {
- Player target = getServer().getPlayer(args[0]);
- if (args[0] != null) {
- Integer cxp = (Integer) this.getConfig().get("XP." + target.getName());
- Integer adx = Integer.parseInt(args[1].replaceAll("[\\D]", ""));
- Integer newxp = cxp + adx;
- target.sendMessage(ChatColor.AQUA + "You now have " + newxp + " XP!");
- map.put(sender.getName(), newxp);
- this.getConfig().set("XP." + target.getName(), newxp);
- this.getConfig().get("LVL." + target.getName());
- this.saveConfig();
- Integer lvl = (Integer) this.getConfig().get("LVL." + target.getName());
- if (lvl == null) {
- lvl = 0;
- this.getConfig().set("LVL." + target.getName(), 0);
- }
- Integer xp = (Integer) this.getConfig().get("XP." + target.getName());
- if (xp == null) {
- xp = 0;
- }
- Integer needed = (Integer) this.getConfig().get("NE." + target.getName());
- if (needed == null) {
- needed = 100;
- this.getConfig().set("NE." + target.getName(), 100);
- }
- Integer newlvl = lvl + 1;
- if (xp >= needed) {
- lvl = newlvl;
- if (lvl > 9 && !target.hasPermission("magicspells.rank.chuunin")) {
- newlvl = 9;
- }
- if (lvl > 29 && !target.hasPermission("magicspells.rank.jounin")) {
- newlvl = 29;
- }
- if (lvl > 200) {
- newlvl = 200;
- }
- Integer remaining = xp - needed;
- needed = needed + 100;
- xp = 0;
- this.getConfig().set("XP." + target.getName(), remaining);
- this.getConfig().set("LVL." + target.getName(), newlvl);
- this.getConfig().set("NE." + target.getName(), needed);
- target.sendMessage(ChatColor.GREEN + "You just ranked up to level " + ChatColor.AQUA
- + newlvl + ChatColor.GREEN + "!");
- } else {
- }
- fixStuff(target, newlvl);
- return true;
- } else {
- sender.sendMessage(ChatColor.RED + "Unknown error");
- return true;
- }
- } else {
- sender.sendMessage(ChatColor.RED + "This command needs two arguments! (player, amount)");
- }
- } else {
- sender.sendMessage(
- ChatColor.DARK_AQUA + "You do not have the permission " + ChatColor.RED + "ash.addxp");
- }
- }
- // reset XP command
- if (cmd.getName().equalsIgnoreCase("resetxp")) {
- if (sender.hasPermission("ash.resetxp")) {
- if (args.length > 0) {
- Player target = getServer().getPlayer(args[0]);
- this.getConfig().set("XP." + target.getName(), 0);
- this.getConfig().set("LVL." + target.getName(), 0);
- this.getConfig().set("NE." + target.getName(), 100);
- target.sendMessage(ChatColor.RED + "Your XP has been reset!");
- sender.sendMessage(ChatColor.GREEN + "Success!");
- fixStuff((Player) sender, 0);
- return true;
- } else {
- sender.sendMessage(ChatColor.RED + "This command needs an argument! (player)");
- return true;
- }
- } else {
- sender.sendMessage(
- ChatColor.DARK_AQUA + "You do not have the permission " + ChatColor.RED + "ash.resetxp");
- }
- }
- }
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement