Many changes for TFM 5.0

Improved admin system
Improved Rank system
Implemented config converter
Improved command handling
Updated Aero
This commit is contained in:
Jerom van der Sar
2016-03-06 16:56:15 +01:00
parent 055973aa37
commit 6edb6be7d9
153 changed files with 1105 additions and 1144 deletions

View File

@ -2,13 +2,13 @@ package me.totalfreedom.totalfreedommod.bridge;
import java.util.Iterator;
import java.util.Map;
import me.StevenLawson.BukkitTelnet.api.TelnetCommandEvent;
import me.StevenLawson.BukkitTelnet.api.TelnetPreLoginEvent;
import me.StevenLawson.BukkitTelnet.api.TelnetRequestDataTagsEvent;
import me.totalfreedom.bukkittelnet.api.TelnetCommandEvent;
import me.totalfreedom.bukkittelnet.api.TelnetPreLoginEvent;
import me.totalfreedom.bukkittelnet.api.TelnetRequestDataTagsEvent;
import me.totalfreedom.totalfreedommod.FreedomService;
import me.totalfreedom.totalfreedommod.admin.Admin;
import me.totalfreedom.totalfreedommod.rank.PlayerRank;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
import me.totalfreedom.totalfreedommod.admin.Admin;
import me.totalfreedom.totalfreedommod.rank.Rank;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
@ -43,7 +43,7 @@ public class BukkitTelnetBridge extends FreedomService
final Admin admin = plugin.al.getEntryByIp(ip, true);
if (admin == null || !admin.isActivated() || !admin.getRank().hasConsole())
if (admin == null || !admin.isActive() || !admin.getRank().hasConsole())
{
return;
}
@ -78,11 +78,11 @@ public class BukkitTelnetBridge extends FreedomService
final Admin admin = plugin.al.getAdmin(player);
if (admin != null)
{
boolean isActivated = admin.isActivated();
boolean active = admin.isActive();
isAdmin = isActivated;
isSeniorAdmin = isActivated && admin.getRank() == PlayerRank.SENIOR_ADMIN;
isTelnetAdmin = isActivated && (isSeniorAdmin || admin.getRank() == PlayerRank.TELNET_ADMIN);
isAdmin = active;
isSeniorAdmin = active && admin.getRank() == Rank.SENIOR_ADMIN;
isTelnetAdmin = active && (isSeniorAdmin || admin.getRank() == Rank.TELNET_ADMIN);
}
playerTags.put("tfm.admin.isAdmin", isAdmin);

View File

@ -3,9 +3,9 @@ package me.totalfreedom.totalfreedommod.bridge;
import com.earth2me.essentials.Essentials;
import com.earth2me.essentials.User;
import me.totalfreedom.totalfreedommod.FreedomService;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
import me.totalfreedom.totalfreedommod.util.FLog;
import me.totalfreedom.totalfreedommod.util.FUtil;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;

View File

@ -4,41 +4,50 @@ import com.sk89q.worldedit.LocalSession;
import com.sk89q.worldedit.bukkit.BukkitPlayer;
import com.sk89q.worldedit.bukkit.WorldEditPlugin;
import me.totalfreedom.totalfreedommod.FreedomService;
import me.totalfreedom.totalfreedommod.util.FLog;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
import org.bukkit.Bukkit;
import me.totalfreedom.totalfreedommod.util.FLog;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
public class WorldEditBridge extends FreedomService
{
private final WorldEditListener listener;
//
private WorldEditPlugin worldedit = null;
public WorldEditBridge(TotalFreedomMod plugin)
{
super(plugin);
listener = new WorldEditListener(plugin);
}
@Override
protected void onStart()
{
listener.register();
}
@Override
protected void onStop()
{
listener.unregister();
}
private WorldEditPlugin getWorldEditPlugin()
public void undo(Player player, int count)
{
WorldEditPlugin worldEditPlugin = null;
try
{
Plugin we = Bukkit.getServer().getPluginManager().getPlugin("WorldEdit");
if (we != null)
LocalSession session = getPlayerSession(player);
if (session != null)
{
if (we instanceof WorldEditPlugin)
final BukkitPlayer bukkitPlayer = getBukkitPlayer(player);
if (bukkitPlayer != null)
{
worldEditPlugin = (WorldEditPlugin) we;
for (int i = 0; i < count; i++)
{
session.undo(session.getBlockBag(bukkitPlayer), bukkitPlayer);
}
}
}
}
@ -46,8 +55,47 @@ public class WorldEditBridge extends FreedomService
{
FLog.severe(ex);
}
}
private WorldEditPlugin getWorldEditPlugin()
{
if (worldedit == null)
{
try
{
Plugin we = server.getPluginManager().getPlugin("WorldEdit");
if (we != null)
{
if (we instanceof WorldEditPlugin)
{
worldedit = (WorldEditPlugin) we;
}
}
}
catch (Exception ex)
{
FLog.severe(ex);
}
}
return worldedit;
}
public void setLimit(Player player, int limit)
{
try
{
final LocalSession session = getPlayerSession(player);
if (session != null)
{
session.setBlockChangeLimit(limit);
}
}
catch (Exception ex)
{
FLog.severe(ex);
}
return worldEditPlugin;
}
private LocalSession getPlayerSession(Player player)
@ -87,43 +135,4 @@ public class WorldEditBridge extends FreedomService
return null;
}
}
public void undo(Player player, int count)
{
try
{
LocalSession session = getPlayerSession(player);
if (session != null)
{
final BukkitPlayer bukkitPlayer = getBukkitPlayer(player);
if (bukkitPlayer != null)
{
for (int i = 0; i < count; i++)
{
session.undo(session.getBlockBag(bukkitPlayer), bukkitPlayer);
}
}
}
}
catch (Exception ex)
{
FLog.severe(ex);
}
}
public void setLimit(Player player, int limit)
{
try
{
final LocalSession session = getPlayerSession(player);
if (session != null)
{
session.setBlockChangeLimit(limit);
}
}
catch (Exception ex)
{
FLog.severe(ex);
}
}
}

View File

@ -1,9 +1,9 @@
package me.totalfreedom.totalfreedommod.bridge;
import me.totalfreedom.totalfreedommod.util.FUtil;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
import me.StevenLawson.worldedit.LimitChangedEvent;
import me.StevenLawson.worldedit.SelectionChangedEvent;
import me.totalfreedom.totalfreedommod.util.FUtil;
import me.totalfreedom.worldedit.LimitChangedEvent;
import me.totalfreedom.worldedit.SelectionChangedEvent;
import net.pravian.aero.component.PluginListener;
import org.bukkit.ChatColor;
import org.bukkit.entity.Player;