Example #1
0
        public override MetadataDictionary GetMetadata()
        {
            MetadataDictionary metadata = base.GetMetadata();

            metadata[1] = new MetadataInt(12);
            metadata[2] = new MetadataInt(0);
            metadata[3] = new MetadataByte(CollarColor);
            //metadata[4] = new MetadataString("Testing");
            if (Owner != null)
            {
                metadata[5] = new MetadataLong(Owner.EntityId);
            }
            metadata[7]  = new MetadataShort(300);
            metadata[8]  = new MetadataInt(0);
            metadata[9]  = new MetadataByte(0);
            metadata[38] = new MetadataLong(0);
            metadata[39] = new MetadataFloat(1.0f);
            metadata[44] = new MetadataShort(300);
            metadata[45] = new MetadataInt(0);
            metadata[46] = new MetadataByte(0);
            metadata[47] = new MetadataInt(0);
            metadata[53] = new MetadataFloat(0.6f);
            metadata[54] = new MetadataFloat(0.8f);
            metadata[56] = new MetadataVector3(0, 0, 0);
            metadata[57] = new MetadataByte(0);
            metadata[58] = new MetadataFloat(0f);
            metadata[59] = new MetadataFloat(0f);

            return(metadata);
        }
Example #2
0
        public override MetadataDictionary GetMetadata()
        {
            MetadataDictionary metadata = new MetadataDictionary();

            metadata[0]  = new MetadataLong(0);            // 0
            metadata[1]  = new MetadataInt(1);
            metadata[2]  = new MetadataInt(12);
            metadata[3]  = new MetadataByte(0);
            metadata[4]  = new MetadataString("");
            metadata[5]  = new MetadataLong(-1);
            metadata[7]  = new MetadataShort(300);
            metadata[39] = new MetadataFloat(1f);
            metadata[44] = new MetadataShort(300);
            metadata[45] = new MetadataInt(0);
            metadata[46] = new MetadataByte(0);
            metadata[47] = new MetadataInt(0);
            metadata[53] = new MetadataFloat(0.98f);
            metadata[54] = new MetadataFloat(0.98f);
            metadata[56] = new MetadataVector3(0, 0, 0);
            metadata[57] = new MetadataByte(0);
            metadata[58] = new MetadataFloat(0f);
            metadata[59] = new MetadataFloat(0f);

            return(metadata);
        }
Example #3
0
        public void SendSetEntityData(Player player)
        {
            player.IsRiding = true;

            // FOR PLAYER
            MetadataDictionary metadata = player.GetMetadata();

            metadata[57] = new MetadataVector3(0, 1.02001f, 0);
            metadata[58] = new MetadataByte(1);
            metadata[59] = new MetadataFloat(90f);
            metadata[60] = new MetadataFloat(-90f);

            player.BroadcastSetEntityData(metadata);
        }
Example #4
0
        public static MetadataDictionary ReadMetadataDictionaryAlternate(this Packet packet)
        {
            MetadataDictionary metadata = new MetadataDictionary();
            uint count = 0;
            int  index;
            uint type;

            try
            {
                //var stream = (Stream)ReflectionHelper.GetPrivateFieldValue<MemoryStreamReader>(typeof(Packet), packet, "_reader");
                count = packet.ReadUnsignedVarInt();                 //VarInt.ReadInt32(stream);

                for (int i = 0; i < count; ++i)
                {
                    index = (int)packet.ReadUnsignedVarInt();                //VarInt.ReadInt32(stream);
                    type  = packet.ReadUnsignedVarInt();                     //VarInt.ReadInt32(stream);

                    switch (type)
                    {
                    case 0:
                        metadata[index] = new MetadataByte(packet.ReadByte());

                        break;

                    case 1:
                        metadata[index] = new MetadataShort(packet.ReadShort());

                        break;

                    case 2:
                        metadata[index] = new MetadataInt(packet.ReadVarInt());

                        break;

                    case 3:
                        metadata[index] = new MetadataFloat(packet.ReadFloat());

                        break;

                    case 4:
                        metadata[index] = new MetadataString(packet.ReadString());

                        break;

                    case 5:
                        metadata[index] = new MetadataNbt(packet.ReadNbt());

                        break;

                    case 6:
                        metadata[index] = new MetadataIntCoordinates(
                            packet.ReadVarInt(), packet.ReadVarInt(), packet.ReadVarInt());

                        break;

                    case 7:
                        metadata[index] = new MetadataLong(packet.ReadVarLong());

                        break;

                    case 8:
                        metadata[index] = new MetadataVector3(packet.ReadVector3());

                        break;

                    default:
                        Log.Warn($"Unknown metadata type: {type} at index {index}");
                        break;
                    }
                }


                return(metadata);
            }
            catch (Exception ex)
            {
                Log.Warn(ex, $"Incomplete metadata: {ex.ToString()}");
                return(metadata);
            }
        }