24 lines
1.6 KiB
GDScript
24 lines
1.6 KiB
GDScript
extends RefCounted
|
|
const DATA := {
|
|
"clear":{"name":"Przejaśnienia","mode":"wind","intensity":0.10,"clouds":0.30,"darkness":0.0,"wind":0.7,"fog":0.1},
|
|
"cloudy":{"name":"Chmury i wiatr","mode":"wind","intensity":0.30,"clouds":0.80,"darkness":0.15,"wind":1.0,"fog":0.2},
|
|
"overcast":{"name":"Pełne zachmurzenie","mode":"wind","intensity":0.45,"clouds":1.20,"darkness":0.40,"wind":1.1,"fog":0.4},
|
|
"rain":{"name":"Ulewa","mode":"rain","intensity":0.72,"clouds":1.30,"darkness":0.48,"wind":1.25,"fog":0.5},
|
|
"storm":{"name":"Burza z piorunami","mode":"rain","intensity":0.95,"clouds":1.65,"darkness":0.92,"wind":2.0,"fog":0.25},
|
|
"fog":{"name":"Gęsta mgła","mode":"wind","intensity":0.35,"clouds":0.70,"darkness":0.20,"wind":0.45,"fog":1.0},
|
|
"dust_storm":{"name":"Burza pyłowa","mode":"dust","intensity":0.90,"clouds":1.25,"darkness":0.55,"wind":2.4,"fog":0.85},
|
|
"snow":{"name":"Opady śniegu","mode":"snow","intensity":0.60,"clouds":1.0,"darkness":0.30,"wind":1.0,"fog":0.45},
|
|
"blizzard":{"name":"Zamieć śnieżna","mode":"snow","intensity":0.95,"clouds":1.45,"darkness":0.65,"wind":2.4,"fog":0.8}
|
|
}
|
|
const CLIMATES := [
|
|
["clear","cloudy","overcast","rain","storm","fog"],
|
|
["clear","cloudy","overcast","rain","storm","fog"],
|
|
["cloudy","overcast","rain","rain","storm","storm","fog"],
|
|
["clear","cloudy","overcast","rain","storm","fog"],
|
|
["clear","clear","cloudy","dust_storm","dust_storm"],
|
|
["clear","cloudy","overcast","snow","blizzard","fog"]
|
|
]
|
|
static func pick(biome: int, rng: RandomNumberGenerator) -> String:
|
|
var choices: Array = CLIMATES[clampi(biome,0,5)]
|
|
return str(choices[rng.randi_range(0, choices.size()-1)])
|