mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-25 06:36:45 +01:00
Added toggle to disable party system
This commit is contained in:
parent
b0b326d080
commit
3a21a913c6
@ -10,6 +10,7 @@ Key:
|
||||
Version 2.2.0
|
||||
mcMMO's config system has been rewritten
|
||||
Parties no longer have a cap, you can level them forever for bragging rights
|
||||
You can now disable the party system completely
|
||||
Many config files are now generated on demand instead of being copied from within the JAR
|
||||
All config nodes that used to be styled with CamelCase or otherwise now use hyphens (-) as spaces for readability and consistency
|
||||
All config nodes will now use Capital letters at the start of each nodes name and after each hyphen (-)
|
||||
@ -45,6 +46,7 @@ Version 2.2.0
|
||||
Particle settings will now be found in "particle_spawning.conf"
|
||||
|
||||
Party config options will now be found in "party.conf"
|
||||
Added toggle to completely disable parties
|
||||
Party's "MaxSize" renamed -> "Party-Max-Size"
|
||||
Party's "AutoKick_Interval" renamed -> "Hours-Between-Cleanup-Operations"
|
||||
Party's "Old_Party_Member_Cutoff" renamed -> "Offline-Day-Limit"
|
||||
|
@ -6,6 +6,7 @@ import com.gmail.nossr50.commands.party.teleport.PtpCommand;
|
||||
import com.gmail.nossr50.datatypes.party.Party;
|
||||
import com.gmail.nossr50.datatypes.player.McMMOPlayer;
|
||||
import com.gmail.nossr50.locale.LocaleLoader;
|
||||
import com.gmail.nossr50.mcMMO;
|
||||
import com.gmail.nossr50.util.Permissions;
|
||||
import com.gmail.nossr50.util.commands.CommandUtils;
|
||||
import com.gmail.nossr50.util.player.UserManager;
|
||||
@ -59,6 +60,10 @@ public class PartyCommand implements TabExecutor {
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
//If the party system is disabled, don't fire this command
|
||||
if(!mcMMO.getConfigManager().getConfigParty().isPartySystemEnabled())
|
||||
return true;
|
||||
|
||||
if (CommandUtils.noConsoleUsage(sender)) {
|
||||
return true;
|
||||
}
|
||||
|
@ -91,6 +91,8 @@ public class ConfigParty {
|
||||
return partyCombat.isPartyFriendlyFire();
|
||||
}
|
||||
|
||||
public boolean isPartySystemEnabled() { return partyGeneral.isEnablePartySystem(); }
|
||||
|
||||
/*
|
||||
|
||||
|
||||
|
@ -6,9 +6,15 @@ import ninja.leaping.configurate.objectmapping.serialize.ConfigSerializable;
|
||||
@ConfigSerializable
|
||||
public class ConfigSectionPartyGeneral {
|
||||
|
||||
public static final boolean PARTY_SYSTEM_DEFAULT = true;
|
||||
|
||||
@Setting(value = "Party-Limitations")
|
||||
private ConfigSectionPartyLimit configSectionPartyLimit = new ConfigSectionPartyLimit();
|
||||
|
||||
@Setting(value = "Enable-Party-System", comment = "Turn this off to completely disable the mcMMO party system." +
|
||||
"\nDefault value: "+PARTY_SYSTEM_DEFAULT)
|
||||
private boolean enablePartySystem = PARTY_SYSTEM_DEFAULT;
|
||||
|
||||
public int getPartySizeLimit() {
|
||||
return configSectionPartyLimit.partyMaxSize;
|
||||
}
|
||||
@ -16,4 +22,8 @@ public class ConfigSectionPartyGeneral {
|
||||
public boolean isPartySizeCapped() {
|
||||
return configSectionPartyLimit.useCap;
|
||||
}
|
||||
|
||||
public boolean isEnablePartySystem() {
|
||||
return enablePartySystem;
|
||||
}
|
||||
}
|
||||
|
@ -137,7 +137,8 @@ public class mcMMO extends JavaPlugin {
|
||||
registerCoreSkills();
|
||||
registerCustomRecipes();
|
||||
|
||||
PartyManager.loadParties();
|
||||
if(getConfigManager().getConfigParty().isPartySystemEnabled())
|
||||
PartyManager.loadParties();
|
||||
|
||||
formulaManager = new FormulaManager();
|
||||
holidayManager = new HolidayManager();
|
||||
@ -499,16 +500,21 @@ public class mcMMO extends JavaPlugin {
|
||||
new UserPurgeTask().runTaskTimerAsynchronously(this, purgeIntervalTicks, purgeIntervalTicks);
|
||||
}
|
||||
|
||||
// Automatically remove old members from parties
|
||||
long kickIntervalTicks = getConfigManager().getConfigParty().getPartyCleanup().getPartyAutoKickHoursInterval() * 60L * 60L * Misc.TICK_CONVERSION_FACTOR;
|
||||
//Party System Stuff
|
||||
if(mcMMO.configManager.getConfigParty().isPartySystemEnabled())
|
||||
{
|
||||
// Automatically remove old members from parties
|
||||
long kickIntervalTicks = getConfigManager().getConfigParty().getPartyCleanup().getPartyAutoKickHoursInterval() * 60L * 60L * Misc.TICK_CONVERSION_FACTOR;
|
||||
|
||||
if (kickIntervalTicks == 0) {
|
||||
new PartyAutoKickTask().runTaskLater(this, 2 * Misc.TICK_CONVERSION_FACTOR); // Start 2 seconds after startup.
|
||||
}
|
||||
else if (kickIntervalTicks > 0) {
|
||||
new PartyAutoKickTask().runTaskTimer(this, kickIntervalTicks, kickIntervalTicks);
|
||||
if (kickIntervalTicks == 0) {
|
||||
new PartyAutoKickTask().runTaskLater(this, 2 * Misc.TICK_CONVERSION_FACTOR); // Start 2 seconds after startup.
|
||||
}
|
||||
else if (kickIntervalTicks > 0) {
|
||||
new PartyAutoKickTask().runTaskTimer(this, kickIntervalTicks, kickIntervalTicks);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Update power level tag scoreboards
|
||||
new PowerLevelUpdatingTask().runTaskTimer(this, 2 * Misc.TICK_CONVERSION_FACTOR, 2 * Misc.TICK_CONVERSION_FACTOR);
|
||||
|
||||
|
@ -108,6 +108,11 @@ public final class PartyManager {
|
||||
* @return true if they are in the same party, false otherwise
|
||||
*/
|
||||
public static boolean inSameParty(Player firstPlayer, Player secondPlayer) {
|
||||
//If the party system is disabled, return false
|
||||
if(!mcMMO.getConfigManager().getConfigParty().isPartySystemEnabled())
|
||||
return false;
|
||||
|
||||
|
||||
Party firstParty = UserManager.getPlayer(firstPlayer).getParty();
|
||||
Party secondParty = UserManager.getPlayer(secondPlayer).getParty();
|
||||
|
||||
@ -119,6 +124,11 @@ public final class PartyManager {
|
||||
}
|
||||
|
||||
public static boolean areAllies(Player firstPlayer, Player secondPlayer) {
|
||||
//If the party system is disabled, return false
|
||||
if(!mcMMO.getConfigManager().getConfigParty().isPartySystemEnabled())
|
||||
return false;
|
||||
|
||||
|
||||
Party firstParty = UserManager.getPlayer(firstPlayer).getParty();
|
||||
Party secondParty = UserManager.getPlayer(secondPlayer).getParty();
|
||||
|
||||
@ -217,6 +227,10 @@ public final class PartyManager {
|
||||
* @return the existing party, null otherwise
|
||||
*/
|
||||
public static Party getParty(String partyName) {
|
||||
//If the party system is disabled, return null
|
||||
if(!mcMMO.getConfigManager().getConfigParty().isPartySystemEnabled())
|
||||
return null;
|
||||
|
||||
for (Party party : parties) {
|
||||
if (party.getName().equalsIgnoreCase(partyName)) {
|
||||
return party;
|
||||
@ -234,6 +248,10 @@ public final class PartyManager {
|
||||
*/
|
||||
@Deprecated
|
||||
public static Party getPlayerParty(String playerName) {
|
||||
//If the party system is disabled, return null
|
||||
if(!mcMMO.getConfigManager().getConfigParty().isPartySystemEnabled())
|
||||
return null;
|
||||
|
||||
for (Party party : parties) {
|
||||
if (party.getMembers().keySet().contains(playerName)) {
|
||||
return party;
|
||||
@ -250,6 +268,10 @@ public final class PartyManager {
|
||||
* @return the existing party, null otherwise
|
||||
*/
|
||||
public static Party getPlayerParty(String playerName, UUID uuid) {
|
||||
//If the party system is disabled, return null
|
||||
if(!mcMMO.getConfigManager().getConfigParty().isPartySystemEnabled())
|
||||
return null;
|
||||
|
||||
for (Party party : parties) {
|
||||
LinkedHashMap<UUID, String> members = party.getMembers();
|
||||
if (members.keySet().contains(uuid) || members.values().contains(playerName)) {
|
||||
|
Loading…
Reference in New Issue
Block a user