Exemplo n.º 1
0
        void Back()
        {
            //Fix the ghosts after afk, chanign dimensions will clear it up
            var res = new Respawn();
            res.Dimension = Dimensions.Overworld;
            if (Dimension == Dimensions.Overworld)
                res.Dimension = Dimensions.Nether;
            res.Difficulty = 3;
            res.Mode = GameMode.Adventure;
            Player.SendToClient(res);

            Player.SetWorld(OriginalWorld);
        }
Exemplo n.º 2
0
        protected void SendStartup(ConstructSession cs, Client player)
        {
            //First another dimension to trigger full drop of old map
            Respawn r = new Respawn();
            if (Dimension == Dimensions.Overworld)
                r.Dimension = Dimensions.Nether;
            else
                r.Dimension = Dimensions.Overworld;
            r.Mode = 0;
            r.Difficulty = 3;
            player.Queue.Queue(r);

            r = new Respawn();
            r.Dimension = (Dimensions)Dimension;
            r.Mode = 0;
            r.Difficulty = 3;
            player.Queue.Queue(r);

            //player.Queue.Queue(new SpawnPosition(cs.Position.CloneInt()));
            player.Queue.Queue(new TimeUpdate(18000));
            
            cs.Position.Y = 66;
            
            var ppl = new PlayerPositionLookServer(cs.Position);
            ppl.Yaw = cs.Yaw;
            ppl.Pitch = cs.Pitch;
            player.Queue.Queue(ppl);
            
            player.Queue.Queue(new TimeUpdate(1000));
            
            //player.Queue.Queue(new NewState(NewState.State.EndRaining));
            
            int min = -1;
            int max = 1;
            for (int cx = min; cx < max; cx++)
            {
                for (int cz = min; cz < max; cz++)
                {
                    ChunkData mc = new ChunkData();
                    mc.ChunkBitMap = ChunkData.ChunkBitMap;
                    mc.Complete = ChunkData.Complete;
                    mc.X = cx;
                    mc.Z = cz;
                    mc.BlockType = ChunkData.BlockType;
                    mc.BlockMeta = ChunkData.BlockMeta;
                    mc.BlockLight = ChunkData.BlockLight;
                    mc.BlockSkyLight = ChunkData.BlockSkyLight;
                    mc.Biome = ChunkData.Biome;
                    player.Queue.Queue(mc);
                }
            }

            r = new Respawn();
            r.Dimension = (Dimensions)Dimension;
            r.Mode = 0;
            r.Difficulty = 3;
            player.Queue.Queue(r);

            player.Queue.Queue(new UpdateHealth(20, 20));

            var properties = new EntityProperties(player.EntityID, 0.10, 20.0);
            player.Queue.Queue(properties);
        }