TagTool.Sounds.SoundInfo.ReadPositioningInfo C# (CSharp) Method

ReadPositioningInfo() private method

private ReadPositioningInfo ( EndianReader reader ) : void
reader TagTool.IO.EndianReader
return void
        private void ReadPositioningInfo(EndianReader reader)
        {
            HasPositioning = (reader.ReadByte() != 0);
            if (!HasPositioning)
                return;

            PositionType = (SoundPositionType)reader.ReadByte();
            if (PositionType == SoundPositionType.Position2D)
            {
                EnablePanner = (reader.ReadByte() != 0);
            }
            else
            {
                PositionSourceType = (SoundPositionSourceType)reader.ReadInt32();
                AttenuationID = reader.ReadUInt32();
                EnableSpatialization = (reader.ReadByte() != 0);

                if (PositionSourceType == SoundPositionSourceType.UserDefined)
                {
                    PlayType = (SoundPlayType)reader.ReadInt32();
                    Loop = (reader.ReadByte() != 0);
                    TransitionTime = reader.ReadUInt32();
                    FollowListenerOrientation = (reader.ReadByte() != 0);

                    ReadPaths(reader);
                }
                else if (PositionSourceType == SoundPositionSourceType.GameDefined)
                {
                    UpdateEachFrame = (reader.ReadByte() != 0);
                }
            }
        }