예제 #1
0
        public bool IsFlat;                          //*

        public override void Read(byte[] array)
        {
            McInt.TryParse(ref array, out EntityId);
            McBoolean.TryParse(ref array, out IsHardcore);
            if (McUnsignedByte.TryParse(ref array, out var gamemode))
            {
                Gamemode = (Gamemodes)gamemode;
            }
            if (McByte.TryParse(ref array, out var previousGamemode))
            {
                PreviousGamemode = (Gamemodes)previousGamemode;
            }
            McVarint.TryParse(ref array, out WorldCount);
            McStringArray.TryParse(WorldCount, ref array, out WorldNames);
            McNbtCompoundTag.TryParse(ref array, out DimensionCodec);
            McNbtCompoundTag.TryParse(ref array, out Dimension);
            McString.TryParse(ref array, out WorldName);
            McLong.TryParse(ref array, out HashedSeed);
            McVarint.TryParse(ref array, out MaxPlayers);
            McVarint.TryParse(ref array, out ViewDistance);
            McBoolean.TryParse(ref array, out ReducedDebugInfo);
            McBoolean.TryParse(ref array, out EnableRespawnScreen);
            McBoolean.TryParse(ref array, out IsDebug);
            McBoolean.TryParse(ref array, out IsFlat);
        }
예제 #2
0
        public bool CopyMetadata;               //*

        public override void Read(byte[] array)
        {
            McNbtCompoundTag.TryParse(ref array, out Dimension);
            McString.TryParse(ref array, out WorldName);
            McLong.TryParse(ref array, out HashedSeed);
            McUnsignedByte.TryParse(ref array, out Gamemode);
            McUnsignedByte.TryParse(ref array, out PreviousGamemode);
            McBoolean.TryParse(ref array, out IsDebug);
            McBoolean.TryParse(ref array, out IsFlat);
            McBoolean.TryParse(ref array, out CopyMetadata);
        }
예제 #3
0
 public override byte[] Write()
 {
     return(McLong.ToBytes(Payload));
 }
예제 #4
0
 public override void Read(byte[] array)
 {
     McLong.TryParse(ref array, out Payload);
 }
예제 #5
0
        public byte[] Write()
        {
            long val = (((long)X & 0x3FFFFFF) << 38) | (((long)Z & 0x3FFFFFF) << 12) | ((long)Y & 0xFFF);

            return(McLong.ToBytes(val));
        }
예제 #6
0
 public override void Read(byte[] array)
 {
     McLong.TryParse(ref array, out KeepAliveID);
 }
예제 #7
0
 public override void Read(byte[] array)
 {
     McLong.TryParse(ref array, out WorldAge);
     McLong.TryParse(ref array, out TimeOfDay);
 }
예제 #8
0
 public override byte[] Write()
 {
     return(McLong.ToBytes(KeepAliveID));
 }