P5.js中的切换键

问题描述 投票:1回答:1

我想用同一个键来触发不同的事件,基本上是在 "toggle "模式下使用。

例如,我希望当'N'键被按下一次时,它就会执行noLoop(),而当它再次被按下时,它就会执行loop(),所以我可以把它当作一种暂停播放键。

目前,我的代码是这样的,当然,它并不工作,因为两个 "if "语句是背对背执行的。

function keyTyped(){

    let n =0;

    if (key == 'n' && n == 0 ){
    noLoop();
    n = 255;
    print(n);
    }

    if (key == 'n' && n == 255){
        print("success");
        loop();
        n = 0;
    }

谢谢!我想使用同样的方法。

processing p5.js
1个回答
1
投票

为了使 n 控制循环做出这些改变。

  1. 将声明中的 n 不在 keyTyped 函数,这样它就会保持状态。
  2. 改变这两个 if 条件,以达到 if else

let n = 0;
let cnt = 0;
function setup() {
    createCanvas(600, 600);
}

function draw(){
    console.log("looping " + cnt++);
}
function keyTyped(){
    if (key == 'n' && n == 0 ){
      noLoop();
      n = 255;
    } else if (key == 'n' && n == 255){
        loop();
        n = 0;
    }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.8.0/p5.min.js"></script>
© www.soinside.com 2019 - 2024. All rights reserved.