diff --git a/com/gamingmesh/jobs/JobsPlugin.java b/com/gamingmesh/jobs/JobsPlugin.java index db9e9365..7e75783e 100644 --- a/com/gamingmesh/jobs/JobsPlugin.java +++ b/com/gamingmesh/jobs/JobsPlugin.java @@ -22,6 +22,8 @@ import java.io.IOException; import net.coreprotect.CoreProtect; import net.coreprotect.CoreProtectAPI; +import net.elseland.xikage.MythicMobs.MythicMobs; +import net.elseland.xikage.MythicMobs.API.MythicMobsAPI; import org.bukkit.Bukkit; import org.bukkit.command.ConsoleCommandSender; @@ -36,6 +38,7 @@ import com.gamingmesh.jobs.config.JobsConfiguration; import com.gamingmesh.jobs.listeners.JobsListener; import com.gamingmesh.jobs.listeners.JobsPaymentListener; import com.gamingmesh.jobs.listeners.McMMOlistener; +import com.gamingmesh.jobs.listeners.MythicMobsListener; import com.gamingmesh.jobs.listeners.PistonProtectionListener; import com.gamingmesh.jobs.stuff.OfflinePlayerList; import com.gamingmesh.jobs.stuff.ScheduleUtil; @@ -45,6 +48,7 @@ import com.gamingmesh.jobs.config.YmlMaker; public class JobsPlugin extends JavaPlugin { public static Plugin instance; public static CoreProtectAPI CPAPI; + public static MythicMobsAPI MMAPI; public static boolean CPPresent = false; @Override @@ -86,12 +90,19 @@ public class JobsPlugin extends JavaPlugin { if (McMMOlistener.CheckmcMMO()) getServer().getPluginManager().registerEvents(new McMMOlistener(this), this); + if (MythicMobsListener.Check()) + getServer().getPluginManager().registerEvents(new MythicMobsListener(this), this); + if (ConfigManager.getJobsConfiguration().useBlockProtection) getServer().getPluginManager().registerEvents(new PistonProtectionListener(this), this); // register economy Bukkit.getScheduler().runTask(this, new HookEconomyTask(this)); + if (getServer().getPluginManager().getPlugin("MythicMobs") != null) { + MMAPI = ((MythicMobs) getServer().getPluginManager().getPlugin("MythicMobs")).getAPI(); + } + if (getServer().getPluginManager().getPlugin("CoreProtect") != null) { CPPresent = true; CPAPI = ((CoreProtect) getServer().getPluginManager().getPlugin("CoreProtect")).getAPI(); diff --git a/com/gamingmesh/jobs/actions/.gitignore b/com/gamingmesh/jobs/actions/.gitignore index b89cf7e3..46baed78 100644 --- a/com/gamingmesh/jobs/actions/.gitignore +++ b/com/gamingmesh/jobs/actions/.gitignore @@ -4,3 +4,4 @@ /MaterialActionInfo.class /EnchantActionInfo.class /CustomKillInfo.class +/MMKillInfo.class diff --git a/com/gamingmesh/jobs/actions/EntityActionInfo.java b/com/gamingmesh/jobs/actions/EntityActionInfo.java index b16430f4..d2ba59f2 100644 --- a/com/gamingmesh/jobs/actions/EntityActionInfo.java +++ b/com/gamingmesh/jobs/actions/EntityActionInfo.java @@ -29,39 +29,39 @@ import com.gamingmesh.jobs.container.ActionType; import com.gamingmesh.jobs.container.BaseActionInfo; public class EntityActionInfo extends BaseActionInfo implements ActionInfo { - private Entity entity; + private Entity entity; - public EntityActionInfo(Entity entity, ActionType type) { - super(type); - this.entity = entity; + public EntityActionInfo(Entity entity, ActionType type) { + super(type); + this.entity = entity; + } + + @Override + public String getName() { + if (this.entity instanceof Skeleton) { + Skeleton skeleton = (Skeleton) this.entity; + if (skeleton.getSkeletonType() == SkeletonType.WITHER) + return "WitherSkeleton"; } - @Override - public String getName() { - if (this.entity instanceof Skeleton) { - Skeleton skeleton = (Skeleton) this.entity; - if (skeleton.getSkeletonType() == SkeletonType.WITHER) - return "WitherSkeleton"; - } - - if (this.entity instanceof Zombie) { - Zombie zombie = (Zombie) this.entity; - if (zombie.isVillager()) - return "ZombieVillager"; - } - - if (this.entity.getType().toString().toLowerCase().contains("guardian")) - if (this.entity instanceof Guardian) { - Guardian guardian = (Guardian) this.entity; - if (guardian.isElder()) - return "ElderGuardian"; - } - - return entity.getType().toString(); + if (this.entity instanceof Zombie) { + Zombie zombie = (Zombie) this.entity; + if (zombie.isVillager()) + return "ZombieVillager"; } - @Override - public String getNameWithSub() { - return getName(); - } + if (this.entity.getType().toString().toLowerCase().contains("guardian")) + if (this.entity instanceof Guardian) { + Guardian guardian = (Guardian) this.entity; + if (guardian.isElder()) + return "ElderGuardian"; + } + + return entity.getType().toString(); + } + + @Override + public String getNameWithSub() { + return getName(); + } } diff --git a/com/gamingmesh/jobs/actions/MMKillInfo.java b/com/gamingmesh/jobs/actions/MMKillInfo.java new file mode 100644 index 00000000..a1275482 --- /dev/null +++ b/com/gamingmesh/jobs/actions/MMKillInfo.java @@ -0,0 +1,42 @@ +/** + * Jobs Plugin for Bukkit + * Copyright (C) 2011 Zak Ford + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.gamingmesh.jobs.actions; + +import com.gamingmesh.jobs.container.ActionInfo; +import com.gamingmesh.jobs.container.ActionType; +import com.gamingmesh.jobs.container.BaseActionInfo; + +public class MMKillInfo extends BaseActionInfo implements ActionInfo { + private String name; + + public MMKillInfo(String name, ActionType type) { + super(type); + this.name = name; + } + + @Override + public String getName() { + return name; + } + + @Override + public String getNameWithSub() { + return name; + } +} diff --git a/com/gamingmesh/jobs/config/JobConfig.java b/com/gamingmesh/jobs/config/JobConfig.java index 1f4131d4..37e8dbcb 100644 --- a/com/gamingmesh/jobs/config/JobConfig.java +++ b/com/gamingmesh/jobs/config/JobConfig.java @@ -420,8 +420,7 @@ public class JobConfig { if (enchant != null) id = enchant.getId(); type = myKey; - } else if (actionType == ActionType.CUSTOMKILL || actionType == ActionType.SHEAR) { - + } else if (actionType == ActionType.CUSTOMKILL || actionType == ActionType.SHEAR || actionType == ActionType.MMKILL) { type = myKey; } diff --git a/com/gamingmesh/jobs/config/JobsConfiguration.java b/com/gamingmesh/jobs/config/JobsConfiguration.java index 23f8d306..cf89674f 100644 --- a/com/gamingmesh/jobs/config/JobsConfiguration.java +++ b/com/gamingmesh/jobs/config/JobsConfiguration.java @@ -1219,6 +1219,8 @@ public class JobsConfiguration { GetConfigString("command.info.output.place.none", "%jobname% does not get money for placing blocks.", writer, conf, true); GetConfigString("command.info.output.kill.info", "Kill", writer, conf, true); GetConfigString("command.info.output.kill.none", "%jobname% does not get money for killing monsters.", writer, conf, true); + GetConfigString("command.info.output.mmkill.info", "MMKill", writer, conf, true); + GetConfigString("command.info.output.mmkill.none", "%jobname% does not get money for killing Mythic monsters.", writer, conf, true); GetConfigString("command.info.output.fish.info", "Fish", writer, conf, true); GetConfigString("command.info.output.fish.none", "%jobname% does not get money from fishing.", writer, conf, true); GetConfigString("command.info.output.craft.info", "Craft", writer, conf, true); diff --git a/com/gamingmesh/jobs/container/ActionType.java b/com/gamingmesh/jobs/container/ActionType.java index 5ab5c4be..dbf5e64d 100644 --- a/com/gamingmesh/jobs/container/ActionType.java +++ b/com/gamingmesh/jobs/container/ActionType.java @@ -22,6 +22,7 @@ public enum ActionType { BREAK("Break"), PLACE("Place"), KILL("Kill"), + MMKILL("MMKill"), FISH("Fish"), CRAFT("Craft"), SMELT("Smelt"), diff --git a/com/gamingmesh/jobs/listeners/.gitignore b/com/gamingmesh/jobs/listeners/.gitignore index 1348e24e..7f04e40a 100644 --- a/com/gamingmesh/jobs/listeners/.gitignore +++ b/com/gamingmesh/jobs/listeners/.gitignore @@ -6,3 +6,4 @@ /JobsPaymentListener$1.class /JobsListener$1.class /JobsPaymentListener$2.class +/MythicMobsListener.class diff --git a/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 5781bf0f..604cb813 100644 --- a/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -254,7 +254,7 @@ public class JobsPaymentListener implements Listener { @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onBlockBreak(BlockBreakEvent event) { - + // remove furnace metadata for broken block Block block = event.getBlock(); if (block == null) @@ -854,6 +854,11 @@ public class JobsPaymentListener implements Listener { if (lVictim.getKiller().hasMetadata("NPC")) return; + if (MythicMobsListener.Present) { + if (JobsPlugin.MMAPI.getMobAPI().isMythicMob(lVictim)) + return; + } + // mob spawner, no payment or experience if (lVictim.hasMetadata(mobSpawnerMetadata) && !ConfigManager.getJobsConfiguration().payNearSpawner()) { //lVictim.removeMetadata(mobSpawnerMetadata, plugin); diff --git a/com/gamingmesh/jobs/listeners/McMMOlistener.java b/com/gamingmesh/jobs/listeners/McMMOlistener.java index 1b36f8b0..a1a7773c 100644 --- a/com/gamingmesh/jobs/listeners/McMMOlistener.java +++ b/com/gamingmesh/jobs/listeners/McMMOlistener.java @@ -1,72 +1,69 @@ -package com.gamingmesh.jobs.listeners; - -import org.bukkit.Bukkit; -import org.bukkit.ChatColor; -import org.bukkit.GameMode; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.inventory.ItemStack; -import org.bukkit.plugin.Plugin; - -import com.gamingmesh.jobs.Jobs; -import com.gamingmesh.jobs.JobsPlugin; -import com.gamingmesh.jobs.actions.ItemActionInfo; -import com.gamingmesh.jobs.config.ConfigManager; -import com.gamingmesh.jobs.container.ActionType; -import com.gamingmesh.jobs.container.JobsPlayer; -import com.gmail.nossr50.events.skills.repair.McMMOPlayerRepairCheckEvent; - -public class McMMOlistener implements Listener { - - private JobsPlugin plugin; - public static boolean mcMMOPresent = false; - - public McMMOlistener(JobsPlugin plugin) { - this.plugin = plugin; - } - - @EventHandler - public void OnItemrepair(McMMOPlayerRepairCheckEvent event) { - // make sure plugin is enabled - if (!plugin.isEnabled()) - return; - - if (!(event.getPlayer() instanceof Player)) - return; - - Player player = (Player) event.getPlayer(); - - ItemStack resultStack = event.getRepairedObject(); - - if (resultStack == null) - return; - - if (!Jobs.getPermissionHandler().hasWorldPermission(player, player.getLocation().getWorld().getName())) - return; - - // check if in creative - if (player.getGameMode().equals(GameMode.CREATIVE) && !ConfigManager.getJobsConfiguration().payInCreative()) - return; - - // Wearing armor - ItemStack[] armor = player.getInventory().getArmorContents(); - - double multiplier = ConfigManager.getJobsConfiguration().getRestrictedMultiplier(player); - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player); - Jobs.action(jPlayer, new ItemActionInfo(resultStack, ActionType.REPAIR), multiplier, null, armor); - } - - public static boolean CheckmcMMO() { - Plugin McMMO = Bukkit.getPluginManager().getPlugin("mcMMO"); - if (McMMO != null) { - mcMMOPresent = true; - Bukkit.getServer().getConsoleSender().sendMessage(ChatColor.DARK_GREEN + "mcMMO was found - Enabling capabilities."); - return true; - } else { - Bukkit.getServer().getConsoleSender().sendMessage(ChatColor.GOLD + "mcMMO was not found - Disabling capabilities."); - mcMMOPresent = false; - return false; - } - } -} +package com.gamingmesh.jobs.listeners; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.GameMode; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.inventory.ItemStack; +import org.bukkit.plugin.Plugin; + +import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.JobsPlugin; +import com.gamingmesh.jobs.actions.ItemActionInfo; +import com.gamingmesh.jobs.config.ConfigManager; +import com.gamingmesh.jobs.container.ActionType; +import com.gamingmesh.jobs.container.JobsPlayer; +import com.gmail.nossr50.events.skills.repair.McMMOPlayerRepairCheckEvent; + +public class McMMOlistener implements Listener { + + private JobsPlugin plugin; + public static boolean mcMMOPresent = false; + + public McMMOlistener(JobsPlugin plugin) { + this.plugin = plugin; + } + + @EventHandler + public void OnItemrepair(McMMOPlayerRepairCheckEvent event) { + // make sure plugin is enabled + if (!plugin.isEnabled()) + return; + + if (!(event.getPlayer() instanceof Player)) + return; + + Player player = (Player) event.getPlayer(); + + ItemStack resultStack = event.getRepairedObject(); + + if (resultStack == null) + return; + + if (!Jobs.getPermissionHandler().hasWorldPermission(player, player.getLocation().getWorld().getName())) + return; + + // check if in creative + if (player.getGameMode().equals(GameMode.CREATIVE) && !ConfigManager.getJobsConfiguration().payInCreative()) + return; + + // Wearing armor + ItemStack[] armor = player.getInventory().getArmorContents(); + + double multiplier = ConfigManager.getJobsConfiguration().getRestrictedMultiplier(player); + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player); + Jobs.action(jPlayer, new ItemActionInfo(resultStack, ActionType.REPAIR), multiplier, null, armor); + } + + public static boolean CheckmcMMO() { + Plugin McMMO = Bukkit.getPluginManager().getPlugin("mcMMO"); + if (McMMO != null) { + mcMMOPresent = true; + Bukkit.getServer().getConsoleSender().sendMessage(ChatColor.DARK_GREEN + "mcMMO was found - Enabling capabilities."); + return true; + } + return false; + } +} diff --git a/com/gamingmesh/jobs/listeners/MythicMobsListener.java b/com/gamingmesh/jobs/listeners/MythicMobsListener.java new file mode 100644 index 00000000..8ab69883 --- /dev/null +++ b/com/gamingmesh/jobs/listeners/MythicMobsListener.java @@ -0,0 +1,106 @@ +package com.gamingmesh.jobs.listeners; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.GameMode; +import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; +import org.bukkit.entity.Tameable; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.plugin.Plugin; + +import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.JobsPlugin; +import com.gamingmesh.jobs.actions.MMKillInfo; +import com.gamingmesh.jobs.config.ConfigManager; +import com.gamingmesh.jobs.container.ActionType; +import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.stuff.Perm; +import net.elseland.xikage.MythicMobs.API.Bukkit.Events.MythicMobDeathEvent; +import net.elseland.xikage.MythicMobs.Mobs.MythicMob; + +public class MythicMobsListener implements Listener { + + private JobsPlugin plugin; + public static boolean Present = false; + + public MythicMobsListener(JobsPlugin plugin) { + this.plugin = plugin; + } + + @EventHandler + public void OnItemrepair(MythicMobDeathEvent event) { + + // Entity that died must be living + if (!(event.getEntity() instanceof LivingEntity)) + return; + MythicMob lVictim = event.getMobType(); + + // make sure plugin is enabled + if (!plugin.isEnabled()) + return; + + Player pDamager = null; + + Double PetPayMultiplier = 1.0; + // Checking if killer is player + if (event.getKiller() instanceof Player) + pDamager = (Player) event.getKiller(); + // Checking if killer is tamed animal + else if (event.getEntity().getLastDamageCause() instanceof EntityDamageByEntityEvent) { + if (((EntityDamageByEntityEvent) event.getEntity().getLastDamageCause()).getDamager() instanceof Tameable) { + Tameable t = (Tameable) ((EntityDamageByEntityEvent) event.getEntity().getLastDamageCause()).getDamager(); + if (t.isTamed() && t.getOwner() instanceof Player) { + pDamager = (Player) t.getOwner(); + if (Perm.hasPermission(pDamager, "jobs.petpay") || Perm.hasPermission(pDamager, "jobs.vippetpay")) + PetPayMultiplier = ConfigManager.getJobsConfiguration().VipPetPay; + else + PetPayMultiplier = ConfigManager.getJobsConfiguration().PetPay; + } + } + } else + return; + + if (pDamager == null) + return; + // check if in creative + if (pDamager.getGameMode().equals(GameMode.CREATIVE) && !ConfigManager.getJobsConfiguration().payInCreative()) + return; + + if (!Jobs.getPermissionHandler().hasWorldPermission(pDamager, pDamager.getLocation().getWorld().getName())) + return; + + // restricted area multiplier + double multiplier = ConfigManager.getJobsConfiguration().getRestrictedMultiplier(pDamager); + + // pay + JobsPlayer jDamager = Jobs.getPlayerManager().getJobsPlayer(pDamager); + + if (jDamager == null) + return; + + // Item in hand + ItemStack item = pDamager.getItemInHand().hasItemMeta() ? pDamager.getItemInHand() : null; + + // Wearing armor + ItemStack[] armor = pDamager.getInventory().getArmorContents(); + + // Calulating multiplaier + multiplier = multiplier * PetPayMultiplier; + + Jobs.action(jDamager, new MMKillInfo(lVictim.getInternalName(), ActionType.MMKILL), multiplier, item, armor); + } + + public static boolean Check() { + Plugin mm = Bukkit.getPluginManager().getPlugin("MythicMobs"); + if (mm != null) { + Present = true; + Bukkit.getServer().getConsoleSender().sendMessage(ChatColor.DARK_GREEN + "MythicMobs was found - Enabling capabilities."); + return true; + } + return false; + } +} diff --git a/com/gamingmesh/jobs/stuff/OfflinePlayerList.java b/com/gamingmesh/jobs/stuff/OfflinePlayerList.java index d291fa93..996dc2ca 100644 --- a/com/gamingmesh/jobs/stuff/OfflinePlayerList.java +++ b/com/gamingmesh/jobs/stuff/OfflinePlayerList.java @@ -17,6 +17,10 @@ public class OfflinePlayerList { for (OfflinePlayer one : Bukkit.getOfflinePlayers()) { if (one == null) continue; + if (one.getName() == null) + continue; + if (one.getUniqueId() == null) + continue; map.put(one.getName().toLowerCase(), one); uuidmap.put(one.getUniqueId(), one); } diff --git a/com/gamingmesh/jobs/stuff/TranslateName.java b/com/gamingmesh/jobs/stuff/TranslateName.java index 550f9cd6..13a8ddc7 100644 --- a/com/gamingmesh/jobs/stuff/TranslateName.java +++ b/com/gamingmesh/jobs/stuff/TranslateName.java @@ -1,86 +1,87 @@ -package com.gamingmesh.jobs.stuff; - -import com.gamingmesh.jobs.config.ConfigManager; -import com.gamingmesh.jobs.container.JobInfo; -import com.gamingmesh.jobs.container.NameList; - -public class TranslateName { - - public static String Translate(String materialName, JobInfo info) { - - // Translating name to user friendly - if (ConfigManager.getJobsConfiguration().UseCustomNames) - switch (info.getActionType()) { - case BREAK: - case CRAFT: - case DYE: - case PLACE: - case SMELT: - case REPAIR: - case BREW: - case FISH: - for (NameList one : ConfigManager.getJobsConfiguration().ListOfNames) { - String ids = one.getId() + ":" + one.getMeta(); - if (!one.getMeta().equalsIgnoreCase("") && ids.equalsIgnoreCase(info.getId() + ":" + info.getMeta()) && !one.getId().equalsIgnoreCase("0")) { - return one.getName(); - } - } - for (NameList one : ConfigManager.getJobsConfiguration().ListOfNames) { - String ids = one.getId(); - if (ids.equalsIgnoreCase(String.valueOf(info.getId())) && !one.getId().equalsIgnoreCase("0")) { - return one.getName(); - } - } - break; - case BREED: - case KILL: - case MILK: - case TAME: - for (NameList one : ConfigManager.getJobsConfiguration().ListOfEntities) { - String ids = one.getId() + ":" + one.getMeta(); - if (!one.getMeta().equalsIgnoreCase("") && ids.equalsIgnoreCase(info.getId() + ":" + info.getMeta()) && !one.getId().equalsIgnoreCase("0")) { - return one.getName(); - } - } - for (NameList one : ConfigManager.getJobsConfiguration().ListOfEntities) { - String ids = one.getId(); - if (ids.equalsIgnoreCase(String.valueOf(info.getId())) && !one.getId().equalsIgnoreCase("0")) { - return materialName = one.getName(); - } - } - break; - case ENCHANT: - for (NameList one : ConfigManager.getJobsConfiguration().ListOfEnchants) { - String ids = one.getId(); - if (ids.equalsIgnoreCase(String.valueOf(info.getId()))) { - return one.getName() + " " + info.getMeta(); - } - } - for (NameList one : ConfigManager.getJobsConfiguration().ListOfNames) { - String ids = one.getId() + ":" + one.getMeta(); - if (!one.getMeta().equalsIgnoreCase("") && ids.equalsIgnoreCase(info.getId() + ":" + info.getMeta()) && !one.getId().equalsIgnoreCase("0")) { - return one.getName(); - } - } - for (NameList one : ConfigManager.getJobsConfiguration().ListOfNames) { - String ids = one.getId(); - if (ids.equalsIgnoreCase(String.valueOf(info.getId())) && !one.getId().equalsIgnoreCase("0")) { - return one.getName(); - } - } - break; - case CUSTOMKILL: - break; - case SHEAR: - for (NameList one : ConfigManager.getJobsConfiguration().ListOfColors) { - String ids = one.getMinecraftName(); - if (ids.equalsIgnoreCase(String.valueOf(info.getName()))) { - return one.getName(); - } - } - break; - } - - return materialName; - } -} +package com.gamingmesh.jobs.stuff; + +import com.gamingmesh.jobs.config.ConfigManager; +import com.gamingmesh.jobs.container.JobInfo; +import com.gamingmesh.jobs.container.NameList; + +public class TranslateName { + + public static String Translate(String materialName, JobInfo info) { + + // Translating name to user friendly + if (ConfigManager.getJobsConfiguration().UseCustomNames) + switch (info.getActionType()) { + case BREAK: + case CRAFT: + case DYE: + case PLACE: + case SMELT: + case REPAIR: + case BREW: + case FISH: + for (NameList one : ConfigManager.getJobsConfiguration().ListOfNames) { + String ids = one.getId() + ":" + one.getMeta(); + if (!one.getMeta().equalsIgnoreCase("") && ids.equalsIgnoreCase(info.getId() + ":" + info.getMeta()) && !one.getId().equalsIgnoreCase("0")) { + return one.getName(); + } + } + for (NameList one : ConfigManager.getJobsConfiguration().ListOfNames) { + String ids = one.getId(); + if (ids.equalsIgnoreCase(String.valueOf(info.getId())) && !one.getId().equalsIgnoreCase("0")) { + return one.getName(); + } + } + break; + case BREED: + case KILL: + case MILK: + case TAME: + for (NameList one : ConfigManager.getJobsConfiguration().ListOfEntities) { + String ids = one.getId() + ":" + one.getMeta(); + if (!one.getMeta().equalsIgnoreCase("") && ids.equalsIgnoreCase(info.getId() + ":" + info.getMeta()) && !one.getId().equalsIgnoreCase("0")) { + return one.getName(); + } + } + for (NameList one : ConfigManager.getJobsConfiguration().ListOfEntities) { + String ids = one.getId(); + if (ids.equalsIgnoreCase(String.valueOf(info.getId())) && !one.getId().equalsIgnoreCase("0")) { + return materialName = one.getName(); + } + } + break; + case ENCHANT: + for (NameList one : ConfigManager.getJobsConfiguration().ListOfEnchants) { + String ids = one.getId(); + if (ids.equalsIgnoreCase(String.valueOf(info.getId()))) { + return one.getName() + " " + info.getMeta(); + } + } + for (NameList one : ConfigManager.getJobsConfiguration().ListOfNames) { + String ids = one.getId() + ":" + one.getMeta(); + if (!one.getMeta().equalsIgnoreCase("") && ids.equalsIgnoreCase(info.getId() + ":" + info.getMeta()) && !one.getId().equalsIgnoreCase("0")) { + return one.getName(); + } + } + for (NameList one : ConfigManager.getJobsConfiguration().ListOfNames) { + String ids = one.getId(); + if (ids.equalsIgnoreCase(String.valueOf(info.getId())) && !one.getId().equalsIgnoreCase("0")) { + return one.getName(); + } + } + break; + case CUSTOMKILL: + case MMKILL: + break; + case SHEAR: + for (NameList one : ConfigManager.getJobsConfiguration().ListOfColors) { + String ids = one.getMinecraftName(); + if (ids.equalsIgnoreCase(String.valueOf(info.getName()))) { + return one.getName(); + } + } + break; + } + + return materialName; + } +} diff --git a/jobConfig.yml b/jobConfig.yml index 2f027b4c..52d16bf3 100644 --- a/jobConfig.yml +++ b/jobConfig.yml @@ -1,1031 +1,1039 @@ -# Jobs configuration. -# -# Stores information about each job. -# -# NOTE: When having multiple jobs, both jobs will give the income payout to the player -# even if they give the pay for one action (make the configurations with this in mind) -# and each job will get the respective experience. -# -# e.g If player has 2 jobs where job1 gives 10 income and experience for killing a player -# and job2 gives 5 income and experience for killing a player. When the user kills a player -# they will get 15 income and job1 will gain 10 experience and job2 will gain 5 experience. - -Jobs: - # must be one word - Woodcutter: - # full name of the job (displayed when browsing a job, used when joining and leaving) - # also can be used as a prefix for the user's name if the option is enabled. - # Shown as a prefix only when the user has 1 job. - # - # NOTE: Must be 1 word - fullname: Woodcutter - # Shortened version of the name of the job. Used as a prefix when the user has more - # than 1 job - shortname: W - description: Earns money felling and planting trees - # The colour of the name, for a full list of supported colours, go to the message config. - ChatColour: GREEN - # Option to let you choose what kind of prefix this job adds to your name. - # options are: full, title, job, shortfull, shorttitle, shortjob and none - chat-display: full - # [OPTIONAL] - the maximum level of this class - #max-level: 10 - # [OPTIONAL] - the maximum level of this class with specific permission - # use jobs.[jobsname].vipmaxlevel - #vip-max-level: 20 - # [OPTIONAL] - the maximum number of users on the server that can have this job at - # any one time (includes offline players). - #slots: 1 - # Equation used for calculating how much experience is needed to go to the next level. - # Available parameters: - # numjobs - the number of jobs the player has - # joblevel - the level the player has attained in the job. - # NOTE: Please take care of the brackets when modifying this equation. - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - # Equation used for calculating how much income is given per action for the job level. - # Available parameters: - # baseincome - the income for the action at level 1 (as set in the configuration). - # joblevel - the level the player has attained in the job. - # NOTE: Please take care of the brackets when modifying this equation. - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - # Equation used for calculating how much experience is given per action for the job level. - # Available parameters: - # baseexperience - the experience for the action at level 1 (as set in the configuration). - # joblevel - the level the player has attained in the job. - # NOTE: Please take care of the brackets when modifying this equation. - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - ######################################################################## - # Section used to configure what items the job gets paid for, how much - # they get paid and how much experience they gain. - # - # For break and place, the block name or id is used. - # You can select a sub-type by using a '-' between the id and the bit - # value for the sub-type. e.g LOG-0 = usual log, LOG-2 = birch log - # 17-2 = birch log. - # - # If no sub-type is give, the payout will be for all sub-types. - # - # To get a list of all available block types, check the - # bukkit JavaDocs for a complete list of block types - # https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html - # - # For kill tags (Kill and custom-kill), the name is the name of the - # mob. - # Available mobs: - # Bat - # Blaze - # Cave_spider - # Chicken - # Cow - # Creeper - # Ender_dragon - # Enderman - # Endermite - # Ghast - # Giant - # Guardian - # Horse - # Iron_golem - # Magma_cube - # Mushroom_cow - # Ocelot - # Pig - # Player - # Rabbit - # Sheep - # Silverfish - # Skeleton - # Slime - # Snowman - # Spider - # Squid - # Villager - # Witch - # Wither - # Wolf - # Zombie - # - # NOTE: mob names are case sensitive. - # - # For custom-kill, it is the name of the job (also case sensitive). - # - # NOTE: If a job has both the pay for killing a player and for killing a - # specific class, they will get both payments. - ######################################################################## - # payment for breaking a block - Break: - # block name/id (with optional sub-type) - LOG: - # base income - income: 5.0 - # base experience - experience: 5.0 - # payment for placing a block - Place: - SAPLING: - income: 1.0 - experience: 1.0 - WOOD: - income: 2.0 - experience: 2.0 - # killing a mob - Kill: - # mob name - Player: - # base income - income: 7.5 - # base experience - experience: 7.5 - # Killing player with certain job - custom-kill: - Woodcutter: - income: 10.0 - experience: 10.0 - # Tamig animals - Tame: - Wolf: - income: 2.0 - experience: 5.0 - # Breeding animals - Breed: - Wolf: - income: 2.0 - experience: 5.0 - # Milking cows, only one option is available - Milk: - Cow: - income: 2.0 - experience: 5.0 - Mushroomcow: - income: 5.0 - experience: 10.0 - # Shear sheeps by its color - Shear: - Black: - income: 2.0 - experience: 5.0 - Blue: - income: 2.0 - experience: 5.0 - Brown: - income: 2.0 - experience: 5.0 - Cyan: - income: 2.0 - experience: 5.0 - Gray: - income: 2.0 - experience: 5.0 - Green: - income: 2.0 - experience: 5.0 - Light_blue: - income: 2.0 - experience: 5.0 - Lime: - income: 2.0 - experience: 5.0 - Magenta: - income: 2.0 - experience: 5.0 - Orange: - income: 2.0 - experience: 5.0 - Pink: - income: 2.0 - experience: 5.0 - Purple: - income: 2.0 - experience: 5.0 - Red: - income: 2.0 - experience: 5.0 - Silver: - income: 2.0 - experience: 5.0 - White: - income: 2.0 - experience: 5.0 - Yellow: - income: 2.0 - experience: 5.0 - # dyeing armor - Dye: - LEATHER_BOOTS: - income: 1.0 - experience: 1.0 - LEATHER_CHESTPLATE: - income: 1.0 - experience: 1.0 - LEATHER_HELMET: - income: 1.0 - experience: 1.0 - LEATHER_LEGGINGS: - income: 1.0 - experience: 1.0 - 351: - income: 1.0 - experience: 1.0 - # Catching fish - Fish: - '349': - income: 20.0 - experience: 25.0 - # Repairing items - Repair: - WOOD_SWORD: - income: 1.0 - experience: 1.0 - IRON_SWORD: - income: 2.0 - experience: 2.0 - # Crafting items - Craft: - WOOD_SWORD: - income: 1.5 - experience: 3.0 - LEATHER_BOOTS: - income: 1.0 - experience: 6.0 - # Smelting ores - Smelt: - IRON_INGOT: - income: 2.0 - experience: 8.0 - GOLD_INGOT: - income: 4.5 - experience: 12 - # Enchanting items - Enchant: - # You can set item for which player will get money - WOOD_SWORD: - income: 1.5 - experience: 3.0 - LEATHER_BOOTS: - income: 1.0 - experience: 6.0 - # Or/and you can give money for each enchantment they got - DIG_SPEED-1: - income: 3.0 - experience: 10.0 - DIG_SPEED-2: - income: 6.0 - experience: 20.0 - # Brewing potions - Brew: - NETHER_STALK: - income: 5.0 - experience: 3.0 - REDSTONE: - income: 5.0 - experience: 3.0 - # permissions granted for joining class - permissions: - # example node - aaaaaatest.node: - # true to give, false to revoke - value: true - # minimum level needed to grant permission. Use 0 for all levels - level: 0 - aaaaaatest.node2: - value: true - # Permission granted when reaching level 10 - level: 10 - # Permissions granted when perticular conditions are meet - conditions: - # Condition mane, irelevent, you can write anything in here - first: - requires: - # j marks that player should have particular jobs level and higher - - j:Miner-50 - - j:Digger-50 - # p marks permission requirement - - p:essentials.notnoob - perform: - # p marks permission, player will get if given true value, if used false, permission will be taken - - p:essentials.fly-true - # Commands executed when player reached level - commands: - # command name, just to have better idea what this do - fly: - # Command its self, this will be executed from console, so all commands should work - # Possible variables are: [player] [jobname] [oldlevel] [newlevel] - command: manuaddp [player] essentials.fly - # When to execute this command first time - levelFrom: 100 - # Until when to do this command - # This can be set to same level as levelFrom, so this command will be executed only once - levelUntil: 100 - kit: - command: manuaddp [player] essentials.kits.woodcutter - levelFrom: 150 - levelUntil: 150 - # Getting more money when equiped with specific weapon/tool ar wearing armor - items: - # Just name, dont have any impact - firstOne: - # Tool/Weapon id. Works for block Break, Fish, Animal tame, Breed, Monster/Player kill. - id: 278 - # Items name, should be with color codes - name: '&8Miner Pickaxe' - # Item lore, again should come with color codes - lore: - - '&eBobs pick' - - '&710% bonus XP' - # Item enchantments, all enchantment names can be found https://hub.spigotmc.org/javadocs/spigot/org/bukkit/enchantments/Enchantment.html - enchants: - - DAMAGE_ALL=1 - - FIRE_ASPECT=1 - # Money boost: 1.1 is equals 10% more income when 0.9 is equals 10% less from base income - moneyBoost: 1.1 - # Exp boost - expBoost: 1.1 - helmet: - # Armor id. This one works with all jobs - id: 310 - name: '&8Armor' - lore: - - '&eBobs armor' - - '&710% bonus XP' - moneyBoost: 1.1 - expBoost: 1.1 - cmd-on-join: - - 'msg [name] Thx for joining this job!' - - 'msg [name] Now start working and get money from [jobname] job!' - cmd-on-leave: - - 'msg [name] You have left this awesome [jobname] job' - - 'msg [name] See you soon!' - Miner: - fullname: Miner - shortname: M - description: Earns money mining minerals and ores. - ChatColour: DARK_GRAY - chat-display: full - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Break: - STONE: - income: 2.0 - experience: 2.0 - COAL_ORE: - income: 3.0 - experience: 3.0 - GLOWING_REDSTONE_ORE: - income: 3.0 - experience: 3.0 - IRON_ORE: - income: 4.0 - experience: 4.0 - GOLD_ORE: - income: 5.0 - experience: 5.0 - LAPIS_ORE: - income: 5.0 - experience: 5.0 - DIAMOND_ORE: - income: 6.0 - experience: 6.0 - OBSIDIAN: - income: 7.5 - experience: 7.5 - MOSSY_COBBLESTONE: - income: 6.0 - experience: 6.0 - Place: - RAILS: - income: 2.0 - experience: 2.0 - IRON_ORE: - income: -5.0 - experience: -5.0 - GOLD_ORE: - income: -6.0 - experience: -6.0 - Kill: - Player: - income: 7.5 - experience: 7.5 - Builder: - fullname: Builder - shortname: B - description: Earns money for building structures. - ChatColour: WHITE - chat-display: full - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Place: - COBBLESTONE: - income: 1.0 - experience: 1.0 - WOOD: - income: 1.5 - experience: 1.5 - FENCE: - income: 1.5 - experience: 1.5 - WOOL: - income: 1.5 - experience: 1.5 - STONE: - income: 2.25 - experience: 2.25 - GLOWSTONE: - income: 3.0 - experience: 3.0 - SANDSTONE: - income: 2.0 - experience: 2.0 - GLASS: - income: 3.0 - experience: 3.0 - BRICK: - income: 4.0 - experience: 4.0 - LAPIS_BLOCK: - income: 5.0 - experience: 5.0 - DOUBLE_STEP: - income: 2.0 - experience: 2.0 - STEP: - income: 2.0 - experience: 2.0 - BOOKSHELF: - income: 3.0 - experience: 3.0 - WOOD_STAIRS: - income: 2.0 - experience: 2.0 - COBBLESTONE_STAIRS: - income: 2.0 - experience: 2.0 - MOSSY_COBBLESTONE: - income: 5.0 - experience: 5.0 - DIAMOND_BLOCK: - income: 5.0 - experience: 5.0 - GOLD_BLOCK: - income: 5.0 - experience: 5.0 - Kill: - Player: - income: 7.5 - experience: 7.5 - Digger: - fullname: Digger - shortname: D - description: Earns money for terraforming the world. - ChatColour: GOLD - chat-display: full - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Break: - DIRT: - income: 2.0 - experience: 2.0 - GRASS: - income: 2.0 - experience: 2.0 - GRAVEL: - income: 2.0 - experience: 2.0 - SAND: - income: 2.0 - experience: 2.0 - CLAY: - income: 2.0 - experience: 2.0 - Kill: - Player: - income: 7.5 - experience: 7.5 - custom-kill: - Digger: - income: 10.0 - experience: 10.0 - Farmer: - fullname: Farmer - shortname: Fa - description: Earns money farming crops. - ChatColour: BLUE - chat-display: full - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Break: - CROPS-7: - income: 4.0 - experience: 4.0 - SUGAR_CANE_BLOCK: - income: 4.0 - experience: 4.0 - Tame: - Wolf: - income: 5.0 - experience: 5.0 - Breed: - Wolf: - income: 5.0 - experience: 5.0 - Place: - CROPS-0: - income: 3.0 - experience: 3.0 - SUGAR_CANE_BLOCK: - income: 1.0 - experience: 1.0 - Kill: - Player: - income: 7.5 - experience: 7.5 - Hunter: - fullname: Hunter - shortname: H - description: Earns money killing animals and monsters. - ChatColour: RED - chat-display: full - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Kill: - Chicken: - income: 2.5 - experience: 2.5 - Cow: - income: 2.5 - experience: 2.5 - Pig: - income: 2.5 - experience: 2.5 - Sheep: - income: 2.5 - experience: 2.5 - Wolf: - income: 5.0 - experience: 5.0 - Creeper: - income: 10.0 - experience: 10.0 - Skeleton: - income: 10.0 - experience: 10.0 - WitherSkeleton: - income: 10.0 - experience: 10.0 - Spider: - income: 10.0 - experience: 10.0 - Zombie: - income: 10.0 - experience: 10.0 - Player: - income: 7.5 - experience: 7.5 - Fisherman: - fullname: Fisherman - shortname: Fi - description: Earns money from fishing. - ChatColour: AQUA - chat-display: full - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Fish: - RAW_FISH: - income: 4.0 - experience: 4.0 - Kill: - Player: - income: 7.5 - experience: 7.5 - Weaponsmith: - fullname: Weaponsmith - shortname: W - description: Earns money from crafting and repairing weapons. - ChatColour: DARK_PURPLE - chat-display: full - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Craft: - WOOD_SWORD: - income: 1.0 - experience: 1.0 - IRON_SWORD: - income: 2.0 - experience: 2.0 - GOLD_SWORD: - income: 3.0 - experience: 3.0 - DIAMOND_SWORD: - income: 4.0 - experience: 4.0 - Repair: - WOOD_SWORD: - income: 1.0 - experience: 1.0 - IRON_SWORD: - income: 2.0 - experience: 2.0 - GOLD_SWORD: - income: 3.0 - experience: 3.0 - DIAMOND_SWORD: - income: 4.0 - experience: 4.0 - Smelt: - IRON_INGOT: - income: 2.0 - experience: 2.0 - GOLD_INGOT: - income: 2.0 - experience: 2.0 - Brewer: - fullname: Brewer - shortname: Br - description: Earns money brewing potions. - ChatColour: LIGHT_PURPLE - chat-display: full - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Brew: - NETHER_STALK: - income: 1.0 - experience: 1.0 - REDSTONE: - income: 2.0 - experience: 2.0 - GLOWSTONE_DUST: - income: 2.0 - experience: 2.0 - SPIDER_EYE: - income: 2.0 - experience: 2.0 - FERMENTED_SPIDER_EYE: - income: 2.0 - experience: 2.0 - BLAZE_POWDER: - income: 2.0 - experience: 2.0 - SUGAR: - income: 2.0 - experience: 2.0 - SPECKLED_MELON: - income: 4.0 - experience: 4.0 - MAGMA_CREAM: - income: 4.0 - experience: 4.0 - GHAST_TEAR: - income: 4.0 - experience: 4.0 - Enchanter: - fullname: Enchanter - shortname: E - description: Earns money enchanting weapons. - ChatColour: DARK_BLUE - chat-display: full - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Enchant: - WOOD_SWORD: - income: 1.5 - experience: 3.0 - LEATHER_BOOTS: - income: 1.0 - experience: 6.0 - LEATHER_CHESTPLATE: - income: 2.0 - experience: 6.0 - LEATHER_HELMET: - income: 1.0 - experience: 6.0 - LEATHER_LEGGINGS: - income: 2.0 - experience: 6.0 - IRON_SWORD: - income: 3.0 - experience: 6.0 - IRON_BOOTS: - income: 2.5 - experience: 9.0 - IRON_CHESTPLATE: - income: 4.5 - experience: 9.0 - IRON_HELMET: - income: 2.5 - experience: 9.0 - IRON_LEGGINGS: - income: 4.5 - experience: 9.0 - GOLD_SWORD: - income: 4.5 - experience: 15.0 - GOLD_BOOTS: - income: 2.5 - experience: 15.0 - GOLD_CHESTPLATE: - income: 5.5 - experience: 15.0 - GOLD_HELMET: - income: 2.5 - experience: 15.0 - GOLD_LEGGINGS: - income: 5.5 - experience: 15.0 - DIAMOND_SWORD: - income: 9.0 - experience: 30.0 - DIAMOND_SPADE: - income: 5.0 - experience: 30.0 - DIAMOND_PICKAXE: - income: 10.0 - experience: 30.0 - DIAMOND_AXE: - income: 10.0 - experience: 30.0 - DIAMOND_HELMET: - income: 6.0 - experience: 30.0 - DIAMOND_CHESTPLATE: - income: 12.0 - experience: 50.0 - DIAMOND_LEGGINGS: - income: 12.0 - experience: 50.0 - DIAMOND_BOOTS: - income: 6.0 - experience: 30.0 - ARROW_DAMAGE-1: - income: 3.0 - experience: 10.0 - ARROW_DAMAGE-2: - income: 6.0 - experience: 20.0 - ARROW_DAMAGE-3: - income: 9.0 - experience: 30.0 - ARROW_DAMAGE-4: - income: 12.0 - experience: 40.0 - ARROW_DAMAGE-5: - income: 15.0 - experience: 50.0 - ARROW_FIRE: - income: 10.0 - experience: 30.0 - ARROW_INFINITE: - income: 20.0 - experience: 50.0 - ARROW_KNOCKBACK-1: - income: 3.0 - experience: 10.0 - ARROW_KNOCKBACK-2: - income: 6.0 - experience: 20.0 - DAMAGE_ALL-1: - income: 10.0 - experience: 10.0 - DAMAGE_ALL-2: - income: 20.0 - experience: 20.0 - DAMAGE_ALL-3: - income: 30.0 - experience: 30.0 - DAMAGE_ALL-4: - income: 40.0 - experience: 40.0 - DAMAGE_ALL-5: - income: 50.0 - experience: 50.0 - DAMAGE_ARTHROPODS-1: - income: 3.0 - experience: 10.0 - DAMAGE_ARTHROPODS-2: - income: 6.0 - experience: 20.0 - DAMAGE_ARTHROPODS-3: - income: 9.0 - experience: 30.0 - DAMAGE_ARTHROPODS-4: - income: 12.0 - experience: 40.0 - DAMAGE_ARTHROPODS-5: - income: 15.0 - experience: 50.0 - DAMAGE_UNDEAD-1: - income: 3.0 - experience: 10.0 - DAMAGE_UNDEAD-2: - income: 6.0 - experience: 20.0 - DAMAGE_UNDEAD-3: - income: 9.0 - experience: 30.0 - DAMAGE_UNDEAD-4: - income: 12.0 - experience: 40.0 - DAMAGE_UNDEAD-5: - income: 15.0 - experience: 50.0 - DEPTH_STRIDER-1: - income: 3.0 - experience: 10.0 - DEPTH_STRIDER-2: - income: 6.0 - experience: 20.0 - DEPTH_STRIDER-3: - income: 9.0 - experience: 30.0 - DIG_SPEED-1: - income: 3.0 - experience: 10.0 - DIG_SPEED-2: - income: 6.0 - experience: 20.0 - DIG_SPEED-3: - income: 9.0 - experience: 30.0 - DIG_SPEED-4: - income: 12.0 - experience: 40.0 - DIG_SPEED-5: - income: 15.0 - experience: 50.0 - DURABILITY-1: - income: 3.0 - experience: 10.0 - DURABILITY-2: - income: 6.0 - experience: 20.0 - DURABILITY-3: - income: 9.0 - experience: 30.0 - FIRE_ASPECT-1: - income: 3.0 - experience: 10.0 - FIRE_ASPECT-2: - income: 6.0 - experience: 20.0 - KNOCKBACK-1: - income: 3.0 - experience: 10.0 - KNOCKBACK-2: - income: 6.0 - experience: 20.0 - LOOT_BONUS_BLOCKS-1: - income: 20.0 - experience: 100.0 - LOOT_BONUS_BLOCKS-2: - income: 40.0 - experience: 200.0 - LOOT_BONUS_BLOCKS-3: - income: 80.0 - experience: 300.0 - LOOT_BONUS_MOBS-1: - income: 5.0 - experience: 20.0 - LOOT_BONUS_MOBS-2: - income: 12.0 - experience: 40.0 - LOOT_BONUS_MOBS-3: - income: 15.0 - experience: 60.0 - LUCK-1: - income: 15.0 - experience: 10.0 - LUCK-2: - income: 25.0 - experience: 20.0 - LUCK-3: - income: 35.0 - experience: 30.0 - LURE-1: - income: 10.0 - experience: 10.0 - LURE-2: - income: 20.0 - experience: 20.0 - LURE-3: - income: 30.0 - experience: 30.0 - OXYGEN-1: - income: 3.0 - experience: 10.0 - OXYGEN-2: - income: 6.0 - experience: 20.0 - OXYGEN-3: - income: 9.0 - experience: 30.0 - PROTECTION_ENVIRONMENTAL-1: - income: 5.0 - experience: 10.0 - PROTECTION_ENVIRONMENTAL-2: - income: 10.0 - experience: 20.0 - PROTECTION_ENVIRONMENTAL-3: - income: 15.0 - experience: 30.0 - PROTECTION_ENVIRONMENTAL-4: - income: 20.0 - experience: 40.0 - PROTECTION_EXPLOSIONS-1: - income: 5.0 - experience: 10.0 - PROTECTION_EXPLOSIONS-2: - income: 10.0 - experience: 20.0 - PROTECTION_EXPLOSIONS-3: - income: 15.0 - experience: 30.0 - PROTECTION_EXPLOSIONS-4: - income: 20.0 - experience: 40.0 - PROTECTION_FALL-1: - income: 3.0 - experience: 10.0 - PROTECTION_FALL-2: - income: 6.0 - experience: 20.0 - PROTECTION_FALL-3: - income: 9.0 - experience: 30.0 - PROTECTION_FALL-4: - income: 12.0 - experience: 40.0 - PROTECTION_FIRE-1: - income: 5.0 - experience: 10.0 - PROTECTION_FIRE-2: - income: 10.0 - experience: 20.0 - PROTECTION_FIRE-3: - income: 15.0 - experience: 30.0 - PROTECTION_FIRE-4: - income: 20.0 - experience: 40.0 - PROTECTION_PROJECTILE-1: - income: 10.0 - experience: 10.0 - PROTECTION_PROJECTILE-2: - income: 20.0 - experience: 20.0 - PROTECTION_PROJECTILE-3: - income: 30.0 - experience: 30.0 - PROTECTION_PROJECTILE-4: - income: 40.0 - experience: 40.0 - SILK_TOUCH: - income: 100.0 - experience: 300.0 - THORNS-1: - income: 4.0 - experience: 10.0 - THORNS-2: - income: 8.0 - experience: 20.0 - THORNS-3: - income: 12.0 - experience: 30.0 - WATER_WORKER: - income: 30.0 - experience: 100.0 - None: - fullname: None - shortname: N - ChatColour: WHITE - chat-display: none - #max-level: 10 - #slots: 10 - leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) - income-progression-equation: baseincome*((1.05)^(joblevel-1)) - experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) - Kill: - Player: +# Jobs configuration. +# +# Stores information about each job. +# +# NOTE: When having multiple jobs, both jobs will give the income payout to the player +# even if they give the pay for one action (make the configurations with this in mind) +# and each job will get the respective experience. +# +# e.g If player has 2 jobs where job1 gives 10 income and experience for killing a player +# and job2 gives 5 income and experience for killing a player. When the user kills a player +# they will get 15 income and job1 will gain 10 experience and job2 will gain 5 experience. + +Jobs: + # must be one word + Woodcutter: + # full name of the job (displayed when browsing a job, used when joining and leaving) + # also can be used as a prefix for the user's name if the option is enabled. + # Shown as a prefix only when the user has 1 job. + # + # NOTE: Must be 1 word + fullname: Woodcutter + # Shortened version of the name of the job. Used as a prefix when the user has more + # than 1 job + shortname: W + description: Earns money felling and planting trees + # The colour of the name, for a full list of supported colours, go to the message config. + ChatColour: GREEN + # Option to let you choose what kind of prefix this job adds to your name. + # options are: full, title, job, shortfull, shorttitle, shortjob and none + chat-display: full + # [OPTIONAL] - the maximum level of this class + #max-level: 10 + # [OPTIONAL] - the maximum level of this class with specific permission + # use jobs.[jobsname].vipmaxlevel + #vip-max-level: 20 + # [OPTIONAL] - the maximum number of users on the server that can have this job at + # any one time (includes offline players). + #slots: 1 + # Equation used for calculating how much experience is needed to go to the next level. + # Available parameters: + # numjobs - the number of jobs the player has + # joblevel - the level the player has attained in the job. + # NOTE: Please take care of the brackets when modifying this equation. + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + # Equation used for calculating how much income is given per action for the job level. + # Available parameters: + # baseincome - the income for the action at level 1 (as set in the configuration). + # joblevel - the level the player has attained in the job. + # NOTE: Please take care of the brackets when modifying this equation. + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + # Equation used for calculating how much experience is given per action for the job level. + # Available parameters: + # baseexperience - the experience for the action at level 1 (as set in the configuration). + # joblevel - the level the player has attained in the job. + # NOTE: Please take care of the brackets when modifying this equation. + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + ######################################################################## + # Section used to configure what items the job gets paid for, how much + # they get paid and how much experience they gain. + # + # For break and place, the block name or id is used. + # You can select a sub-type by using a '-' between the id and the bit + # value for the sub-type. e.g LOG-0 = usual log, LOG-2 = birch log + # 17-2 = birch log. + # + # If no sub-type is give, the payout will be for all sub-types. + # + # To get a list of all available block types, check the + # bukkit JavaDocs for a complete list of block types + # https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html + # + # For kill tags (Kill and custom-kill), the name is the name of the + # mob. + # Available mobs: + # Bat + # Blaze + # Cave_spider + # Chicken + # Cow + # Creeper + # Ender_dragon + # Enderman + # Endermite + # Ghast + # Giant + # Guardian + # Horse + # Iron_golem + # Magma_cube + # Mushroom_cow + # Ocelot + # Pig + # Player + # Rabbit + # Sheep + # Silverfish + # Skeleton + # Slime + # Snowman + # Spider + # Squid + # Villager + # Witch + # Wither + # Wolf + # Zombie + # + # NOTE: mob names are case sensitive. + # + # For custom-kill, it is the name of the job (also case sensitive). + # + # NOTE: If a job has both the pay for killing a player and for killing a + # specific class, they will get both payments. + ######################################################################## + # payment for breaking a block + Break: + # block name/id (with optional sub-type) + LOG: + # base income + income: 5.0 + # base experience + experience: 5.0 + # payment for placing a block + Place: + SAPLING: + income: 1.0 + experience: 1.0 + WOOD: + income: 2.0 + experience: 2.0 + # killing a mob + Kill: + # mob name + Player: + # base income + income: 7.5 + # base experience + experience: 7.5 + # killing a MythicMob + MMKill: + # mob name + CustomNameHere: + # base income + income: 7.5 + # base experience + experience: 7.5 + # Killing player with certain job + custom-kill: + Woodcutter: + income: 10.0 + experience: 10.0 + # Tamig animals + Tame: + Wolf: + income: 2.0 + experience: 5.0 + # Breeding animals + Breed: + Wolf: + income: 2.0 + experience: 5.0 + # Milking cows, only one option is available + Milk: + Cow: + income: 2.0 + experience: 5.0 + Mushroomcow: + income: 5.0 + experience: 10.0 + # Shear sheeps by its color + Shear: + Black: + income: 2.0 + experience: 5.0 + Blue: + income: 2.0 + experience: 5.0 + Brown: + income: 2.0 + experience: 5.0 + Cyan: + income: 2.0 + experience: 5.0 + Gray: + income: 2.0 + experience: 5.0 + Green: + income: 2.0 + experience: 5.0 + Light_blue: + income: 2.0 + experience: 5.0 + Lime: + income: 2.0 + experience: 5.0 + Magenta: + income: 2.0 + experience: 5.0 + Orange: + income: 2.0 + experience: 5.0 + Pink: + income: 2.0 + experience: 5.0 + Purple: + income: 2.0 + experience: 5.0 + Red: + income: 2.0 + experience: 5.0 + Silver: + income: 2.0 + experience: 5.0 + White: + income: 2.0 + experience: 5.0 + Yellow: + income: 2.0 + experience: 5.0 + # dyeing armor + Dye: + LEATHER_BOOTS: + income: 1.0 + experience: 1.0 + LEATHER_CHESTPLATE: + income: 1.0 + experience: 1.0 + LEATHER_HELMET: + income: 1.0 + experience: 1.0 + LEATHER_LEGGINGS: + income: 1.0 + experience: 1.0 + 351: + income: 1.0 + experience: 1.0 + # Catching fish + Fish: + '349': + income: 20.0 + experience: 25.0 + # Repairing items + Repair: + WOOD_SWORD: + income: 1.0 + experience: 1.0 + IRON_SWORD: + income: 2.0 + experience: 2.0 + # Crafting items + Craft: + WOOD_SWORD: + income: 1.5 + experience: 3.0 + LEATHER_BOOTS: + income: 1.0 + experience: 6.0 + # Smelting ores + Smelt: + IRON_INGOT: + income: 2.0 + experience: 8.0 + GOLD_INGOT: + income: 4.5 + experience: 12 + # Enchanting items + Enchant: + # You can set item for which player will get money + WOOD_SWORD: + income: 1.5 + experience: 3.0 + LEATHER_BOOTS: + income: 1.0 + experience: 6.0 + # Or/and you can give money for each enchantment they got + DIG_SPEED-1: + income: 3.0 + experience: 10.0 + DIG_SPEED-2: + income: 6.0 + experience: 20.0 + # Brewing potions + Brew: + NETHER_STALK: + income: 5.0 + experience: 3.0 + REDSTONE: + income: 5.0 + experience: 3.0 + # permissions granted for joining class + permissions: + # example node + aaaaaatest.node: + # true to give, false to revoke + value: true + # minimum level needed to grant permission. Use 0 for all levels + level: 0 + aaaaaatest.node2: + value: true + # Permission granted when reaching level 10 + level: 10 + # Permissions granted when perticular conditions are meet + conditions: + # Condition mane, irelevent, you can write anything in here + first: + requires: + # j marks that player should have particular jobs level and higher + - j:Miner-50 + - j:Digger-50 + # p marks permission requirement + - p:essentials.notnoob + perform: + # p marks permission, player will get if given true value, if used false, permission will be taken + - p:essentials.fly-true + # Commands executed when player reached level + commands: + # command name, just to have better idea what this do + fly: + # Command its self, this will be executed from console, so all commands should work + # Possible variables are: [player] [jobname] [oldlevel] [newlevel] + command: manuaddp [player] essentials.fly + # When to execute this command first time + levelFrom: 100 + # Until when to do this command + # This can be set to same level as levelFrom, so this command will be executed only once + levelUntil: 100 + kit: + command: manuaddp [player] essentials.kits.woodcutter + levelFrom: 150 + levelUntil: 150 + # Getting more money when equiped with specific weapon/tool ar wearing armor + items: + # Just name, dont have any impact + firstOne: + # Tool/Weapon id. Works for block Break, Fish, Animal tame, Breed, Monster/Player kill. + id: 278 + # Items name, should be with color codes + name: '&8Miner Pickaxe' + # Item lore, again should come with color codes + lore: + - '&eBobs pick' + - '&710% bonus XP' + # Item enchantments, all enchantment names can be found https://hub.spigotmc.org/javadocs/spigot/org/bukkit/enchantments/Enchantment.html + enchants: + - DAMAGE_ALL=1 + - FIRE_ASPECT=1 + # Money boost: 1.1 is equals 10% more income when 0.9 is equals 10% less from base income + moneyBoost: 1.1 + # Exp boost + expBoost: 1.1 + helmet: + # Armor id. This one works with all jobs + id: 310 + name: '&8Armor' + lore: + - '&eBobs armor' + - '&710% bonus XP' + moneyBoost: 1.1 + expBoost: 1.1 + cmd-on-join: + - 'msg [name] Thx for joining this job!' + - 'msg [name] Now start working and get money from [jobname] job!' + cmd-on-leave: + - 'msg [name] You have left this awesome [jobname] job' + - 'msg [name] See you soon!' + Miner: + fullname: Miner + shortname: M + description: Earns money mining minerals and ores. + ChatColour: DARK_GRAY + chat-display: full + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Break: + STONE: + income: 2.0 + experience: 2.0 + COAL_ORE: + income: 3.0 + experience: 3.0 + GLOWING_REDSTONE_ORE: + income: 3.0 + experience: 3.0 + IRON_ORE: + income: 4.0 + experience: 4.0 + GOLD_ORE: + income: 5.0 + experience: 5.0 + LAPIS_ORE: + income: 5.0 + experience: 5.0 + DIAMOND_ORE: + income: 6.0 + experience: 6.0 + OBSIDIAN: + income: 7.5 + experience: 7.5 + MOSSY_COBBLESTONE: + income: 6.0 + experience: 6.0 + Place: + RAILS: + income: 2.0 + experience: 2.0 + IRON_ORE: + income: -5.0 + experience: -5.0 + GOLD_ORE: + income: -6.0 + experience: -6.0 + Kill: + Player: + income: 7.5 + experience: 7.5 + Builder: + fullname: Builder + shortname: B + description: Earns money for building structures. + ChatColour: WHITE + chat-display: full + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Place: + COBBLESTONE: + income: 1.0 + experience: 1.0 + WOOD: + income: 1.5 + experience: 1.5 + FENCE: + income: 1.5 + experience: 1.5 + WOOL: + income: 1.5 + experience: 1.5 + STONE: + income: 2.25 + experience: 2.25 + GLOWSTONE: + income: 3.0 + experience: 3.0 + SANDSTONE: + income: 2.0 + experience: 2.0 + GLASS: + income: 3.0 + experience: 3.0 + BRICK: + income: 4.0 + experience: 4.0 + LAPIS_BLOCK: + income: 5.0 + experience: 5.0 + DOUBLE_STEP: + income: 2.0 + experience: 2.0 + STEP: + income: 2.0 + experience: 2.0 + BOOKSHELF: + income: 3.0 + experience: 3.0 + WOOD_STAIRS: + income: 2.0 + experience: 2.0 + COBBLESTONE_STAIRS: + income: 2.0 + experience: 2.0 + MOSSY_COBBLESTONE: + income: 5.0 + experience: 5.0 + DIAMOND_BLOCK: + income: 5.0 + experience: 5.0 + GOLD_BLOCK: + income: 5.0 + experience: 5.0 + Kill: + Player: + income: 7.5 + experience: 7.5 + Digger: + fullname: Digger + shortname: D + description: Earns money for terraforming the world. + ChatColour: GOLD + chat-display: full + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Break: + DIRT: + income: 2.0 + experience: 2.0 + GRASS: + income: 2.0 + experience: 2.0 + GRAVEL: + income: 2.0 + experience: 2.0 + SAND: + income: 2.0 + experience: 2.0 + CLAY: + income: 2.0 + experience: 2.0 + Kill: + Player: + income: 7.5 + experience: 7.5 + custom-kill: + Digger: + income: 10.0 + experience: 10.0 + Farmer: + fullname: Farmer + shortname: Fa + description: Earns money farming crops. + ChatColour: BLUE + chat-display: full + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Break: + CROPS-7: + income: 4.0 + experience: 4.0 + SUGAR_CANE_BLOCK: + income: 4.0 + experience: 4.0 + Tame: + Wolf: + income: 5.0 + experience: 5.0 + Breed: + Wolf: + income: 5.0 + experience: 5.0 + Place: + CROPS-0: + income: 3.0 + experience: 3.0 + SUGAR_CANE_BLOCK: + income: 1.0 + experience: 1.0 + Kill: + Player: + income: 7.5 + experience: 7.5 + Hunter: + fullname: Hunter + shortname: H + description: Earns money killing animals and monsters. + ChatColour: RED + chat-display: full + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Kill: + Chicken: + income: 2.5 + experience: 2.5 + Cow: + income: 2.5 + experience: 2.5 + Pig: + income: 2.5 + experience: 2.5 + Sheep: + income: 2.5 + experience: 2.5 + Wolf: + income: 5.0 + experience: 5.0 + Creeper: + income: 10.0 + experience: 10.0 + Skeleton: + income: 10.0 + experience: 10.0 + WitherSkeleton: + income: 10.0 + experience: 10.0 + Spider: + income: 10.0 + experience: 10.0 + Zombie: + income: 10.0 + experience: 10.0 + Player: + income: 7.5 + experience: 7.5 + Fisherman: + fullname: Fisherman + shortname: Fi + description: Earns money from fishing. + ChatColour: AQUA + chat-display: full + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Fish: + RAW_FISH: + income: 4.0 + experience: 4.0 + Kill: + Player: + income: 7.5 + experience: 7.5 + Weaponsmith: + fullname: Weaponsmith + shortname: W + description: Earns money from crafting and repairing weapons. + ChatColour: DARK_PURPLE + chat-display: full + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Craft: + WOOD_SWORD: + income: 1.0 + experience: 1.0 + IRON_SWORD: + income: 2.0 + experience: 2.0 + GOLD_SWORD: + income: 3.0 + experience: 3.0 + DIAMOND_SWORD: + income: 4.0 + experience: 4.0 + Repair: + WOOD_SWORD: + income: 1.0 + experience: 1.0 + IRON_SWORD: + income: 2.0 + experience: 2.0 + GOLD_SWORD: + income: 3.0 + experience: 3.0 + DIAMOND_SWORD: + income: 4.0 + experience: 4.0 + Smelt: + IRON_INGOT: + income: 2.0 + experience: 2.0 + GOLD_INGOT: + income: 2.0 + experience: 2.0 + Brewer: + fullname: Brewer + shortname: Br + description: Earns money brewing potions. + ChatColour: LIGHT_PURPLE + chat-display: full + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Brew: + NETHER_STALK: + income: 1.0 + experience: 1.0 + REDSTONE: + income: 2.0 + experience: 2.0 + GLOWSTONE_DUST: + income: 2.0 + experience: 2.0 + SPIDER_EYE: + income: 2.0 + experience: 2.0 + FERMENTED_SPIDER_EYE: + income: 2.0 + experience: 2.0 + BLAZE_POWDER: + income: 2.0 + experience: 2.0 + SUGAR: + income: 2.0 + experience: 2.0 + SPECKLED_MELON: + income: 4.0 + experience: 4.0 + MAGMA_CREAM: + income: 4.0 + experience: 4.0 + GHAST_TEAR: + income: 4.0 + experience: 4.0 + Enchanter: + fullname: Enchanter + shortname: E + description: Earns money enchanting weapons. + ChatColour: DARK_BLUE + chat-display: full + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Enchant: + WOOD_SWORD: + income: 1.5 + experience: 3.0 + LEATHER_BOOTS: + income: 1.0 + experience: 6.0 + LEATHER_CHESTPLATE: + income: 2.0 + experience: 6.0 + LEATHER_HELMET: + income: 1.0 + experience: 6.0 + LEATHER_LEGGINGS: + income: 2.0 + experience: 6.0 + IRON_SWORD: + income: 3.0 + experience: 6.0 + IRON_BOOTS: + income: 2.5 + experience: 9.0 + IRON_CHESTPLATE: + income: 4.5 + experience: 9.0 + IRON_HELMET: + income: 2.5 + experience: 9.0 + IRON_LEGGINGS: + income: 4.5 + experience: 9.0 + GOLD_SWORD: + income: 4.5 + experience: 15.0 + GOLD_BOOTS: + income: 2.5 + experience: 15.0 + GOLD_CHESTPLATE: + income: 5.5 + experience: 15.0 + GOLD_HELMET: + income: 2.5 + experience: 15.0 + GOLD_LEGGINGS: + income: 5.5 + experience: 15.0 + DIAMOND_SWORD: + income: 9.0 + experience: 30.0 + DIAMOND_SPADE: + income: 5.0 + experience: 30.0 + DIAMOND_PICKAXE: + income: 10.0 + experience: 30.0 + DIAMOND_AXE: + income: 10.0 + experience: 30.0 + DIAMOND_HELMET: + income: 6.0 + experience: 30.0 + DIAMOND_CHESTPLATE: + income: 12.0 + experience: 50.0 + DIAMOND_LEGGINGS: + income: 12.0 + experience: 50.0 + DIAMOND_BOOTS: + income: 6.0 + experience: 30.0 + ARROW_DAMAGE-1: + income: 3.0 + experience: 10.0 + ARROW_DAMAGE-2: + income: 6.0 + experience: 20.0 + ARROW_DAMAGE-3: + income: 9.0 + experience: 30.0 + ARROW_DAMAGE-4: + income: 12.0 + experience: 40.0 + ARROW_DAMAGE-5: + income: 15.0 + experience: 50.0 + ARROW_FIRE: + income: 10.0 + experience: 30.0 + ARROW_INFINITE: + income: 20.0 + experience: 50.0 + ARROW_KNOCKBACK-1: + income: 3.0 + experience: 10.0 + ARROW_KNOCKBACK-2: + income: 6.0 + experience: 20.0 + DAMAGE_ALL-1: + income: 10.0 + experience: 10.0 + DAMAGE_ALL-2: + income: 20.0 + experience: 20.0 + DAMAGE_ALL-3: + income: 30.0 + experience: 30.0 + DAMAGE_ALL-4: + income: 40.0 + experience: 40.0 + DAMAGE_ALL-5: + income: 50.0 + experience: 50.0 + DAMAGE_ARTHROPODS-1: + income: 3.0 + experience: 10.0 + DAMAGE_ARTHROPODS-2: + income: 6.0 + experience: 20.0 + DAMAGE_ARTHROPODS-3: + income: 9.0 + experience: 30.0 + DAMAGE_ARTHROPODS-4: + income: 12.0 + experience: 40.0 + DAMAGE_ARTHROPODS-5: + income: 15.0 + experience: 50.0 + DAMAGE_UNDEAD-1: + income: 3.0 + experience: 10.0 + DAMAGE_UNDEAD-2: + income: 6.0 + experience: 20.0 + DAMAGE_UNDEAD-3: + income: 9.0 + experience: 30.0 + DAMAGE_UNDEAD-4: + income: 12.0 + experience: 40.0 + DAMAGE_UNDEAD-5: + income: 15.0 + experience: 50.0 + DEPTH_STRIDER-1: + income: 3.0 + experience: 10.0 + DEPTH_STRIDER-2: + income: 6.0 + experience: 20.0 + DEPTH_STRIDER-3: + income: 9.0 + experience: 30.0 + DIG_SPEED-1: + income: 3.0 + experience: 10.0 + DIG_SPEED-2: + income: 6.0 + experience: 20.0 + DIG_SPEED-3: + income: 9.0 + experience: 30.0 + DIG_SPEED-4: + income: 12.0 + experience: 40.0 + DIG_SPEED-5: + income: 15.0 + experience: 50.0 + DURABILITY-1: + income: 3.0 + experience: 10.0 + DURABILITY-2: + income: 6.0 + experience: 20.0 + DURABILITY-3: + income: 9.0 + experience: 30.0 + FIRE_ASPECT-1: + income: 3.0 + experience: 10.0 + FIRE_ASPECT-2: + income: 6.0 + experience: 20.0 + KNOCKBACK-1: + income: 3.0 + experience: 10.0 + KNOCKBACK-2: + income: 6.0 + experience: 20.0 + LOOT_BONUS_BLOCKS-1: + income: 20.0 + experience: 100.0 + LOOT_BONUS_BLOCKS-2: + income: 40.0 + experience: 200.0 + LOOT_BONUS_BLOCKS-3: + income: 80.0 + experience: 300.0 + LOOT_BONUS_MOBS-1: + income: 5.0 + experience: 20.0 + LOOT_BONUS_MOBS-2: + income: 12.0 + experience: 40.0 + LOOT_BONUS_MOBS-3: + income: 15.0 + experience: 60.0 + LUCK-1: + income: 15.0 + experience: 10.0 + LUCK-2: + income: 25.0 + experience: 20.0 + LUCK-3: + income: 35.0 + experience: 30.0 + LURE-1: + income: 10.0 + experience: 10.0 + LURE-2: + income: 20.0 + experience: 20.0 + LURE-3: + income: 30.0 + experience: 30.0 + OXYGEN-1: + income: 3.0 + experience: 10.0 + OXYGEN-2: + income: 6.0 + experience: 20.0 + OXYGEN-3: + income: 9.0 + experience: 30.0 + PROTECTION_ENVIRONMENTAL-1: + income: 5.0 + experience: 10.0 + PROTECTION_ENVIRONMENTAL-2: + income: 10.0 + experience: 20.0 + PROTECTION_ENVIRONMENTAL-3: + income: 15.0 + experience: 30.0 + PROTECTION_ENVIRONMENTAL-4: + income: 20.0 + experience: 40.0 + PROTECTION_EXPLOSIONS-1: + income: 5.0 + experience: 10.0 + PROTECTION_EXPLOSIONS-2: + income: 10.0 + experience: 20.0 + PROTECTION_EXPLOSIONS-3: + income: 15.0 + experience: 30.0 + PROTECTION_EXPLOSIONS-4: + income: 20.0 + experience: 40.0 + PROTECTION_FALL-1: + income: 3.0 + experience: 10.0 + PROTECTION_FALL-2: + income: 6.0 + experience: 20.0 + PROTECTION_FALL-3: + income: 9.0 + experience: 30.0 + PROTECTION_FALL-4: + income: 12.0 + experience: 40.0 + PROTECTION_FIRE-1: + income: 5.0 + experience: 10.0 + PROTECTION_FIRE-2: + income: 10.0 + experience: 20.0 + PROTECTION_FIRE-3: + income: 15.0 + experience: 30.0 + PROTECTION_FIRE-4: + income: 20.0 + experience: 40.0 + PROTECTION_PROJECTILE-1: + income: 10.0 + experience: 10.0 + PROTECTION_PROJECTILE-2: + income: 20.0 + experience: 20.0 + PROTECTION_PROJECTILE-3: + income: 30.0 + experience: 30.0 + PROTECTION_PROJECTILE-4: + income: 40.0 + experience: 40.0 + SILK_TOUCH: + income: 100.0 + experience: 300.0 + THORNS-1: + income: 4.0 + experience: 10.0 + THORNS-2: + income: 8.0 + experience: 20.0 + THORNS-3: + income: 12.0 + experience: 30.0 + WATER_WORKER: + income: 30.0 + experience: 100.0 + None: + fullname: None + shortname: N + ChatColour: WHITE + chat-display: none + #max-level: 10 + #slots: 10 + leveling-progression-equation: 100*((1.13+(0.01*(numjobs-1)))^(joblevel-1)) + income-progression-equation: baseincome*((1.05)^(joblevel-1)) + experience-progression-equation: baseexperience*((1.05)^(joblevel-1)) + Kill: + Player: income: 7.5 \ No newline at end of file diff --git a/plugin.yml b/plugin.yml index 54ea2801..19be53b7 100644 --- a/plugin.yml +++ b/plugin.yml @@ -1,9 +1,9 @@ name: Jobs description: Jobs Plugin for the BukkitAPI main: com.gamingmesh.jobs.JobsPlugin -version: 2.51.4 +version: 2.52.0 author: phrstbrn -softdepend: [Vault] +softdepend: [Vault, CoreProtect, MythicMobs, McMMO] commands: jobs: description: Jobs