Skip to content

Commit ee0e5b1

Browse files
committed
advanced keyboard mapping
1 parent 7db6bbf commit ee0e5b1

File tree

10 files changed

+63
-32
lines changed

10 files changed

+63
-32
lines changed

Derby_Effect.pde

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class Derby_Effect extends Effect
2020
}
2121

2222
char triggeredByKey() {
23-
return 'd';
23+
return '5';
2424
}
2525

2626
Slider weightSlider, speedSlider, pointSlider, hueSlider;

Effect.pde

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ public abstract class Effect
2828
Toggle activeToggle, randomToggle, settingsToggle;
2929

3030
Tab settingsTab;
31+
32+
Boolean effect_manual_triggered = false;
3133

3234
float rotationHistory = 0;
3335

@@ -56,7 +58,7 @@ public abstract class Effect
5658
controlGroup.disableCollapse();
5759
controlGroup.getCaptionLabel().set(getName()+" Settings").align(ControlP5.CENTER, ControlP5.CENTER);
5860

59-
ctrl.activeEffect.addItem(getName(),i);
61+
ctrl.activeEffect.addItem("("+triggeredByKey() + ") " + getName(),i);
6062
ctrl.activeSetting.addItem("settings"+getName(),i);
6163

6264
randomToggle = cp5.addToggle("random"+getName()).setSize(45, 45).setPosition(670, posy);
@@ -106,6 +108,7 @@ public abstract class Effect
106108

107109
void activate() {
108110
activeEffect.activate(id);
111+
activeSetting.activate(id);
109112
}
110113

111114
float getLevel()
@@ -158,9 +161,15 @@ public abstract class Effect
158161
abstract char triggeredByKey();
159162

160163
void keyPressed(char key, int keyCode)
161-
{}
164+
{
165+
if (key == 't')
166+
effect_manual_triggered = true;
167+
}
162168

163169
void keyReleased(char key, int keyCode)
164-
{}
170+
{
171+
if (key == 't')
172+
effect_manual_triggered = false;
173+
}
165174
}
166175

LaserBurst_Effect.pde

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ class LaserBurst_Effect extends Effect
5555
}
5656

5757
char triggeredByKey() {
58-
return 'b';
58+
return '7';
5959
}
6060

6161
Slider radiusSlider, speedSlider, hueSlider, rotationSpeedSlider;
@@ -71,7 +71,7 @@ class LaserBurst_Effect extends Effect
7171
void draw()
7272
{
7373
rotate(inverseToggle.getState()?rotation:-rotation);
74-
if (isKick()) {
74+
if (isKick() || effect_manual_triggered) {
7575
Float[] k = {
7676
0.0f, random(0, PI)
7777
};

Moonflower_Effect.pde

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public class Moonflower_Effect extends Effect
7878
}
7979

8080
char triggeredByKey() {
81-
return 'm';
81+
return '3';
8282
}
8383

8484
void draw()
@@ -87,7 +87,7 @@ public class Moonflower_Effect extends Effect
8787

8888
float speed = (1-speedSlider.getValue())*stg.frameRate;
8989

90-
if (timer<=0 && isKick()) {
90+
if (timer<=0 && (isKick() || effect_manual_triggered)) {
9191
if (aHueToggle.getState())
9292
hueSlider.setValue((hueSlider.getValue()+120)%360);
9393
direction = -1*direction;

MusicBeam.pde

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -257,21 +257,21 @@ void initEffects()
257257
{
258258
initRandomControls();
259259

260-
effectArray = new Effect[8];
261-
strobo = new Strobe_Effect(this, 0);
262-
effectArray[0] = strobo;
263-
effectArray[1] = new Scanner_Effect(this, 1);
264-
effectArray[2] = new Moonflower_Effect(this, 2);
265-
effectArray[3] = new RGBSpot_Effect(this, 3);
266-
effectArray[4] = new Derby_Effect(this, 4);
267-
effectArray[5] = new Snowstorm_Effect(this, 5);
268-
effectArray[6] = new LaserBurst_Effect(this, 6);
269-
effectArray[7] = new Polygon_Effect(this, 7);
260+
effectArray = new Effect[9];
261+
effectArray[0] = new Blackout_Effect(this, 0);
262+
effectArray[1] = new Strobe_Effect(this, 1);
263+
effectArray[2] = new Scanner_Effect(this, 2);
264+
effectArray[3] = new Moonflower_Effect(this, 3);
265+
effectArray[4] = new RGBSpot_Effect(this, 4);
266+
effectArray[5] = new Derby_Effect(this, 5);
267+
effectArray[6] = new Snowstorm_Effect(this, 6);
268+
effectArray[7] = new LaserBurst_Effect(this, 7);
269+
effectArray[8] = new Polygon_Effect(this, 8);
270270

271271
activeSetting.activate(0);
272272

273273
for (Toggle t:activeEffect.getItems())
274-
t.getCaptionLabel().align(CENTER, CENTER);
274+
t.getCaptionLabel().align(LEFT, CENTER);
275275

276276
for (Toggle t:activeSetting.getItems())
277277
t.getCaptionLabel().set("EDIT").align(CENTER, CENTER);
@@ -302,21 +302,21 @@ void keyPressed()
302302
{
303303
if (effectArray!=null)
304304
for (int i = 0; i < effectArray.length; i++)
305+
{
306+
if (key == effectArray[i].triggeredByKey())
307+
effectArray[i].activate();
305308
if (effectArray[i].isActive())
306309
effectArray[i].keyPressed(key, keyCode);
310+
}
307311
}
308312

309313
void keyReleased()
310314
{
311315

312316
if (effectArray!=null)
313317
for (int i = 0; i < effectArray.length; i++)
314-
{
315-
if (key == effectArray[i].triggeredByKey())
316-
effectArray[i].activate();
317318
if (effectArray[i].isActive())
318319
effectArray[i].keyReleased(key, keyCode);
319-
}
320320
}
321321

322322
boolean isHat()

Polygon_Effect.pde

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class Polygon_Effect extends Effect
2121
}
2222

2323
char triggeredByKey() {
24-
return 'p';
24+
return '8';
2525
}
2626

2727
int winHeight = 200;
@@ -109,5 +109,16 @@ class Polygon_Effect extends Effect
109109
angle+=360.0/points;
110110
}
111111
}
112+
113+
void keyPressed(char key, int keyCode)
114+
{
115+
super.keyPressed(key, keyCode);
116+
if (key == CODED) {
117+
if (keyCode == LEFT)
118+
rotationSpeedSlider.setValue(rotationSpeedSlider.getValue()-0.05);
119+
else if (keyCode == RIGHT)
120+
rotationSpeedSlider.setValue(rotationSpeedSlider.getValue()+0.05);
121+
}
122+
}
112123
}
113124

RGBSpot_Effect.pde

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class RGBSpot_Effect extends Effect
2020
}
2121

2222
char triggeredByKey() {
23-
return 'r';
23+
return '4';
2424
}
2525

2626
RGBSpot_Effect(MusicBeam ctrl, int y)
@@ -102,7 +102,7 @@ class RGBSpot_Effect extends Effect
102102

103103
boolean isTriggered()
104104
{
105-
if (manualButton.isPressed())
105+
if (manualButton.isPressed() || effect_manual_triggered)
106106
return true;
107107
else if ((!onsetToggle.getState() && hatToggle.getState() && isHat()) || (onsetToggle.getState() && isOnset() && hatToggle.getState() && isHat()))
108108
return true;

Scanner_Effect.pde

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ class Scanner_Effect extends Effect
4343
}
4444

4545
char triggeredByKey() {
46-
return 'c';
46+
return '2';
4747
}
4848

4949
float rotation = 0.0f;

Snowstorm_Effect.pde

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ class Snowstorm_Effect extends Effect
4848
}
4949

5050
char triggeredByKey() {
51-
return 'o';
51+
return '6';
5252
}
5353

5454
Slider radiusSlider, speedSlider, hueSlider;

Strobe_Effect.pde

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,16 @@ public class Strobe_Effect extends Effect
1919
{
2020
return "Strobe";
2121
}
22-
22+
2323
char triggeredByKey() {
24-
return 's';
24+
return '1';
2525
}
2626

2727
public Strobe_Effect(MusicBeam controller, int y)
2828
{
2929

3030
super(controller, y);
31-
31+
3232
randomToggle.setState(false);
3333

3434

@@ -77,7 +77,7 @@ public class Strobe_Effect extends Effect
7777

7878
boolean isTriggered()
7979
{
80-
if (manualButton.isOn())
80+
if (manualButton.isOn() || effect_manual_triggered)
8181
return true;
8282
else if ((!onsetToggle.getState() && hatToggle.getState() && isHat()) || (onsetToggle.getState() && isOnset() && hatToggle.getState() && isHat()))
8383
return true;
@@ -111,5 +111,16 @@ public class Strobe_Effect extends Effect
111111
if (state)
112112
stg.rect(-stg.maxRadius/2, -stg.maxRadius/2, stg.maxRadius, stg.maxRadius);
113113
}
114+
115+
void keyPressed(char key, int keyCode)
116+
{
117+
super.keyPressed(key, keyCode);
118+
if (key == CODED) {
119+
if (keyCode == LEFT)
120+
delaySlider.setValue(delaySlider.getValue()-1);
121+
else if (keyCode == RIGHT)
122+
delaySlider.setValue(delaySlider.getValue()+1);
123+
}
124+
}
114125
}
115126

0 commit comments

Comments
 (0)