Beispiel #1
0
        public async Task Kick()
        {
            State.SpawnPosition = await _player.GetPosition();

            MarkDirty();
            await _player.Tell(DestroyEntity.Default);

            var game = await GetGameSession();

            await game.LeaveGame(this);

            await _sink.Close();

            _sink = null;
            DeactivateOnIdle();
        }
Beispiel #2
0
 public Task SetClientPacketSink(IClientboundPacketSink sink)
 {
     _sink      = sink;
     _generator = new ClientPlayPacketGenerator(sink);
     return(Task.CompletedTask);
 }
 async Task IHandle <BindToUser> .Handle(BindToUser message)
 {
     _user = message.User;
     _sink = await message.User.GetClientPacketSink();
 }
Beispiel #4
0
 public ClientPlayPacketGenerator(IClientboundPacketSink sink)
 {
     Sink = sink;
 }