mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-22 13:16:45 +01:00
2.2.009
This commit is contained in:
parent
cae2132d8d
commit
17052861d1
@ -1,3 +1,17 @@
|
|||||||
|
Version 2.2.009
|
||||||
|
Fixed a bug that prevented mcMMO from loading on MC versions older than 1.20.6
|
||||||
|
Dramatically increased the base XP for Alchemy again (see notes)
|
||||||
|
|
||||||
|
NOTES:
|
||||||
|
Alchemy leveling still felt too slow, so I've increased it again. You can either delete experience.yml to get the new values or adjust them manually.
|
||||||
|
If you haven't updated mcMMO since 2.2.006 or older you don't need to do anything to get these new values.
|
||||||
|
The new default values are...
|
||||||
|
Potion_Brewing:
|
||||||
|
Stage_1: 666
|
||||||
|
Stage_2: 1111
|
||||||
|
Stage_3: 1750
|
||||||
|
Stage_4: 2250
|
||||||
|
|
||||||
Version 2.2.008
|
Version 2.2.008
|
||||||
Fixed alchemy potions not upgrading correctly (This will only affect new potions made, see notes)
|
Fixed alchemy potions not upgrading correctly (This will only affect new potions made, see notes)
|
||||||
Fixed a bug where alchemy potions had italicized names
|
Fixed a bug where alchemy potions had italicized names
|
||||||
|
2
pom.xml
2
pom.xml
@ -2,7 +2,7 @@
|
|||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<groupId>com.gmail.nossr50.mcMMO</groupId>
|
<groupId>com.gmail.nossr50.mcMMO</groupId>
|
||||||
<artifactId>mcMMO</artifactId>
|
<artifactId>mcMMO</artifactId>
|
||||||
<version>2.2.008</version>
|
<version>2.2.009</version>
|
||||||
<name>mcMMO</name>
|
<name>mcMMO</name>
|
||||||
<url>https://github.com/mcMMO-Dev/mcMMO</url>
|
<url>https://github.com/mcMMO-Dev/mcMMO</url>
|
||||||
<scm>
|
<scm>
|
||||||
|
@ -2,7 +2,6 @@ package com.gmail.nossr50.config.skills.alchemy;
|
|||||||
|
|
||||||
import com.gmail.nossr50.config.LegacyConfigLoader;
|
import com.gmail.nossr50.config.LegacyConfigLoader;
|
||||||
import com.gmail.nossr50.datatypes.skills.alchemy.AlchemyPotion;
|
import com.gmail.nossr50.datatypes.skills.alchemy.AlchemyPotion;
|
||||||
import com.gmail.nossr50.locale.LocaleLoader;
|
|
||||||
import com.gmail.nossr50.mcMMO;
|
import com.gmail.nossr50.mcMMO;
|
||||||
import com.gmail.nossr50.util.ItemUtils;
|
import com.gmail.nossr50.util.ItemUtils;
|
||||||
import com.gmail.nossr50.util.PotionUtil;
|
import com.gmail.nossr50.util.PotionUtil;
|
||||||
@ -21,6 +20,7 @@ import org.jetbrains.annotations.VisibleForTesting;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import static com.gmail.nossr50.util.ItemUtils.setItemName;
|
||||||
import static com.gmail.nossr50.util.PotionUtil.*;
|
import static com.gmail.nossr50.util.PotionUtil.*;
|
||||||
import static com.gmail.nossr50.util.text.StringUtils.convertKeyToName;
|
import static com.gmail.nossr50.util.text.StringUtils.convertKeyToName;
|
||||||
|
|
||||||
@ -257,19 +257,15 @@ public class PotionConfig extends LegacyConfigLoader {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void setPotionDisplayName(ConfigurationSection section, PotionMeta potionMeta) {
|
private void setPotionDisplayName(ConfigurationSection section, PotionMeta potionMeta) {
|
||||||
String configuredName = section.getString("Name", null);
|
// If a potion doesn't have any custom effects, there is no reason to override the vanilla name
|
||||||
if (configuredName != null) {
|
if (potionMeta.getCustomEffects().isEmpty()) {
|
||||||
potionMeta.setItemName(configuredName);
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
final String configuredName = section.getString("Name", null);
|
||||||
|
if (configuredName != null) {
|
||||||
|
setItemName(potionMeta, configuredName);
|
||||||
}
|
}
|
||||||
//
|
|
||||||
// // Potion is water, but has effects
|
|
||||||
// if (isPotionTypeWater(potionMeta)
|
|
||||||
// && (PotionUtil.hasBasePotionEffects(potionMeta) || !potionMeta.getCustomEffects().isEmpty())) {
|
|
||||||
// // If we don't set a name for these potions, they will simply be called "Water Potion"
|
|
||||||
// final String name = section.getName().toUpperCase().replace("_", " ");
|
|
||||||
// potionMeta.setDisplayName(name);
|
|
||||||
// System.out.println("DEBUG: Renaming potion to " + name);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -20,6 +20,8 @@ import org.bukkit.inventory.meta.ItemMeta;
|
|||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
import java.lang.reflect.Method;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -32,6 +34,43 @@ public final class ItemUtils {
|
|||||||
*/
|
*/
|
||||||
private ItemUtils() {}
|
private ItemUtils() {}
|
||||||
|
|
||||||
|
private static final Method setItemName;
|
||||||
|
|
||||||
|
static {
|
||||||
|
setItemName = getSetItemName();
|
||||||
|
}
|
||||||
|
|
||||||
|
private static Method getSetItemName() {
|
||||||
|
try {
|
||||||
|
return ItemMeta.class.getMethod("setItemName", String.class);
|
||||||
|
} catch (NoSuchMethodException e) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the item name using the new API if available
|
||||||
|
* or falls back to the old API.
|
||||||
|
* @param itemMeta The item meta to set the name on
|
||||||
|
* @param name The name to set
|
||||||
|
*/
|
||||||
|
public static void setItemName(ItemMeta itemMeta, String name) {
|
||||||
|
if (setItemName != null) {
|
||||||
|
setItemNameModern(itemMeta, name);
|
||||||
|
} else {
|
||||||
|
itemMeta.setDisplayName(ChatColor.RESET + name);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void setItemNameModern(ItemMeta itemMeta, String name) {
|
||||||
|
try {
|
||||||
|
setItemName.invoke(itemMeta, name);
|
||||||
|
} catch (IllegalAccessException | InvocationTargetException e) {
|
||||||
|
mcMMO.p.getLogger().severe("Failed to set item name: " + e.getMessage());
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks if the item is a bow.
|
* Checks if the item is a bow.
|
||||||
*
|
*
|
||||||
|
@ -246,10 +246,10 @@ Experience_Values:
|
|||||||
# Stage_3 represents a base potion with one ingredient and one amplifier
|
# Stage_3 represents a base potion with one ingredient and one amplifier
|
||||||
# Stage_4 represents a base potion with one ingredient and two amplifiers
|
# Stage_4 represents a base potion with one ingredient and two amplifiers
|
||||||
# Stage_5 represents a base potion with one ingredient where the amplifiers are swapped
|
# Stage_5 represents a base potion with one ingredient where the amplifiers are swapped
|
||||||
Stage_1: 120
|
Stage_1: 666
|
||||||
Stage_2: 240
|
Stage_2: 1111
|
||||||
Stage_3: 480
|
Stage_3: 1750
|
||||||
Stage_4: 960
|
Stage_4: 2250
|
||||||
Stage_5: 0
|
Stage_5: 0
|
||||||
Archery:
|
Archery:
|
||||||
Distance_Multiplier: 0.025
|
Distance_Multiplier: 0.025
|
||||||
|
Loading…
Reference in New Issue
Block a user