javascript - 基本的文字格斗游戏javascript

标签 javascript variables constructor format

我是 javascript 的新手,所以如果我有点慢,请原谅我。我一直在寻找可以通过控制台运行的基本文本格斗游戏。这个想法是首先询问用户他们的 Angular 色名称。我正计划使用这个:

console.log("Character name:");
var character_name = prompt("Character name:");

我正在使用 repl.it 所以 prompt 实际上并没有打印出字符串“Character name:”,这就是我使用 的原因console.log 以在控制台中查看它。

在他们为自己的 Angular 色命名后,我希望他们能够从三个不同的职业中进行选择:巫师、骑士、弓箭手。我会以类似的方式做到这一点:

console.log("Please choose your class: wizard, knight, rogue");
var character_class = prompt("Please choose your class: wizard, knight, archer");

if (character_class == "wizard"){
    var my_hero = wizard;
} else if (character_class == "knight"){
    var my_hero = knight;
} else (character_class == "archer");{
    var my_hero = archer;
} 

var wizard = new Character(character_name,"wizard",50,15,8,10);
var knight = new Character(character_name,"knight",100,5,3,20);
var archer = new Character(character_name,"archer",75,7,5,25);

function Character(name,characterClass,health,damage,heal,dodge){
    this.name = name,
    this.characterClass = characterClass,
    this.health = health,
    this.damage = damage,
    this.heal = heal,
    this.dodge = dodge;
}

console.log(my_hero)

所以,我想做的是在“Angular 色创建”阶段结束时,我希望能够调用 my_hero 并查看他的统计数据。但是,当我这样做时,它会显示弓箭手的统计数据,而不是巫师/骑士的统计数据(如果选择的话)。这是我在控制台中看到的内容:

Character name:
 napp
Please choose your class: wizard, knight, archer
 wizard
{ name: 'napp', characterClass: 'archer', health: 75, damage: 7, heal: 5, dodge: 25 }

请记住,我是新来的,这篇文章可能会随着更多问题的出现而改变。感谢您的耐心等待,欢迎所有提示/建议。如果有更好的方法,请毫不犹豫地介绍这种方法。

最佳答案

我会选择构造方法,但更像这样

var Gandalf = new Character("Gandalf", "wizzard", 50, 15, 8);

function Character(name, characterClass, health, damage, heal){
    this.name = name,
    this.characterClass = characterClass,
    this.health = health,
    this.damage = damage,
    this.heal = heal,
    this.dodge = Math.random() * 100 + 1;
}

关于javascript - 基本的文字格斗游戏javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30023555/

相关文章:

java - 无法从 JSP 页面检索参数值

javascript - 如何在参数之类的函数中使用函数调用者变量?

variables - Windows批处理文件: what is variable expansion,和EnableDelayedExpansion是什么意思?

c++ - 继承:构造函数,像c++11中基类的数组成员一样初始化C

python - 如何避免使用 Python 继承重新定义默认参数

VBA构造函数不起作用

javascript - 计算日期之间的天数

javascript - 为动态更改其 id 的输入字段分配一个值

javascript - 新的 Date() 函数无法正常工作

C# 标志问题