【问题标题】:How to use mouseX and mouseY to remove a sprite如何使用 mouseX 和 mouseY 删除精灵
【发布时间】:2023-02-08 03:14:17
【问题描述】:

使用 p5.js / p5.play 我试图点击一个移动的精灵,但坚持如何获得移动的精灵坐标和位置。当我点击画布上的任意位置时,一个随机的精灵消失了。我一直在尝试使用 mouseX 和 mouseY。对编码非常陌生,只是想学习基础知识。

let enemy;

let spawnTimer = 0;

function setup() {
  createCanvas(900, 900);
  spritegroup = new Group();
  clickedgroup = new Group();
}

function draw() {
  background(255, 255, 255);

  spritegroup.cull(20);
  clickedgroup.cull(20);
  spawnSprites();
  spriteClicked();
  drawSprites();
}

function spawnSprites() {
  if (spawnTimer === 60) {
    for (var i = 0; i < 2; i++) {
      var angle = random(360);
      var x = random(50, 850);
      var y = -5 * sin(radians(angle));

      createEnemy(3, x, y);
      spawnTimer = 0;
    }
  }

  spawnTimer++;
}

function createEnemy(type, x, y) {
  enemy = createSprite(x, y);
  enemy[floor(random(0, 4))];

  enemy.setSpeed(3.5 - type / 2, 90);
  spritegroup.add(enemy);
  enemy.setCollider("rectangle", 0, 0, 100, 100);
  enemy.debug = true;

  return enemy;
}

function spriteClicked() {
  if (mouseIsPressed == true)
    if (
      (mouseX > enemy.position.x,
      enemy.position.y && mouseY > enemy.position.x,
      enemy.position.y)
    ) {
      enemy.remove();
    }
}

【问题讨论】:

    标签: javascript p5.js p5.play


    【解决方案1】:

    最简单的方法是使用sprite.mouse :)

    https://p5play.org/learn/input_devices.html?page=3

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-24
      • 2012-10-15
      • 1970-01-01
      • 2021-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多