私はIIでユーザに数字を入力するようにミニゲームプログラムを用意しています。対戦相手の変数。他の賢明な、相手は私に損害を与えます。このプログラムでは減算を処理していますが、問題は、ファイルをnode.js(ノードfileName.js 4)で実行するたびに、プログラムのすべての変数がリセットされることです。 「損傷」が「hp」から差し引かれると、hpは保存されますが、リセットされたままになります。 mainCharacter
とはリセットしないでください。node.jsでファイルを実行した後に "inquirer"を使用して変数の値を保存する
var StrawberryCough = require("inquirer");
var mainCharacter = 70;
var zombie = {
hp: 15,
num: 0
}
StrawberryCough.prompt([
{
type: "input",
message: "Random Number 1-5: ",
name: "number"
}
]).then(function(user){
parseInt(user.number);
var ranNum = Math.round(Math.random() * (5 - 1) + 1);
zombie.num = ranNum;
if(user.number === zombie.num)
{
var damage = Math.round(Math.random() * (5 - 1) + 1);
console.log("Character Damage: ", damage);
zombie.hp -= damage;
console.log("zombie hp", zombie.hp);
if(zombie.hp <= 0)
{
console.log("You win!")
return;
}
}
else if(user.number !== zombie.num)
{
var zomDamage = Math.round(Math.random() * (5 - 1) + 1);
console.log("Zombie Damage: ", zomDamage);
mainCharacter -= zomDamage;
console.log("main hp", mainCharacter);
if(mainCharacter <= 0)
{
console.log("You lose!");
return;
}
}
});
ありがとうございます。別のファイルを作成することも考えましたが、代わりにexports.varを使用しました。私はあなたのseuggestionsを試してみます、ありがとう –
あなたはそれにどのようにアプローチするかは、あなたがそれと一緒に行くことをどれほど期待しているかによって決まります。 あなたのゲームがコマンドラインからスクリプトを実行しているだけで、そのスクリプトを実行する「ラウンド」の間に持続したい場合は、最も簡単な方法はjsonファイルに保存することです。 さらに進んで、ファイルを常に読み書きするパフォーマンスが心配であれば、明らかに他にもできることがありますが、ゲームのこの段階では、マイクロ最適化と過剰殺戮。 – isaacdre
これはあなたの質問に答えましたか? – isaacdre