mirror of
https://github.com/t-affeldt/regional_weather.git
synced 2025-07-20 09:20:29 +02:00
Separate weathers from engine
This commit is contained in:
40
ca_weathers/snow.lua
Normal file
40
ca_weathers/snow.lua
Normal file
@ -0,0 +1,40 @@
|
||||
local name = "regional_weather:snow"
|
||||
|
||||
local conditions = {
|
||||
min_height = regional_weather.settings.min_height,
|
||||
max_height = regional_weather.settings.max_height,
|
||||
max_heat = 40,
|
||||
min_humidity = 40,
|
||||
max_humidity = 55
|
||||
}
|
||||
|
||||
local effects = {}
|
||||
|
||||
effects["regional_weather:spawn_snow"] = true
|
||||
|
||||
effects["climate_api:particles"] = {
|
||||
min_pos = {x=-20, y= 3, z=-20},
|
||||
max_pos = {x= 20, y=12, z= 20},
|
||||
exptime=8,
|
||||
size=1,
|
||||
textures = {}
|
||||
}
|
||||
|
||||
for i = 1,12,1 do
|
||||
effects["climate_api:particles"].textures[i] = "weather_snowflake" .. i .. ".png"
|
||||
end
|
||||
|
||||
local function generate_effects(params)
|
||||
local avg_humidity = 40
|
||||
local intensity = params.humidity / avg_humidity
|
||||
local override = {}
|
||||
|
||||
override["climate_api:particles"] = {
|
||||
amount = 50 * math.min(intensity, 1.5),
|
||||
falling_speed = 1 / math.min(intensity, 1.3)
|
||||
}
|
||||
|
||||
return climate_api.utility.merge_tables(effects, override)
|
||||
end
|
||||
|
||||
climate_api.register_weather(name, conditions, generate_effects)
|
Reference in New Issue
Block a user