これは、ゲームアプリケーション用です。変数skipnpcを宣言します。これは、ノンプレイヤーキャラクターが自分のターンを使用し、その行動に関連するAIコードが一定期間スキップされることを示すインジケーターとして設計されています。私が抱えている問題は、skipnpcの値が失われていることです。発行するconsole.logコマンドのどこが可変スコープに関連しているのかを示しましたが、修正方法がわかりません。
function npcMovement() {
skipnpc = false;...
sql4 = "SELECT id FROM game_moblist WHERE spawn_id =" + spawnid + " AND posx=" + parseInt(mobpathx[mobpathx.length - 1]) + " AND posy=" + parseInt(mobpathy[mobpathy.length - 1])
connection.query(sql4, function (err, send, fields) {
console.log("skipnpc pathing")
io.sockets.emit('groupmoveresult', send, parseInt(mobpathx[mobpathx.length - 1]), parseInt(mobpathy[mobpathy.length - 1]))
skipnpc = true
console.log("skipnpc=true:" + skipnpc)
});
console.log("skipnpc = false:" + skipnpc)
後で使用します
if (skipnpc==false){
...
それ以上のAIコードが試行される前