版本更新至:3.76
调整:开发框架改为 Gradle 新增:Language2 工具新增 [book] 类型
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
package me.skymc.taboolib.support;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
|
||||
import me.clip.placeholderapi.external.EZPlaceholderHook;
|
||||
import me.skymc.taboolib.database.GlobalDataManager;
|
||||
import me.skymc.tlm.TLM;
|
||||
import me.skymc.tlm.module.TabooLibraryModule;
|
||||
import me.skymc.tlm.module.sub.ModuleKits;
|
||||
|
||||
public class SupportPlaceholder extends EZPlaceholderHook {
|
||||
|
||||
public SupportPlaceholder(Plugin plugin, String identifier) {
|
||||
super(plugin, identifier);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onPlaceholderRequest(Player player, String args) {
|
||||
if (args.startsWith("variable_")) {
|
||||
String[] value = args.split("_");
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 1; i < value.length ; i++) {
|
||||
sb.append(value[i] + "_");
|
||||
}
|
||||
return GlobalDataManager.getVariableAsynchronous(sb.substring(0, sb.length() - 1), "<none>");
|
||||
}
|
||||
if (args.startsWith("tlm_kit_")) {
|
||||
// 是否启用
|
||||
if (TabooLibraryModule.getInst().valueOf("Kits") == null) {
|
||||
return TLM.getInst().getLanguage().get("KIT-PLACEHOLDER.0").asString();
|
||||
}
|
||||
|
||||
// 获取模块
|
||||
ModuleKits moduleKits = (ModuleKits) TabooLibraryModule.getInst().valueOf("Kits");
|
||||
String kit = args.split("_")[2];
|
||||
|
||||
// 礼包不存在
|
||||
if (!moduleKits.contains(kit)) {
|
||||
return TLM.getInst().getLanguage().get("KIT-PLACEHOLDER.1").asString();
|
||||
}
|
||||
|
||||
// 是否领取
|
||||
if (moduleKits.isPlayerRewared(player, kit)) {
|
||||
// 是否只能领取一次
|
||||
if (moduleKits.isDisposable(kit)) {
|
||||
return TLM.getInst().getLanguage().get("KIT-PLACEHOLDER.2").asString();
|
||||
}
|
||||
// 是否冷却中
|
||||
if (moduleKits.isPlayerCooldown(player, kit)) {
|
||||
return TLM.getInst().getLanguage().get("KIT-PLACEHOLDER.4").asString();
|
||||
}
|
||||
}
|
||||
|
||||
// 是否有权限领取
|
||||
String permission = moduleKits.getPermission(kit);
|
||||
if (permission != null && !player.hasPermission(permission)) {
|
||||
return TLM.getInst().getLanguage().get("KIT-PLACEHOLDER.5").asString();
|
||||
}
|
||||
|
||||
// 可领取
|
||||
return TLM.getInst().getLanguage().get("KIT-PLACEHOLDER.3").asString();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
package me.skymc.taboolib.support;
|
||||
|
||||
import com.sk89q.worldguard.bukkit.*;
|
||||
import org.bukkit.plugin.*;
|
||||
import com.sk89q.worldguard.protection.managers.*;
|
||||
import com.sk89q.worldguard.protection.regions.*;
|
||||
import java.util.*;
|
||||
import org.bukkit.entity.*;
|
||||
import org.bukkit.*;
|
||||
|
||||
public class SupportWorldGuard
|
||||
{
|
||||
String Source_code_from_AgarthaLib;
|
||||
private WorldGuardPlugin worldGuard;
|
||||
|
||||
public SupportWorldGuard() {
|
||||
final Plugin plugin = Bukkit.getServer().getPluginManager().getPlugin("WorldGuard");
|
||||
if (plugin != null) {
|
||||
this.worldGuard = (WorldGuardPlugin)plugin;
|
||||
}
|
||||
}
|
||||
|
||||
public final WorldGuardPlugin getWorldGuard() {
|
||||
return this.worldGuard;
|
||||
}
|
||||
|
||||
public final RegionManager getRegionManager(final World world) {
|
||||
return this.worldGuard.getRegionManager(world);
|
||||
}
|
||||
|
||||
public final boolean isRegionManagerExists(final World world) {
|
||||
return this.getRegionManager(world) != null;
|
||||
}
|
||||
|
||||
public final Collection<String> getRegionIDs(final World world) {
|
||||
final RegionManager regionManager = this.getRegionManager(world);
|
||||
return (Collection<String>)regionManager.getRegions().keySet();
|
||||
}
|
||||
|
||||
public final Collection<ProtectedRegion> getRegions(final World world) {
|
||||
final RegionManager regionManager = this.getRegionManager(world);
|
||||
return regionManager.getRegions().values();
|
||||
}
|
||||
|
||||
public final ProtectedRegion getRegion(final World world, final String id) {
|
||||
final RegionManager regionManager = this.getRegionManager(world);
|
||||
if (regionManager != null) {
|
||||
for (final String key : regionManager.getRegions().keySet()) {
|
||||
if (key.equalsIgnoreCase(id)) {
|
||||
return regionManager.getRegion(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public final boolean isRegionExists(final World world, final String id) {
|
||||
return this.getRegion(world, id) != null;
|
||||
}
|
||||
|
||||
public final boolean isPlayerInsideRegion(final ProtectedRegion region, final Player player) {
|
||||
final Location location = player.getLocation();
|
||||
return region.contains(location.getBlockX(), location.getBlockY(), location.getBlockZ());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user