各dフォルダの説明部分です。
9/23 モンスター個別のデータはenemydata/enemiesdata.jsファイルにある。 出現モンスターグループのデータはbattle.jsファイルのInit()内で設定している。
9/16 lib/jkey.jsのファイル名をinput.jsに変更。 ページ表示後、YoutubeAPIの入力がなければ自動再生しない仕様(2020/10/08パソコンでは再生した)に対応する。 HTMLヘッダーで https://www.youtube.com/iframe_api スクリプトのロードをするよう変更。 (ロードしないと「Uncaught TypeError: Cannot read property 'cueVideoById' of null」エラー) lib/input.jsで最初のクリックまたはキー押下でYoutubeSetMusic(0);を実行する。 GetYoutubeListEntry関数(../res/youtubelist.jsを参考)を用意すること。 10/7 TODO:ページ読込直後のクリックではonReadyが使われ、直後以降では$("body").bind('click'...)が使われる。 自動再生したくない場合もあるので、全てのパターンに対応した修正が必要。 res/youtubelist.jsのGetYoutubeListEntry(0)を自動再生する。 もしnoneであれば、再生しない。
9/10 menuview.js SetContentAndItemIndices(cellIndex, itemName, itemNumber, itemIndex) 作成 SetItemIndices(idx, value) 削除 ポーションなどはItemではなくConsumableとする。ゲーム表示は「アイテム」カテゴリのまま ../menudata/item0.js, ../menudata/item1have.js, 9/5 リファクタリング ファイル名やクラス名を変更 クリックで表現可能な各画面の単位によって名前をつける taskという単位によって切り分ける menustask.jsを作成 taskによって分けられたらfunction KeyTask()とClickTask()で処理を行うようにする。 処理は左右上下キー、OKキー、Cancelキーごとの処理と、クリックの処理
StartScene() { function StartSceneBody() { $("#idMenuFade").css('display', 'block'); $("#idMenuFade").css('display','none'); Menu.OnFadeIn(); $("#idMenuFade").fadeIn(500, function() { setTimeout("Menu.FrameOne()", this.kOneFrameTimeMs); }); } $("#idMenuFade").fadeOut(500, function() { StartSceneBody(); }); }ここでゲームループ本体実行中!
OnCancel() { if (MHIsDisappearItem()) { if (typeof EndMenu == 'function') { this.#doContinueMenu = false; $("#idMenuFade").fadeOut(200, function() { setTimeout("EndMenu()", this.kOneFrameTimeMs); }); } } }シーン終了時は「this.#doContinueMenu」によってsetTimeOut()をスキップし、フラグをtrueに戻して終了する。
this.#frameCount++; if (this.#doContinueMenu) { setTimeout("Menu.FrameOne()", this.kOneFrameTimeMs); } else { this.#doContinueMenu = true; }3.html内のスクリプトで次のシーンへ移行する。
function EndMenu() { Field.StartScene(); }