Exemple #1
0
 public static BlockDescription CreateUnsafe(
     BlockState[] states, IStateProperty[]?properties,
     Utf8Identifier identifier, Identifier identifierUtf16, uint id, int defaultStateIndex)
 {
     if (identifier != identifierUtf16)
     {
         throw new ArgumentException($"The identifiers do not match. \"{identifier}\" != \"{identifierUtf16}\"");
     }
     return(new(states, properties, identifier, identifierUtf16, id, defaultStateIndex));
 }
Exemple #2
0
        private BlockDescription(
            BlockState[] states, IStateProperty[]?properties,
            Utf8Identifier identifier, Identifier identifierUtf16, uint id, int defaultStateIndex)
        {
            if (!identifier.IsValid)
            {
                throw new ArgumentException("The identifier is not valid.", nameof(identifier));
            }

            _states            = states ?? throw new ArgumentNullException(nameof(states));
            _properties        = properties ?? Array.Empty <IStateProperty>();
            _defaultStateIndex = defaultStateIndex;
            Identifier         = identifier;
            IdentifierUtf16    = identifierUtf16;
            BlockId            = id;
        }
Exemple #3
0
        public static OperationStatus Read(this NetBinaryReader reader, out Utf8Identifier identifier)
        {
            var status = reader.Read(out Utf8String identifierString);

            if (status != OperationStatus.Done)
            {
                identifier = default;
                return(status);
            }

            if (!Utf8Identifier.TryParse(identifierString, out identifier))
            {
                return(OperationStatus.InvalidData);
            }

            return(OperationStatus.Done);
        }
Exemple #4
0
 public Tag(Utf8Identifier identifier, VarInt[] entries)
 {
     Identifier = identifier;
     Entries    = entries ?? throw new ArgumentNullException(nameof(entries));
 }
Exemple #5
0
 public BlockDescription(
     BlockState[] states, IStateProperty[]?properties,
     Utf8Identifier identifier, uint id, int defaultStateIndex) : this(
         states, properties, identifier, identifier.ToUtf16Identifier(), id, defaultStateIndex)
 {
 }
Exemple #6
0
 public BlockDescription this[Utf8Memory identifier] => _blockLookup[Utf8Identifier.CreateUnsafe(identifier)];
Exemple #7
0
 public BlockDescription this[Utf8Identifier identifier] => _blockLookup[identifier];
 public ServerPluginMessage(Utf8Identifier channel, Utf8String data)
 {
     Channel = channel;
     Data    = data;
 }
Exemple #9
0
 public static void Write(this NetBinaryWriter writer, Utf8Identifier identifier)
 {
     writer.Write(identifier.Value);
 }
        }                           // TODO: wrap in Recyclable

        public ClientPluginMessage(Utf8Identifier channel, byte[] data)
        {
            Data    = data ?? throw new ArgumentNullException(nameof(data));
            Channel = channel;
        }
 public ClientSetDisplayedRecipe(Utf8Identifier recipeId)
 {
     RecipeId = recipeId;
 }