WWACustomEvents - WWAWing/WWAWing GitHub Wiki

移転前の内容は、下記を参照してください。

# WWA Custom Events の紹介

WWA Custom Events は、WWA Wing と連携したWebアプリケーションを構築するのに便利な機能です。JavaScriptで、特定の種類のイベントが発生した時に実行する処理を記述することができます。

利用方法

まず、WWA Wingが設置されているWebページで、ID「wwa-wrapper」のDOM要素を取得してください。この解説では、定数 wwa に代入することとします。

const wwa = document.getElementById("wwa-wrapper");

or

const wwa = document.querySelector("#wwa-wrapper");

wwa.addEventListener を呼び出し、イベントが実行された時に呼び出したい関数を登録します。ここでは、Quick Save が完了された時に実行される関数を定義してみます。 Quick Save の完了を表すイベント名は wwa_quicksave です、

// トランスパイルせずに IE11でも利用できるようにするため、function~の関数定義を用いましたが、
// IE11を非対応にしたり、トランスパイルしたりするなら、アロー関数でも大丈夫です。
wwa.addEventListener("wwa_quicksave", function (event) {
  console.log(event.detail);
}); 

定義した関数の引数で受け取ったオブジェクトのプロパティ detail を参照することにより、イベント発生とともに送信されたデータを確認することができます。(detail というプロパティ名は各イベント共通です。)

イベント一覧

イベント名 イベントが発生するタイミング detail の内容 備考
wwa_startup WWA Wing が起動した {}
wwa_start マップデータのロードが完了した {}
wwa_quickload Quick Load が完了した {}
wwa_restart Restart Game が完了した {}
wwa_passwordload パスワードによるロードが完了した {}
wwa_quicksave Quick Save が完了した { data: (セーブデータ), compress: (圧縮されたセーブデータ) }
wwa_passwordsave パスワードによるセーブが表示された {data: (パスワードに相当するセーブデータ), compress: (圧縮されたセーブデータ) }
wwa_suspend 中断が実行された {data: (セーブデータ), compress: (圧縮されたセーブデータ)}
wwa_window_show ウィンドウが表示された {name: (ウィンドウ名), element: (ウィンドウのDOM要素), text: (ウィンドウのDOM要素の textContent}
wwa_window_hide ウィンドウが消えた {name: (ウィンドウ名) }

wwa_window_show, wwa_window_hide のウィンドウ名一覧

ウィンドウ名 説明
MonsterWindow 戦闘中に表示されるモンスターのステータスウィンドウ
ScoreWindow スコア表示
MessageWindow 通常メッセージ・システムメッセージのウィンドウ
TextWindow その他のウィンドウ
⚠️ **GitHub.com Fallback** ⚠️