unity-observer-pattern
Reactive Property system for Unity. Decouples data from UI and logic using observable wrappers and UnityEvents.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Reactive Property system for Unity. Decouples data from UI and logic using observable wrappers and UnityEvents.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Factory pattern for creating families of related objects. Supports both ScriptableObject composition and simple prefab instantiation.
Manage project boundaries using Assembly Definitions (.asmdef) for faster compile times and modular architecture. Based on the patterns by Adam Myhre. Enforces responsibility-based organization and handles Runtime/Editor/Tests splits.
Step-by-step object construction using fluent interfaces. Simplifies complex GameObject setup.
Professional Unity C# Code Reviewer. Detects anti-patterns, performance leaks, and enforces project-specific architecture.
Encapsulate actions as objects for queuing, undo/redo, and async execution.
Implements "Composition over Inheritance" using ScriptableObject configs and C# Tuples. Replaces deep class hierarchies with modular, has-a relationships.
| name | unity-observer-pattern |
| description | Reactive Property system for Unity. Decouples data from UI and logic using observable wrappers and UnityEvents. |
A powerful implementation of the Observer pattern that turns standard variables into "Smart Properties." Includes full Inspector support and Edit-mode tooling based on the "Generic Observer" architecture.
int x = myObservableInt; (no more .Value boilerplate).Observable.cs.txt: The core generic wrapper with implicit casting and built-in editor wiring.ObservableEditorTools.cs.txt: Advanced reflection hacks for clearing persistent UnityEvents.ObservableExample.cs.txt: Concrete example demonstrating UI binding and lifecycle management.public Observable<int> health;.On Value Changed list.health.AddListener( val => Debug.Log( val ) );
health.Value = 50; // Automatically triggers notification
int currentHealth = health; // Works automatically via implicit operator
Always call RemoveListener or Dispose in OnDisable to prevent memory leaks.