mirror of
https://e.coding.net/circlecloud/Residence.git
synced 2025-11-24 21:46:16 +00:00
clean up and release version...
Signed-off-by: 502647092 <jtb1@163.com>
This commit is contained in:
@@ -18,11 +18,9 @@ import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.jar.JarEntry;
|
||||
import java.util.jar.JarFile;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
@@ -103,23 +101,18 @@ public class Residence extends JavaPlugin {
|
||||
protected boolean init;
|
||||
protected Language language;
|
||||
protected LeaseManager leasemanager;
|
||||
protected Logger log;
|
||||
protected ResidencePlayerListener plistener;
|
||||
protected ResidencePlayerListener_1_8 plistener1_8;
|
||||
protected PermissionListManager pmanager;
|
||||
protected RentManager rentmanager;
|
||||
protected List<String> resadminToggle;
|
||||
protected ResidenceManager rmanager;
|
||||
protected Server server;
|
||||
protected SelectionManager smanager;
|
||||
protected TaskManager taskmanager;
|
||||
protected TransactionManager tmanager;
|
||||
protected boolean useWorldEdit;
|
||||
protected WorldFlagManager wmanager;
|
||||
|
||||
public Residence() {
|
||||
}
|
||||
|
||||
public ResidenceBlockListener getBlockListener() {
|
||||
return blistener;
|
||||
}
|
||||
@@ -172,10 +165,6 @@ public class Residence extends JavaPlugin {
|
||||
return leasemanager;
|
||||
}
|
||||
|
||||
public Logger getLog() {
|
||||
return log;
|
||||
}
|
||||
|
||||
public PermissionListManager getPermissionListManager() {
|
||||
return pmanager;
|
||||
}
|
||||
@@ -220,10 +209,6 @@ public class Residence extends JavaPlugin {
|
||||
return smanager;
|
||||
}
|
||||
|
||||
public Server getServ() {
|
||||
return server;
|
||||
}
|
||||
|
||||
public TransactionManager getTransactionManager() {
|
||||
return tmanager;
|
||||
}
|
||||
@@ -280,7 +265,7 @@ public class Residence extends JavaPlugin {
|
||||
File loadFile;
|
||||
final long time = System.currentTimeMillis();
|
||||
final HashMap<String, Object> worlds = new HashMap<String, Object>();
|
||||
for (final World world : server.getWorlds()) {
|
||||
for (final World world : this.getServer().getWorlds()) {
|
||||
loadFile = new File(worldFolder, "res_" + world.getName() + ".yml");
|
||||
if (loadFile.isFile()) {
|
||||
yml = new YMLSaveHelper(loadFile);
|
||||
@@ -325,7 +310,7 @@ public class Residence extends JavaPlugin {
|
||||
@Override
|
||||
public boolean onCommand(final CommandSender sender, final Command command, final String label, final String[] args) {
|
||||
final ResidenceCommandEvent cevent = new ResidenceCommandEvent(command.getName(), args, sender);
|
||||
server.getPluginManager().callEvent(cevent);
|
||||
this.getServer().getPluginManager().callEvent(cevent);
|
||||
if (cevent.isCancelled()) {
|
||||
return true;
|
||||
}
|
||||
@@ -335,10 +320,11 @@ public class Residence extends JavaPlugin {
|
||||
@Override
|
||||
public void onDisable() {
|
||||
taskmanager.cancelall();
|
||||
final DataBackup backup = new DataBackup(this);
|
||||
if (init) {
|
||||
try {
|
||||
saveYml();
|
||||
DataBackup.run(this);
|
||||
backup.backup();
|
||||
} catch (final Exception ex) {
|
||||
this.getLogger().warning("领地数据保存错误,可能造成部分领地丢失,请尝试恢复备份文件!");
|
||||
this.getLogger().warning("错误: " + ex);
|
||||
@@ -349,12 +335,10 @@ public class Residence extends JavaPlugin {
|
||||
@Override
|
||||
public void onEnable() {
|
||||
try {
|
||||
log = this.getLogger();
|
||||
bukkitver = Float.parseFloat(this.getServer().getBukkitVersion().substring(0, 3));
|
||||
init = false;
|
||||
deleteConfirm = new HashMap<String, String>();
|
||||
resadminToggle = new ArrayList<String>();
|
||||
server = this.getServer();
|
||||
dataFolder = this.getDataFolder();
|
||||
if (!dataFolder.isDirectory()) {
|
||||
dataFolder.mkdirs();
|
||||
@@ -362,11 +346,11 @@ public class Residence extends JavaPlugin {
|
||||
cmanager = new ConfigManager(this);
|
||||
final String multiworld = cmanager.getMultiworldPlugin();
|
||||
if (multiworld != null) {
|
||||
final Plugin plugin = server.getPluginManager().getPlugin(multiworld);
|
||||
final Plugin plugin = this.getServer().getPluginManager().getPlugin(multiworld);
|
||||
if (plugin != null) {
|
||||
if (!plugin.isEnabled()) {
|
||||
this.getLogger().info(" - 加载多世界插件: " + multiworld);
|
||||
server.getPluginManager().enablePlugin(plugin);
|
||||
this.getServer().getPluginManager().enablePlugin(plugin);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -445,8 +429,8 @@ public class Residence extends JavaPlugin {
|
||||
return;
|
||||
}
|
||||
FlagPermissions.initValidFlags();
|
||||
final Plugin p = server.getPluginManager().getPlugin("WorldEdit");
|
||||
if (p != null) {
|
||||
final Plugin wep = this.getServer().getPluginManager().getPlugin("WorldEdit");
|
||||
if (wep != null) {
|
||||
smanager = new WorldEditSelectionManager(this);
|
||||
useWorldEdit = true;
|
||||
this.getLogger().info("发现 WorldEdit");
|
||||
@@ -470,13 +454,13 @@ public class Residence extends JavaPlugin {
|
||||
|
||||
firstenable = false;
|
||||
} else {
|
||||
plistener.reload();
|
||||
plistener = new ResidencePlayerListener(this);
|
||||
}
|
||||
|
||||
fmanager = new FlagManager(this);
|
||||
fmanager.init();
|
||||
|
||||
taskmanager.add(server.getScheduler().runTaskTimer(this, new HealTask(this), 20, 20));
|
||||
taskmanager.add(this.getServer().getScheduler().runTaskTimer(this, new HealTask(this), 20, 20));
|
||||
|
||||
hdmcnd = new HandlerMainCommand(this);
|
||||
hdmcnd.registerCommand(new CommandRc(this));
|
||||
@@ -487,16 +471,17 @@ public class Residence extends JavaPlugin {
|
||||
|
||||
int autosaveInt = cmanager.getAutoSaveInterval();
|
||||
autosaveInt = autosaveInt < 1 ? 1 : autosaveInt * 60 * 20;
|
||||
taskmanager.add(server.getScheduler().runTaskTimer(this, new AutoSaveTask(this), autosaveInt, autosaveInt));
|
||||
taskmanager.add(this.getServer().getScheduler().runTaskTimer(this, new AutoSaveTask(this), autosaveInt, autosaveInt));
|
||||
|
||||
if (cmanager.useLeases()) {
|
||||
int leaseInterval = cmanager.getLeaseCheckInterval();
|
||||
leaseInterval = leaseInterval < 1 ? 1 : leaseInterval * 60 * 20;
|
||||
taskmanager.add(server.getScheduler().runTaskTimer(this, new LeaseTask(this), leaseInterval, leaseInterval));
|
||||
taskmanager.add(this.getServer().getScheduler().runTaskTimer(this, new LeaseTask(this), leaseInterval, leaseInterval));
|
||||
}
|
||||
if (cmanager.enabledRentSystem()) {
|
||||
int rentint = cmanager.getRentCheckInterval();
|
||||
rentint = rentint < 1 ? 1 : rentint * 60 * 20;
|
||||
taskmanager.add(server.getScheduler().runTaskTimer(this, new RentTask(this), rentint, rentint));
|
||||
taskmanager.add(this.getServer().getScheduler().runTaskTimer(this, new RentTask(this), rentint, rentint));
|
||||
}
|
||||
for (final Player player : Bukkit.getServer().getOnlinePlayers()) {
|
||||
if (this.getPermissionManager().isResidenceAdmin(player)) {
|
||||
@@ -525,7 +510,7 @@ public class Residence extends JavaPlugin {
|
||||
}
|
||||
|
||||
public void reloadPlugin() {
|
||||
final PluginManager pm = server.getPluginManager();
|
||||
final PluginManager pm = this.getServer().getPluginManager();
|
||||
pm.disablePlugin(this);
|
||||
pm.enablePlugin(this);
|
||||
}
|
||||
@@ -547,7 +532,7 @@ public class Residence extends JavaPlugin {
|
||||
final File tmpFile = new File(worldFolder, "tmp_res_" + entry.getKey() + ".yml");
|
||||
yml = new YMLSaveHelper(tmpFile);
|
||||
yml.getRoot().put("Version", saveVersion);
|
||||
final World world = server.getWorld(entry.getKey());
|
||||
final World world = this.getServer().getWorld(entry.getKey());
|
||||
if (world != null) {
|
||||
yml.getRoot().put("Seed", world.getSeed());
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import java.util.List;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceChatEvent;
|
||||
@@ -22,20 +23,22 @@ import com.bekvon.bukkit.residence.event.ResidenceChatEvent;
|
||||
public class ChatChannel {
|
||||
|
||||
protected List<String> members;
|
||||
protected String name;
|
||||
protected Residence plugin;
|
||||
protected final String name;
|
||||
protected final Residence plugin;
|
||||
protected final PluginManager pm;
|
||||
|
||||
public ChatChannel(final Residence plugin, final String channelName) {
|
||||
this.plugin = plugin;
|
||||
pm = plugin.getServer().getPluginManager();
|
||||
name = channelName;
|
||||
members = new ArrayList<String>();
|
||||
}
|
||||
|
||||
public void chat(final String sourcePlayer, final String message) {
|
||||
final Server serv = plugin.getServ();
|
||||
final Server serv = plugin.getServer();
|
||||
final ChatColor color = plugin.getConfigManager().getChatColor();
|
||||
final ResidenceChatEvent cevent = new ResidenceChatEvent(plugin.getResidenceManager().getByName(name), serv.getPlayer(sourcePlayer), message, color);
|
||||
plugin.getServ().getPluginManager().callEvent(cevent);
|
||||
pm.callEvent(cevent);
|
||||
if (cevent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
@@ -45,7 +48,7 @@ public class ChatChannel {
|
||||
player.sendMessage(cevent.getColor() + sourcePlayer + ": " + cevent.getChatMessage());
|
||||
}
|
||||
}
|
||||
System.out.println("ResidentialChat[" + name + "] - " + sourcePlayer + ": " + cevent.getChatMessage());
|
||||
plugin.getLogger().info("ResidentialChat[" + name + "] - " + sourcePlayer + ": " + cevent.getChatMessage());
|
||||
}
|
||||
|
||||
public boolean hasMember(final String player) {
|
||||
|
||||
@@ -8,8 +8,6 @@ package com.bekvon.bukkit.residence.chat;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.bukkit.Server;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
|
||||
/**
|
||||
@@ -20,10 +18,8 @@ public class ChatManager {
|
||||
|
||||
protected Map<String, ChatChannel> channelmap;
|
||||
protected Residence plugin;
|
||||
protected Server server;
|
||||
|
||||
public ChatManager(final Residence plugin) {
|
||||
server = plugin.getServ();
|
||||
channelmap = new HashMap<String, ChatChannel>();
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,6 @@ public class CommandListHidden extends BaseCommand {
|
||||
public CommandListHidden(final Residence plugin) {
|
||||
super("listhidden");
|
||||
this.plugin = plugin;
|
||||
setOnlyPlayerExecutable(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -19,8 +19,8 @@ public class CommandLists extends BaseCommand {
|
||||
public CommandLists(final Residence plugin) {
|
||||
super("lists");
|
||||
this.plugin = plugin;
|
||||
setOnlyPlayerExecutable(true);
|
||||
setMinimumArguments(1);
|
||||
setOnlyPlayerExecutable(true);
|
||||
setPossibleArguments("用法: /res lists ? 查看帮助");
|
||||
}
|
||||
|
||||
@@ -37,12 +37,12 @@ public class CommandLists extends BaseCommand {
|
||||
pmanager.printLists(player);
|
||||
return;
|
||||
case "add":
|
||||
if (args.length != 2) {
|
||||
if (args.length == 2) {
|
||||
pmanager.makeList(player, listname);
|
||||
}
|
||||
return;
|
||||
case "remove":
|
||||
if (args.length != 2) {
|
||||
if (args.length == 2) {
|
||||
pmanager.removeList(player, listname);
|
||||
}
|
||||
return;
|
||||
@@ -53,25 +53,24 @@ public class CommandLists extends BaseCommand {
|
||||
return;
|
||||
case "set":
|
||||
if (args.length == 4) {
|
||||
pmanager.getList(player.getName(), listname).setFlag(args[3], FlagPermissions.stringToFlagState(args[4]));
|
||||
pmanager.getList(player.getName(), listname).setFlag(args[2], FlagPermissions.stringToFlagState(args[3]));
|
||||
player.sendMessage(ChatColor.GREEN + language.getPhrase("FlagSet"));
|
||||
}
|
||||
return;
|
||||
case "pset":
|
||||
if (args.length != 5) {
|
||||
pmanager.getList(player.getName(), listname).setGroupFlag(args[3], args[4], FlagPermissions.stringToFlagState(args[5]));
|
||||
if (args.length == 5) {
|
||||
pmanager.getList(player.getName(), listname).setGroupFlag(args[2], args[3], FlagPermissions.stringToFlagState(args[4]));
|
||||
player.sendMessage(ChatColor.GREEN + language.getPhrase("FlagSet"));
|
||||
}
|
||||
return;
|
||||
|
||||
case "gset":
|
||||
if (args.length != 5) {
|
||||
pmanager.getList(player.getName(), listname).setPlayerFlag(args[3], args[4], FlagPermissions.stringToFlagState(args[5]));
|
||||
if (args.length == 5) {
|
||||
pmanager.getList(player.getName(), listname).setPlayerFlag(args[2], args[3], FlagPermissions.stringToFlagState(args[4]));
|
||||
player.sendMessage(ChatColor.GREEN + language.getPhrase("FlagSet"));
|
||||
}
|
||||
return;
|
||||
case "view":
|
||||
if (args.length != 2) {
|
||||
if (args.length == 2) {
|
||||
pmanager.printList(player, listname);
|
||||
}
|
||||
return;
|
||||
|
||||
@@ -13,7 +13,6 @@ import java.util.Map.Entry;
|
||||
import java.util.Set;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
@@ -93,7 +92,6 @@ public class TransactionManager {
|
||||
player.sendMessage(ChatColor.RED + plugin.getLanguage().getPhrase("ResidenceTooMany"));
|
||||
return;
|
||||
}
|
||||
final Server serv = plugin.getServ();
|
||||
final int amount = sellAmount.get(areaname);
|
||||
if (!resadmin) {
|
||||
if (!group.buyLandIgnoreLimits()) {
|
||||
@@ -113,7 +111,7 @@ public class TransactionManager {
|
||||
}
|
||||
final String buyerName = player.getName();
|
||||
String sellerName = res.getPermissions().getOwner();
|
||||
final Player sellerNameFix = plugin.getServ().getPlayer(sellerName);
|
||||
final Player sellerNameFix = plugin.getServer().getPlayer(sellerName);
|
||||
if (sellerNameFix != null) {
|
||||
sellerName = sellerNameFix.getName();
|
||||
}
|
||||
@@ -128,7 +126,7 @@ public class TransactionManager {
|
||||
player.sendMessage(ChatColor.GREEN
|
||||
+ plugin.getLanguage().getPhrase("MoneyCharged", ChatColor.YELLOW + String.format("%d", amount) + ChatColor.GREEN + "." + ChatColor.YELLOW + econ.getName() + ChatColor.GREEN));
|
||||
player.sendMessage(ChatColor.GREEN + plugin.getLanguage().getPhrase("ResidenceBought", ChatColor.GREEN + areaname + ChatColor.YELLOW));
|
||||
final Player seller = serv.getPlayer(sellerName);
|
||||
final Player seller = plugin.getServer().getPlayer(sellerName);
|
||||
if (seller != null && seller.isOnline()) {
|
||||
seller.sendMessage(ChatColor.GREEN
|
||||
+ plugin.getLanguage().getPhrase("ResidenceBuy", ChatColor.YELLOW + player.getName() + ChatColor.GREEN + "." + ChatColor.YELLOW + areaname + ChatColor.GREEN));
|
||||
|
||||
@@ -14,6 +14,7 @@ import java.util.Set;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceRentEvent;
|
||||
@@ -27,12 +28,14 @@ import com.bekvon.bukkit.residence.protection.FlagPermissions.FlagState;
|
||||
* @author Administrator
|
||||
*/
|
||||
public class RentManager {
|
||||
protected Residence plugin;
|
||||
protected PluginManager pm;
|
||||
protected Map<String, RentableLand> rentableLand;
|
||||
protected Map<String, RentedLand> rentedLand;
|
||||
Residence plugin;
|
||||
|
||||
public RentManager(final Residence plugin) {
|
||||
this.plugin = plugin;
|
||||
pm = plugin.getServer().getPluginManager();
|
||||
rentedLand = new HashMap<String, RentedLand>();
|
||||
rentableLand = new HashMap<String, RentableLand>();
|
||||
}
|
||||
@@ -65,7 +68,7 @@ public class RentManager {
|
||||
}
|
||||
if (res != null) {
|
||||
final ResidenceRentEvent revent = new ResidenceRentEvent(res, null, RentEventType.RENT_EXPIRE);
|
||||
plugin.getServ().getPluginManager().callEvent(revent);
|
||||
pm.callEvent(revent);
|
||||
if (!revent.isCancelled()) {
|
||||
final RentableLand rentable = rentableLand.get(next.getKey());
|
||||
if (!rentable.repeatable) {
|
||||
@@ -195,7 +198,7 @@ public class RentManager {
|
||||
}
|
||||
if (resadmin || rent.player.equalsIgnoreCase(player.getName())) {
|
||||
final ResidenceRentEvent revent = new ResidenceRentEvent(plugin.getResidenceManager().getByName(landName), player, RentEventType.UNRENTABLE);
|
||||
plugin.getServ().getPluginManager().callEvent(revent);
|
||||
pm.callEvent(revent);
|
||||
if (revent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
@@ -257,7 +260,7 @@ public class RentManager {
|
||||
final RentableLand land = rentableLand.get(landName);
|
||||
if (plugin.getEconomyManager().canAfford(player.getName(), land.cost)) {
|
||||
final ResidenceRentEvent revent = new ResidenceRentEvent(res, player, RentEventType.RENT);
|
||||
plugin.getServ().getPluginManager().callEvent(revent);
|
||||
pm.callEvent(revent);
|
||||
if (revent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
@@ -326,7 +329,7 @@ public class RentManager {
|
||||
}
|
||||
if (!rentableLand.containsKey(landName)) {
|
||||
final ResidenceRentEvent revent = new ResidenceRentEvent(res, player, RentEventType.RENTABLE);
|
||||
plugin.getServ().getPluginManager().callEvent(revent);
|
||||
pm.callEvent(revent);
|
||||
if (revent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
@@ -395,7 +398,7 @@ public class RentManager {
|
||||
}
|
||||
if (rentableLand.containsKey(landName)) {
|
||||
final ResidenceRentEvent revent = new ResidenceRentEvent(res, player, RentEventType.UNRENT);
|
||||
plugin.getServ().getPluginManager().callEvent(revent);
|
||||
pm.callEvent(revent);
|
||||
if (revent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ public class ResidencePlayerListener implements Listener {
|
||||
|
||||
// New ResidenceChangeEvent
|
||||
final ResidenceChangedEvent chgEvent = new ResidenceChangedEvent(ResOld, null, player);
|
||||
plugin.getServ().getPluginManager().callEvent(chgEvent);
|
||||
plugin.getServer().getPluginManager().callEvent(chgEvent);
|
||||
|
||||
if (leave != null && !leave.equals("")) {
|
||||
if (plugin.getConfigManager().useActionBar()) {
|
||||
@@ -159,7 +159,7 @@ public class ResidencePlayerListener implements Listener {
|
||||
|
||||
// New ResidenceChangedEvent
|
||||
final ResidenceChangedEvent chgEvent = new ResidenceChangedEvent(chgFrom, res, player);
|
||||
plugin.getServ().getPluginManager().callEvent(chgEvent);
|
||||
plugin.getServer().getPluginManager().callEvent(chgEvent);
|
||||
|
||||
if (enterMessage != null && !enterMessage.equals("") && !(ResOld != null && res == ResOld.getParent())) {
|
||||
if (plugin.getConfigManager().useActionBar()) {
|
||||
@@ -539,18 +539,6 @@ public class ResidencePlayerListener implements Listener {
|
||||
handleNewLocation(player, loc, false);
|
||||
}
|
||||
|
||||
public void reload() {
|
||||
currentRes = new HashMap<String, String>();
|
||||
lastUpdate = new HashMap<String, Long>();
|
||||
lastOutsideLoc = new HashMap<String, Location>();
|
||||
playerToggleChat = new ArrayList<String>();
|
||||
minUpdateTime = plugin.getConfigManager().getMinMoveUpdateInterval();
|
||||
chatenabled = plugin.getConfigManager().chatEnabled();
|
||||
for (final Player player : Bukkit.getServer().getOnlinePlayers()) {
|
||||
lastUpdate.put(player.getName(), System.currentTimeMillis());
|
||||
}
|
||||
}
|
||||
|
||||
public void tooglePlayerResidenceChat(final Player player) {
|
||||
final String pname = player.getName();
|
||||
if (playerToggleChat.contains(pname)) {
|
||||
|
||||
@@ -43,8 +43,8 @@ public class PermissionManager {
|
||||
this.checkPermissions();
|
||||
}
|
||||
} catch (final Exception ex) {
|
||||
plugin.getLog().warning("权限管理载入失败,请报告以下错误给作者,谢谢!");
|
||||
plugin.getLog().warning("错误: " + ex);
|
||||
plugin.getLogger().warning("权限管理载入失败,请报告以下错误给作者,谢谢!");
|
||||
plugin.getLogger().warning("错误: " + ex);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -112,19 +112,19 @@ public class PermissionManager {
|
||||
}
|
||||
|
||||
private void checkPermissions() {
|
||||
final Server server = plugin.getServ();
|
||||
final Server server = plugin.getServer();
|
||||
final Plugin p = server.getPluginManager().getPlugin("Vault");
|
||||
if (p != null) {
|
||||
final ResidenceVaultAdapter vault = new ResidenceVaultAdapter(server);
|
||||
if (vault.permissionsOK()) {
|
||||
perms = vault;
|
||||
plugin.getLog().info("发现 Vault 使用权限系统:" + vault.getPermissionsName());
|
||||
plugin.getLogger().info("发现 Vault 使用权限系统:" + vault.getPermissionsName());
|
||||
return;
|
||||
} else {
|
||||
plugin.getLog().info("发现 Vault, 但是 Vault 未找到权限系统...");
|
||||
plugin.getLogger().info("发现 Vault, 但是 Vault 未找到权限系统...");
|
||||
}
|
||||
}
|
||||
plugin.getLog().warning("权限系统未找到!");
|
||||
plugin.getLogger().warning("权限系统未找到!");
|
||||
}
|
||||
|
||||
private void readConfig(final FileConfiguration config) {
|
||||
@@ -141,7 +141,7 @@ public class PermissionManager {
|
||||
groups.put(group.toLowerCase(), new PermissionGroup(plugin, key.toLowerCase(), nodes.getConfigurationSection(key), globalFlagPerms));
|
||||
}
|
||||
} catch (final Exception ex) {
|
||||
plugin.getLog().info("错误 从配置文件读取:" + key + " 抛出异常:" + ex);
|
||||
plugin.getLogger().info("错误 从配置文件读取:" + key + " 抛出异常:" + ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -74,13 +74,13 @@ public class LeaseManager {
|
||||
res.getBank().subtract(cost);
|
||||
renewed = true;
|
||||
if (plugin.getConfigManager().debugEnabled()) {
|
||||
System.out.println("Lease Renewed From Residence Bank: " + resname);
|
||||
plugin.getLogger().info("Lease Renewed From Residence Bank: " + resname);
|
||||
}
|
||||
} else if (plugin.getEconomyManager().canAfford(owner, cost)) {
|
||||
if (plugin.getEconomyManager().subtract(owner, cost)) {
|
||||
renewed = true;
|
||||
if (plugin.getConfigManager().debugEnabled()) {
|
||||
System.out.println("Lease Renewed From Economy: " + resname);
|
||||
plugin.getLogger().info("Lease Renewed From Economy: " + resname);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -88,12 +88,12 @@ public class LeaseManager {
|
||||
if (!renewed) {
|
||||
if (!plugin.getConfigManager().enabledRentSystem() || !plugin.getRentManager().isRented(resname)) {
|
||||
final ResidenceDeleteEvent resevent = new ResidenceDeleteEvent(null, res, DeleteCause.LEASE_EXPIRE);
|
||||
plugin.getServ().getPluginManager().callEvent(resevent);
|
||||
plugin.getServer().getPluginManager().callEvent(resevent);
|
||||
if (!resevent.isCancelled()) {
|
||||
manager.removeResidence(next.getKey());
|
||||
it.remove();
|
||||
if (plugin.getConfigManager().debugEnabled()) {
|
||||
System.out.println("Lease NOT removed, Removing: " + resname);
|
||||
plugin.getLogger().info("Lease NOT removed, Removing: " + resname);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -102,11 +102,11 @@ public class LeaseManager {
|
||||
plugin.getEconomyManager().add("Lease Money", cost);
|
||||
}
|
||||
if (plugin.getConfigManager().debugEnabled()) {
|
||||
System.out.println("Lease Renew Old: " + next.getValue());
|
||||
plugin.getLogger().info("Lease Renew Old: " + next.getValue());
|
||||
}
|
||||
next.setValue(System.currentTimeMillis() + daysToMs(limits.getLeaseGiveTime()));
|
||||
if (plugin.getConfigManager().debugEnabled()) {
|
||||
System.out.println("Lease Renew New: " + next.getValue());
|
||||
plugin.getLogger().info("Lease Renew New: " + next.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -151,12 +151,7 @@ public class LeaseManager {
|
||||
final ClaimedResidence res = manager.getByName(area);
|
||||
final int amount = (int) Math.ceil(res.getTotalSize() * cost);
|
||||
if (cost != 0D) {
|
||||
// Account account =
|
||||
// iConomy.getBank().getAccount(player.getName());
|
||||
if (econ.canAfford(player.getName(), amount)/*
|
||||
* account.hasEnough(
|
||||
* amount)
|
||||
*/) {
|
||||
if (econ.canAfford(player.getName(), amount)) {
|
||||
econ.subtract(player.getName(), amount);
|
||||
econ.add("Lease Money", amount);
|
||||
player.sendMessage(ChatColor.GREEN + plugin.getLanguage().getPhrase("MoneyCharged",
|
||||
@@ -193,7 +188,7 @@ public class LeaseManager {
|
||||
this.setExpireTime(null, element, group.getLeaseGiveTime());
|
||||
}
|
||||
}
|
||||
System.out.println("[Residence] - Set default leases.");
|
||||
plugin.getLogger().info(" - Set default leases.");
|
||||
}
|
||||
|
||||
public Map<String, Long> save() {
|
||||
|
||||
@@ -21,6 +21,7 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceCreationEvent;
|
||||
@@ -37,13 +38,13 @@ import com.bekvon.bukkit.residence.text.help.InformationPager;
|
||||
*/
|
||||
public class ResidenceManager {
|
||||
protected Map<String, Map<ChunkRef, List<String>>> chunkResidences;
|
||||
|
||||
protected Residence plugin;
|
||||
protected PluginManager pm;
|
||||
protected Map<String, ClaimedResidence> residences;
|
||||
|
||||
Residence plugin;
|
||||
|
||||
public ResidenceManager(final Residence plugin) {
|
||||
this.plugin = plugin;
|
||||
pm = plugin.getServer().getPluginManager();
|
||||
residences = new HashMap<String, ClaimedResidence>();
|
||||
chunkResidences = new HashMap<String, Map<ChunkRef, List<String>>>();
|
||||
}
|
||||
@@ -54,13 +55,13 @@ public class ResidenceManager {
|
||||
if (root == null) {
|
||||
return resm;
|
||||
}
|
||||
for (final World world : plugin.getServ().getWorlds()) {
|
||||
for (final World world : plugin.getServer().getWorlds()) {
|
||||
final Map<String, Object> reslist = (Map<String, Object>) root.get(world.getName());
|
||||
if (reslist != null) {
|
||||
try {
|
||||
resm.chunkResidences.put(world.getName(), loadMap(plugin, reslist, resm));
|
||||
} catch (final Exception ex) {
|
||||
plugin.getLog().warning("载入世界: " + world.getName() + "的领地数据时发生错误!");
|
||||
plugin.getLogger().warning("载入世界: " + world.getName() + "的领地数据时发生错误!");
|
||||
if (plugin.getConfigManager().stopOnSaveError()) {
|
||||
throw (ex);
|
||||
}
|
||||
@@ -144,7 +145,7 @@ public class ResidenceManager {
|
||||
newRes.setLeaveMessage(group.getDefaultLeaveMessage());
|
||||
|
||||
final ResidenceCreationEvent resevent = new ResidenceCreationEvent(player, name, newRes, newArea);
|
||||
plugin.getServ().getPluginManager().callEvent(resevent);
|
||||
pm.callEvent(resevent);
|
||||
if (resevent.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
@@ -366,7 +367,7 @@ public class ResidenceManager {
|
||||
reqPlayer.sendMessage(ChatColor.RED + plugin.getLanguage().getPhrase("NoPermission"));
|
||||
return;
|
||||
}
|
||||
final Player giveplayer = plugin.getServ().getPlayer(targPlayer);
|
||||
final Player giveplayer = plugin.getServer().getPlayer(targPlayer);
|
||||
if (giveplayer == null || !giveplayer.isOnline()) {
|
||||
reqPlayer.sendMessage(ChatColor.RED + plugin.getLanguage().getPhrase("NotOnline"));
|
||||
return;
|
||||
@@ -557,7 +558,7 @@ public class ResidenceManager {
|
||||
}
|
||||
}
|
||||
final ResidenceDeleteEvent resevent = new ResidenceDeleteEvent(player, res, player == null ? DeleteCause.OTHER : DeleteCause.PLAYER_DELETE);
|
||||
plugin.getServ().getPluginManager().callEvent(resevent);
|
||||
pm.callEvent(resevent);
|
||||
if (resevent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
@@ -611,7 +612,7 @@ public class ResidenceManager {
|
||||
return false;
|
||||
}
|
||||
final ResidenceRenameEvent resevent = new ResidenceRenameEvent(res, newName, oldName);
|
||||
plugin.getServ().getPluginManager().callEvent(resevent);
|
||||
pm.callEvent(resevent);
|
||||
removeChunkList(oldName);
|
||||
residences.put(newName, res);
|
||||
residences.remove(oldName);
|
||||
@@ -646,7 +647,7 @@ public class ResidenceManager {
|
||||
|
||||
public Map<String, Object> save() {
|
||||
final Map<String, Object> worldmap = new LinkedHashMap<String, Object>();
|
||||
for (final World world : plugin.getServ().getWorlds()) {
|
||||
for (final World world : plugin.getServer().getWorlds()) {
|
||||
final Map<String, Object> resmap = new LinkedHashMap<String, Object>();
|
||||
for (final Entry<String, ClaimedResidence> res : residences.entrySet()) {
|
||||
if (res.getValue().getWorld().equals(world.getName())) {
|
||||
@@ -688,7 +689,7 @@ public class ResidenceManager {
|
||||
final ClaimedResidence res = it.next();
|
||||
if (res.getOwner().equalsIgnoreCase(owner)) {
|
||||
final ResidenceDeleteEvent resevent = new ResidenceDeleteEvent(player, res, player == null ? DeleteCause.OTHER : DeleteCause.PLAYER_DELETE);
|
||||
plugin.getServ().getPluginManager().callEvent(resevent);
|
||||
pm.callEvent(resevent);
|
||||
if (resevent.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import java.util.Set;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
|
||||
import com.bekvon.bukkit.residence.Residence;
|
||||
import com.bekvon.bukkit.residence.event.ResidenceFlagChangeEvent;
|
||||
@@ -30,7 +31,7 @@ import com.bekvon.bukkit.residence.permissions.PermissionManager;
|
||||
public class ResidencePermissions extends FlagPermissions {
|
||||
|
||||
protected String owner;
|
||||
|
||||
protected PluginManager pm;
|
||||
protected ClaimedResidence residence;
|
||||
protected String world;
|
||||
Residence plugin;
|
||||
@@ -38,6 +39,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
public ResidencePermissions(final Residence plugin, final ClaimedResidence res) {
|
||||
super(plugin);
|
||||
this.plugin = plugin;
|
||||
this.pm = plugin.getServer().getPluginManager();
|
||||
residence = res;
|
||||
}
|
||||
|
||||
@@ -54,7 +56,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
newperms.owner = (String) root.get("OwnerLastKnownName");
|
||||
}
|
||||
if (newperms.owner == null) {
|
||||
plugin.getLog().warning("发现未知所有者的领地,转换为Server Land...");
|
||||
plugin.getLogger().warning("发现未知所有者的领地,转换为Server Land...");
|
||||
newperms.owner = "Server Land";
|
||||
}
|
||||
newperms.world = (String) root.get("World");
|
||||
@@ -227,7 +229,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
@Override
|
||||
public boolean groupHas(final String group, final String flag, final boolean def) {
|
||||
final ResidenceFlagCheckEvent fc = new ResidenceFlagCheckEvent(residence, flag, FlagType.GROUP, group, def);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isOverriden()) {
|
||||
return fc.getOverrideValue();
|
||||
}
|
||||
@@ -237,7 +239,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
@Override
|
||||
public boolean has(final String flag, final boolean def) {
|
||||
final ResidenceFlagCheckEvent fc = new ResidenceFlagCheckEvent(residence, flag, FlagType.RESIDENCE, null, def);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isOverriden()) {
|
||||
return fc.getOverrideValue();
|
||||
}
|
||||
@@ -276,7 +278,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
@Override
|
||||
public boolean playerHas(final String player, final String world, final String flag, final boolean def) {
|
||||
final ResidenceFlagCheckEvent fc = new ResidenceFlagCheckEvent(residence, flag, FlagType.PLAYER, player, def);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isOverriden()) {
|
||||
return fc.getOverrideValue();
|
||||
}
|
||||
@@ -286,7 +288,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
public boolean removeAllGroupFlags(final Player player, final String group, final boolean resadmin) {
|
||||
if (this.hasResidencePermission(player, false) || resadmin) {
|
||||
final ResidenceFlagChangeEvent fc = new ResidenceFlagChangeEvent(residence, player, "ALL", ResidenceFlagChangeEvent.FlagType.GROUP, FlagState.NEITHER, null);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
@@ -300,7 +302,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
public boolean removeAllPlayerFlags(final Player player, final String targetPlayer, final boolean resadmin) {
|
||||
if (this.hasResidencePermission(player, false) || resadmin) {
|
||||
final ResidenceFlagChangeEvent fc = new ResidenceFlagChangeEvent(residence, player, "ALL", ResidenceFlagChangeEvent.FlagType.RESIDENCE, FlagState.NEITHER, null);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
@@ -326,7 +328,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
final FlagState state = FlagPermissions.stringToFlagState(flagstate);
|
||||
if (checkCanSetFlag(player, flag, state, true, resadmin)) {
|
||||
final ResidenceFlagChangeEvent fc = new ResidenceFlagChangeEvent(residence, player, flag, ResidenceFlagChangeEvent.FlagType.RESIDENCE, state, null);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
@@ -341,7 +343,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
@Override
|
||||
public boolean setFlag(final String flag, final FlagState state) {
|
||||
final ResidenceFlagChangeEvent fc = new ResidenceFlagChangeEvent(residence, null, flag, ResidenceFlagChangeEvent.FlagType.RESIDENCE, state, null);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
@@ -399,7 +401,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
if (checkCanSetFlag(player, flag, state, false, resadmin)) {
|
||||
if (plugin.getPermissionManager().hasGroup(group)) {
|
||||
final ResidenceFlagChangeEvent fc = new ResidenceFlagChangeEvent(residence, player, flag, ResidenceFlagChangeEvent.FlagType.GROUP, state, group);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
@@ -418,7 +420,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
@Override
|
||||
public boolean setGroupFlag(final String group, final String flag, final FlagState state) {
|
||||
final ResidenceFlagChangeEvent fc = new ResidenceFlagChangeEvent(residence, null, flag, ResidenceFlagChangeEvent.FlagType.GROUP, state, group);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
@@ -427,7 +429,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
|
||||
public void setOwner(final String newOwner, final boolean resetFlags) {
|
||||
final ResidenceOwnerChangeEvent ownerchange = new ResidenceOwnerChangeEvent(residence, newOwner);
|
||||
plugin.getServ().getPluginManager().callEvent(ownerchange);
|
||||
pm.callEvent(ownerchange);
|
||||
owner = newOwner;
|
||||
if (resetFlags) {
|
||||
this.applyDefaultFlags();
|
||||
@@ -441,7 +443,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
final FlagState state = FlagPermissions.stringToFlagState(flagstate);
|
||||
if (checkCanSetFlag(player, flag, state, false, resadmin)) {
|
||||
final ResidenceFlagChangeEvent fc = new ResidenceFlagChangeEvent(residence, player, flag, ResidenceFlagChangeEvent.FlagType.PLAYER, state, targetPlayer);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
@@ -456,7 +458,7 @@ public class ResidencePermissions extends FlagPermissions {
|
||||
@Override
|
||||
public boolean setPlayerFlag(final String player, final String flag, final FlagState state) {
|
||||
final ResidenceFlagChangeEvent fc = new ResidenceFlagChangeEvent(residence, null, flag, ResidenceFlagChangeEvent.FlagType.PLAYER, state, player);
|
||||
plugin.getServ().getPluginManager().callEvent(fc);
|
||||
pm.callEvent(fc);
|
||||
if (fc.isCancelled()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ public class RentTask implements Runnable {
|
||||
public void run() {
|
||||
plugin.getRentManager().checkCurrentRents();
|
||||
if (plugin.getConfigManager().showIntervalMessages()) {
|
||||
plugin.getLog().info(" - Rent Expirations checked!");
|
||||
plugin.getLogger().info(" - Rent Expirations checked!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,11 +27,6 @@ public class DataBackup {
|
||||
BackupDir = new File(plugin.getDataLocation(), "Backup");
|
||||
}
|
||||
|
||||
public static void run(final Residence plugin) throws IOException {
|
||||
final DataBackup backup = new DataBackup(plugin);
|
||||
backup.backup();
|
||||
}
|
||||
|
||||
public void backup() throws IOException {
|
||||
try {
|
||||
BackupDir.mkdir();
|
||||
|
||||
Reference in New Issue
Block a user