NarraLeaf

ソリューション

UI、ルーティング、セーブ、通知、ギャラリー、移行のための実装パターン一式

ソリューションはコアのストーリー API と React UI を組み合わせます。各ページは動作するパターンから始め、どこを拡張すればよいかを示します。

プレイヤー UI

ページとゲーム機能

よくある質問

Game はグローバルなシングルトンですか

いいえ。useGame() は、最も近い GameProviders が保持する Game インスタンスを返します。同じインスタンスを複数の消費者に渡せば状態が共有され、別々の Provider は別々のゲームを持つことができます。

const game = useGame();
const liveGame = game.getLiveGame();

NarraLeaf にはセーブスロットが内蔵されていますか

NarraLeaf は liveGame.serialize()liveGame.deserialize() を通じて実行時の状態をシリアライズおよび復元します。localStorage、IndexedDB、ファイル、サーバーのどれを使うかはアプリケーション側が選び、スロット UI も自分で用意します。localStorage セーブ を参照してください。

独自の UI はどこに置きますか

対話、メニュー、NVL、通知の各スロットには Game の設定を使います。設定、履歴、ギャラリー、セーブの各ページは PageLayout を使って Player の内側に置きます。

このページの目次