Add null check for configuration section in MobTypes
Ensure that the configuration section is not null before attempting to retrieve keys. This prevents potential null pointer exceptions and adds a warning log for missing configuration sections.
This commit is contained in:
parent
989873247a
commit
dad2ce21e4
|
|
@ -7,6 +7,7 @@ import com.alttd.custommobs.abilities.MobType;
|
||||||
import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
|
import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.bukkit.attribute.Attribute;
|
import org.bukkit.attribute.Attribute;
|
||||||
|
import org.bukkit.configuration.ConfigurationSection;
|
||||||
import org.reflections.Reflections;
|
import org.reflections.Reflections;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
@ -45,7 +46,12 @@ public class MobTypes extends AbstractConfig {
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private static void load() {
|
private static void load() {
|
||||||
MOB_TYPES.clear();
|
MOB_TYPES.clear();
|
||||||
Set<String> keys = config.getConfigurationSection(prefix.substring(0, prefix.length() - 1)).getKeys(false);
|
ConfigurationSection configurationSection = config.getConfigurationSection(prefix.substring(0, prefix.length() - 1));
|
||||||
|
if (configurationSection == null) {
|
||||||
|
log.warn("No config section found for {}", prefix.substring(0, prefix.length() - 1));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Set<String> keys = configurationSection.getKeys(false);
|
||||||
keys.forEach(key -> {
|
keys.forEach(key -> {
|
||||||
List<Ability> abilities = config.getStringList(prefix + key, ".abilities", null).stream()
|
List<Ability> abilities = config.getStringList(prefix + key, ".abilities", null).stream()
|
||||||
.map(MobTypes.MOB_TYPES::getAbility)
|
.map(MobTypes.MOB_TYPES::getAbility)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user