From cc83e6325781807985dc7e224f9d110e86d21da4 Mon Sep 17 00:00:00 2001 From: Adam Macumber Date: Sun, 18 Sep 2022 20:23:45 -0400 Subject: [PATCH] feat: Make rain behave a little more consistantly. --- mods/ENVIRONMENT/mcl_weather/rain.lua | 45 ++++++++++++++++----------- 1 file changed, 26 insertions(+), 19 deletions(-) diff --git a/mods/ENVIRONMENT/mcl_weather/rain.lua b/mods/ENVIRONMENT/mcl_weather/rain.lua index 0caef5c6f..a6c27c6e6 100644 --- a/mods/ENVIRONMENT/mcl_weather/rain.lua +++ b/mods/ENVIRONMENT/mcl_weather/rain.lua @@ -20,39 +20,46 @@ mcl_weather.rain = { init_done = false, } local update_sound={} -local vel=math.random(0,3) -local falling_speed=math.random(10,15) +local vel= 0 +local falling_speed= 15 local size = math.random(1,3) +local emitter_width = 20 +local emitter_height = 20 +local emitter_vertical_spread = 5 local psdef= { amount = mcl_weather.rain.particles_count, time=0, - minpos = vector.new(-6,3,-6), - maxpos = vector.new(6,15,6), + minpos = vector.new(-emitter_width,emitter_height,-emitter_width), + maxpos = vector.new( + emitter_width, + emitter_height+emitter_vertical_spread, + emitter_width + ), minvel = vector.new(-vel,-falling_speed,-vel), - maxvel = vector.new(vel,-falling_speed+vel,vel), - minacc = vector.new(0,0,0), - maxacc = vector.new(0,-0.4,0), + maxvel = vector.new(vel,-falling_speed,vel), + minacc = vector.new(0,-0.2,0), + maxacc = vector.new(0,-0.5,0), minexptime = 0.5, maxexptime = 2, minsize = size, - maxsize= size*2, + maxsize= size*3, collisiondetection = true, collision_removal = true, vertical = true, } local psdef_backsplash= { - amount = 10, + amount = mcl_weather.rain.particles_count * 5, time=0, - minpos = vector.new(-3,-1,-3), - maxpos = vector.new(3,0,3), - minvel = vector.new(-vel,falling_speed*2,-vel), - maxvel = vector.new(vel,falling_speed*2+vel,vel), - minacc = vector.new(0,0,0), - maxacc = vector.new(0,0,0), - minexptime = 0.1, - maxexptime = 0.2, - minsize = size*0.1, - maxsize= size*0.5, + minpos = vector.new(-emitter_width,0.1,-emitter_width), + maxpos = vector.new(emitter_width,0.1,emitter_width), + minvel = vector.new(0,falling_speed,0), + maxvel = vector.new(0,falling_speed+vel,0), + minacc = vector.new(0,-falling_speed*7,0), + maxacc = vector.new(0,-falling_speed*7,0), + minexptime = 0.5, + maxexptime = 1, + minsize = 1, + maxsize= 3, collisiondetection = true, collision_removal = true, vertical = true,