public CleanupInterestCollectionsEventListener(IEntityDeconstructionFinishedEventSubscribable subscriptionService, IReadonlyEntityGuidMappable <InterestCollection> interestCollections, IEntityInterestChangeEventSpoofable interestEventSpoofer, [NotNull] IReadonlyKnownEntitySet knownEntities) : base(subscriptionService) { InterestCollections = interestCollections; InterestEventSpoofer = interestEventSpoofer; KnownEntities = knownEntities ?? throw new ArgumentNullException(nameof(knownEntities)); }
/// <inheritdoc /> public ServerPlayerEntityDestructor( [NotNull] IObjectDestructorable <NetworkEntityGuid> entityDestructor, [NotNull] IReadonlyEntityGuidMappable <GameObject> guidToGameObjectMap, [NotNull] IReadonlyEntityGuidMappable <InterestCollection> interestCollections, [NotNull] IEntityInterestChangeEventSpoofable interestEventSpoofer) { EntityDestructor = entityDestructor ?? throw new ArgumentNullException(nameof(entityDestructor)); GuidToGameObjectMap = guidToGameObjectMap ?? throw new ArgumentNullException(nameof(guidToGameObjectMap)); InterestCollections = interestCollections ?? throw new ArgumentNullException(nameof(interestCollections)); InterestEventSpoofer = interestEventSpoofer ?? throw new ArgumentNullException(nameof(interestEventSpoofer)); }