我对在游戏开始前选择角色有一些疑问。现在,您可以使用此Link查看演示,也可以使用此Link
进行回购我使用VEX库来使用对话框,但是我听说在jQuery中我可以使用本机对话框,但是在3.3.1版中它们无法正常工作,所以我现在使用VEX库。
首先,我要使其选择所需的字符。 当我访问我的项目时,可以看到类似此页面的内容。
,每个按钮都具有价值,因此当我单击按钮时,它们会记录每个字符。您可以检查代码。
// To choose Character with VEX Library
function CharacterChoose() {
vex.dialog.open({
message: 'Which character do you want to play?',
input: [
'<label for="char-boy"><img src="images/char-boy.png" class="imagepadding" /></label>',
'<img src="images/char-cat-girl.png" class="imagepadding" />',
'<img src="images/char-pink-girl.png" class="imagepadding" />',
'<img src="images/char-horn-girl.png" class="imagepadding" />',
'<img src="images/char-princess-girl.png" class="imagepadding" />'
].join(''),
buttons: [
$.extend({}, vex.dialog.buttons.NO, {
text: 'Char-Princess-Girl',
click: function () {
this.value = 'char-princess-girl';
this.close();
}
}),
$.extend({}, vex.dialog.buttons.NO, {
text: 'Char-Horn-Girl',
click: function () {
this.value = 'char-horn-girl';
this.close();
}
}),
$.extend({}, vex.dialog.buttons.NO, {
text: 'Char-Pink-Girl',
click: function () {
this.value = 'char-pink-girl';
this.close();
}
}),
$.extend({}, vex.dialog.buttons.NO, {
text: 'Char-Cat-Girl',
click: function () {
this.value = 'char-cat-girl';
this.close();
}
}),
$.extend({}, vex.dialog.buttons.NO, {
text: 'Char-Boy',
click: function () {
this.value = 'char-boy';
this.close();
}
})
],
callback: function (value) {
// char-boy','char-cat-girl','char-horn-girl','char-pink-girl','char-princess-girl
switch (value) {
case "char-boy":
console.log('You choose Char-boy');
break;
case "char-cat-girl":
console.log('You choose Char-Cat-Girl');
break;
case "char-horn-girl":
console.log('you choose Char-Horn-Girl');
break;
case "char-pink-girl":
console.log('You Choose Char-Pink-Girl');
break;
case "char-princess-girl":
console.log('You Choose Char-Princess-Girl');
break;
default:
case "char-boy":
console.log('You choose Char-boy');
break;
}
}
})
}
所以该值很重要,但实际上我不知道如何将该值转换为Player变量。
let Player = function (x, y, speed, value) {
this.x = x;
this.y = y;
this.speed = speed;
this.sprite = 'images/' + value + '.png';
};
我之所以这样编写代码,是因为当我启动项目并选择字符时,我想在那里获得一个值,以便this.sprite可以读取正确的URL。但是我不知道如何思考逻辑并从中获取价值。