diff options
-rw-r--r-- | Essentials/src/com/earth2me/essentials/Settings.java | 10 | ||||
-rw-r--r-- | Essentials/src/com/earth2me/essentials/UserData.java | 37 | ||||
-rw-r--r-- | Essentials/src/config.yml | 4 |
3 files changed, 34 insertions, 17 deletions
diff --git a/Essentials/src/com/earth2me/essentials/Settings.java b/Essentials/src/com/earth2me/essentials/Settings.java index e1e60cb35..4622bbe46 100644 --- a/Essentials/src/com/earth2me/essentials/Settings.java +++ b/Essentials/src/com/earth2me/essentials/Settings.java @@ -375,4 +375,14 @@ public class Settings implements IConf { return config.getBoolean(configName, def); } + + private final static double MAXMONEY = 10000000000000.0; + double getMaxMoney() + { + double max = config.getDouble("max-money", MAXMONEY); + if (Math.abs(max) > MAXMONEY) { + max = max < 0 ? -MAXMONEY : MAXMONEY; + } + return max; + } } diff --git a/Essentials/src/com/earth2me/essentials/UserData.java b/Essentials/src/com/earth2me/essentials/UserData.java index 5aa98eeb4..896339642 100644 --- a/Essentials/src/com/earth2me/essentials/UserData.java +++ b/Essentials/src/com/earth2me/essentials/UserData.java @@ -58,18 +58,20 @@ public abstract class UserData extends PlayerExtension implements IConf isSocialSpyEnabled = _isSocialSpyEnabled(); isNPC = _isNPC(); } - private double money; - - private double _getMoney() { + + private double _getMoney() + { + double money = ess.getSettings().getStartingBalance(); if (config.hasProperty("money")) { - return config.getDouble("money", ess.getSettings().getStartingBalance()); + money = config.getDouble("money", money); } - else + if (Math.abs(money) > ess.getSettings().getMaxMoney()) { - return ess.getSettings().getStartingBalance(); + money = money < 0 ? -ess.getSettings().getMaxMoney() : ess.getSettings().getMaxMoney(); } + return money; } public double getMoney() @@ -80,6 +82,10 @@ public abstract class UserData extends PlayerExtension implements IConf public void setMoney(double value) { money = value; + if (Math.abs(money) > ess.getSettings().getMaxMoney()) + { + money = money < 0 ? -ess.getSettings().getMaxMoney() : ess.getSettings().getMaxMoney(); + } config.setProperty("money", value); config.save(); } @@ -92,7 +98,7 @@ public abstract class UserData extends PlayerExtension implements IConf } return false; } - + public Location getHome(Location location) { if (!hasHome()) @@ -383,6 +389,7 @@ public abstract class UserData extends PlayerExtension implements IConf setTeleportEnabled(ret); return ret; } + public boolean toggleSocialSpy() { boolean ret = !isSocialSpyEnabled(); @@ -622,7 +629,6 @@ public abstract class UserData extends PlayerExtension implements IConf setAfk(ret); return ret; } - private boolean newplayer; private boolean getNew() @@ -641,7 +647,6 @@ public abstract class UserData extends PlayerExtension implements IConf config.setProperty("newplayer", set); config.save(); } - private String geolocation; private String _getGeoLocation() @@ -668,38 +673,36 @@ public abstract class UserData extends PlayerExtension implements IConf } config.save(); } - private boolean isSocialSpyEnabled; - + private boolean _isSocialSpyEnabled() { return config.getBoolean("socialspy", false); } - + public boolean isSocialSpyEnabled() { return isSocialSpyEnabled; } - + public void setSocialSpyEnabled(boolean status) { isSocialSpyEnabled = status; config.setProperty("socialspy", status); config.save(); } - private boolean isNPC; - + private boolean _isNPC() { return config.getBoolean("npc", false); } - + public boolean isNPC() { return isNPC; } - + public void setNPC(boolean set) { isNPC = set; diff --git a/Essentials/src/config.yml b/Essentials/src/config.yml index 7f0b20e8f..95117bd26 100644 --- a/Essentials/src/config.yml +++ b/Essentials/src/config.yml @@ -229,6 +229,10 @@ command-costs: # Set this to a currency symbol you want to use. currency-symbol: '$' +# Set the maximum amount of money a player can have +# The amount is always limited to 10 trillions because of the limitations of a java double +max-money: 10000000000000 + ############################################################ # +------------------------------------------------------+ # # | EssentialsHelp | # |