public BlockOtherClientFinishedWarpingEventPayloadHandler([NotNull] IUnitScalerStrategy scalingService, IZoneSettings zoneSettings, ILog logger, [NotNull] ILocalPlayerData localPlayerData, [NotNull] IReadonlyEntityGuidMappable <PlayerZoneData> playerZoneDataMappable) : base(logger) { ScalingService = scalingService ?? throw new ArgumentNullException(nameof(scalingService)); LocalPlayerData = localPlayerData ?? throw new ArgumentNullException(nameof(localPlayerData)); PlayerZoneDataMappable = playerZoneDataMappable ?? throw new ArgumentNullException(nameof(playerZoneDataMappable)); //We just need the zone id. ZoneId = zoneSettings.ZoneId; }
/// <inheritdoc /> public SpawnPlayerOnBurstingFinishedEventListener([NotNull] IClientFinishedBurstingEventSubscribable subscriptionService, [NotNull] ILocalPlayerData playerData, [NotNull] IReadonlyEntityGuidMappable <PlayerZoneData> zoneMappable, [NotNull] IFactoryCreatable <GameObject, RemotePlayerWorldRepresentationCreationContext> remotePlayerFactory) : base(subscriptionService) { PlayerData = playerData ?? throw new ArgumentNullException(nameof(playerData)); ZoneMappable = zoneMappable ?? throw new ArgumentNullException(nameof(zoneMappable)); RemotePlayerFactory = remotePlayerFactory ?? throw new ArgumentNullException(nameof(remotePlayerFactory)); }
/// <inheritdoc /> public GameBurstingCompletedEventCommandHandler(ILog logger, [NotNull] ICharacterSlotSelectedModel slotModel, [NotNull] ILocalPlayerData playerData, [NotNull] IUnitScalerStrategy scalerService, [NotNull] IZoneSettings zoneSettings, [NotNull] IBurstingService burstingService) : base(logger) { SlotModel = slotModel ?? throw new ArgumentNullException(nameof(slotModel)); PlayerData = playerData ?? throw new ArgumentNullException(nameof(playerData)); ScalerService = scalerService ?? throw new ArgumentNullException(nameof(scalerService)); ZoneSettings = zoneSettings ?? throw new ArgumentNullException(nameof(zoneSettings)); BurstingService = burstingService ?? throw new ArgumentNullException(nameof(burstingService)); }