mirror of
https://github.com/songoda/EpicFarming.git
synced 2025-02-19 22:12:05 +01:00
FabledSkyBlock Support (Beta)
This commit is contained in:
parent
b12092f785
commit
6ea9ef906d
@ -15,6 +15,7 @@ import com.songoda.core.utils.TextUtils;
|
||||
import com.songoda.epicfarming.boost.BoostData;
|
||||
import com.songoda.epicfarming.boost.BoostManager;
|
||||
import com.songoda.epicfarming.commands.*;
|
||||
import com.songoda.epicfarming.compatibility.EpicFarmingPermission;
|
||||
import com.songoda.epicfarming.farming.Farm;
|
||||
import com.songoda.epicfarming.farming.FarmManager;
|
||||
import com.songoda.epicfarming.farming.FarmType;
|
||||
@ -37,6 +38,7 @@ import com.songoda.epicfarming.tasks.GrowthTask;
|
||||
import com.songoda.epicfarming.tasks.HopperTask;
|
||||
import com.songoda.epicfarming.utils.EntityUtils;
|
||||
import com.songoda.epicfarming.utils.Methods;
|
||||
import com.songoda.skyblock.SkyBlock;
|
||||
import org.apache.commons.lang.math.NumberUtils;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
@ -191,6 +193,10 @@ public class EpicFarming extends SongodaPlugin {
|
||||
pluginManager.registerEvents(new InteractListeners(this), this);
|
||||
pluginManager.registerEvents(new UnloadListeners(this), this);
|
||||
|
||||
if (pluginManager.isPluginEnabled("FabledSkyBlock")) {
|
||||
SkyBlock.getInstance().getPermissionManager().registerPermission(new EpicFarmingPermission());
|
||||
}
|
||||
|
||||
// Start tasks
|
||||
this.growthTask = GrowthTask.startTask(this);
|
||||
this.farmTask = FarmTask.startTask(this);
|
||||
|
@ -0,0 +1,13 @@
|
||||
package com.songoda.epicfarming.compatibility;
|
||||
|
||||
import com.songoda.skyblock.core.compatibility.CompatibleMaterial;
|
||||
import com.songoda.skyblock.permission.BasicPermission;
|
||||
import com.songoda.skyblock.permission.PermissionType;
|
||||
|
||||
public class EpicFarmingPermission extends BasicPermission {
|
||||
|
||||
public EpicFarmingPermission() {
|
||||
super("EpicFarming", CompatibleMaterial.END_ROD, PermissionType.GENERIC);
|
||||
}
|
||||
|
||||
}
|
@ -2,6 +2,8 @@ package com.songoda.epicfarming.listeners;
|
||||
|
||||
import com.songoda.epicfarming.EpicFarming;
|
||||
import com.songoda.epicfarming.settings.Settings;
|
||||
import com.songoda.skyblock.SkyBlock;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
@ -20,7 +22,7 @@ public class InteractListeners implements Listener {
|
||||
this.instance = instance;
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
|
||||
@EventHandler(priority = EventPriority.HIGHEST)
|
||||
public void onBlockInteract(PlayerInteractEvent e) {
|
||||
if (e.getClickedBlock() == null
|
||||
|| e.getClickedBlock().getType() != Settings.FARM_BLOCK_MATERIAL.getMaterial().getMaterial())
|
||||
@ -28,6 +30,16 @@ public class InteractListeners implements Listener {
|
||||
|
||||
if (e.getAction() != Action.RIGHT_CLICK_BLOCK) return;
|
||||
|
||||
if (Bukkit.getPluginManager().isPluginEnabled("FabledSkyBlock")) {
|
||||
SkyBlock skyBlock = SkyBlock.getInstance();
|
||||
|
||||
if (skyBlock.getWorldManager().isIslandWorld(e.getPlayer().getWorld()))
|
||||
if (!skyBlock.getPermissionManager().hasPermission(e.getPlayer(),
|
||||
skyBlock.getIslandManager().getIslandAtLocation(e.getClickedBlock().getLocation()),
|
||||
"EpicFarming"))
|
||||
return;
|
||||
}
|
||||
|
||||
Location location = e.getClickedBlock().getLocation();
|
||||
|
||||
if (instance.getFarmManager().getFarms().containsKey(location)) {
|
||||
|
@ -2,7 +2,7 @@ name: EpicFarming
|
||||
description: EpicFarming
|
||||
main: com.songoda.epicfarming.EpicFarming
|
||||
version: maven-version-number
|
||||
softdepend: [Arconix, SkyBlock, Towny, RedProtect, Kingdoms, PlotSquared, GriefPrevention, USkyBlock, ASkyBlock, WorldGuard, Factions, PlaceholderAPI, Vault, PlayerPoints, Reserve, StackMob, UltimateStacker, WildStacker]
|
||||
softdepend: [FabledSkyBlock, Arconix, SkyBlock, Towny, RedProtect, Kingdoms, PlotSquared, GriefPrevention, USkyBlock, ASkyBlock, WorldGuard, Factions, PlaceholderAPI, Vault, PlayerPoints, Reserve, StackMob, UltimateStacker, WildStacker]
|
||||
author: Songoda
|
||||
api-version: 1.13
|
||||
commands:
|
||||
|
Loading…
Reference in New Issue
Block a user