Class TemperateSeasonEnvironmentProvider.Builder
java.lang.Object
com.github.thedeathlycow.thermoo.api.environment.provider.TemperateSeasonEnvironmentProvider.Builder
- Enclosing class:
TemperateSeasonEnvironmentProvider
Builder for temperate season providers. By default, there is no fallback season and the seasons map is empty.
-
Method Summary
Modifier and TypeMethodDescriptionaddSeasonProvider(@NotNull ThermooSeason season, @NotNull net.minecraft.core.Holder<EnvironmentProvider> provider) Sets the provider for a season.build()Builds a new provider from this builder.withFallbackSeason(@NotNull ThermooSeason season) Adds a fallback season.
-
Method Details
-
withFallbackSeason
@Contract("_->this") public TemperateSeasonEnvironmentProvider.Builder withFallbackSeason(@NotNull @NotNull ThermooSeason season) Adds a fallback season. If a fallback season is already provided, it will be overwritten.- Parameters:
season- A non-null temperate season to add as fallback.- Returns:
- Returns this builder
-
addSeasonProvider
@Contract("_,_->this") public TemperateSeasonEnvironmentProvider.Builder addSeasonProvider(@NotNull @NotNull ThermooSeason season, @NotNull @NotNull net.minecraft.core.Holder<EnvironmentProvider> provider) Sets the provider for a season. If a provider is already mapped to the given season, it will be overwritten.- Parameters:
season- A non-null temperate season to add a provider forprovider- A non-null provider to add- Returns:
- Returns this builder
-
build
Builds a new provider from this builder. The provider must have a non-empty seasons map, and if a fallback season is provided then it must be a key of the seasons map.- Returns:
- Returns a new
TemperateSeasonEnvironmentProvider - Throws:
IllegalStateException- if this builder cannot build a legal provider
-