如何在 Cocos Creator 场景之间发送最终游戏分数?
How to send final game score between Cocos Creator scenes?
我正在尝试使用 Cocos Creator 创建游戏。我在游戏中使用了多个文件。像 Game.js
GameOver.js
Jump.js
等。我正在用 GainScore.js
收集分数。我必须将最终得分发送到 GameOver.js
文件。我在比赛中正确地显示了比分。但是当游戏结束时,我必须将它发送到另一个屏幕。如何使用全局游戏分数?
我的 gainScore 函数:
gainScore() {
this.score += 1;
if (this.scoreDisplay === null) return;
this.scoreDisplay.string = this.score;
},
我的GameOver.js
文件
cc.Class({
extends: cc.Component,
properties: {
scoreEnd: {
default: null,
type: cc.Label,
},
},
start() {
this.scoreEnd.string = this.score.toString(); // I can't access with this way
},
});
您可以使用 CommonJS。创建一个名为 Global.js
.
的新文件
scripts
|__ GameOver.js
|__ GainScore.js
|__ Global.js
并在此处保留您的全局变量。
Global.js:
module.exports = {
score: 0
};
并在其他文件中与 require 一起使用:
let Globals = require("Globals");
....
gainScore() {
Globals.score += 1; // not this.score, should be Globals.score
if (this.scoreDisplay === null) return;
this.scoreDisplay.string = Globals.score;
},
您应该要求所有其他将使用的文件
let Globals = require("Globals");
cc.Class({
extends: cc.Component,
properties: {
scoreEnd: {
default: null,
type: cc.Label,
},
},
start() {
this.scoreEnd.string = Globals.score.toString();
},
});
我正在尝试使用 Cocos Creator 创建游戏。我在游戏中使用了多个文件。像 Game.js
GameOver.js
Jump.js
等。我正在用 GainScore.js
收集分数。我必须将最终得分发送到 GameOver.js
文件。我在比赛中正确地显示了比分。但是当游戏结束时,我必须将它发送到另一个屏幕。如何使用全局游戏分数?
我的 gainScore 函数:
gainScore() {
this.score += 1;
if (this.scoreDisplay === null) return;
this.scoreDisplay.string = this.score;
},
我的GameOver.js
文件
cc.Class({
extends: cc.Component,
properties: {
scoreEnd: {
default: null,
type: cc.Label,
},
},
start() {
this.scoreEnd.string = this.score.toString(); // I can't access with this way
},
});
您可以使用 CommonJS。创建一个名为 Global.js
.
scripts
|__ GameOver.js
|__ GainScore.js
|__ Global.js
并在此处保留您的全局变量。
Global.js:
module.exports = {
score: 0
};
并在其他文件中与 require 一起使用:
let Globals = require("Globals");
....
gainScore() {
Globals.score += 1; // not this.score, should be Globals.score
if (this.scoreDisplay === null) return;
this.scoreDisplay.string = Globals.score;
},
您应该要求所有其他将使用的文件
let Globals = require("Globals");
cc.Class({
extends: cc.Component,
properties: {
scoreEnd: {
default: null,
type: cc.Label,
},
},
start() {
this.scoreEnd.string = Globals.score.toString();
},
});