public void OnEntityRemovedFromCollection(CollectionEntityEvent args) { if (!CachedEntities.Contains(args.Entity.Id)) { return; } CachedEntities.Remove(args.Entity.Id); _onEntityRemoved.OnNext(args.Entity); }
public void OnEntityAddedToCollection(CollectionEntityEvent args) { // This is because you may have fired a blueprint before it is created if (CachedEntities.Contains(args.Entity.Id)) { return; } if (!Token.LookupGroup.Matches(args.Entity)) { return; } CachedEntities.Add(args.Entity); _onEntityAdded.OnNext(args.Entity); }