mirror of
https://github.com/NoCheatPlus/NoCheatPlus.git
synced 2024-09-15 08:28:10 +02:00
Split itemdupe check into itemdupe and bogusitems checks + logging
instead of just System.out.println
This commit is contained in:
parent
85a52c5fbf
commit
6a5b9f2a20
@ -3,7 +3,7 @@ name: NoCheat
|
|||||||
author: Evenprime
|
author: Evenprime
|
||||||
|
|
||||||
main: cc.co.evenprime.bukkit.nocheat.NoCheat
|
main: cc.co.evenprime.bukkit.nocheat.NoCheat
|
||||||
version: 0.9
|
version: 0.9.1
|
||||||
|
|
||||||
commands:
|
commands:
|
||||||
nocheat:
|
nocheat:
|
||||||
|
@ -15,6 +15,7 @@ import org.bukkit.plugin.java.JavaPlugin;
|
|||||||
import cc.co.evenprime.bukkit.nocheat.actions.Action;
|
import cc.co.evenprime.bukkit.nocheat.actions.Action;
|
||||||
import cc.co.evenprime.bukkit.nocheat.checks.AirbuildCheck;
|
import cc.co.evenprime.bukkit.nocheat.checks.AirbuildCheck;
|
||||||
import cc.co.evenprime.bukkit.nocheat.checks.BedteleportCheck;
|
import cc.co.evenprime.bukkit.nocheat.checks.BedteleportCheck;
|
||||||
|
import cc.co.evenprime.bukkit.nocheat.checks.BogusitemsCheck;
|
||||||
import cc.co.evenprime.bukkit.nocheat.checks.Check;
|
import cc.co.evenprime.bukkit.nocheat.checks.Check;
|
||||||
import cc.co.evenprime.bukkit.nocheat.checks.ItemdupeCheck;
|
import cc.co.evenprime.bukkit.nocheat.checks.ItemdupeCheck;
|
||||||
import cc.co.evenprime.bukkit.nocheat.checks.MovingCheck;
|
import cc.co.evenprime.bukkit.nocheat.checks.MovingCheck;
|
||||||
@ -41,6 +42,7 @@ public class NoCheat extends JavaPlugin {
|
|||||||
public SpeedhackCheck speedhackCheck;
|
public SpeedhackCheck speedhackCheck;
|
||||||
public AirbuildCheck airbuildCheck;
|
public AirbuildCheck airbuildCheck;
|
||||||
public ItemdupeCheck itemdupeCheck;
|
public ItemdupeCheck itemdupeCheck;
|
||||||
|
public BogusitemsCheck bogusitemsCheck;
|
||||||
|
|
||||||
public Check[] checks;
|
public Check[] checks;
|
||||||
|
|
||||||
@ -68,12 +70,12 @@ public class NoCheat extends JavaPlugin {
|
|||||||
@Override
|
@Override
|
||||||
public boolean onCommand(CommandSender sender, Command command, String commandLabel, String[] args)
|
public boolean onCommand(CommandSender sender, Command command, String commandLabel, String[] args)
|
||||||
{
|
{
|
||||||
if(sender instanceof Player) {
|
/*if(sender instanceof Player) {
|
||||||
if(!hasPermission((Player)sender, PermissionData.PERMISSION_P)) {
|
if(!hasPermission((Player)sender, PermissionData.PERMISSION_P)) {
|
||||||
sender.sendMessage("NC: You are not allowed to use this command.");
|
sender.sendMessage("NC: You are not allowed to use this command.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
|
|
||||||
if(args.length == 0) {
|
if(args.length == 0) {
|
||||||
sender.sendMessage("NC: Using "+ ((permissions == null) ? "isOp()" : "Permissions") + ". Activated checks/bugfixes: " + getActiveChecksAsString() + ". Total time used for moving check so far: " + (movingCheck.statisticElapsedTimeNano / 1000000L + " ms. Average time per move event: " + (movingCheck.statisticElapsedTimeNano/1000L)/movingCheck.statisticTotalEvents + " us"));
|
sender.sendMessage("NC: Using "+ ((permissions == null) ? "isOp()" : "Permissions") + ". Activated checks/bugfixes: " + getActiveChecksAsString() + ". Total time used for moving check so far: " + (movingCheck.statisticElapsedTimeNano / 1000000L + " ms. Average time per move event: " + (movingCheck.statisticElapsedTimeNano/1000L)/movingCheck.statisticTotalEvents + " us"));
|
||||||
@ -126,9 +128,10 @@ public class NoCheat extends JavaPlugin {
|
|||||||
speedhackCheck = new SpeedhackCheck(this);
|
speedhackCheck = new SpeedhackCheck(this);
|
||||||
airbuildCheck = new AirbuildCheck(this);
|
airbuildCheck = new AirbuildCheck(this);
|
||||||
itemdupeCheck = new ItemdupeCheck(this);
|
itemdupeCheck = new ItemdupeCheck(this);
|
||||||
|
bogusitemsCheck = new BogusitemsCheck(this);
|
||||||
|
|
||||||
// just for convenience
|
// just for convenience
|
||||||
checks = new Check[] { movingCheck, bedteleportCheck, speedhackCheck, airbuildCheck, itemdupeCheck };
|
checks = new Check[] { movingCheck, bedteleportCheck, speedhackCheck, airbuildCheck, itemdupeCheck, bogusitemsCheck };
|
||||||
|
|
||||||
// parse the nocheat.yml config file
|
// parse the nocheat.yml config file
|
||||||
setupConfig();
|
setupConfig();
|
||||||
@ -299,7 +302,7 @@ public class NoCheat extends JavaPlugin {
|
|||||||
data.permissionsCache[PermissionData.PERMISSION_BEDTELEPORT] = permissions.has(player, "nocheat.bedteleport");
|
data.permissionsCache[PermissionData.PERMISSION_BEDTELEPORT] = permissions.has(player, "nocheat.bedteleport");
|
||||||
data.permissionsCache[PermissionData.PERMISSION_FLYING] = permissions.has(player, "nocheat.flying");
|
data.permissionsCache[PermissionData.PERMISSION_FLYING] = permissions.has(player, "nocheat.flying");
|
||||||
data.permissionsCache[PermissionData.PERMISSION_MOVING] = permissions.has(player, "nocheat.moving");
|
data.permissionsCache[PermissionData.PERMISSION_MOVING] = permissions.has(player, "nocheat.moving");
|
||||||
data.permissionsCache[PermissionData.PERMISSION_P] = permissions.has(player, "nocheat.p");
|
data.permissionsCache[PermissionData.PERMISSION_BOGUSITEMS] = permissions.has(player, "nocheat.bogusitems");
|
||||||
data.permissionsCache[PermissionData.PERMISSION_SPEEDHACK] = permissions.has(player, "nocheat.speedhack");
|
data.permissionsCache[PermissionData.PERMISSION_SPEEDHACK] = permissions.has(player, "nocheat.speedhack");
|
||||||
data.permissionsCache[PermissionData.PERMISSION_NOTIFY] = permissions.has(player, "nocheat.notify");
|
data.permissionsCache[PermissionData.PERMISSION_NOTIFY] = permissions.has(player, "nocheat.notify");
|
||||||
data.permissionsCache[PermissionData.PERMISSION_ITEMDUPE] = permissions.has(player, "nocheat.itemdupe");
|
data.permissionsCache[PermissionData.PERMISSION_ITEMDUPE] = permissions.has(player, "nocheat.itemdupe");
|
||||||
|
@ -122,7 +122,8 @@ public class NoCheatConfiguration {
|
|||||||
plugin.movingCheck.setActive(c.getBoolean("active.moving", true));
|
plugin.movingCheck.setActive(c.getBoolean("active.moving", true));
|
||||||
plugin.airbuildCheck.setActive(c.getBoolean("active.airbuild", false));
|
plugin.airbuildCheck.setActive(c.getBoolean("active.airbuild", false));
|
||||||
plugin.bedteleportCheck.setActive(c.getBoolean("active.bedteleport", true));
|
plugin.bedteleportCheck.setActive(c.getBoolean("active.bedteleport", true));
|
||||||
plugin.itemdupeCheck.setActive(c.getBoolean("active.itemdupe", false));
|
plugin.itemdupeCheck.setActive(c.getBoolean("active.itemdupe", true));
|
||||||
|
plugin.bogusitemsCheck.setActive(c.getBoolean("active.bogusitems", false));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void cleanup() {
|
public void cleanup() {
|
||||||
@ -245,7 +246,8 @@ public class NoCheatConfiguration {
|
|||||||
w.write(" moving: true"); w.newLine();
|
w.write(" moving: true"); w.newLine();
|
||||||
w.write(" airbuild: false"); w.newLine();
|
w.write(" airbuild: false"); w.newLine();
|
||||||
w.write(" bedteleport: true"); w.newLine();
|
w.write(" bedteleport: true"); w.newLine();
|
||||||
w.write(" itemdupe: false"); w.newLine();
|
w.write(" itemdupe: true"); w.newLine();
|
||||||
|
w.write(" bogusitems: false"); w.newLine();
|
||||||
w.write("# Speedhack specific options"); w.newLine();
|
w.write("# Speedhack specific options"); w.newLine();
|
||||||
w.write("speedhack:"); w.newLine();
|
w.write("speedhack:"); w.newLine();
|
||||||
w.write(" logmessage: \"" + plugin.speedhackCheck.logMessage+"\""); w.newLine();
|
w.write(" logmessage: \"" + plugin.speedhackCheck.logMessage+"\""); w.newLine();
|
||||||
@ -285,6 +287,8 @@ public class NoCheatConfiguration {
|
|||||||
w.write("bedteleport:"); w.newLine();
|
w.write("bedteleport:"); w.newLine();
|
||||||
w.write("# Itemdupe specific options (none exist yet)"); w.newLine();
|
w.write("# Itemdupe specific options (none exist yet)"); w.newLine();
|
||||||
w.write("itemdupe:"); w.newLine();
|
w.write("itemdupe:"); w.newLine();
|
||||||
|
w.write("# Bogusitems specific options (none exist yet)"); w.newLine();
|
||||||
|
w.write("bogusitems:"); w.newLine();
|
||||||
|
|
||||||
w.flush(); w.close();
|
w.flush(); w.close();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
107
src/cc/co/evenprime/bukkit/nocheat/checks/BogusitemsCheck.java
Normal file
107
src/cc/co/evenprime/bukkit/nocheat/checks/BogusitemsCheck.java
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
package cc.co.evenprime.bukkit.nocheat.checks;
|
||||||
|
|
||||||
|
import java.util.logging.Level;
|
||||||
|
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.entity.Item;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
import org.bukkit.event.Listener;
|
||||||
|
import org.bukkit.event.Event.Priority;
|
||||||
|
import org.bukkit.event.player.PlayerDropItemEvent;
|
||||||
|
import org.bukkit.event.player.PlayerInteractEvent;
|
||||||
|
import org.bukkit.event.player.PlayerPickupItemEvent;
|
||||||
|
import org.bukkit.inventory.Inventory;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
import org.bukkit.plugin.PluginManager;
|
||||||
|
|
||||||
|
import cc.co.evenprime.bukkit.nocheat.NoCheat;
|
||||||
|
import cc.co.evenprime.bukkit.nocheat.data.PermissionData;
|
||||||
|
import cc.co.evenprime.bukkit.nocheat.listeners.BogusitemsPlayerListener;
|
||||||
|
|
||||||
|
public class BogusitemsCheck extends Check {
|
||||||
|
|
||||||
|
public BogusitemsCheck(NoCheat plugin){
|
||||||
|
super(plugin, "bogusitems", PermissionData.PERMISSION_BOGUSITEMS);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void check(PlayerPickupItemEvent event) {
|
||||||
|
|
||||||
|
// Should we check at all?
|
||||||
|
if(hasPermission(event.getPlayer())) return;
|
||||||
|
|
||||||
|
Item i = event.getItem();
|
||||||
|
if(i != null) {
|
||||||
|
ItemStack s = i.getItemStack();
|
||||||
|
if(s != null) {
|
||||||
|
if(s.getAmount() <= 0) {// buggy item
|
||||||
|
event.getItem().remove();
|
||||||
|
event.setCancelled(true);
|
||||||
|
plugin.log(Level.WARNING, event.getPlayer().getName() + " tried to pick up an invalid item. Item was removed.");
|
||||||
|
|
||||||
|
cleanPlayerInventory(event.getPlayer());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void check(PlayerInteractEvent event) {
|
||||||
|
|
||||||
|
if(hasPermission(event.getPlayer())) return;
|
||||||
|
|
||||||
|
if(event.hasItem() && event.getItem().getAmount() <= 0) {// buggy item
|
||||||
|
event.setCancelled(true);
|
||||||
|
plugin.log(Level.WARNING, event.getPlayer().getName() + " tried to use an invalid item. Item was removed.");
|
||||||
|
event.getPlayer().getInventory().remove(event.getItem());
|
||||||
|
|
||||||
|
cleanPlayerInventory(event.getPlayer());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void check(PlayerDropItemEvent event) {
|
||||||
|
|
||||||
|
if(hasPermission(event.getPlayer())) return;
|
||||||
|
|
||||||
|
Item item = event.getItemDrop();
|
||||||
|
|
||||||
|
if(item.getItemStack() != null) {
|
||||||
|
ItemStack stack = item.getItemStack();
|
||||||
|
|
||||||
|
if(stack.getAmount() <= 0) {
|
||||||
|
plugin.log(Level.WARNING, event.getPlayer().getName() + " tried to drop an invalid item. Dropped item was changed to dirt.");
|
||||||
|
stack.setTypeId(3); // dirt
|
||||||
|
stack.setAmount(1);
|
||||||
|
|
||||||
|
cleanPlayerInventory(event.getPlayer());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void cleanPlayerInventory(Player player) {
|
||||||
|
|
||||||
|
Inventory inv = player.getInventory();
|
||||||
|
|
||||||
|
ItemStack stacks[] = inv.getContents();
|
||||||
|
|
||||||
|
for(int i = 0; i < stacks.length; i++) {
|
||||||
|
if(stacks[i] != null && stacks[i].getAmount() <= 0) {
|
||||||
|
inv.clear(i);
|
||||||
|
plugin.log(Level.WARNING, "Removed illegal item from inventory of " + player.getName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void registerListeners() {
|
||||||
|
PluginManager pm = Bukkit.getServer().getPluginManager();
|
||||||
|
|
||||||
|
// Register listeners for itemdupe check
|
||||||
|
Listener bogusitemsPlayerListener = new BogusitemsPlayerListener(this);
|
||||||
|
|
||||||
|
// Register listeners for itemdupe check
|
||||||
|
pm.registerEvent(Event.Type.PLAYER_PICKUP_ITEM, bogusitemsPlayerListener, Priority.Lowest, plugin);
|
||||||
|
pm.registerEvent(Event.Type.PLAYER_DROP_ITEM, bogusitemsPlayerListener, Priority.Lowest, plugin);
|
||||||
|
pm.registerEvent(Event.Type.PLAYER_INTERACT, bogusitemsPlayerListener, Priority.Lowest, plugin);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -1,27 +1,16 @@
|
|||||||
package cc.co.evenprime.bukkit.nocheat.checks;
|
package cc.co.evenprime.bukkit.nocheat.checks;
|
||||||
|
|
||||||
import java.util.logging.Level;
|
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.craftbukkit.entity.CraftPlayer;
|
import org.bukkit.craftbukkit.entity.CraftPlayer;
|
||||||
import org.bukkit.entity.Item;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.bukkit.event.Event;
|
import org.bukkit.event.Event;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.Event.Priority;
|
import org.bukkit.event.Event.Priority;
|
||||||
import org.bukkit.event.entity.EntityDeathEvent;
|
import org.bukkit.event.entity.EntityDeathEvent;
|
||||||
import org.bukkit.event.player.PlayerDropItemEvent;
|
|
||||||
import org.bukkit.event.player.PlayerInteractEvent;
|
|
||||||
import org.bukkit.event.player.PlayerInventoryEvent;
|
|
||||||
import org.bukkit.event.player.PlayerPickupItemEvent;
|
|
||||||
import org.bukkit.inventory.Inventory;
|
|
||||||
import org.bukkit.inventory.ItemStack;
|
|
||||||
import org.bukkit.plugin.PluginManager;
|
import org.bukkit.plugin.PluginManager;
|
||||||
|
|
||||||
import cc.co.evenprime.bukkit.nocheat.NoCheat;
|
import cc.co.evenprime.bukkit.nocheat.NoCheat;
|
||||||
import cc.co.evenprime.bukkit.nocheat.data.PermissionData;
|
import cc.co.evenprime.bukkit.nocheat.data.PermissionData;
|
||||||
import cc.co.evenprime.bukkit.nocheat.listeners.ItemdupeEntityListener;
|
import cc.co.evenprime.bukkit.nocheat.listeners.ItemdupeEntityListener;
|
||||||
import cc.co.evenprime.bukkit.nocheat.listeners.ItemdupePlayerListener;
|
|
||||||
|
|
||||||
public class ItemdupeCheck extends Check {
|
public class ItemdupeCheck extends Check {
|
||||||
|
|
||||||
@ -29,86 +18,6 @@ public class ItemdupeCheck extends Check {
|
|||||||
super(plugin, "itemdupe", PermissionData.PERMISSION_ITEMDUPE);
|
super(plugin, "itemdupe", PermissionData.PERMISSION_ITEMDUPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void check(PlayerPickupItemEvent event) {
|
|
||||||
|
|
||||||
// Should we check at all?
|
|
||||||
if(hasPermission(event.getPlayer())) return;
|
|
||||||
|
|
||||||
Item i = event.getItem();
|
|
||||||
if(i != null) {
|
|
||||||
ItemStack s = i.getItemStack();
|
|
||||||
if(s != null) {
|
|
||||||
if(s.getAmount() <= 0) {// buggy item
|
|
||||||
event.getItem().remove();
|
|
||||||
event.setCancelled(true);
|
|
||||||
plugin.log(Level.WARNING, event.getPlayer().getName() + " tried to pick up an invalid item. Item was removed.");
|
|
||||||
|
|
||||||
cleanPlayerInventory(event.getPlayer());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void check(PlayerInteractEvent event) {
|
|
||||||
|
|
||||||
if(hasPermission(event.getPlayer())) return;
|
|
||||||
|
|
||||||
if(event.hasItem() && event.getItem().getAmount() <= 0) {// buggy item
|
|
||||||
event.setCancelled(true);
|
|
||||||
plugin.log(Level.WARNING, event.getPlayer().getName() + " tried to use an invalid item. Item was removed.");
|
|
||||||
event.getPlayer().getInventory().remove(event.getItem());
|
|
||||||
|
|
||||||
cleanPlayerInventory(event.getPlayer());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void check(PlayerDropItemEvent event) {
|
|
||||||
|
|
||||||
if(hasPermission(event.getPlayer())) return;
|
|
||||||
|
|
||||||
Item item = event.getItemDrop();
|
|
||||||
|
|
||||||
if(item.getItemStack() != null) {
|
|
||||||
ItemStack stack = item.getItemStack();
|
|
||||||
|
|
||||||
if(stack.getAmount() <= 0) {
|
|
||||||
plugin.log(Level.WARNING, event.getPlayer().getName() + " tried to drop an invalid item. Dropped item was changed to dirt.");
|
|
||||||
stack.setTypeId(3); // dirt
|
|
||||||
stack.setAmount(1);
|
|
||||||
|
|
||||||
cleanPlayerInventory(event.getPlayer());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void cleanPlayerInventory(Player player) {
|
|
||||||
|
|
||||||
Inventory inv = player.getInventory();
|
|
||||||
|
|
||||||
ItemStack stacks[] = inv.getContents();
|
|
||||||
|
|
||||||
for(int i = 0; i < stacks.length; i++) {
|
|
||||||
if(stacks[i] != null && stacks[i].getAmount() <= 0) {
|
|
||||||
inv.clear(i);
|
|
||||||
System.out.println("Removed illegal item from inventory of " + player.getName());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void registerListeners() {
|
|
||||||
PluginManager pm = Bukkit.getServer().getPluginManager();
|
|
||||||
|
|
||||||
// Register listeners for itemdupe check
|
|
||||||
Listener itemdupePlayerListener = new ItemdupePlayerListener(this);
|
|
||||||
|
|
||||||
// Register listeners for itemdupe check
|
|
||||||
pm.registerEvent(Event.Type.PLAYER_PICKUP_ITEM, itemdupePlayerListener, Priority.Lowest, plugin);
|
|
||||||
pm.registerEvent(Event.Type.ENTITY_DEATH, new ItemdupeEntityListener(this), Priority.Lowest, plugin);
|
|
||||||
pm.registerEvent(Event.Type.PLAYER_DROP_ITEM, itemdupePlayerListener, Priority.Lowest, plugin);
|
|
||||||
pm.registerEvent(Event.Type.PLAYER_INTERACT, itemdupePlayerListener, Priority.Lowest, plugin);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void check(EntityDeathEvent event) {
|
public void check(EntityDeathEvent event) {
|
||||||
|
|
||||||
@ -118,4 +27,17 @@ public class ItemdupeCheck extends Check {
|
|||||||
((CraftPlayer)event.getEntity()).getHandle().x(); // close all inventory screens
|
((CraftPlayer)event.getEntity()).getHandle().x(); // close all inventory screens
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void registerListeners() {
|
||||||
|
PluginManager pm = Bukkit.getServer().getPluginManager();
|
||||||
|
|
||||||
|
// Register listeners for itemdupe check
|
||||||
|
Listener itemdupePlayerListener = new ItemdupeEntityListener(this);
|
||||||
|
|
||||||
|
// Register listeners for itemdupe check
|
||||||
|
pm.registerEvent(Event.Type.ENTITY_DEATH, itemdupePlayerListener, Priority.Lowest, plugin);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,7 @@ public class PermissionData {
|
|||||||
public static final int PERMISSION_SPEEDHACK = 2;
|
public static final int PERMISSION_SPEEDHACK = 2;
|
||||||
public static final int PERMISSION_AIRBUILD = 3;
|
public static final int PERMISSION_AIRBUILD = 3;
|
||||||
public static final int PERMISSION_BEDTELEPORT = 4;
|
public static final int PERMISSION_BEDTELEPORT = 4;
|
||||||
public static final int PERMISSION_P = 5;
|
public static final int PERMISSION_BOGUSITEMS = 5;
|
||||||
public static final int PERMISSION_NOTIFY = 6;
|
public static final int PERMISSION_NOTIFY = 6;
|
||||||
public static final int PERMISSION_ITEMDUPE = 7;
|
public static final int PERMISSION_ITEMDUPE = 7;
|
||||||
|
|
||||||
|
@ -5,14 +5,14 @@ import org.bukkit.event.player.PlayerInteractEvent;
|
|||||||
import org.bukkit.event.player.PlayerListener;
|
import org.bukkit.event.player.PlayerListener;
|
||||||
import org.bukkit.event.player.PlayerPickupItemEvent;
|
import org.bukkit.event.player.PlayerPickupItemEvent;
|
||||||
|
|
||||||
import cc.co.evenprime.bukkit.nocheat.checks.ItemdupeCheck;
|
import cc.co.evenprime.bukkit.nocheat.checks.BogusitemsCheck;
|
||||||
|
|
||||||
public class ItemdupePlayerListener extends PlayerListener {
|
public class BogusitemsPlayerListener extends PlayerListener {
|
||||||
|
|
||||||
ItemdupeCheck check;
|
BogusitemsCheck check;
|
||||||
|
|
||||||
public ItemdupePlayerListener(ItemdupeCheck itemdupeCheck) {
|
public BogusitemsPlayerListener(BogusitemsCheck bogusitemsCheck) {
|
||||||
check = itemdupeCheck;
|
check = bogusitemsCheck;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
Loading…
Reference in New Issue
Block a user