This commit is contained in:
nossr50
2023-12-16 17:45:17 -08:00
parent 9e1f5b44a6
commit dd04ee48b9
7 changed files with 32 additions and 8 deletions

View File

@ -204,7 +204,7 @@ public class McImportCommand implements CommandExecutor {
else if (materialName.contains("LOG") || materialName.contains("LEAVES")) {
skillName = "Woodcutting";
}
else if (materialName.contains("GRASS") || materialName.contains("FLOWER") || materialName.contains("CROP")) {
else if (materialName.contains("GRASS") || materialName.contains("SHORT_GRASS") || materialName.contains("FLOWER") || materialName.contains("CROP")) {
skillName = "Herbalism";
}
else if (materialName.contains("DIRT") || materialName.contains("SAND")) {

View File

@ -4,6 +4,7 @@ import com.gmail.nossr50.config.BukkitConfig;
import com.gmail.nossr50.datatypes.treasure.ExcavationTreasure;
import com.gmail.nossr50.datatypes.treasure.HylianTreasure;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.util.BlockUtils;
import com.gmail.nossr50.util.LogUtils;
import com.gmail.nossr50.util.text.StringUtils;
import org.bukkit.ChatColor;
@ -228,7 +229,7 @@ public class TreasureConfig extends BukkitConfig {
for (String dropper : dropList) {
if (dropper.equals("Bushes")) {
AddHylianTreasure(StringUtils.getFriendlyConfigMaterialString(Material.FERN), hylianTreasure);
AddHylianTreasure(StringUtils.getFriendlyConfigMaterialString(Material.TALL_GRASS), hylianTreasure);
AddHylianTreasure(StringUtils.getFriendlyConfigMaterialString(BlockUtils.getShortGrass()), hylianTreasure);
for (Material species : Tag.SAPLINGS.getValues())
AddHylianTreasure(StringUtils.getFriendlyConfigMaterialString(species), hylianTreasure);

View File

@ -22,6 +22,9 @@ import java.util.HashSet;
public final class BlockUtils {
public static final String SHORT_GRASS = "SHORT_GRASS";
public static final String GRASS = "GRASS";
private BlockUtils() {
}
@ -38,6 +41,21 @@ public final class BlockUtils {
blockState.setMetadata(MetadataConstants.METADATA_KEY_BONUS_DROPS, new BonusDropMeta(1, mcMMO.p));
}
/**
* Util method for compatibility across Minecraft versions, grabs the {@link Material} enum for short_grass
*
* @return the {@link Material} enum for short_grass
*/
public static Material getShortGrass() {
if (Material.getMaterial(SHORT_GRASS) != null) {
return Material.getMaterial(SHORT_GRASS);
} else if (Material.getMaterial(GRASS) != null) {
return Material.getMaterial(GRASS);
} else {
throw new UnsupportedOperationException("Unable to find short grass material");
}
}
/**
* Set up the state for a block to be seen as unnatural and cleanup any unwanted metadata from the block
* @param block target block

View File

@ -996,8 +996,8 @@ public class MaterialMapStore {
private void fillShroomyWhiteList()
{
canMakeShroomyWhiteList.add("dirt");
canMakeShroomyWhiteList.add("grass");
canMakeShroomyWhiteList.add("grass_path");
canMakeShroomyWhiteList.add("grass_block");
canMakeShroomyWhiteList.add("dirt_path");
}
private void fillBlockCrackerWhiteList()
@ -1010,8 +1010,8 @@ public class MaterialMapStore {
private void fillHerbalismAbilityBlackList()
{
herbalismAbilityBlackList.add("dirt");
herbalismAbilityBlackList.add("grass");
herbalismAbilityBlackList.add("grass_path");
herbalismAbilityBlackList.add("grass_block");
herbalismAbilityBlackList.add("dirt_path");
herbalismAbilityBlackList.add("farmland");
}