Increase weather duration
[MineClone/MineClone2.git] / mods / ENVIRONMENT / weather_pack / thunder.lua
blob5478b835e22d95c8e8d888f47bd099e860d8ce38
1 -- turn off lightning mod 'auto mode'
2 lightning.auto = false
4 thunder = {
5 next_strike = 0,
6 min_delay = 3,
7 max_delay = 12,
8 init_done = false,
11 minetest.register_globalstep(function(dtime)
12 if weather.state ~= "thunder" then
13 return false
14 end
16 rain.set_particles_mode("thunder")
17 rain.make_weather()
19 if thunder.init_done == false then
20 skycolor.add_layer(
21 "weather-pack-thunder-sky",
22 {{r=0, g=0, b=0},
23 {r=40, g=40, b=40},
24 {r=85, g=86, b=86},
25 {r=40, g=40, b=40},
26 {r=0, g=0, b=0}})
27 skycolor.active = true
28 for _, player in pairs(minetest.get_connected_players()) do
29 player:set_clouds({color="#3D3D3FE8"})
30 end
31 thunder.init_done = true
32 end
34 if (thunder.next_strike <= minetest.get_gametime()) then
35 lightning.strike()
36 local delay = math.random(thunder.min_delay, thunder.max_delay)
37 thunder.next_strike = minetest.get_gametime() + delay
38 end
40 end)
42 thunder.clear = function()
43 rain.clear()
44 skycolor.remove_layer("weather-pack-thunder-sky")
45 skycolor.remove_layer("lightning")
46 thunder.init_done = false
47 end
49 -- register thunderstorm weather
50 if weather.reg_weathers.thunder == nil then
51 weather.reg_weathers.thunder = {
52 chance = 5,
53 clear = thunder.clear,
54 -- 10min - 20min
55 min_duration = 600,
56 max_duration = 1200,
58 end