unity-memento-pattern について
unity-memento-patternは、Unityで状態スナップショットを管理するスキルです。Memento、Originator、Caretakerの役割でデータ、状態生成、管理を分離し、不変スナップショットや複数スロット管理、ホットバー状態の保存例を提供します。
主な機能
- 01不変の状態スナップショット
- 02複数セーブスロットの管理
- 03状態構造のカプセル化
- 04ジェネリックMementoラッパー
- 05ホットバーとアイテム状態の例
活用シーン
- 01Unityオブジェクトの状態保存と復元
- 02複数のセーブやロードアウト枠の管理
- 03ホットバー項目リストの永続化
- 04後続の変更によるスナップショット改変の防止
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ muharremtozan/ unity-agent-skills --skill unity-memento-patternインストール後、Claude Code で/unity-memento-patternを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/code/HotbarMementoExample.cs.txtIMemento.cs.txtLoadoutManager.cs.txtreferences/guide.md詳細
Unity Memento パターン
このスキルは、Unity で状態のスナップショットを構造的に扱う方法を提供します。Adam Myhre の実装に着想を得て、状態データ(Memento)、状態の生成元(Originator)、状態マネージャー(Caretaker)を厳密に分離します。
主な機能
- 不変のスナップショット:元のオブジェクトがその後変更されても、保存データが破損しないようにします。
- ロードアウト管理:複数のセーブスロットを標準でサポートします(Caretaker のロジック)。
- カプセル化:状態の構造を利用側システムから隠し、必要なものだけを公開します。
主なファイル(最大 3 個)
IMemento.cs.txt:基本インターフェースと汎用 Memento ラッパー。LoadoutManager.cs.txt:リストベースのスナップショットを管理する Caretaker の実装。HotbarMementoExample.cs.txt:UI/アイテム状態の永続化に関する実用例。
使用方法
HotbarMementoExample.cs.txt を参照し、コピーコンストラクターを使って ScriptableObjects のリストを保存する方法を確認してください。
コメント
Markdown 対応