Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/copperdevs/copperdevs.observable
https://github.com/copperdevs/copperdevs.observable
Last synced: 14 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/copperdevs/copperdevs.observable
- Owner: copperdevs
- License: mit
- Created: 2024-11-08T19:59:40.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-12-21T00:25:47.000Z (about 2 months ago)
- Last Synced: 2025-01-21T05:14:50.335Z (15 days ago)
- Language: C#
- Homepage: https://www.nuget.org/packages/CopperDevs.Observable/
- Size: 36.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: ReadMe.md
- License: License.txt
Awesome Lists containing this project
README
# Observable
## Example
```csharp
public static void Main()
{
Observer.Add(OnDamage);
Observer.Add(OnDamaged);
Observer.Notify();
Log.Debug("*imagine a bit of time later*");
Observer.Notify(new PlayerDamageEvent { Amount = 10 });
Observer.Remove(OnDamage);
Observer.Remove(OnDamaged);
}public static void OnDamaged()
{
Log.Info("Player has been damaged");
}
public static void OnDamage(PlayerDamageEvent e)
{
Log.Info($"Damage Amount: {e.Amount}");
}public sealed record PlayerDamageEvent : Event
{
public int Amount;
}
```*Output*
```text
Player has been damaged
*imagine a bit of time later*
Damage Amount: 10
Player has been damaged
```