我有问题,因为我不知道它是怎么工作的。
我创造了一个场景,你可以选择升级为你的角色。我有三个升级,你可以选择。
因此,我要为每次升级创建一个类,我想将它们导入upgradeScene (UI)。我试过这个…但是我看不到控制台中没有错误的东西。
increase_speed.js
let rectC;
let cardC; //container
let increase_speed_title;
let increase_speed_description;
let increase_speed_btn;
export default class IncreaseSpeed extends Phaser.Scene {
constructor() {
super('increase_speed');
}
preload() {
this.load.image('cardbg', './Assets/UI/cardbg.png');
}
create() {
const screenCenterX = this.cameras.main.worldView.x + this.cameras.main.width / 2;
const screenCenterY = this.cameras.main.worldView.y + this.cameras.main.height / 2;
rectC = this.add.image(0, 0, 'cardbg');
increase_speed_title = this.add.text(-65, -100, 'Increase\nSpeed', {
fontFamily: 'dogicaPixel',
fontSize: '20px',
align: 'center'
});
increase_speed_description = this.add.text(-80, 0, 'Lorem ipsum\ndolor sit amet', {
fontFamily: 'dogicaPixel',
fontSize: '15px',
align: 'center'
});
increase_speed_btn = this.add.text(-65, 120, 'UPGRADE', {
fontFamily: 'dogicaPixel',
fontSize: '20px',
align: 'center'
});
cardC = this.add.container(screenCenterX, screenCenterY, [rectC, increase_speed_title, increase_speed_description, increase_speed_btn]);
}
}create()函数中的upgradeScene.js:
const increase_speed = new IncreaseSpeed(this, 300, 400);
this.add.existing(increase_speed);我不确定这是否正确,export default class IncreaseSpeed extends Phaser.Scene,因为也许应该是一个游戏对象。但我不知道该怎么做。
发布于 2022-09-13 12:08:04
如果要添加scene (希望它保持为scene__,而不是使用不同的游戏对象),则只需调用this.scene.add(...)函数即可。
this.scene.add(this, IncreaseSpeed, true);而不是打电话:
const increase_speed = new IncreaseSpeed(this, 300, 400);
this.add.existing(increase_speed);场景应该显示,作为一个覆盖。
下面是这个函数的链接到文档。
https://stackoverflow.com/questions/73701595
复制相似问题