// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.server.worldgen.loader.zone;

import javax.annotation.Nonnull;
import java.util.HashSet;
import com.google.gson.JsonElement;
import java.nio.file.Path;
import com.hypixel.hytale.procedurallib.json.SeedString;
import java.util.Set;
import com.hypixel.hytale.server.worldgen.SeedStringResource;
import com.hypixel.hytale.procedurallib.json.JsonLoader;

public class ZoneRequirementJsonLoader extends JsonLoader<SeedStringResource, Set<String>>
{
    public ZoneRequirementJsonLoader(final SeedString<SeedStringResource> seed, final Path dataFolder, final JsonElement json) {
        super(seed, dataFolder, json);
    }
    
    @Nonnull
    @Override
    public Set<String> load() {
        if (!this.has("MaskMapping")) {
            throw new IllegalArgumentException("Could not find mappings for colors in mask file. Keyword: MaskMapping");
        }
        final Set<String> zoneSet = new HashSet<String>();
        ZoneColorMappingJsonLoader.collectZones(zoneSet, this.get("MaskMapping"));
        UniqueZoneEntryJsonLoader.collectZones(zoneSet, this.get("UniqueZones"));
        return zoneSet;
    }
}
