【发布时间】:2021-03-17 08:37:23
【问题描述】:
我正在制作一个 javascript 射击游戏。我希望玩家向鼠标旋转。它正在工作,但旋转不正确。 我用图像尝试了这个,它可以工作,但精灵本身(player1)不是。 我以前问过一次,但没有得到答复
我是 javascript 的初学者,希望能提供帮助。
我正在使用 p5.js 库
这是我的代码 sn-p:
//variables
var player1;
var gun1;
var gun2;
function preload(){
img = loadImage('rect1.png');
}
function setup(){
//creating sprites
player1 = createSprite(200,200,30,30)
gun = createSprite(player1.x,player1.y-20,5,30)
gun.shapeColor = "black"
player1.addImage("player",img)
player1.scale = 0.2
}
function draw(){
canvas = createCanvas(displayWidth-20, displayHeight-120);
background("#32CD32");
push()
gun.x = player1.x;
gun.y = player1.y-15;
// functions to move
//up
if(keyDown("up")){
player1.y = player1.y - 5;
}
//down
if(keyDown("down")){
player1.y = player1.y + 5;
}
//right
if(keyDown("right")){
player1.x = player1.x + 5;
}
//left
if(keyDown("left")){
player1.x = player1.x - 5;
}
angleMode(DEGREES)
imageMode(CENTER)
let a = atan2(mouseY - height / 2, mouseX - width / 2);
translate(width/2, height/2);
//rotate(a)
player1.rotation = a
//image(img,0,0,40,40)
pop()
drawSprites();
}
【问题讨论】:
-
drawSprites是做什么的? -
drawSprites 是一个显示精灵的函数(在 p5 中)
-
我在p5.js API reference 中找不到
drawSprites。
标签: javascript rotation mouse p5.js p5.play