【发布时间】:2018-08-11 06:16:25
【问题描述】:
我正在用 Javascript 进行口袋妖怪大战。我为口袋妖怪和动作制作了对象。即
var party1 = prompt("Pick BULBASAUR, SQUIRTLE, CHARMANDER, or PIKACHU")
confirm("You encountered a wild pokemon!")
var inPokemon = null /*Pokemon{party1}; Here i want party1 to be user input selecting a pokemon, so i can call Pokemon.party1 //which could equal "PIKACHU"//*/
var encounter = Math.floor(Math.random() * 10);
var Pokemon = {
Charmander: {
name: "Charmander",
moves: [moves.EMBER, moves.SCRATCH, moves.GROWL],
stats: [5, 20, 5, "FIRE"]
},
Pikachu: {
name: "Pikachu",
moves: [moves.SPARK, moves.SCRATCH, moves.SAND_ATTACK],
stats: [5, 25, 6, "ELECTRIC"]
},
Bulbasaur: {
name: "Bulbasaur",
moves: [moves.BULLET_SEED, moves.POUND, moves.SAND_ATTACK],
stats: [5, 22, 3, "GRASS"]
},
Squirtle: {
name: "Squirtle",
moves: [moves.BUBBLE, moves.POUND, moves.GROWL],
stats: [5, 18, 7, "WATER"]
}
}
var moves = {
BUBBLE: {
name: "BUBBLE",
stats: [12, "WATER"],
effect: null
},
POUND: {
name: "POUND",
stats: [10, "NORMAL"],
effect: null
},
GROWL: {
name: "GROWL",
stats: [0, "NORMAL", /*here I want it to be something like (Pokemon.party1.stats[2]*(.2) //reduced by 20%// */ ]
},
}
我的两个问题是相似的并且在上面的代码中提到,我希望一个对象的属性由于外部变量或另一个对象的属性而改变。很明显,我不知道该怎么做。提前感谢您的帮助!
【问题讨论】:
-
你的sniper有错误。
标签: javascript arrays object nested var