mirror of
https://e.coding.net/circlecloud/Residence.git
synced 2025-11-24 21:46:16 +00:00
update pom.xml and rebuild...
This commit is contained in:
1
pom.xml
1
pom.xml
@@ -6,6 +6,7 @@
|
||||
<version>2.7.0.1-SNAPSHOT</version>
|
||||
<name>Residence</name>
|
||||
<build>
|
||||
<finalName>${project.name}</finalName>
|
||||
<sourceDirectory>src</sourceDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
|
||||
@@ -58,76 +58,208 @@ import com.bekvon.bukkit.residence.text.Language;
|
||||
import com.bekvon.bukkit.residence.text.help.HelpEntry;
|
||||
import com.bekvon.bukkit.residence.text.help.InformationPager;
|
||||
import com.bekvon.bukkit.residence.vaultinterface.ResidenceVaultAdapter;
|
||||
import com.bekvon.bukkit.residence.vaultinterface.ZipLibrary;
|
||||
import com.earth2me.essentials.Essentials;
|
||||
import com.residence.mcstats.Metrics;
|
||||
import com.residence.zip.ZipLibrary;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @author Gary Smoak - bekvon
|
||||
*
|
||||
*
|
||||
*/
|
||||
public class Residence extends JavaPlugin {
|
||||
|
||||
public static String bukkitver;
|
||||
protected static ResidenceManager rmanager;
|
||||
protected static SelectionManager smanager;
|
||||
protected static PermissionManager gmanager;
|
||||
protected static ConfigManager cmanager;
|
||||
protected static ResidenceBlockListener blistener;
|
||||
protected static ResidencePlayerListener plistener;
|
||||
protected static ResidenceEntityListener elistener;
|
||||
protected static TransactionManager tmanager;
|
||||
protected static PermissionListManager pmanager;
|
||||
protected static LeaseManager leasemanager;
|
||||
protected static WorldItemManager imanager;
|
||||
protected static WorldFlagManager wmanager;
|
||||
protected static RentManager rentmanager;
|
||||
protected static ChatManager chatmanager;
|
||||
protected static Server server;
|
||||
protected static HelpEntry helppages;
|
||||
protected static Language language;
|
||||
protected boolean firstenable = true;
|
||||
protected static EconomyInterface economy;
|
||||
public final static int saveVersion = 1;
|
||||
protected static File dataFolder;
|
||||
protected static int leaseBukkitId = -1;
|
||||
protected static int rentBukkitId = -1;
|
||||
protected static int healBukkitId = -1;
|
||||
protected static int autosaveBukkitId = -1;
|
||||
protected static boolean initsuccess = false;
|
||||
protected Map<String, String> deleteConfirm;
|
||||
protected static List<String> resadminToggle;
|
||||
private final static String[] validLanguages = { "English", "Chinese" };
|
||||
private Runnable doHeals = new Runnable() {
|
||||
public static String bukkitver;
|
||||
protected static ResidenceManager rmanager;
|
||||
protected static SelectionManager smanager;
|
||||
protected static PermissionManager gmanager;
|
||||
protected static ConfigManager cmanager;
|
||||
protected static ResidenceBlockListener blistener;
|
||||
protected static ResidencePlayerListener plistener;
|
||||
protected static ResidenceEntityListener elistener;
|
||||
protected static TransactionManager tmanager;
|
||||
protected static PermissionListManager pmanager;
|
||||
protected static LeaseManager leasemanager;
|
||||
protected static WorldItemManager imanager;
|
||||
protected static WorldFlagManager wmanager;
|
||||
protected static RentManager rentmanager;
|
||||
protected static ChatManager chatmanager;
|
||||
protected static Server server;
|
||||
protected static HelpEntry helppages;
|
||||
protected static Language language;
|
||||
protected static EconomyInterface economy;
|
||||
public final static int saveVersion = 1;
|
||||
protected static File dataFolder;
|
||||
protected static int leaseBukkitId = -1;
|
||||
protected static int rentBukkitId = -1;
|
||||
protected static int healBukkitId = -1;
|
||||
protected static int autosaveBukkitId = -1;
|
||||
protected static boolean initsuccess = false;
|
||||
protected static List<String> resadminToggle;
|
||||
private final static String[] validLanguages = { "English", "Chinese" };
|
||||
|
||||
public static ResidenceBlockListener getBlockListener() {
|
||||
return blistener;
|
||||
}
|
||||
|
||||
public static ChatManager getChatManager() {
|
||||
return chatmanager;
|
||||
}
|
||||
|
||||
public static ConfigManager getConfigManager() {
|
||||
return cmanager;
|
||||
}
|
||||
|
||||
public static File getDataLocation() {
|
||||
return dataFolder;
|
||||
}
|
||||
|
||||
public static EconomyInterface getEconomyManager() {
|
||||
return economy;
|
||||
}
|
||||
|
||||
public static ResidenceEntityListener getEntityListener() {
|
||||
return elistener;
|
||||
}
|
||||
|
||||
public static WorldItemManager getItemManager() {
|
||||
return imanager;
|
||||
}
|
||||
|
||||
public static Language getLanguage() {
|
||||
if (language == null) {
|
||||
language = new Language();
|
||||
}
|
||||
return language;
|
||||
}
|
||||
|
||||
public static LeaseManager getLeaseManager() {
|
||||
return leasemanager;
|
||||
}
|
||||
|
||||
public static PermissionManager getPermissionManager() {
|
||||
return gmanager;
|
||||
}
|
||||
|
||||
public static FlagPermissions getPermsByLoc(Location loc) {
|
||||
ClaimedResidence res = rmanager.getByLoc(loc);
|
||||
if (res != null)
|
||||
return res.getPermissions();
|
||||
else
|
||||
return wmanager.getPerms(loc.getWorld().getName());
|
||||
}
|
||||
|
||||
public static FlagPermissions getPermsByLocForPlayer(Location loc, Player player) {
|
||||
ClaimedResidence res = rmanager.getByLoc(loc);
|
||||
if (res != null)
|
||||
return res.getPermissions();
|
||||
else {
|
||||
if (player != null)
|
||||
return wmanager.getPerms(player);
|
||||
else
|
||||
return wmanager.getPerms(loc.getWorld().getName());
|
||||
}
|
||||
}
|
||||
|
||||
public static ResidencePlayerListener getPlayerListener() {
|
||||
return plistener;
|
||||
}
|
||||
|
||||
public static RentManager getRentManager() {
|
||||
return rentmanager;
|
||||
}
|
||||
|
||||
public static ResidenceManager getResidenceManager() {
|
||||
return rmanager;
|
||||
}
|
||||
|
||||
public static SelectionManager getSelectionManager() {
|
||||
return smanager;
|
||||
}
|
||||
|
||||
public static Server getServ() {
|
||||
return server;
|
||||
}
|
||||
|
||||
public static TransactionManager getTransactionManager() {
|
||||
return tmanager;
|
||||
}
|
||||
|
||||
public static WorldFlagManager getWorldFlags() {
|
||||
return wmanager;
|
||||
}
|
||||
|
||||
public static boolean isResAdminOn(Player player) {
|
||||
if (resadminToggle.contains(player.getName()))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
public static boolean isResAdminOn(String player) {
|
||||
if (resadminToggle.contains(player.toLowerCase()))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
public static void turnResAdminOn(Player player) {
|
||||
resadminToggle.add(player.getName());
|
||||
}
|
||||
|
||||
public static boolean validName(String name) {
|
||||
if (name.contains(":") || name.contains("."))
|
||||
return false;
|
||||
if (cmanager.getResidenceNameRegex() == null)
|
||||
return true;
|
||||
else {
|
||||
String namecheck = name.replaceAll(cmanager.getResidenceNameRegex(), "");
|
||||
if (!name.equals(namecheck))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean firstenable = true;
|
||||
|
||||
protected Map<String, String> deleteConfirm;
|
||||
|
||||
private Runnable doHeals = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
plistener.doHeals();
|
||||
}
|
||||
};
|
||||
private Runnable rentExpire = new Runnable() {
|
||||
|
||||
private Runnable rentExpire = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
rentmanager.checkCurrentRents();
|
||||
if (cmanager.showIntervalMessages()) {
|
||||
System.out.println("[Residence] - Rent Expirations checked!");
|
||||
System.out
|
||||
.println("[Residence] - Rent Expirations checked!");
|
||||
}
|
||||
}
|
||||
};
|
||||
private Runnable leaseExpire = new Runnable() {
|
||||
|
||||
private Runnable leaseExpire = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
leasemanager.doExpirations();
|
||||
if (cmanager.showIntervalMessages()) {
|
||||
System.out.println("[Residence] - Lease Expirations checked!");
|
||||
System.out
|
||||
.println("[Residence] - Lease Expirations checked!");
|
||||
}
|
||||
}
|
||||
};
|
||||
private Runnable autoSave = new Runnable() {
|
||||
|
||||
private Runnable autoSave = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
if (initsuccess) {
|
||||
saveYml();
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
Logger.getLogger("Minecraft").log(Level.SEVERE,
|
||||
Logger.getLogger("Minecraft").log(
|
||||
Level.SEVERE,
|
||||
"[Residence] 插件数据 保存 错误", ex);
|
||||
}
|
||||
}
|
||||
@@ -136,11 +268,33 @@ public class Residence extends JavaPlugin {
|
||||
public Residence() {
|
||||
}
|
||||
|
||||
public void reloadPlugin() {
|
||||
this.onDisable();
|
||||
this.reloadConfig();
|
||||
this.onEnable();
|
||||
private boolean checkNewLanguageVersion(String lang) throws IOException, FileNotFoundException,
|
||||
InvalidConfigurationException {
|
||||
File outFile = new File(new File(this.getDataFolder(), "Language"), lang + ".yml");
|
||||
File checkFile = new File(new File(this.getDataFolder(), "Language"), "temp-" + lang
|
||||
+ ".yml");
|
||||
if (outFile.isFile()) {
|
||||
FileConfig testconfig = new FileConfig();
|
||||
testconfig.load(outFile);
|
||||
int oldversion = testconfig.getInt("FieldsVersion", 0);
|
||||
if (!this.writeDefaultFileFromJar(checkFile, "languagefiles/" + lang + ".yml", false))
|
||||
return false;
|
||||
FileConfig testconfig2 = new FileConfig();
|
||||
testconfig2.load(checkFile);
|
||||
int newversion = testconfig2.getInt("FieldsVersion", oldversion);
|
||||
if (checkFile.isFile()) {
|
||||
checkFile.delete();
|
||||
}
|
||||
if (newversion > oldversion)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public void consoleMessage(String message) {
|
||||
ConsoleCommandSender console = Bukkit.getConsoleSender();
|
||||
console.sendMessage("[Residence] " + message);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -151,14 +305,89 @@ public class Residence extends JavaPlugin {
|
||||
return Config.getInstance();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void saveConfig() {
|
||||
Config.save();
|
||||
private void loadEssentialsEconomy() {
|
||||
Plugin p = getServer().getPluginManager().getPlugin("Essentials");
|
||||
if (p != null) {
|
||||
economy = new EssentialsEcoAdapter((Essentials) p);
|
||||
Logger.getLogger("Minecraft").log(Level.INFO, "[Residence] 成功关联Essentials Economy!");
|
||||
} else {
|
||||
Logger.getLogger("Minecraft").log(Level.INFO, "[Residence] Essentials Economy 未找到!");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void reloadConfig() {
|
||||
Config.load(this);
|
||||
private void loadVaultEconomy() {
|
||||
Plugin p = getServer().getPluginManager().getPlugin("Vault");
|
||||
if (p != null) {
|
||||
ResidenceVaultAdapter vault = new ResidenceVaultAdapter(getServer());
|
||||
if (vault.economyOK()) {
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] 发现 Vault 使用经济系统: " + vault.getEconomyName());
|
||||
economy = vault;
|
||||
} else {
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] 发现 Vault, 但是 Vault 未找到经济系统...");
|
||||
}
|
||||
} else {
|
||||
Logger.getLogger("Minecraft").log(Level.INFO, "[Residence] Vault 未找到!");
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
protected boolean loadYml() throws Exception {
|
||||
File saveFolder = new File(dataFolder, "Save");
|
||||
try {
|
||||
File worldFolder = new File(saveFolder, "Worlds");
|
||||
if (!saveFolder.isDirectory()) {
|
||||
this.getLogger().warning("保存目录不存在...");
|
||||
this.getLogger().warning("请重新启动服务器");
|
||||
return true;
|
||||
}
|
||||
YMLSaveHelper yml;
|
||||
File loadFile;
|
||||
HashMap<String, Object> worlds = new HashMap<String, Object>();
|
||||
for (World world : server.getWorlds()) {
|
||||
loadFile = new File(worldFolder, "res_" + world.getName() + ".yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
worlds.put(world.getName(), yml.getRoot().get("Residences"));
|
||||
}
|
||||
}
|
||||
rmanager = ResidenceManager.load(worlds);
|
||||
loadFile = new File(saveFolder, "forsale.yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
tmanager = TransactionManager.load((Map<?, ?>) yml.getRoot().get("Economy"),
|
||||
gmanager, rmanager);
|
||||
}
|
||||
loadFile = new File(saveFolder, "leases.yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
leasemanager = LeaseManager.load((Map<String, Long>) yml.getRoot().get("Leases"),
|
||||
rmanager);
|
||||
}
|
||||
loadFile = new File(saveFolder, "permlists.yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
pmanager = PermissionListManager.load((Map<String, Object>) yml.getRoot().get(
|
||||
"PermissionLists"));
|
||||
}
|
||||
loadFile = new File(saveFolder, "rent.yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
rentmanager = RentManager.load((Map<String, Object>) yml.getRoot()
|
||||
.get("RentSystem"));
|
||||
}
|
||||
// System.out.print("[Residence] Loaded...");
|
||||
return true;
|
||||
} catch (Exception ex) {
|
||||
Logger.getLogger(Residence.class.getName()).log(Level.SEVERE, null, ex);
|
||||
throw ex;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -176,11 +405,9 @@ public class Residence extends JavaPlugin {
|
||||
saveYml();
|
||||
ZipLibrary.backup();
|
||||
} catch (Exception ex) {
|
||||
Logger.getLogger("Minecraft").log(Level.SEVERE,
|
||||
"[Residence] 插件数据保存失败", ex);
|
||||
Logger.getLogger("Minecraft").log(Level.SEVERE, "[Residence] 插件数据保存失败", ex);
|
||||
}
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] Disabled!");
|
||||
Logger.getLogger("Minecraft").log(Level.INFO, "[Residence] Disabled!");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -211,8 +438,7 @@ public class Residence extends JavaPlugin {
|
||||
Plugin plugin = server.getPluginManager().getPlugin(multiworld);
|
||||
if (plugin != null) {
|
||||
if (!plugin.isEnabled()) {
|
||||
System.out.println("[Residence] - 加载多世界插件: "
|
||||
+ multiworld);
|
||||
System.out.println("[Residence] - 加载多世界插件: " + multiworld);
|
||||
server.getPluginManager().enablePlugin(plugin);
|
||||
}
|
||||
}
|
||||
@@ -228,33 +454,28 @@ public class Residence extends JavaPlugin {
|
||||
this.writeDefaultLanguageFile(lang);
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
System.out
|
||||
.println("[Residence] 语言文件升级失败: " + lang + ".yml");
|
||||
System.out.println("[Residence] 语言文件升级失败: " + lang + ".yml");
|
||||
helppages = new HelpEntry("");
|
||||
language = new Language();
|
||||
}
|
||||
}
|
||||
try {
|
||||
File langFile = new File(new File(dataFolder, "Language"),
|
||||
cmanager.getLanguage() + ".yml");
|
||||
File langFile = new File(new File(dataFolder, "Language"), cmanager.getLanguage()
|
||||
+ ".yml");
|
||||
if (langFile.isFile()) {
|
||||
FileConfig langconfig = new FileConfig();
|
||||
langconfig.load(langFile);
|
||||
helppages = HelpEntry.parseHelp(langconfig, "CommandHelp");
|
||||
HelpEntry.setLinesPerPage(langconfig.getInt(
|
||||
"HelpLinesPerPage", 7));
|
||||
InformationPager.setLinesPerPage(langconfig.getInt(
|
||||
"HelpLinesPerPage", 7));
|
||||
HelpEntry.setLinesPerPage(langconfig.getInt("HelpLinesPerPage", 7));
|
||||
InformationPager.setLinesPerPage(langconfig.getInt("HelpLinesPerPage", 7));
|
||||
language = Language.parseText(langconfig, "Language");
|
||||
} else {
|
||||
System.out.println("[Residence] 语言文件不存在...");
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
System.out.println("[Residence] 语言文件载入失败: "
|
||||
+ cmanager.getLanguage() + ".yml, 错误: "
|
||||
System.out.println("[Residence] 语言文件载入失败: " + cmanager.getLanguage() + ".yml, 错误: "
|
||||
+ ex.getMessage());
|
||||
Logger.getLogger(Residence.class.getName()).log(Level.SEVERE,
|
||||
null, ex);
|
||||
Logger.getLogger(Residence.class.getName()).log(Level.SEVERE, null, ex);
|
||||
helppages = new HelpEntry("");
|
||||
language = new Language();
|
||||
}
|
||||
@@ -266,8 +487,8 @@ public class Residence extends JavaPlugin {
|
||||
.getPermissionsPlugin();
|
||||
if (vault.economyOK()) {
|
||||
economy = vault;
|
||||
System.out.println("[Residence] 发现 Vault 使用经济系统: "
|
||||
+ vault.getEconomyName());
|
||||
System.out
|
||||
.println("[Residence] 发现 Vault 使用经济系统: " + vault.getEconomyName());
|
||||
}
|
||||
}
|
||||
if (economy == null) {
|
||||
@@ -299,19 +520,16 @@ public class Residence extends JavaPlugin {
|
||||
pmanager = new PermissionListManager();
|
||||
}
|
||||
if (firstenable) {
|
||||
if (!this.isEnabled()) {
|
||||
if (!this.isEnabled())
|
||||
return;
|
||||
}
|
||||
FlagPermissions.initValidFlags();
|
||||
Plugin p = server.getPluginManager().getPlugin("WorldEdit");
|
||||
if (p != null) {
|
||||
smanager = new WorldEditSelectionManager(server);
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] 发现 WorldEdit");
|
||||
Logger.getLogger("Minecraft").log(Level.INFO, "[Residence] 发现 WorldEdit");
|
||||
} else {
|
||||
smanager = new SelectionManager(server);
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] WorldEdit 未找到!");
|
||||
Logger.getLogger("Minecraft").log(Level.INFO, "[Residence] WorldEdit 未找到!");
|
||||
}
|
||||
|
||||
blistener = new ResidenceBlockListener();
|
||||
@@ -331,19 +549,17 @@ public class Residence extends JavaPlugin {
|
||||
autosaveInt = 1;
|
||||
}
|
||||
autosaveInt = autosaveInt * 60 * 20;
|
||||
autosaveBukkitId = server.getScheduler().scheduleSyncRepeatingTask(
|
||||
this, autoSave, autosaveInt, autosaveInt);
|
||||
healBukkitId = server.getScheduler().scheduleSyncRepeatingTask(
|
||||
this, doHeals, 20, 20);
|
||||
autosaveBukkitId = server.getScheduler().scheduleSyncRepeatingTask(this, autoSave,
|
||||
autosaveInt, autosaveInt);
|
||||
healBukkitId = server.getScheduler().scheduleSyncRepeatingTask(this, doHeals, 20, 20);
|
||||
if (cmanager.useLeases()) {
|
||||
int leaseInterval = cmanager.getLeaseCheckInterval();
|
||||
if (leaseInterval < 1) {
|
||||
leaseInterval = 1;
|
||||
}
|
||||
leaseInterval = leaseInterval * 60 * 20;
|
||||
leaseBukkitId = server.getScheduler()
|
||||
.scheduleSyncRepeatingTask(this, leaseExpire,
|
||||
leaseInterval, leaseInterval);
|
||||
leaseBukkitId = server.getScheduler().scheduleSyncRepeatingTask(this, leaseExpire,
|
||||
leaseInterval, leaseInterval);
|
||||
}
|
||||
if (cmanager.enabledRentSystem()) {
|
||||
int rentint = cmanager.getRentCheckInterval();
|
||||
@@ -351,197 +567,40 @@ public class Residence extends JavaPlugin {
|
||||
rentint = 1;
|
||||
}
|
||||
rentint = rentint * 60 * 20;
|
||||
rentBukkitId = server.getScheduler().scheduleSyncRepeatingTask(
|
||||
this, rentExpire, rentint, rentint);
|
||||
rentBukkitId = server.getScheduler().scheduleSyncRepeatingTask(this, rentExpire,
|
||||
rentint, rentint);
|
||||
}
|
||||
for (Player player : Bukkit.getServer().getOnlinePlayers()) {
|
||||
if (Residence.getPermissionManager().isResidenceAdmin(player)) {
|
||||
turnResAdminOn(player);
|
||||
}
|
||||
}
|
||||
try {
|
||||
Metrics metrics = new Metrics(this);
|
||||
metrics.start();
|
||||
} catch (IOException e) {
|
||||
// Failed to submit the stats :-(
|
||||
}
|
||||
Logger.getLogger("Minecraft")
|
||||
.log(Level.INFO,
|
||||
"[Residence] 载入完成! 版本: "
|
||||
+ this.getDescription().getVersion()
|
||||
+ " 重制 by 喵♂呜");
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] 载入完成! 版本: " + this.getDescription().getVersion() + " 重制 by 喵♂呜");
|
||||
initsuccess = true;
|
||||
} catch (Exception ex) {
|
||||
initsuccess = false;
|
||||
getServer().getPluginManager().disablePlugin(this);
|
||||
System.out.println("[Residence] - 初始化失败! 卸载插件! 错误:");
|
||||
Logger.getLogger(Residence.class.getName()).log(Level.SEVERE, null,
|
||||
ex);
|
||||
Logger.getLogger(Residence.class.getName()).log(Level.SEVERE, null, ex);
|
||||
}
|
||||
}
|
||||
|
||||
public void consoleMessage(String message) {
|
||||
ConsoleCommandSender console = Bukkit.getConsoleSender();
|
||||
console.sendMessage("[Residence] " + message);
|
||||
@Override
|
||||
public void reloadConfig() {
|
||||
Config.load(this);
|
||||
}
|
||||
|
||||
public static boolean validName(String name) {
|
||||
if (name.contains(":") || name.contains(".")) {
|
||||
return false;
|
||||
}
|
||||
if (cmanager.getResidenceNameRegex() == null) {
|
||||
return true;
|
||||
} else {
|
||||
String namecheck = name.replaceAll(
|
||||
cmanager.getResidenceNameRegex(), "");
|
||||
if (!name.equals(namecheck)) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
public void reloadPlugin() {
|
||||
this.onDisable();
|
||||
this.reloadConfig();
|
||||
this.onEnable();
|
||||
|
||||
}
|
||||
|
||||
public static File getDataLocation() {
|
||||
return dataFolder;
|
||||
}
|
||||
|
||||
public static ResidenceManager getResidenceManager() {
|
||||
return rmanager;
|
||||
}
|
||||
|
||||
public static SelectionManager getSelectionManager() {
|
||||
return smanager;
|
||||
}
|
||||
|
||||
public static PermissionManager getPermissionManager() {
|
||||
return gmanager;
|
||||
}
|
||||
|
||||
public static EconomyInterface getEconomyManager() {
|
||||
return economy;
|
||||
}
|
||||
|
||||
public static Server getServ() {
|
||||
return server;
|
||||
}
|
||||
|
||||
public static LeaseManager getLeaseManager() {
|
||||
return leasemanager;
|
||||
}
|
||||
|
||||
public static ConfigManager getConfigManager() {
|
||||
return cmanager;
|
||||
}
|
||||
|
||||
public static TransactionManager getTransactionManager() {
|
||||
return tmanager;
|
||||
}
|
||||
|
||||
public static WorldItemManager getItemManager() {
|
||||
return imanager;
|
||||
}
|
||||
|
||||
public static WorldFlagManager getWorldFlags() {
|
||||
return wmanager;
|
||||
}
|
||||
|
||||
public static RentManager getRentManager() {
|
||||
return rentmanager;
|
||||
}
|
||||
|
||||
public static ResidencePlayerListener getPlayerListener() {
|
||||
return plistener;
|
||||
}
|
||||
|
||||
public static ResidenceBlockListener getBlockListener() {
|
||||
return blistener;
|
||||
}
|
||||
|
||||
public static ResidenceEntityListener getEntityListener() {
|
||||
return elistener;
|
||||
}
|
||||
|
||||
public static ChatManager getChatManager() {
|
||||
return chatmanager;
|
||||
}
|
||||
|
||||
public static Language getLanguage() {
|
||||
if (language == null) {
|
||||
language = new Language();
|
||||
}
|
||||
return language;
|
||||
}
|
||||
|
||||
public static FlagPermissions getPermsByLoc(Location loc) {
|
||||
ClaimedResidence res = rmanager.getByLoc(loc);
|
||||
if (res != null) {
|
||||
return res.getPermissions();
|
||||
} else {
|
||||
return wmanager.getPerms(loc.getWorld().getName());
|
||||
}
|
||||
}
|
||||
|
||||
public static FlagPermissions getPermsByLocForPlayer(Location loc,
|
||||
Player player) {
|
||||
ClaimedResidence res = rmanager.getByLoc(loc);
|
||||
if (res != null) {
|
||||
return res.getPermissions();
|
||||
} else {
|
||||
if (player != null)
|
||||
return wmanager.getPerms(player);
|
||||
else
|
||||
return wmanager.getPerms(loc.getWorld().getName());
|
||||
}
|
||||
}
|
||||
|
||||
private void loadEssentialsEconomy() {
|
||||
Plugin p = getServer().getPluginManager().getPlugin("Essentials");
|
||||
if (p != null) {
|
||||
economy = new EssentialsEcoAdapter((Essentials) p);
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] 成功关联Essentials Economy!");
|
||||
} else {
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] Essentials Economy 未找到!");
|
||||
}
|
||||
}
|
||||
|
||||
private void loadVaultEconomy() {
|
||||
Plugin p = getServer().getPluginManager().getPlugin("Vault");
|
||||
if (p != null) {
|
||||
ResidenceVaultAdapter vault = new ResidenceVaultAdapter(getServer());
|
||||
if (vault.economyOK()) {
|
||||
Logger.getLogger("Minecraft").log(
|
||||
Level.INFO,
|
||||
"[Residence] 发现 Vault 使用经济系统: "
|
||||
+ vault.getEconomyName());
|
||||
economy = vault;
|
||||
} else {
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] 发现 Vault, 但是 Vault 未找到经济系统...");
|
||||
}
|
||||
} else {
|
||||
Logger.getLogger("Minecraft").log(Level.INFO,
|
||||
"[Residence] Vault 未找到!");
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean isResAdminOn(Player player) {
|
||||
if (resadminToggle.contains(player.getName())) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public static void turnResAdminOn(Player player) {
|
||||
resadminToggle.add(player.getName());
|
||||
}
|
||||
|
||||
public static boolean isResAdminOn(String player) {
|
||||
if (resadminToggle.contains(player.toLowerCase())) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@Override
|
||||
public void saveConfig() {
|
||||
Config.save();
|
||||
}
|
||||
|
||||
private void saveYml() throws IOException {
|
||||
@@ -551,22 +610,20 @@ public class Residence extends JavaPlugin {
|
||||
YMLSaveHelper yml;
|
||||
Map<String, Object> save = rmanager.save();
|
||||
for (Entry<String, Object> entry : save.entrySet()) {
|
||||
File ymlSaveLoc = new File(worldFolder, "res_" + entry.getKey()
|
||||
+ ".yml");
|
||||
File tmpFile = new File(worldFolder, "tmp_res_" + entry.getKey()
|
||||
+ ".yml");
|
||||
File ymlSaveLoc = new File(worldFolder, "res_" + entry.getKey() + ".yml");
|
||||
File tmpFile = new File(worldFolder, "tmp_res_" + entry.getKey() + ".yml");
|
||||
yml = new YMLSaveHelper(tmpFile);
|
||||
yml.getRoot().put("Version", saveVersion);
|
||||
World world = server.getWorld(entry.getKey());
|
||||
if (world != null)
|
||||
if (world != null) {
|
||||
yml.getRoot().put("Seed", world.getSeed());
|
||||
yml.getRoot().put("Residences", (Map<?, ?>) entry.getValue());
|
||||
}
|
||||
yml.getRoot().put("Residences", entry.getValue());
|
||||
yml.save();
|
||||
if (ymlSaveLoc.isFile()) {
|
||||
File backupFolder = new File(worldFolder, "Backup");
|
||||
backupFolder.mkdirs();
|
||||
File backupFile = new File(backupFolder, "res_"
|
||||
+ entry.getKey() + ".yml");
|
||||
File backupFile = new File(backupFolder, "res_" + entry.getKey() + ".yml");
|
||||
if (backupFile.isFile()) {
|
||||
backupFile.delete();
|
||||
}
|
||||
@@ -653,119 +710,19 @@ public class Residence extends JavaPlugin {
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
protected boolean loadYml() throws Exception {
|
||||
File saveFolder = new File(dataFolder, "Save");
|
||||
try {
|
||||
File worldFolder = new File(saveFolder, "Worlds");
|
||||
if (!saveFolder.isDirectory()) {
|
||||
this.getLogger().warning("保存目录不存在...");
|
||||
this.getLogger().warning("请重新启动服务器");
|
||||
return true;
|
||||
}
|
||||
YMLSaveHelper yml;
|
||||
File loadFile;
|
||||
HashMap<String, Object> worlds = new HashMap<String, Object>();
|
||||
for (World world : server.getWorlds()) {
|
||||
loadFile = new File(worldFolder, "res_" + world.getName()
|
||||
+ ".yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
worlds.put(world.getName(), yml.getRoot().get("Residences"));
|
||||
}
|
||||
}
|
||||
rmanager = ResidenceManager.load(worlds);
|
||||
loadFile = new File(saveFolder, "forsale.yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
tmanager = TransactionManager.load((Map<?, ?>) yml.getRoot()
|
||||
.get("Economy"), gmanager, rmanager);
|
||||
}
|
||||
loadFile = new File(saveFolder, "leases.yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
leasemanager = LeaseManager.load((Map<String, Long>) yml
|
||||
.getRoot().get("Leases"), rmanager);
|
||||
}
|
||||
loadFile = new File(saveFolder, "permlists.yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
pmanager = PermissionListManager.load((Map<String, Object>) yml
|
||||
.getRoot().get("PermissionLists"));
|
||||
}
|
||||
loadFile = new File(saveFolder, "rent.yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
yml.load();
|
||||
rentmanager = RentManager.load((Map<String, Object>) yml
|
||||
.getRoot().get("RentSystem"));
|
||||
}
|
||||
// System.out.print("[Residence] Loaded...");
|
||||
return true;
|
||||
} catch (Exception ex) {
|
||||
Logger.getLogger(Residence.class.getName()).log(Level.SEVERE, null,
|
||||
ex);
|
||||
throw ex;
|
||||
}
|
||||
}
|
||||
|
||||
private void writeDefaultConfigFromJar() {
|
||||
if (this.writeDefaultFileFromJar(new File(this.getDataFolder(),
|
||||
"config.yml"), "config.yml", true)) {
|
||||
if (this.writeDefaultFileFromJar(new File(this.getDataFolder(), "config.yml"),
|
||||
"config.yml", true)) {
|
||||
System.out.println("[Residence] 保存默认配置文件...");
|
||||
}
|
||||
}
|
||||
|
||||
private void writeDefaultLanguageFile(String lang) {
|
||||
File outFile = new File(new File(this.getDataFolder(), "Language"),
|
||||
lang + ".yml");
|
||||
outFile.getParentFile().mkdirs();
|
||||
if (this.writeDefaultFileFromJar(outFile, "languagefiles/" + lang
|
||||
+ ".yml", true)) {
|
||||
System.out.println("[Residence] 保存默认 " + lang + " 语言文件...");
|
||||
}
|
||||
}
|
||||
|
||||
private boolean checkNewLanguageVersion(String lang) throws IOException,
|
||||
FileNotFoundException, InvalidConfigurationException {
|
||||
File outFile = new File(new File(this.getDataFolder(), "Language"),
|
||||
lang + ".yml");
|
||||
File checkFile = new File(new File(this.getDataFolder(), "Language"),
|
||||
"temp-" + lang + ".yml");
|
||||
if (outFile.isFile()) {
|
||||
FileConfig testconfig = new FileConfig();
|
||||
testconfig.load(outFile);
|
||||
int oldversion = testconfig.getInt("FieldsVersion", 0);
|
||||
if (!this.writeDefaultFileFromJar(checkFile, "languagefiles/"
|
||||
+ lang + ".yml", false)) {
|
||||
return false;
|
||||
}
|
||||
FileConfig testconfig2 = new FileConfig();
|
||||
testconfig2.load(checkFile);
|
||||
int newversion = testconfig2.getInt("FieldsVersion", oldversion);
|
||||
if (checkFile.isFile()) {
|
||||
checkFile.delete();
|
||||
}
|
||||
if (newversion > oldversion) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@SuppressWarnings("resource")
|
||||
private boolean writeDefaultFileFromJar(File writeName, String jarPath,
|
||||
boolean backupOld) {
|
||||
private boolean writeDefaultFileFromJar(File writeName, String jarPath, boolean backupOld) {
|
||||
try {
|
||||
File fileBackup = new File(this.getDataFolder(), "backup-"
|
||||
+ writeName);
|
||||
File jarloc = new File(getClass().getProtectionDomain()
|
||||
.getCodeSource().getLocation().toURI()).getCanonicalFile();
|
||||
File fileBackup = new File(this.getDataFolder(), "backup-" + writeName);
|
||||
File jarloc = new File(getClass().getProtectionDomain().getCodeSource().getLocation()
|
||||
.toURI()).getCanonicalFile();
|
||||
if (jarloc.isFile()) {
|
||||
JarFile jar = new JarFile(jarloc);
|
||||
JarEntry entry = jar.getJarEntry(jarPath);
|
||||
@@ -801,4 +758,12 @@ public class Residence extends JavaPlugin {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private void writeDefaultLanguageFile(String lang) {
|
||||
File outFile = new File(new File(this.getDataFolder(), "Language"), lang + ".yml");
|
||||
outFile.getParentFile().mkdirs();
|
||||
if (this.writeDefaultFileFromJar(outFile, "languagefiles/" + lang + ".yml", true)) {
|
||||
System.out.println("[Residence] 保存默认 " + lang + " 语言文件...");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -30,15 +30,9 @@ import com.google.common.io.Files;
|
||||
*/
|
||||
public class FileConfig extends YamlConfiguration {
|
||||
|
||||
protected final DumperOptions yamlOptions = new DumperOptions();
|
||||
protected final Representer yamlRepresenter = new YamlRepresenter();
|
||||
protected final Yaml yaml = new Yaml(new YamlConstructor(),
|
||||
yamlRepresenter, yamlOptions);
|
||||
|
||||
public static FileConfig init(File file) {
|
||||
return FileConfig.loadConfiguration(file);
|
||||
}
|
||||
|
||||
public static FileConfig loadConfiguration(File file) {
|
||||
Validate.notNull(file, "File cannot be null");
|
||||
FileConfig config = new FileConfig();
|
||||
@@ -52,6 +46,34 @@ public class FileConfig extends YamlConfiguration {
|
||||
}
|
||||
return config;
|
||||
}
|
||||
protected final DumperOptions yamlOptions = new DumperOptions();
|
||||
|
||||
protected final Representer yamlRepresenter = new YamlRepresenter();
|
||||
|
||||
protected final Yaml yaml = new Yaml(new YamlConstructor(),
|
||||
yamlRepresenter, yamlOptions);
|
||||
|
||||
@Override
|
||||
public void load(File file) throws FileNotFoundException, IOException,
|
||||
InvalidConfigurationException {
|
||||
Validate.notNull(file, "File cannot be null");
|
||||
final FileInputStream stream = new FileInputStream(file);
|
||||
load(new InputStreamReader(stream, Charsets.UTF_8));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void save(File file) throws IOException {
|
||||
Validate.notNull(file, "File cannot be null");
|
||||
Files.createParentDirs(file);
|
||||
String data = saveToString();
|
||||
Writer writer = new OutputStreamWriter(new FileOutputStream(file),
|
||||
Charsets.UTF_8);
|
||||
try {
|
||||
writer.write(data);
|
||||
} finally {
|
||||
writer.close();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String saveToString() {
|
||||
@@ -65,24 +87,4 @@ public class FileConfig extends YamlConfiguration {
|
||||
}
|
||||
return header + dump;
|
||||
}
|
||||
|
||||
public void load(File file) throws FileNotFoundException, IOException,
|
||||
InvalidConfigurationException {
|
||||
Validate.notNull(file, "File cannot be null");
|
||||
final FileInputStream stream = new FileInputStream(file);
|
||||
load(new InputStreamReader(stream, Charsets.UTF_8));
|
||||
}
|
||||
|
||||
public void save(File file) throws IOException {
|
||||
Validate.notNull(file, "File cannot be null");
|
||||
Files.createParentDirs(file);
|
||||
String data = saveToString();
|
||||
Writer writer = new OutputStreamWriter(new FileOutputStream(file),
|
||||
Charsets.UTF_8);
|
||||
try {
|
||||
writer.write(data);
|
||||
} finally {
|
||||
writer.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,28 +5,31 @@
|
||||
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
import org.bukkit.event.Cancellable;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Administrator
|
||||
*/
|
||||
public class CancellableResidenceEvent extends ResidenceEvent implements Cancellable {
|
||||
|
||||
protected boolean cancelled;
|
||||
protected boolean cancelled;
|
||||
|
||||
public CancellableResidenceEvent(String eventName, ClaimedResidence resref)
|
||||
{
|
||||
super(eventName,resref);
|
||||
}
|
||||
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
public CancellableResidenceEvent(String eventName, ClaimedResidence resref)
|
||||
{
|
||||
super(eventName,resref);
|
||||
}
|
||||
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
@Override
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -5,30 +5,33 @@
|
||||
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Cancellable;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Administrator
|
||||
*/
|
||||
public class CancellableResidencePlayerEvent extends ResidencePlayerEvent implements Cancellable {
|
||||
|
||||
protected boolean cancelled;
|
||||
protected boolean cancelled;
|
||||
|
||||
public CancellableResidencePlayerEvent(String eventName, ClaimedResidence resref, Player player)
|
||||
{
|
||||
super(eventName, resref, player);
|
||||
cancelled = false;
|
||||
}
|
||||
public CancellableResidencePlayerEvent(String eventName, ClaimedResidence resref, Player player)
|
||||
{
|
||||
super(eventName, resref, player);
|
||||
cancelled = false;
|
||||
}
|
||||
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
@Override
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
@Override
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -5,29 +5,32 @@
|
||||
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Cancellable;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Administrator
|
||||
*/
|
||||
public class CancellableResidencePlayerFlagEvent extends ResidencePlayerFlagEvent implements Cancellable {
|
||||
|
||||
protected boolean cancelled;
|
||||
protected boolean cancelled;
|
||||
|
||||
public CancellableResidencePlayerFlagEvent(String eventName, ClaimedResidence resref, Player player, String flag, FlagType type, String target)
|
||||
{
|
||||
super(eventName, resref, player, flag, type, target);
|
||||
}
|
||||
public CancellableResidencePlayerFlagEvent(String eventName, ClaimedResidence resref, Player player, String flag, FlagType type, String target)
|
||||
{
|
||||
super(eventName, resref, player, flag, type, target);
|
||||
}
|
||||
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
@Override
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
@Override
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -16,51 +16,53 @@ import org.bukkit.event.HandlerList;
|
||||
*/
|
||||
public class ResidenceCommandEvent extends Event implements Cancellable {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
protected boolean cancelled;
|
||||
|
||||
protected boolean cancelled;
|
||||
protected String cmd;
|
||||
protected String arglist[];
|
||||
CommandSender commandsender;
|
||||
protected String cmd;
|
||||
protected String arglist[];
|
||||
CommandSender commandsender;
|
||||
public ResidenceCommandEvent(String command, String args[], CommandSender sender)
|
||||
{
|
||||
super();
|
||||
cancelled = false;
|
||||
arglist = args;
|
||||
cmd = command;
|
||||
commandsender = sender;
|
||||
}
|
||||
|
||||
public ResidenceCommandEvent(String command, String args[], CommandSender sender)
|
||||
{
|
||||
super();
|
||||
cancelled = false;
|
||||
arglist = args;
|
||||
cmd = command;
|
||||
commandsender = sender;
|
||||
}
|
||||
public String[] getArgs()
|
||||
{
|
||||
return arglist;
|
||||
}
|
||||
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
public String getCommand()
|
||||
{
|
||||
return cmd;
|
||||
}
|
||||
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
public String getCommand()
|
||||
{
|
||||
return cmd;
|
||||
}
|
||||
public CommandSender getSender()
|
||||
{
|
||||
return commandsender;
|
||||
}
|
||||
|
||||
public String[] getArgs()
|
||||
{
|
||||
return arglist;
|
||||
}
|
||||
@Override
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
public CommandSender getSender()
|
||||
{
|
||||
return commandsender;
|
||||
}
|
||||
@Override
|
||||
public void setCancelled(boolean bln) {
|
||||
cancelled = bln;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -5,10 +5,11 @@
|
||||
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Administrator
|
||||
@@ -16,30 +17,31 @@ import org.bukkit.event.HandlerList;
|
||||
public class ResidenceEvent extends Event {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
private String message;
|
||||
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
return handlers;
|
||||
}
|
||||
|
||||
ClaimedResidence res;
|
||||
private String message;
|
||||
|
||||
public ResidenceEvent(String eventName, ClaimedResidence resref)
|
||||
{
|
||||
message = eventName;
|
||||
res = resref;
|
||||
}
|
||||
|
||||
public String getMessage() {
|
||||
return message;
|
||||
}
|
||||
ClaimedResidence res;
|
||||
|
||||
public ClaimedResidence getResidence()
|
||||
{
|
||||
return res;
|
||||
}
|
||||
public ResidenceEvent(String eventName, ClaimedResidence resref)
|
||||
{
|
||||
message = eventName;
|
||||
res = resref;
|
||||
}
|
||||
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
public String getMessage() {
|
||||
return message;
|
||||
}
|
||||
|
||||
public ClaimedResidence getResidence()
|
||||
{
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,53 +5,55 @@
|
||||
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
import org.bukkit.event.HandlerList;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Administrator
|
||||
*/
|
||||
public class ResidenceFlagCheckEvent extends ResidenceFlagEvent {
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
private boolean override;
|
||||
|
||||
private boolean override;
|
||||
private boolean overridevalue;
|
||||
boolean defaultvalue;
|
||||
private boolean overridevalue;
|
||||
boolean defaultvalue;
|
||||
public ResidenceFlagCheckEvent(ClaimedResidence resref, String flag, FlagType type, String target, boolean defaultValue)
|
||||
{
|
||||
super("RESIDENCE_FLAG_CHECK", resref, flag, type, target);
|
||||
defaultvalue = defaultValue;
|
||||
override = false;
|
||||
}
|
||||
|
||||
public ResidenceFlagCheckEvent(ClaimedResidence resref, String flag, FlagType type, String target, boolean defaultValue)
|
||||
{
|
||||
super("RESIDENCE_FLAG_CHECK", resref, flag, type, target);
|
||||
defaultvalue = defaultValue;
|
||||
override = false;
|
||||
}
|
||||
public boolean getDefaultValue()
|
||||
{
|
||||
return defaultvalue;
|
||||
}
|
||||
|
||||
public boolean isOverriden()
|
||||
{
|
||||
return override;
|
||||
}
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
public void overrideCheck(boolean flagval)
|
||||
{
|
||||
overridevalue = flagval;
|
||||
override=true;
|
||||
}
|
||||
public boolean getOverrideValue()
|
||||
{
|
||||
return overridevalue;
|
||||
}
|
||||
|
||||
public boolean getOverrideValue()
|
||||
{
|
||||
return overridevalue;
|
||||
}
|
||||
public boolean isOverriden()
|
||||
{
|
||||
return override;
|
||||
}
|
||||
|
||||
public boolean getDefaultValue()
|
||||
{
|
||||
return defaultvalue;
|
||||
}
|
||||
public void overrideCheck(boolean flagval)
|
||||
{
|
||||
overridevalue = flagval;
|
||||
override=true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,9 +5,10 @@
|
||||
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -15,30 +16,31 @@ import org.bukkit.entity.Player;
|
||||
*/
|
||||
public class ResidencePlayerEvent extends ResidenceEvent implements ResidencePlayerEventInterface {
|
||||
|
||||
Player p;
|
||||
Player p;
|
||||
|
||||
public ResidencePlayerEvent(String eventName, ClaimedResidence resref, Player player)
|
||||
{
|
||||
super(eventName, resref);
|
||||
res = resref;
|
||||
p = player;
|
||||
}
|
||||
public ResidencePlayerEvent(String eventName, ClaimedResidence resref, Player player)
|
||||
{
|
||||
super(eventName, resref);
|
||||
res = resref;
|
||||
p = player;
|
||||
}
|
||||
|
||||
public boolean isPlayer()
|
||||
{
|
||||
return p!=null;
|
||||
}
|
||||
@Override
|
||||
public Player getPlayer()
|
||||
{
|
||||
return p;
|
||||
}
|
||||
|
||||
public boolean isAdmin()
|
||||
{
|
||||
if(isPlayer())
|
||||
{
|
||||
return Residence.getPermissionManager().isResidenceAdmin(p);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
public Player getPlayer()
|
||||
{
|
||||
return p;
|
||||
}
|
||||
@Override
|
||||
public boolean isAdmin()
|
||||
{
|
||||
if(isPlayer())
|
||||
return Residence.getPermissionManager().isResidenceAdmin(p);
|
||||
return true;
|
||||
}
|
||||
@Override
|
||||
public boolean isPlayer()
|
||||
{
|
||||
return p!=null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,38 +5,40 @@
|
||||
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Administrator
|
||||
*/
|
||||
public class ResidencePlayerFlagEvent extends ResidenceFlagEvent implements ResidencePlayerEventInterface {
|
||||
Player p;
|
||||
Player p;
|
||||
|
||||
public ResidencePlayerFlagEvent(String eventName,ClaimedResidence resref, Player player, String flag, FlagType type, String target)
|
||||
{
|
||||
super(eventName, resref, flag, type, target);
|
||||
p = player;
|
||||
}
|
||||
public ResidencePlayerFlagEvent(String eventName,ClaimedResidence resref, Player player, String flag, FlagType type, String target)
|
||||
{
|
||||
super(eventName, resref, flag, type, target);
|
||||
p = player;
|
||||
}
|
||||
|
||||
public boolean isPlayer()
|
||||
{
|
||||
return p!=null;
|
||||
}
|
||||
@Override
|
||||
public Player getPlayer() {
|
||||
return p;
|
||||
}
|
||||
|
||||
public boolean isAdmin()
|
||||
{
|
||||
if(isPlayer())
|
||||
{
|
||||
return Residence.getPermissionManager().isResidenceAdmin(p);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@Override
|
||||
public boolean isAdmin()
|
||||
{
|
||||
if(isPlayer())
|
||||
return Residence.getPermissionManager().isResidenceAdmin(p);
|
||||
return true;
|
||||
}
|
||||
|
||||
public Player getPlayer() {
|
||||
return p;
|
||||
}
|
||||
@Override
|
||||
public boolean isPlayer()
|
||||
{
|
||||
return p!=null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,24 +1,25 @@
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
|
||||
public class ResidenceRenameEvent extends ResidenceEvent {
|
||||
protected String NewResName;
|
||||
protected String OldResName;
|
||||
protected ClaimedResidence res;
|
||||
public ResidenceRenameEvent(ClaimedResidence resref, String NewName, String OldName) {
|
||||
super("RESIDENCE_RENAME", resref);
|
||||
NewResName = NewName;
|
||||
OldResName = OldName;
|
||||
res = resref;
|
||||
}
|
||||
public String getNewResidenceName() {
|
||||
return NewResName;
|
||||
}
|
||||
public String getOldResidenceName() {
|
||||
return OldResName;
|
||||
}
|
||||
public ClaimedResidence getResidence() {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
package com.bekvon.bukkit.residence.event;
|
||||
|
||||
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
|
||||
|
||||
public class ResidenceRenameEvent extends ResidenceEvent {
|
||||
protected String NewResName;
|
||||
protected String OldResName;
|
||||
protected ClaimedResidence res;
|
||||
public ResidenceRenameEvent(ClaimedResidence resref, String NewName, String OldName) {
|
||||
super("RESIDENCE_RENAME", resref);
|
||||
NewResName = NewName;
|
||||
OldResName = OldName;
|
||||
res = resref;
|
||||
}
|
||||
public String getNewResidenceName() {
|
||||
return NewResName;
|
||||
}
|
||||
public String getOldResidenceName() {
|
||||
return OldResName;
|
||||
}
|
||||
@Override
|
||||
public ClaimedResidence getResidence() {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -5,9 +5,6 @@
|
||||
|
||||
package com.bekvon.bukkit.residence.vaultinterface;
|
||||
|
||||
import com.bekvon.bukkit.residence.economy.EconomyInterface;
|
||||
import com.bekvon.bukkit.residence.permissions.PermissionsInterface;
|
||||
|
||||
import net.milkbowl.vault.chat.Chat;
|
||||
import net.milkbowl.vault.economy.Economy;
|
||||
import net.milkbowl.vault.permission.Permission;
|
||||
@@ -16,32 +13,18 @@ import org.bukkit.Server;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.RegisteredServiceProvider;
|
||||
|
||||
import com.bekvon.bukkit.residence.economy.EconomyInterface;
|
||||
import com.bekvon.bukkit.residence.permissions.PermissionsInterface;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @author Administrator
|
||||
*/
|
||||
public class ResidenceVaultAdapter implements EconomyInterface,
|
||||
PermissionsInterface {
|
||||
public class ResidenceVaultAdapter implements EconomyInterface, PermissionsInterface {
|
||||
|
||||
public static Permission permissions = null;
|
||||
public static Economy economy = null;
|
||||
public static Chat chat = null;
|
||||
|
||||
public boolean permissionsOK() {
|
||||
if (permissions != null
|
||||
&& !permissions.getName().equalsIgnoreCase("SuperPerms")) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean economyOK() {
|
||||
return economy != null;
|
||||
}
|
||||
|
||||
public boolean chatOK() {
|
||||
return chat != null;
|
||||
}
|
||||
public static Permission permissions = null;
|
||||
public static Economy economy = null;
|
||||
public static Chat chat = null;
|
||||
|
||||
public ResidenceVaultAdapter(Server s) {
|
||||
this.setupPermissions(s);
|
||||
@@ -49,58 +32,10 @@ public class ResidenceVaultAdapter implements EconomyInterface,
|
||||
this.setupChat(s);
|
||||
}
|
||||
|
||||
private boolean setupPermissions(Server s) {
|
||||
RegisteredServiceProvider<Permission> permissionProvider = s
|
||||
.getServicesManager().getRegistration(
|
||||
net.milkbowl.vault.permission.Permission.class);
|
||||
if (permissionProvider != null) {
|
||||
permissions = permissionProvider.getProvider();
|
||||
}
|
||||
return (permissions != null);
|
||||
}
|
||||
|
||||
private boolean setupChat(Server s) {
|
||||
RegisteredServiceProvider<Chat> chatProvider = s.getServicesManager()
|
||||
.getRegistration(net.milkbowl.vault.chat.Chat.class);
|
||||
if (chatProvider != null) {
|
||||
chat = chatProvider.getProvider();
|
||||
}
|
||||
return (chat != null);
|
||||
}
|
||||
|
||||
private boolean setupEconomy(Server s) {
|
||||
RegisteredServiceProvider<Economy> economyProvider = s
|
||||
.getServicesManager().getRegistration(
|
||||
net.milkbowl.vault.economy.Economy.class);
|
||||
if (economyProvider != null) {
|
||||
economy = economyProvider.getProvider();
|
||||
}
|
||||
return (economy != null);
|
||||
}
|
||||
|
||||
public String getPlayerGroup(Player player) {
|
||||
String group = permissions.getPrimaryGroup(player).toLowerCase();
|
||||
if (group == null) {
|
||||
return group;
|
||||
} else {
|
||||
return group.toLowerCase();
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public String getPlayerGroup(String player, String world) {
|
||||
String group = permissions.getPrimaryGroup(world, player);
|
||||
if (group == null) {
|
||||
return group;
|
||||
} else {
|
||||
return group.toLowerCase();
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@Override
|
||||
public double getBalance(String playerName) {
|
||||
return economy.getBalance(playerName);
|
||||
public boolean add(String playerName, double amount) {
|
||||
return economy.depositPlayer(playerName, amount).transactionSuccess();
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@@ -109,10 +44,93 @@ public class ResidenceVaultAdapter implements EconomyInterface,
|
||||
return economy.has(playerName, amount);
|
||||
}
|
||||
|
||||
public boolean chatOK() {
|
||||
return chat != null;
|
||||
}
|
||||
|
||||
public boolean economyOK() {
|
||||
return economy != null;
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@Override
|
||||
public boolean add(String playerName, double amount) {
|
||||
return economy.depositPlayer(playerName, amount).transactionSuccess();
|
||||
public double getBalance(String playerName) {
|
||||
return economy.getBalance(playerName);
|
||||
}
|
||||
|
||||
public String getChatName() {
|
||||
if (chat != null)
|
||||
return chat.getName();
|
||||
return "";
|
||||
}
|
||||
|
||||
public String getEconomyName() {
|
||||
if (economy != null)
|
||||
return economy.getName();
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "Vault";
|
||||
}
|
||||
|
||||
public String getPermissionsName() {
|
||||
if (permissions != null)
|
||||
return permissions.getName();
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPlayerGroup(Player player) {
|
||||
String group = permissions.getPrimaryGroup(player).toLowerCase();
|
||||
if (group == null)
|
||||
return group;
|
||||
else
|
||||
return group.toLowerCase();
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("deprecation")
|
||||
public String getPlayerGroup(String player, String world) {
|
||||
String group = permissions.getPrimaryGroup(world, player);
|
||||
if (group == null)
|
||||
return group;
|
||||
else
|
||||
return group.toLowerCase();
|
||||
}
|
||||
|
||||
public boolean permissionsOK() {
|
||||
if (permissions != null && !permissions.getName().equalsIgnoreCase("SuperPerms"))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean setupChat(Server s) {
|
||||
RegisteredServiceProvider<Chat> chatProvider = s.getServicesManager().getRegistration(
|
||||
net.milkbowl.vault.chat.Chat.class);
|
||||
if (chatProvider != null) {
|
||||
chat = chatProvider.getProvider();
|
||||
}
|
||||
return (chat != null);
|
||||
}
|
||||
|
||||
private boolean setupEconomy(Server s) {
|
||||
RegisteredServiceProvider<Economy> economyProvider = s.getServicesManager()
|
||||
.getRegistration(net.milkbowl.vault.economy.Economy.class);
|
||||
if (economyProvider != null) {
|
||||
economy = economyProvider.getProvider();
|
||||
}
|
||||
return (economy != null);
|
||||
}
|
||||
|
||||
private boolean setupPermissions(Server s) {
|
||||
RegisteredServiceProvider<Permission> permissionProvider = s.getServicesManager()
|
||||
.getRegistration(net.milkbowl.vault.permission.Permission.class);
|
||||
if (permissionProvider != null) {
|
||||
permissions = permissionProvider.getProvider();
|
||||
}
|
||||
return (permissions != null);
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@@ -125,40 +143,14 @@ public class ResidenceVaultAdapter implements EconomyInterface,
|
||||
@Override
|
||||
public boolean transfer(String playerFrom, String playerTo, double amount) {
|
||||
if (economy.withdrawPlayer(playerFrom, amount).transactionSuccess()) {
|
||||
if (economy.depositPlayer(playerTo, amount).transactionSuccess()) {
|
||||
if (economy.depositPlayer(playerTo, amount).transactionSuccess())
|
||||
return true;
|
||||
} else {
|
||||
else {
|
||||
economy.depositPlayer(playerFrom, amount);
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
} else
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public String getEconomyName() {
|
||||
if (economy != null) {
|
||||
return economy.getName();
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public String getPermissionsName() {
|
||||
if (permissions != null) {
|
||||
return permissions.getName();
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public String getChatName() {
|
||||
if (chat != null) {
|
||||
return chat.getName();
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return "Vault";
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user