Support for many Faction plugins + shop opens by default

This commit is contained in:
Niels Vergucht 2018-12-14 22:12:44 +01:00
parent ebe2bcdf0a
commit 76d6f7a5e3
4 changed files with 33 additions and 10 deletions

View File

@ -2,7 +2,7 @@
<groupId>com.songoda</groupId> <groupId>com.songoda</groupId>
<artifactId>EpicBuckets</artifactId> <artifactId>EpicBuckets</artifactId>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<version>1.2</version> <version>1.2.3</version>
<build> <build>
<defaultGoal>clean package</defaultGoal> <defaultGoal>clean package</defaultGoal>
<plugins> <plugins>
@ -197,10 +197,9 @@
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.massivecraft</groupId> <groupId>me.markeh</groupId>
<artifactId>factions</artifactId> <artifactId>factionsframework</artifactId>
<version>LATEST</version> <version>1.2.0</version>
<scope>provided</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.massivecraft</groupId> <groupId>com.massivecraft</groupId>

View File

@ -9,7 +9,7 @@ import com.songoda.epicbuckets.util.ChatUtil;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
@CommandAlias("epicbuckets|eb|genbucket") @CommandAlias("epicbuckets|eb|genbucket|gen")
public class CommandGenbucket extends BaseCommand { public class CommandGenbucket extends BaseCommand {
private EpicBuckets epicBuckets; private EpicBuckets epicBuckets;
@ -27,7 +27,7 @@ public class CommandGenbucket extends BaseCommand {
} }
@Subcommand("help") @Subcommand("help")
@CatchUnknown @Default @CatchUnknown
public void doHelp(CommandSender sender) { public void doHelp(CommandSender sender) {
sender.sendMessage(ChatUtil.colorString("&3&lEpicBuckets")); sender.sendMessage(ChatUtil.colorString("&3&lEpicBuckets"));
sender.sendMessage(ChatUtil.colorString("&f/epicbuckets help: &7shows this help")); sender.sendMessage(ChatUtil.colorString("&f/epicbuckets help: &7shows this help"));
@ -38,6 +38,7 @@ public class CommandGenbucket extends BaseCommand {
} }
@Subcommand("shop") @Subcommand("shop")
@Default
@Description("Opens up the Genbucket shop") @Description("Opens up the Genbucket shop")
public void shop(Player player) { public void shop(Player player) {
if (!permCheck(player, "genbucket.shop")) return; if (!permCheck(player, "genbucket.shop")) return;

View File

@ -86,13 +86,12 @@ public class GenbucketManager {
} }
public boolean canPlaceGenbucket(Player player, Location location) { public boolean canPlaceGenbucket(Player player, Location location) {
boolean factionsMassiveCraftCheck = RegionMassiveCraftFactions.canBuild(player, location); boolean factionsCheck = RegionFactions.canBuild(player, location);
boolean griefPreventionCheck = RegionGriefPrevention.canBuild(player, location); boolean griefPreventionCheck = RegionGriefPrevention.canBuild(player, location);
boolean worldGuardCheck = RegionWorldGuard.canBuild(player, location); boolean worldGuardCheck = RegionWorldGuard.canBuild(player, location);
boolean worldBorderCheck = RegionWorldBorder.isOutsideOfBorder(location); boolean worldBorderCheck = RegionWorldBorder.isOutsideOfBorder(location);
if (!factionsMassiveCraftCheck || !griefPreventionCheck || !worldGuardCheck || worldBorderCheck) { if (!factionsCheck || !griefPreventionCheck || !worldGuardCheck || worldBorderCheck) {
player.sendMessage(ChatUtil.colorPrefix(epicBuckets.getLocale().getMessage("event.place.nothere")));
return false; return false;
} }

View File

@ -0,0 +1,24 @@
package com.songoda.epicbuckets.regionhandler;
import com.songoda.epicbuckets.EpicBuckets;
import me.markeh.factionsframework.entities.FPlayers;
import me.markeh.factionsframework.entities.Faction;
import me.markeh.factionsframework.entities.Factions;
import org.bukkit.Location;
import org.bukkit.entity.Player;
public class RegionFactions {
public static boolean canBuild(Player player, Location location) {
if (!EpicBuckets.getInstance().getConfigManager().isSupportFactions()) return true;
Faction f = Factions.getFactionAt(location);
if (f.isNone()) return EpicBuckets.getInstance().getConfigManager().isGensInWilderness();
if (FPlayers.getBySender(player).getFaction().isNone()) return false;
if (FPlayers.getBySender(player).getFaction().getId().equals(f.getId())) return true;
return false;
}
}