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