async Task IHandle <DiscoveredByPlayer> .Handle(DiscoveredByPlayer message)
 {
     if (!message.Player.Equals(AttachedObject))
     {
         await SendSpawnPacket(GetPlayerPacketGenerator(message.Player));
     }
 }
Beispiel #2
0
        public Task Enter(IPlayer player)
        {
            bool active = _players.Count == 0;

            if (_players.Add(player))
            {
                var message = new DiscoveredByPlayer {
                    Player = player
                };
                foreach (var entity in State.DiscoveryEntities)
                {
                    if (entity.Equals(player))
                    {
                        continue;
                    }
                    entity.InvokeOneWay(g => g.Tell(message));
                }

                if (active && State.IsTickEmitterActive)
                {
                    return(_fixedUpdate.Start(World));
                }
            }

            return(Task.CompletedTask);
        }
Beispiel #3
0
 Task IHandle <DiscoveredByPlayer> .Handle(DiscoveredByPlayer message)
 {
     /*
      * AttachedObject.GetComponent<ChunkEventBroadcastComponent>().GetGenerator()
      *  .SpawnPlayer*/
     return(Task.CompletedTask);
 }
 public async Task Enter(IPlayer player)
 {
     if (_players.Add(player))
     {
         var message = new DiscoveredByPlayer {
             Player = player
         };
         await Task.WhenAll(from e in State.DiscoveryEntities
                            select e.Tell(message));
     }
 }
        public async Task Enter(IPlayer player)
        {
            var active = _players.Count == 0;

            _players.Add(player);

            var message = new DiscoveredByPlayer {
                Player = player
            };
            await Task.WhenAll(from e in _discoveryEntities
                               select e.Tell(message));

            if (active)
            {
                await World.ActivePartition(this);
            }
        }
 async Task IHandle <DiscoveredByPlayer> .Handle(DiscoveredByPlayer message)
 {
     await SendSpawnPacket(GetPlayerPacketGenerator(message.Player));
 }
Beispiel #7
0
 Task IHandle <DiscoveredByPlayer> .Handle(DiscoveredByPlayer message)
 {
     return(GetPlayerPacketGenerator(message.Player)
            .SpawnObject(AttachedObject.EntityId, AttachedObject.UUID, 2, AttachedObject.Position, AttachedObject.Pitch, AttachedObject.Yaw, 0));
 }