2015-05-04 58 views
4

我敢新的JavaScript所以請原諒我,如果我是一個有點慢。我正在尋找創建一個基本的文本戰鬥遊戲,我可以通過控制檯運行。這個想法是首先要求用戶提供他們的角色名稱。我打算用這樣的:基本文本格鬥遊戲的JavaScript

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

我使用repl.it所以prompt實際上並沒有打印出字符串「角色名」,這就是爲什麼我使用console.log看到它在控制檯中。

他們已經給他們的字符的名稱後,我希望他們能夠從三個不同類別的選擇:精靈,騎士,弓箭手。我會做,在類似的方式:

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) 

所以,我想要做的是在「角色創造」階段結束時,我希望能夠調用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 } 

請記住,我是新的,這篇帖子可能改變,更多的問題可能出現。感謝您的耐心等待,並歡迎所有提示/建議。如果有更好的方式做這個請不要猶豫,以這種方式。

+0

哎,我只是回答了一個問題「讀取文件進入Ruby程序「,而你刪除它,不是很好 – peter

回答

2

我會選擇consctructor的方法,但更喜歡這個

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; 
}