Skip to content

Commit b11cb0e

Browse files
committed
fix(worldgen): Refactor WeightedStateProvider to use WeightedStateProviderValue for entries.
Closes #137
1 parent f7f9320 commit b11cb0e

File tree

1 file changed

+10
-3
lines changed
  • kore/src/main/kotlin/io/github/ayfri/kore/features/worldgen/configuredfeature/blockstateprovider

1 file changed

+10
-3
lines changed

kore/src/main/kotlin/io/github/ayfri/kore/features/worldgen/configuredfeature/blockstateprovider/WeightedStateProvider.kt

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,15 @@ import kotlinx.serialization.Serializable
44

55
@Serializable
66
data class WeightedStateProvider(
7-
var entries: List<BlockStateProvider> = emptyList(),
7+
var entries: List<WeightedStateProviderValue> = emptyList(),
88
) : BlockStateProvider()
99

10-
fun weightedStateProvider(entries: List<BlockStateProvider> = emptyList()) = WeightedStateProvider(entries)
11-
fun weightedStateProvider(vararg entries: BlockStateProvider) = WeightedStateProvider(entries.toList())
10+
@Serializable
11+
data class WeightedStateProviderValue(
12+
var weight: Int = 1,
13+
var data: BlockStateProvider,
14+
)
15+
16+
fun weightedStateProvider(entries: List<WeightedStateProviderValue> = emptyList()) = WeightedStateProvider(entries)
17+
fun weightedStateProvider(vararg entries: WeightedStateProviderValue) = WeightedStateProvider(entries.toList())
18+
fun weightedStateProvider(block: MutableList<WeightedStateProviderValue>.() -> Unit) = WeightedStateProvider(buildList(block))

0 commit comments

Comments
 (0)