hibikousinnkibouのブログ

駆け出しプログラマーによる足跡ブログ

落ちゲーアプリ作成10

就職活動として PF を作成したり、README を修正したりでなかなかオリアプが進みません。

今日は2、3時間ほどオリアプ作成のための時間を作って取り組み、ゲーム性として大事な得点の記録機能を調べてチャレンジしていました。

 

ネット検索では関数宣言or関数式の中から出したい値を return で呼び出し、その関数名を利用することで値を呼び出す方法を掲示していました。

関数とスコープ · JavaScript Primer #jsprimer

僕の場合は addEventListner 内の関数宣言内の値を呼び出したかったので、addEventListner 関連の記事の中に、関数宣言を外に出す方法が記載されている以下の記事を発見したので、試してみると関数宣言を外に出すことは成功。

【JavaScript】addEventListenerで関数に引数をわたす|北の南|note

しかしながら、肝心の点数( clickCount と定義しています。)に関しては、その値を呼び出すことができませんでした。

 

// クリックカウント
const gamePoint = document.getElementById("game_point");
const resultPoint = document.getElementById("result_point");
const ninjas =document.getElementById("ninjas");
let clickCount = 0
function countUp(){
clickCount += 10;
gamePoint.innerHTML = `合計${clickCount}点`;
resultPoint.innerHTML = `総得点 ${clickCount} 点`;
return clickCount;
};
ninjas.addEventListener("click",countUp);

今のところこんな感じで、今までは最下段のninjas.addEventListner("click",

()=>{~});というような感じだったものを外に出した感じです。

どっちにしても clickCount が外に呼び出せなければ一緒なのですが。。

clickCount が外で呼び出せれば、倒す忍者毎に点数が変更できると思いますし、記録の登録もできるはずです。

今日購入した本

ゲーム性を高めるためにここは絶対成し遂げたいのでヒントになりそうな本を買ってきました。勉強しながらこの機能は実装したいと思います。

一旦じゃ全く装飾がされてないページの手直しや合計点数を他の投稿サイトに気軽にアップできるようにロゴを添付するなどの機能から進めていこうと思います。