Better new player detection for creative mode.
Should help MineChat users in creative mode.
This commit is contained in:
parent
77a4a30432
commit
875303faf7
|
|
@ -35,6 +35,7 @@ import java.util.regex.Pattern;
|
|||
import me.ryanhamshire.GriefPrevention.DataStore.NoTransferException;
|
||||
import net.milkbowl.vault.economy.Economy;
|
||||
|
||||
import org.bukkit.Achievement;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Chunk;
|
||||
import org.bukkit.GameMode;
|
||||
|
|
@ -3041,4 +3042,14 @@ public class GriefPrevention extends JavaPlugin
|
|||
if(configSetting != null) return configSetting;
|
||||
return world.getPVP();
|
||||
}
|
||||
|
||||
public static boolean isNewToServer(Player player)
|
||||
{
|
||||
if(player.hasAchievement(Achievement.MINE_WOOD)) return false;
|
||||
|
||||
PlayerData playerData = instance.dataStore.getPlayerData(player.getUniqueId());
|
||||
if(playerData.getClaims().size() > 0) return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -151,7 +151,7 @@ class PlayerEventHandler implements Listener
|
|||
recipients.add(player);
|
||||
|
||||
//if player not new warn for the first infraction per play session.
|
||||
if(player.hasAchievement(Achievement.MINE_WOOD))
|
||||
if(!GriefPrevention.isNewToServer(player))
|
||||
{
|
||||
PlayerData playerData = GriefPrevention.instance.dataStore.getPlayerData(player.getUniqueId());
|
||||
if(!playerData.profanityWarned)
|
||||
|
|
@ -690,7 +690,7 @@ class PlayerEventHandler implements Listener
|
|||
this.lastLoginThisServerSessionMap.put(playerID, nowDate);
|
||||
|
||||
//if newish, prevent chat until he's moved a bit to prove he's not a bot
|
||||
if(!player.hasAchievement(Achievement.MINE_WOOD))
|
||||
if(GriefPrevention.isNewToServer(player))
|
||||
{
|
||||
playerData.noChatLocation = player.getLocation();
|
||||
}
|
||||
|
|
@ -920,7 +920,7 @@ class PlayerEventHandler implements Listener
|
|||
this.dataStore.clearCachedPlayerData(playerID);
|
||||
|
||||
//reduce count of players with that player's IP address
|
||||
if(GriefPrevention.instance.config_ipLimit > 0 && !player.hasAchievement(Achievement.MINE_WOOD))
|
||||
if(GriefPrevention.instance.config_ipLimit > 0 && GriefPrevention.isNewToServer(player))
|
||||
{
|
||||
InetAddress ipAddress = playerData.ipAddress;
|
||||
if(ipAddress != null)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user