В настоящее время я работаю над игрой с p5, которая будет включать в себя довольно сложные вещи… по крайней мере, для меня, в любом случае.
Как я могу назвать класс без зацикливания на p5?
Рассмотрим мой следующий код:
function draw() {
lumberjack.clicked();
}
class Lumberjack {
constructor(x, y, br, bg, bb, dr, dg, db) {
this.x = x,
this.y = y,
this.br = br,
this.bg = bg,
this.bb = bb,
this.dr = dr,
this.dg = dg,
this.db = db
}
body() {
noStroke();
fill(this.br, this.bg, this.bb);
rect(this.x, this.y, 20, 40);
fill(this.dr, this.dg, this.db);
rect(this.x + 4, this.y - 2, 2, 35);
rect(this.x + 14, this.y - 2, 2, 35);
rect(this.x, this.y + 30, 20, 10);
fill(91, 51, 0);
rect(this.x, this.y + 30, 20, 2);
fill(255);
rect(this.x + 9, this.y + 30, 2, 2);
}
move() {
}
clicked() {
let d = dist(mouseX, mouseY, this.x + 10, this.y + 20);
if (d < 20) {
console.log("I'm a lumberjack and I'm ok");
}
}
}
Если я нажму на свой дровосек, начнется бесконечный цикл console.logs.
Единственный способ разобраться, как решить эту проблему, этопоместить мой вызов функции в функцию mousePressed (), но тогда мой console.log по-прежнему вызывается дважды.
Могу ли я вызывать классы без их зацикливания?
Заранее спасибо!
Макс