
610
14
章
Memento
パターン
Memento
パターン
例えば、ユーザが「アンドゥ(元に戻す)」を要求する
など、オブジェクトを以前の状態に戻せる必要がある
場合、Mementoパターンを使いましょう。
シナリオ
あなたの開発した対話型のロールプレイングゲームは
大きな成功を収め、伝説の「レベル
13
」にたどり着こう
と試みる多数の熱狂的ファンを生み出しています。ユー
ザがより難易度の高いレベルに進むにしたがって、ゲー
ムオーバーになる確率が高くなります。何日も費やして
高いレベルに進んできたファンは、自分のキャラクター
が消滅して最初からやり直すことになると、当然ながら
イライラします。そのため、プレイヤーがゲームの進捗
を保存し、キャラクターが不当に消滅された場合でも少
なくともその労力のほとんどを回復できるように、「進行
状況の保存」コマンドを要求しています。「進行状況の保
存」機能は、復活したプレイヤーを最後に成功したレベ
ルまで戻すように設計する必要があります。
ゲームの状態を保存する方法につい
ては注意が必要ね。かなり複雑よ。他
の誰かがゲームの状態にアクセスして台無
しにし、私のコードをだめにしてほしくは
ないのよ。