Merge branch 'master' of ssh://dev1.mineplex.com:7999/min/mineplex
This commit is contained in:
commit
47feabcad3
|
@ -60,6 +60,8 @@ public class AntiHack extends MiniPlugin
|
|||
public int FlightTriggerCancel = 2000;
|
||||
|
||||
public ArrayList<Detector> _detectors;
|
||||
|
||||
private AntiHackRepository _repository;
|
||||
|
||||
protected AntiHack(JavaPlugin plugin, Punish punish, Portal portal)
|
||||
{
|
||||
|
@ -68,8 +70,8 @@ public class AntiHack extends MiniPlugin
|
|||
Punish = punish;
|
||||
Portal = portal;
|
||||
|
||||
//_repository = new AntiHackRepository(this, plugin.getConfig().getString("serverstatus.name"));
|
||||
//_repository.initialize();
|
||||
_repository = new AntiHackRepository(plugin.getConfig().getString("serverstatus.name"));
|
||||
_repository.initialize();
|
||||
|
||||
_detectors = new ArrayList<Detector>();
|
||||
|
||||
|
@ -187,23 +189,20 @@ public class AntiHack extends MiniPlugin
|
|||
public void addSuspicion(Player player, String type)
|
||||
{
|
||||
//Add Offense
|
||||
//synchronized (getOffensesSynch())
|
||||
{
|
||||
if (!_suspicion.containsKey(player))
|
||||
_suspicion.put(player, new HashMap<String, ArrayList<Long>>());
|
||||
if (!_suspicion.containsKey(player))
|
||||
_suspicion.put(player, new HashMap<String, ArrayList<Long>>());
|
||||
|
||||
if (!_suspicion.get(player).containsKey(type))
|
||||
_suspicion.get(player).put(type, new ArrayList<Long>());
|
||||
if (!_suspicion.get(player).containsKey(type))
|
||||
_suspicion.get(player).put(type, new ArrayList<Long>());
|
||||
|
||||
_suspicion.get(player).get(type).add(System.currentTimeMillis());
|
||||
}
|
||||
_suspicion.get(player).get(type).add(System.currentTimeMillis());
|
||||
|
||||
for (Player admin : UtilServer.getPlayers())
|
||||
if (admin.isOp() && admin.getGameMode() == GameMode.CREATIVE)
|
||||
UtilPlayer.message(admin, C.cGold + C.Bold + player.getName() + " suspected for " + type + ".");
|
||||
|
||||
//Print (Debug)
|
||||
//System.out.println("[Offense] " + player.getName() + " received suspicion for " + type + ".");
|
||||
// Print (Debug)
|
||||
System.out.println("[Offense] " + player.getName() + " received suspicion for " + type + ".");
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
|
@ -290,7 +289,7 @@ public class AntiHack extends MiniPlugin
|
|||
if (severity.equals("Extreme"))
|
||||
player.kickPlayer(C.cRed + "MAC" + C.cWhite + " - " + C.cYellow + "You were kicked for suspicious movement.");
|
||||
|
||||
//XXX Send to Database for Staff
|
||||
_repository.saveOffense(player, report, severity);
|
||||
}
|
||||
|
||||
private void ResetAll(Player player)
|
||||
|
@ -331,4 +330,9 @@ public class AntiHack extends MiniPlugin
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
public HashMap<Player, HashMap<String, ArrayList<Long>>> getOffenses()
|
||||
{
|
||||
return _offense;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,26 +4,23 @@ import java.sql.Connection;
|
|||
import java.sql.DriverManager;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.SQLException;
|
||||
import java.util.Map.Entry;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class AntiHackRepository
|
||||
{
|
||||
private AntiHack _plugin;
|
||||
private String _serverName;
|
||||
|
||||
private Connection _connection;
|
||||
private String _connectionString = "jdbc:mysql://db.mineplex.com:3306/Mineplex";
|
||||
private static Connection _connection;
|
||||
private String _connectionString = "jdbc:mysql://sqlstats.mineplex.com:3306/Mineplex";
|
||||
private String _userName = "root";
|
||||
private String _password = "tAbechAk3wR7tuTh";
|
||||
|
||||
private static String CREATE_TABLE = "CREATE TABLE IF NOT EXISTS AntiHack (id INT NOT NULL AUTO_INCREMENT, serverName VARCHAR(256) NOT NULL, hackType VARCHAR(256) NOT NULL, playerName VARCHAR(256) NOT NULL, hackCount INT, updated LONG, PRIMARY KEY (id), UNIQUE KEY serverName_hackType_playerName (serverName, hackType, playerName));";
|
||||
private static String UPDATE_PLAYER_OFFENSES = "REPLACE INTO AntiHack (serverName, playerName, hackType, hackCount, updated) VALUES (?, ?, ?, ?, now());";
|
||||
|
||||
public AntiHackRepository(AntiHack plugin, String serverName)
|
||||
public AntiHackRepository(String serverName)
|
||||
{
|
||||
_plugin = plugin;
|
||||
_serverName = serverName;
|
||||
}
|
||||
|
||||
|
@ -60,7 +57,7 @@ public class AntiHackRepository
|
|||
}
|
||||
}
|
||||
|
||||
public void saveOffenses()
|
||||
public void saveOffense(final Player player, final String report, final String severity)
|
||||
{
|
||||
new Thread(new Runnable()
|
||||
{
|
||||
|
@ -70,30 +67,17 @@ public class AntiHackRepository
|
|||
|
||||
try
|
||||
{
|
||||
_connection = DriverManager.getConnection(_connectionString, _userName, _password);
|
||||
if (_connection == null || _connection.isClosed())
|
||||
_connection = DriverManager.getConnection(_connectionString, _userName, _password);
|
||||
|
||||
preparedStatement = _connection.prepareStatement(UPDATE_PLAYER_OFFENSES);
|
||||
|
||||
/* XXX
|
||||
synchronized (_plugin.getOffensesSynch())
|
||||
{
|
||||
for (Player offender : _plugin.getOffenses().keySet())
|
||||
{
|
||||
for (Entry<String, Integer> hackEntry : _plugin.getOffenses().get(offender).entrySet())
|
||||
{
|
||||
preparedStatement.setString(1, _serverName);
|
||||
preparedStatement.setString(2, offender.getName());
|
||||
preparedStatement.setString(3, hackEntry.getKey());
|
||||
preparedStatement.setInt(4, hackEntry.getValue());
|
||||
preparedStatement.addBatch();
|
||||
}
|
||||
}
|
||||
|
||||
_plugin.getOffenses().clear();
|
||||
}
|
||||
*/
|
||||
|
||||
preparedStatement.executeBatch();
|
||||
|
||||
preparedStatement.setString(1, _serverName);
|
||||
preparedStatement.setString(2, player.getName());
|
||||
preparedStatement.setString(3, report);
|
||||
preparedStatement.setString(4, severity);
|
||||
|
||||
preparedStatement.execute();
|
||||
}
|
||||
catch (Exception exception)
|
||||
{
|
||||
|
|
|
@ -4,7 +4,7 @@ import java.util.Comparator;
|
|||
|
||||
public class LobbySorter implements Comparator<ServerInfo>
|
||||
{
|
||||
public int compare(ServerInfo a, ServerInfo b)
|
||||
public int compare(ServerInfo a, ServerInfo b)
|
||||
{
|
||||
if (Integer.parseInt(a.Name.split("-")[1]) < Integer.parseInt(b.Name.split("-")[1]))
|
||||
return -1;
|
||||
|
|
Loading…
Reference in New Issue