WeatherPolicy

@Serializable
sealed interface WeatherPolicy

釣りワールドの天候の決め方。JSON では type で種類を指定する。

Inheritors

Types

Link copied to clipboard
@Serializable
@SerialName(value = "external")
data class External(val source: Key) : WeatherPolicy

ServicesManager に登録された WeatherSource (キー一致) に委ねる。 未登録の場合は既定値の Random で代替し、警告を一度だけ出す。

Link copied to clipboard
@Serializable
@SerialName(value = "fixed")
data class Fixed(val weather: WeatherType) : WeatherPolicy

常に同じ天候。ワールドへ適用させる。

Link copied to clipboard
@Serializable
@SerialName(value = "random")
data class Random(val weights: Map<WeatherType, Int> = DEFAULT_WEIGHTS, val intervalHours: Int = 8, val offsetHours: Int = 0, val maxInclination: Int = 30, val seed: String = "pepper") : WeatherPolicy

内蔵カレンダー (決定的ノイズ) で天候を決定し、ワールドへ適用させる。

Link copied to clipboard
@Serializable
@SerialName(value = "vanilla")
data object Vanilla : WeatherPolicy

バニラの天候を読み取り、魚の条件にのみ使う。ワールドの天候は変更させない (ADVANCE_WEATHER = true)。