add: Patchable items and frames

This commit is contained in:
h z
2025-03-04 11:58:14 +00:00
parent 684763f0cc
commit 93fbe0869b
18 changed files with 163 additions and 26 deletions

View File

@@ -0,0 +1,23 @@
using System.Collections;
namespace Polonium.DataStructures.PatchableItems;
public class PatchableHashSet<T> : IEnumerable<T>
{
public HashSet<T> Data { get; set; } = new();
public void Add(T item) => Data.Add(item);
public void Remove(T item) => Data.Remove(item);
public void Clear() => Data.Clear();
public bool Contains(T item) => Data.Contains(item);
public int Count => Data.Count;
public UpdateMethods UpdateMethod { get; set; } = UpdateMethods.Update;
public delegate void CustomUpdatedEventHandler(HashSet<T> set);
public event CustomUpdatedEventHandler CustomUpdated;
public void CustomUpdate(HashSet<T> set) => CustomUpdated?.Invoke(set);
public IEnumerator<T> GetEnumerator() => Data.GetEnumerator();
IEnumerator IEnumerable.GetEnumerator() => GetEnumerator();
}