从函数中调用多个颜色代码

Calling multiple color codes from a function

尝试创建一个功能,通过按键可以在矩形中显示不同的颜色。这里是初学者编码器,不确定哪里不对。enter image description here

let value = 0;
function draw() {
  fill(value);
  rect(100, 150, 250, 250);
}
function backcolor() {
  var color = [
    (x = (255, 215, 0)),
    (y = (255, 15, 0)),
    (z = (255, 215, 0)),
    (i = (255, 215, 0)),
  ];

  function keyPressed() {
    if (keyCode === UP_ARROW) {
      return backcolor;
    } else if (keyCode === DOWN_ARROW) value = 0;
  }
}

您所要做的就是在按下 UP 时递增 value。创建一个 fillColor 函数 returns 颜色取决于输入:

let value = 0;

function setup() {
   createCanvas(400, 450);
}

function draw() {
    background(255);
    fill(fillColor(value));
    rect(100, 150, 250, 250);
}

function fillColor(select) {
    let colors = [
        color(255, 0, 0),
        color(255, 128, 0),
        color(255, 255, 0),
        color(0, 255, 0),
    ];
    return colors[select% colors.length];
}

function keyPressed() {
    if (keyCode === UP_ARROW) {
        value ++;
    } else if (keyCode === DOWN_ARROW) {
        currentColor = 0;
    }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.0/p5.min.js"></script>