diff --git a/Changelog.txt b/Changelog.txt
index e2dd35db0..6d7a34f71 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -7,6 +7,11 @@ Key:
! Change
- Removal
+Version 2.1.32
+ Completely removed Fireworks from mcMMO because they lag
+ Added 'General.AprilFoolsEvent' setting to config.yml to turn off April Fools
+ NOTE: April Fools event has been in mcMMO for a long time, I did not write it so I didn't know it spawned fireworks like crazy.
+
Version 2.1.31
Fixed a bug where certain SubSkills did not properly send unlock or rank up notifications
Fixed a bug where unlock notifications would send simultaneously for a specific skill (still happens if mmoedit changes all skill levels on a player at once)
diff --git a/pom.xml b/pom.xml
index 6b3aaab32..f68234d98 100755
--- a/pom.xml
+++ b/pom.xml
@@ -2,7 +2,7 @@
4.0.0
com.gmail.nossr50.mcMMO
mcMMO
- 2.1.32-SNAPSHOT
+ 2.1.32
mcMMO
https://github.com/mcMMO-Dev/mcMMO
diff --git a/src/main/java/com/gmail/nossr50/config/Config.java b/src/main/java/com/gmail/nossr50/config/Config.java
index 396c78343..3d315485e 100644
--- a/src/main/java/com/gmail/nossr50/config/Config.java
+++ b/src/main/java/com/gmail/nossr50/config/Config.java
@@ -245,6 +245,8 @@ public class Config extends AutoUpdateConfigLoader {
* GENERAL SETTINGS
*/
+ public boolean isAprilFoolsAllowed() { return config.getBoolean("General.AprilFoolsEvent", true); }
+
/* General Settings */
public boolean getIsMetricsEnabled() { return config.getBoolean("Metrics.bstats", true); }
diff --git a/src/main/java/com/gmail/nossr50/util/HolidayManager.java b/src/main/java/com/gmail/nossr50/util/HolidayManager.java
index 51874338f..e677d449d 100644
--- a/src/main/java/com/gmail/nossr50/util/HolidayManager.java
+++ b/src/main/java/com/gmail/nossr50/util/HolidayManager.java
@@ -1,6 +1,7 @@
package com.gmail.nossr50.util;
import com.gmail.nossr50.commands.skills.AprilCommand;
+import com.gmail.nossr50.config.Config;
import com.gmail.nossr50.datatypes.interactions.NotificationType;
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
import com.gmail.nossr50.locale.LocaleLoader;
@@ -310,6 +311,9 @@ public final class HolidayManager {
}
public boolean isAprilFirst() {
+ if(!Config.getInstance().isAprilFoolsAllowed())
+ return false;
+
GregorianCalendar aprilFirst = new GregorianCalendar(currentYear, Calendar.APRIL, 1);
GregorianCalendar aprilSecond = new GregorianCalendar(currentYear, Calendar.APRIL, 2);
GregorianCalendar day = new GregorianCalendar();
@@ -317,6 +321,9 @@ public final class HolidayManager {
}
public boolean nearingAprilFirst() {
+ if(!Config.getInstance().isAprilFoolsAllowed())
+ return false;
+
GregorianCalendar start = new GregorianCalendar(Calendar.getInstance().get(Calendar.YEAR), Calendar.MARCH, 28);
GregorianCalendar end = new GregorianCalendar(Calendar.getInstance().get(Calendar.YEAR), Calendar.APRIL, 2);
GregorianCalendar day = new GregorianCalendar();
@@ -357,6 +364,9 @@ public final class HolidayManager {
}
public void levelUpApril(Player player, FakeSkillType fakeSkillType) {
+ if(!Config.getInstance().isAprilFoolsAllowed())
+ return;
+
int levelTotal = Misc.getRandom().nextInt(1 + UserManager.getPlayer(player).getSkillLevel(PrimarySkillType.MINING)) + 1;
SoundManager.sendSound(player, player.getLocation(), SoundType.LEVEL_UP);
NotificationManager.sendPlayerInformation(player, NotificationType.HOLIDAY, "Holiday.AprilFools.Levelup", StringUtils.getCapitalized(fakeSkillType.toString()), String.valueOf(levelTotal));
@@ -364,6 +374,9 @@ public final class HolidayManager {
}
public void registerAprilCommand() {
+ if(!Config.getInstance().isAprilFoolsAllowed())
+ return;
+
PluginCommand command = mcMMO.p.getCommand("mcfools");
command.setExecutor(new AprilCommand());
}
diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml
index fd7507450..5e87efdf5 100644
--- a/src/main/resources/config.yml
+++ b/src/main/resources/config.yml
@@ -14,6 +14,7 @@ General:
RetroMode:
Enabled: false
Locale: en_US
+ AprilFoolsEvent: true
MOTD_Enabled: true
# Send a message to the player when his profile was successfully loaded
Show_Profile_Loaded: false