diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/scenes/speck_editor.lua | 6 | ||||
| -rw-r--r-- | src/specks.lua | 17 |
2 files changed, 16 insertions, 7 deletions
diff --git a/src/scenes/speck_editor.lua b/src/scenes/speck_editor.lua index bdba449..c9a47e6 100644 --- a/src/scenes/speck_editor.lua +++ b/src/scenes/speck_editor.lua @@ -17,8 +17,10 @@ local PROPERTY_CUSTOM = { forcex = {min = -2048, max = 2048}, forcey = {min = -2048, max = 2048}, damping = {min = 0, max = 128}, - initial_velx = {min = 0, max = 2048}, - initial_vely = {min = 0, max = 2048}, + initial_velx_max = {min = 0, max = 2048}, + initial_velx_min = {min = 0, max = 2048}, + initial_vely_max = {min = 0, max = 2048}, + initial_vely_min = {min = 0, max = 2048}, spread = {min = 0, max = 360}, lifetime_min = {min = 0, max = 32}, lifetime_max = {min = 0, max = 32}, diff --git a/src/specks.lua b/src/specks.lua index 7249539..f4cc025 100644 --- a/src/specks.lua +++ b/src/specks.lua @@ -59,8 +59,10 @@ function Speck_Sys.new() self.forcey = 0 self.damping = 0 - self.initial_velx = 0 - self.initial_vely = 0 + self.initial_velx_min = 0 + self.initial_velx_max = 0 + self.initial_vely_min = 0 + self.initial_vely_max = 0 self.spread = 0 self.lifetime_min = 1 @@ -93,8 +95,10 @@ SPECK_EXPORTED_ARGS = { "scale_end_max", "forcex", "forcey", - "initial_velx", - "initial_vely", + "initial_velx_min", + "initial_velx_max", + "initial_vely_min", + "initial_vely_max", "damping", "spread", "lifetime_min", @@ -142,7 +146,10 @@ function Speck_Sys:spawn_particles() local offx, offy = shape_func(self) data.pos[id] = { x = self.x + offx, y = self.y + offy } - data.vel[id] = { x = self.initial_velx, y = self.initial_vely } + data.vel[id] = { + x = randf_range(self.initial_velx_min, self.initial_velx_max), + y = randf_range(self.initial_vely_min, self.initial_vely_max), + } local beta = self.spread * math.pi / 180 beta = beta / 2 |
