mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-21 20:56:45 +01:00
fix REGEN potion not loading
This commit is contained in:
parent
291effdbc8
commit
8d2a08c421
@ -1,6 +1,7 @@
|
||||
Version 2.2.010
|
||||
# TODO: Fix not moving mcMMO custom ingredients from hopper -> brewing stand
|
||||
# TODO: Fix some potions are not rewarding XP ( strength 2, etc )
|
||||
Fixed being unable to load REGEN potion type on new versions of Paper/Spigot 1.20.6
|
||||
BrewingStand now remember who owns them, this persists across restarts (see notes)
|
||||
Fixed rare NPE in mcMMO events when player data was unable to be retrieved
|
||||
Fixed a NPE that could happen when damaging armor with Axes
|
||||
@ -39,7 +40,7 @@ Version 2.2.010
|
||||
|
||||
NOTES:
|
||||
You can now use hoppers and brewing stands and not have to worry about having to re-interact with the brewing stand over and over again
|
||||
This is not an exhaustive list of API changes in this update, but most of them should be documented here.
|
||||
This is not an exhaustive list of API changes in this update, but most of the important ones should be documented here.
|
||||
|
||||
Version 2.2.009
|
||||
Fixed a bug that prevented mcMMO from loading on MC versions older than 1.20.6
|
||||
|
2
pom.xml
2
pom.xml
@ -374,7 +374,7 @@
|
||||
<dependency>
|
||||
<groupId>org.spigotmc</groupId>
|
||||
<artifactId>spigot-api</artifactId>
|
||||
<version>1.20.5-R0.1-SNAPSHOT</version>
|
||||
<version>1.20.6-R0.1-SNAPSHOT</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
@ -71,10 +71,10 @@ public class PotionUtil {
|
||||
* @return The potion type
|
||||
*/
|
||||
public static PotionType matchPotionType(String partialName, boolean isUpgraded, boolean isExtended) {
|
||||
String updatedName = convertLegacyNames(partialName).toUpperCase();
|
||||
if (COMPATIBILITY_MODE == PotionCompatibilityType.PRE_1_20_5) {
|
||||
return matchLegacyPotionType(partialName);
|
||||
return matchLegacyPotionType(updatedName);
|
||||
} else {
|
||||
String updatedName = convertLegacyNames(partialName);
|
||||
return Arrays.stream(PotionType.values())
|
||||
.filter(potionType -> getKeyGetKey(potionType).toUpperCase().contains(partialName)
|
||||
|| getKeyGetKey(potionType).toUpperCase().contains(convertLegacyNames(updatedName)))
|
||||
@ -84,6 +84,21 @@ public class PotionUtil {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Legacy matching for {@link PotionType}
|
||||
*
|
||||
* @param name The partial name of the potion
|
||||
* @return The potion type
|
||||
*/
|
||||
private static PotionType matchLegacyPotionType(String name) {
|
||||
return Arrays.stream(PotionType.values())
|
||||
.filter(potionType -> getKeyGetKey(potionType).equalsIgnoreCase(name)
|
||||
|| getKeyGetKey(potionType).equalsIgnoreCase(convertLegacyNames(name))
|
||||
|| potionType.name().equalsIgnoreCase(name)
|
||||
|| potionType.name().equalsIgnoreCase(convertLegacyNames(name)))
|
||||
.findAny().orElse(null);
|
||||
}
|
||||
|
||||
public static String getKeyGetKey(PotionType potionType) {
|
||||
try {
|
||||
if (getKeyMethod() != null) {
|
||||
@ -201,23 +216,6 @@ public class PotionUtil {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Legacy matching for {@link PotionType}
|
||||
*
|
||||
* @param partialName The partial name of the potion
|
||||
* @return The potion type
|
||||
*/
|
||||
private static PotionType matchLegacyPotionType(String partialName) {
|
||||
String updatedName = convertLegacyNames(partialName);
|
||||
|
||||
return Arrays.stream(PotionType.values())
|
||||
.filter(potionType -> getKeyGetKey(potionType).equalsIgnoreCase(partialName)
|
||||
|| getKeyGetKey(potionType).equalsIgnoreCase(convertLegacyNames(updatedName))
|
||||
|| potionType.name().equalsIgnoreCase(partialName)
|
||||
|| potionType.name().equalsIgnoreCase(convertLegacyNames(updatedName)))
|
||||
.findAny().orElse(null);
|
||||
}
|
||||
|
||||
public static String convertPotionConfigName(String legacyName) {
|
||||
String replacementName = legacyName;
|
||||
|
||||
|
@ -1,35 +1,39 @@
|
||||
package com.gmail.nossr50.util;
|
||||
|
||||
import org.bukkit.potion.PotionType;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static com.gmail.nossr50.util.PotionUtil.convertLegacyNames;
|
||||
import static com.gmail.nossr50.util.PotionUtil.matchPotionType;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
class PotionUtilTest {
|
||||
|
||||
// @Test
|
||||
// void testMatchPotionType() {
|
||||
// String potionTypeStr = "UNCRAFTABLE";
|
||||
// PotionType potionType = matchPotionType(potionTypeStr, false, false);
|
||||
// assertEquals(PotionType.WATER, potionType);
|
||||
//
|
||||
// String potionTypeStr2 = "NIGHT_VISION";
|
||||
// PotionType potionType2 = matchPotionType(potionTypeStr2, false, false);
|
||||
// assertEquals(PotionType.NIGHT_VISION, potionType2);
|
||||
//
|
||||
// String nightVisionLong = "NIGHT_VISION";
|
||||
// PotionType potionType3 = matchPotionType(nightVisionLong, false, true);
|
||||
// assertEquals(PotionType.LONG_NIGHT_VISION, potionType3);
|
||||
//
|
||||
// nightVisionLong = "LONG_NIGHT_VISION";
|
||||
// potionType3 = matchPotionType(nightVisionLong, false, true);
|
||||
// assertEquals(PotionType.LONG_NIGHT_VISION, potionType3);
|
||||
// }
|
||||
@Test
|
||||
void testMatchPotionTypeRegen() {
|
||||
final String potionTypeStr = "REGEN";
|
||||
final PotionType potionType = matchPotionType(potionTypeStr, false, false);
|
||||
assertEquals(PotionType.REGENERATION, potionType);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testConvertLegacyNames() {
|
||||
void testMatchPotionTypeUncraftable() {
|
||||
final String potionTypeStr = "UNCRAFTABLE";
|
||||
final PotionType potionType = matchPotionType(potionTypeStr, false, false);
|
||||
assertEquals(PotionType.MUNDANE, potionType);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testConvertLegacyNamesUncraftable() {
|
||||
final String potionTypeStr = "UNCRAFTABLE";
|
||||
final String converted = convertLegacyNames(potionTypeStr);
|
||||
assertEquals("MUNDANE", converted);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testConvertLegacyNamesRegen() {
|
||||
final String potionTypeStr = "REGEN";
|
||||
final String converted = convertLegacyNames(potionTypeStr);
|
||||
assertEquals("REGENERATION", converted);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user