我想写一些类似俄罗斯方 block 的输出,由可能处于两种状态的 block 组成。当它变为事件状态时,我需要更改 block 的 Sprite 。为了进行测试,我刚刚添加了在按下左按钮时激活一个 block 的设置。
我尝试调用 loadTexture,但它抛出 loadTexture is not a function 错误
function create() {
field = new Array(height)
for (let i = 0; i < height; i++) {
field[i] = new Array(width);
for (let j = 0; j < width; j++) {
field[i][j] = new Object();
field[i][j].isActive = false;
field[i][j].sprite = this.add.sprite(j * blockSize, i * blockSize, 'block').setOrigin(0, 0);
}
}
cursors = this.input.keyboard.createCursorKeys();
}
function update() {
if (cursors.left.isDown) {
field[1][1].isActive = true;
}
for (let i = 0; i < height; i++) {
for (let j = 0; j < width; j++) {
if (field[i][j].isActive && field[i][j].sprite.texture.key != 'blockActive') {
field[i][j].sprite.loadTexture('blockActive', 0);
}
}
}
}
最佳答案
您已经知道这是 setTexture
而不是 loadTexture
。但是,您真的应该考虑使用纹理图集并仅更改框架(通过 setFrame
),而不是在玩家每次按下按键时都设置全新的纹理。
关于javascript - phaser js 3 loadTexture 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54391965/