mirror of
https://github.com/Zrips/Jobs.git
synced 2024-11-29 05:55:27 +01:00
Fix for fishing action not taking into consideration blacklisted world
This commit is contained in:
parent
957669cb7a
commit
bbc83a6c77
2
pom.xml
2
pom.xml
@ -5,7 +5,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>Jobs</groupId>
|
||||
<artifactId>jobs</artifactId>
|
||||
<version>5.2.1.1</version>
|
||||
<version>5.2.1.2</version>
|
||||
<name>Jobs</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
|
||||
|
@ -1008,7 +1008,7 @@ public final class Jobs extends JavaPlugin {
|
||||
|
||||
// no job
|
||||
if (numjobs == 0) {
|
||||
if (noneJob == null || noneJob.isWorldBlackListed(block) || noneJob.isWorldBlackListed(block, ent) || noneJob.isWorldBlackListed(victim))
|
||||
if (noneJob == null || noneJob.isWorldBlackListed(block, ent, victim))
|
||||
return;
|
||||
|
||||
JobInfo jobinfo = noneJob.getJobInfo(info, 1);
|
||||
@ -1106,8 +1106,7 @@ public final class Jobs extends JavaPlugin {
|
||||
} else {
|
||||
List<Job> expiredJobs = new ArrayList<>();
|
||||
for (JobProgression prog : progression) {
|
||||
if (prog.getJob().isWorldBlackListed(block) || prog.getJob().isWorldBlackListed(block, ent)
|
||||
|| prog.getJob().isWorldBlackListed(victim))
|
||||
if (prog.getJob().isWorldBlackListed(block, ent, victim))
|
||||
continue;
|
||||
|
||||
if (jPlayer.isLeftTimeEnded(prog.getJob())) {
|
||||
|
@ -31,9 +31,12 @@ import java.util.function.BiPredicate;
|
||||
|
||||
import com.gamingmesh.jobs.actions.EnchantActionInfo;
|
||||
import com.gamingmesh.jobs.stuff.Util;
|
||||
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
@ -652,21 +655,32 @@ public class Job {
|
||||
}
|
||||
|
||||
public boolean isWorldBlackListed(Entity ent) {
|
||||
return isWorldBlackListed(null, ent);
|
||||
return isWorldBlackListed(null, ent, null);
|
||||
}
|
||||
|
||||
public boolean isWorldBlackListed(Block block) {
|
||||
return isWorldBlackListed(block, null);
|
||||
return isWorldBlackListed(block, null, null);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public boolean isWorldBlackListed(Block block, Entity ent) {
|
||||
return isWorldBlackListed(block, ent, null);
|
||||
}
|
||||
|
||||
public boolean isWorldBlackListed(Block block, Entity ent, LivingEntity lent) {
|
||||
if (block != null)
|
||||
return isWorldBlackListed(block.getWorld());
|
||||
if (ent != null)
|
||||
return isWorldBlackListed(ent.getWorld());
|
||||
if (lent != null)
|
||||
return isWorldBlackListed(lent.getWorld());
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isWorldBlackListed(World world) {
|
||||
if (worldBlacklist.isEmpty())
|
||||
return reversedWorldBlacklist;
|
||||
|
||||
if (block != null)
|
||||
return worldBlacklist.contains(block.getWorld().getName()) != reversedWorldBlacklist;
|
||||
|
||||
return ent != null && worldBlacklist.contains(ent.getWorld().getName()) != reversedWorldBlacklist;
|
||||
return world != null && worldBlacklist.contains(world.getName()) != reversedWorldBlacklist;
|
||||
}
|
||||
|
||||
public boolean isReversedWorldBlacklist() {
|
||||
|
@ -528,7 +528,7 @@ public final class JobsPaymentListener implements Listener {
|
||||
if (!payIfCreative(player))
|
||||
return;
|
||||
|
||||
if (!Jobs.getPermissionHandler().hasWorldPermission(player, player.getLocation().getWorld().getName()))
|
||||
if (!Jobs.getPermissionHandler().hasWorldPermission(player, player.getWorld().getName()))
|
||||
return;
|
||||
|
||||
// check if player is riding
|
||||
@ -550,8 +550,7 @@ public final class JobsPaymentListener implements Listener {
|
||||
}
|
||||
}
|
||||
|
||||
Jobs.action(Jobs.getPlayerManager().getJobsPlayer(player),
|
||||
new ItemActionInfo(((Item) event.getCaught()).getItemStack(), ActionType.FISH));
|
||||
Jobs.action(Jobs.getPlayerManager().getJobsPlayer(player), new ItemActionInfo(((Item) event.getCaught()).getItemStack(), ActionType.FISH), event.getCaught());
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user