From f8a87f05c23bbef5bac818b22f68b27ca0252811 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Sun, 30 Oct 2022 22:27:15 +0100 Subject: Fixture library: Add random strobe mode --- guile/starlet/fixture-library/stairville/z120m.scm | 23 +++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'guile') diff --git a/guile/starlet/fixture-library/stairville/z120m.scm b/guile/starlet/fixture-library/stairville/z120m.scm index 60e34b3..46cd6cd 100644 --- a/guile/starlet/fixture-library/stairville/z120m.scm +++ b/guile/starlet/fixture-library/stairville/z120m.scm @@ -33,19 +33,24 @@ (attr-continuous 'intensity '(0 100) 0) (attr-colour 'colour white) (attr-continuous 'strobe-frequency '(1 25) 1) - (attr-list 'strobe '(#f #t) #f)) + (attr-list 'strobe '(off on random) 'off)) (let ((intensity (get-attr 'intensity)) (rgbw (colour-as-rgbw (get-attr 'colour)))) (set-chan8 1 (percent->dmxval8 intensity)) - (if (get-attr 'strobe) - (set-chan8 2 (scale-and-clamp-to-range - (get-attr 'strobe-frequency) - '(1 25) - '(106 165))) - (set-chan8 2 255)) (set-chan8 3 (percent->dmxval8 (car rgbw))) (set-chan8 4 (percent->dmxval8 (cadr rgbw))) (set-chan8 5 (percent->dmxval8 (caddr rgbw))) - (set-chan8 6 (percent->dmxval8 (cadddr rgbw))))) - + (set-chan8 6 (percent->dmxval8 (cadddr rgbw)))) + (cond + ((eq? (get-attr 'strobe) 'on) + (set-chan8 2 (scale-and-clamp-to-range + (get-attr 'strobe-frequency) + '(1 25) + '(106 165)))) + ((eq? (get-attr 'strobe) 'random) + (set-chan8 2 (scale-and-clamp-to-range + (get-attr 'strobe-frequency) + '(1 25) + '(181 240)))) + (else (set-chan8 2 255)))) -- cgit v1.2.3