keyboard shortcuts; ignore when some inputs active
This commit is contained in:
parent
afd3392611
commit
72a24ce131
1 changed files with 20 additions and 0 deletions
20
sketch.js
20
sketch.js
|
@ -297,7 +297,26 @@ function make_lights() {
|
|||
|
||||
function keyPressed() {
|
||||
if (key == ' ') {
|
||||
if (
|
||||
document.activeElement !== input_charge &&
|
||||
document.activeElement !== document.body
|
||||
) return;
|
||||
toggle_physics();
|
||||
} else if (key == 's') {
|
||||
toggle_physics();
|
||||
} else if (key == 'a') {
|
||||
input_charge.valueAsNumber = 0;
|
||||
input_charge.oninput();
|
||||
} else if (key == '[') {
|
||||
input_charge.valueAsNumber -= Number(input_charge.step);
|
||||
input_charge.oninput();
|
||||
} else if (key == ']') {
|
||||
input_charge.valueAsNumber += Number(input_charge.step);
|
||||
input_charge.oninput();
|
||||
} else if (key == '-') {
|
||||
make_particles(max(0, int(particles.length) - 1));
|
||||
} else if (key == '=') {
|
||||
make_particles(min(360, int(particles.length) + 1));
|
||||
} else if (key == 'd') {
|
||||
set_surface((surface + 1) % 3);
|
||||
} else if (key == 'f') {
|
||||
|
@ -305,6 +324,7 @@ function keyPressed() {
|
|||
} else if (key == 'g') {
|
||||
toggle_polytope();
|
||||
} else if (key >= '0' && key <= '9') {
|
||||
if (document.activeElement === input_particles) return;
|
||||
make_particles(int(key));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue