mirror of
https://github.com/Zrips/Jobs.git
synced 2025-04-09 21:56:31 +02:00
New Brush action
This commit is contained in:
parent
918c6c827d
commit
57003dcb01
@ -97,6 +97,7 @@ import com.gamingmesh.jobs.i18n.Language;
|
|||||||
import com.gamingmesh.jobs.listeners.JobsListener;
|
import com.gamingmesh.jobs.listeners.JobsListener;
|
||||||
import com.gamingmesh.jobs.listeners.JobsPayment1_14Listener;
|
import com.gamingmesh.jobs.listeners.JobsPayment1_14Listener;
|
||||||
import com.gamingmesh.jobs.listeners.JobsPayment1_16Listener;
|
import com.gamingmesh.jobs.listeners.JobsPayment1_16Listener;
|
||||||
|
import com.gamingmesh.jobs.listeners.JobsPayment1_20Listener;
|
||||||
import com.gamingmesh.jobs.listeners.JobsPayment1_9Listener;
|
import com.gamingmesh.jobs.listeners.JobsPayment1_9Listener;
|
||||||
import com.gamingmesh.jobs.listeners.JobsPaymentListener;
|
import com.gamingmesh.jobs.listeners.JobsPaymentListener;
|
||||||
import com.gamingmesh.jobs.listeners.PistonProtectionListener;
|
import com.gamingmesh.jobs.listeners.PistonProtectionListener;
|
||||||
@ -817,8 +818,10 @@ public final class Jobs extends JavaPlugin {
|
|||||||
if (Version.isCurrentEqualOrHigher(Version.v1_16_R3))
|
if (Version.isCurrentEqualOrHigher(Version.v1_16_R3))
|
||||||
pm.registerEvents(new JobsPayment1_16Listener(), getInstance());
|
pm.registerEvents(new JobsPayment1_16Listener(), getInstance());
|
||||||
|
|
||||||
if (Version.isCurrentEqualOrHigher(Version.v1_20_R1))
|
if (Version.isCurrentEqualOrHigher(Version.v1_20_R1)) {
|
||||||
pm.registerEvents(new PlayerSignEdit1_20Listeners(), getInstance());
|
pm.registerEvents(new PlayerSignEdit1_20Listeners(), getInstance());
|
||||||
|
pm.registerEvents(new JobsPayment1_20Listener(), getInstance());
|
||||||
|
}
|
||||||
|
|
||||||
if (getGCManager().useBlockProtection) {
|
if (getGCManager().useBlockProtection) {
|
||||||
pm.registerEvents(new PistonProtectionListener(), getInstance());
|
pm.registerEvents(new PistonProtectionListener(), getInstance());
|
||||||
|
@ -411,6 +411,11 @@ public class ConfigManager {
|
|||||||
generate(cfg, pt + ".Brew.nether_stalk");
|
generate(cfg, pt + ".Brew.nether_stalk");
|
||||||
generate(cfg, pt + ".Brew.redstone");
|
generate(cfg, pt + ".Brew.redstone");
|
||||||
|
|
||||||
|
cfg.addComment(pt + ".Brush", "Brushing blocks and getting items from them");
|
||||||
|
generate(cfg, pt + ".Brush.suspicious_sand");
|
||||||
|
generate(cfg, pt + ".Brush.suspicious_gravel");
|
||||||
|
generate(cfg, pt + ".Brush.coal");
|
||||||
|
|
||||||
cfg.addComment(pt + ".Explore", "Explore options. Each number represents players number in exploring that chunk",
|
cfg.addComment(pt + ".Explore", "Explore options. Each number represents players number in exploring that chunk",
|
||||||
"1 means that player is first in this chunk, 2 is second and so on",
|
"1 means that player is first in this chunk, 2 is second and so on",
|
||||||
"so you can give money not only for first player who discovers that chunk");
|
"so you can give money not only for first player who discovers that chunk");
|
||||||
@ -614,6 +619,7 @@ public class ConfigManager {
|
|||||||
case STRIPLOGS:
|
case STRIPLOGS:
|
||||||
case BUCKET:
|
case BUCKET:
|
||||||
case COLLECT:
|
case COLLECT:
|
||||||
|
case BRUSH:
|
||||||
material = CMIMaterial.get(myKey + (subType));
|
material = CMIMaterial.get(myKey + (subType));
|
||||||
|
|
||||||
if (material == CMIMaterial.NONE)
|
if (material == CMIMaterial.NONE)
|
||||||
|
@ -423,6 +423,8 @@ public class LanguageManager {
|
|||||||
c.get("command.info.output.bake.none", "%jobname% does not get money for cooking foods.");
|
c.get("command.info.output.bake.none", "%jobname% does not get money for cooking foods.");
|
||||||
c.get("command.info.output.bucket.info", "&eBucket");
|
c.get("command.info.output.bucket.info", "&eBucket");
|
||||||
c.get("command.info.output.bucket.none", "%jobname% does not get money for bucketing.");
|
c.get("command.info.output.bucket.none", "%jobname% does not get money for bucketing.");
|
||||||
|
c.get("command.info.output.brush.info", "&eBrush");
|
||||||
|
c.get("command.info.output.brush.none", "%jobname% does not get money for brushing blocks.");
|
||||||
|
|
||||||
c.get("command.playerinfo.help.info", "Show how much each job is getting paid and for what on another player.");
|
c.get("command.playerinfo.help.info", "Show how much each job is getting paid and for what on another player.");
|
||||||
c.get("command.playerinfo.help.args", "[playername] [jobname] [action]");
|
c.get("command.playerinfo.help.args", "[playername] [jobname] [action]");
|
||||||
|
@ -45,7 +45,8 @@ public enum ActionType {
|
|||||||
CUSTOMKILL("custom-kill"),
|
CUSTOMKILL("custom-kill"),
|
||||||
COLLECT(),
|
COLLECT(),
|
||||||
BAKE(),
|
BAKE(),
|
||||||
BUCKET();
|
BUCKET(),
|
||||||
|
BRUSH();
|
||||||
|
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
|
@ -0,0 +1,55 @@
|
|||||||
|
package com.gamingmesh.jobs.listeners;
|
||||||
|
|
||||||
|
import org.bukkit.entity.EntityType;
|
||||||
|
import org.bukkit.entity.Item;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.event.EventHandler;
|
||||||
|
import org.bukkit.event.EventPriority;
|
||||||
|
import org.bukkit.event.Listener;
|
||||||
|
import org.bukkit.event.block.BlockDropItemEvent;
|
||||||
|
|
||||||
|
import com.gamingmesh.jobs.Jobs;
|
||||||
|
import com.gamingmesh.jobs.actions.BlockActionInfo;
|
||||||
|
import com.gamingmesh.jobs.actions.ItemActionInfo;
|
||||||
|
import com.gamingmesh.jobs.container.ActionType;
|
||||||
|
import com.gamingmesh.jobs.container.JobsPlayer;
|
||||||
|
|
||||||
|
public class JobsPayment1_20Listener implements Listener {
|
||||||
|
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
||||||
|
public void onEntityBucketed(BlockDropItemEvent event) {
|
||||||
|
|
||||||
|
Player player = event.getPlayer();
|
||||||
|
|
||||||
|
if (!Jobs.getGCManager().canPerformActionInWorld(player.getWorld())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// check if in creative
|
||||||
|
if (!JobsPaymentListener.payIfCreative(player)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!event.getBlock().getType().toString().contains("SUSPICIOUS_")) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!Jobs.getPermissionHandler().hasWorldPermission(player, player.getLocation().getWorld().getName())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// check if player is riding
|
||||||
|
if (Jobs.getGCManager().disablePaymentIfRiding && player.isInsideVehicle() && !player.getVehicle().getType().equals(EntityType.BOAT)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player);
|
||||||
|
if (jPlayer == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
Jobs.action(jPlayer, new BlockActionInfo(event.getBlock(), ActionType.BRUSH));
|
||||||
|
|
||||||
|
for (Item item : event.getItems()) {
|
||||||
|
Jobs.action(jPlayer, new ItemActionInfo(item.getItemStack(), ActionType.BRUSH));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -41,10 +41,10 @@ import org.bukkit.entity.EntityType;
|
|||||||
import org.bukkit.entity.HumanEntity;
|
import org.bukkit.entity.HumanEntity;
|
||||||
import org.bukkit.entity.Item;
|
import org.bukkit.entity.Item;
|
||||||
import org.bukkit.entity.LivingEntity;
|
import org.bukkit.entity.LivingEntity;
|
||||||
|
import org.bukkit.entity.MushroomCow;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.entity.Projectile;
|
import org.bukkit.entity.Projectile;
|
||||||
import org.bukkit.entity.Sheep;
|
import org.bukkit.entity.Sheep;
|
||||||
import org.bukkit.entity.MushroomCow;
|
|
||||||
import org.bukkit.entity.Tameable;
|
import org.bukkit.entity.Tameable;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.EventPriority;
|
import org.bukkit.event.EventPriority;
|
||||||
@ -134,7 +134,6 @@ import net.Zrips.CMILib.Items.CMIItemStack;
|
|||||||
import net.Zrips.CMILib.Items.CMIMC;
|
import net.Zrips.CMILib.Items.CMIMC;
|
||||||
import net.Zrips.CMILib.Items.CMIMaterial;
|
import net.Zrips.CMILib.Items.CMIMaterial;
|
||||||
import net.Zrips.CMILib.Locale.LC;
|
import net.Zrips.CMILib.Locale.LC;
|
||||||
import net.Zrips.CMILib.Logs.CMIDebug;
|
|
||||||
import net.Zrips.CMILib.Messages.CMIMessages;
|
import net.Zrips.CMILib.Messages.CMIMessages;
|
||||||
import net.Zrips.CMILib.Version.Version;
|
import net.Zrips.CMILib.Version.Version;
|
||||||
import net.Zrips.CMILib.Version.Schedulers.CMIScheduler;
|
import net.Zrips.CMILib.Version.Schedulers.CMIScheduler;
|
||||||
|
Loading…
Reference in New Issue
Block a user