void IChannelToClientZone.Spawn(int entityId, Type protoType, int ownerId, EntityFlags flags, ISpawnPayload payload) { var entity = _entityFactory.Create(protoType); entity.Id = entityId; entity.ProtoType = protoType; entity.Zone = this; entity.OwnerId = ownerId; entity.Flags = flags; if (payload != null) { payload.Notify(entity); } _entityMap.Add(entityId, entity); entity.OnSpawn(); EntitySpawned?.Invoke(entity); }