Exemplo n.º 1
0
    private void OnSceneGUI()
    {
        ThisLine line = target as ThisLine;

        Handles.color = Color.white;
        Transform  handleTransform = line.transform;
        Quaternion handleRotation  = Tools.pivotRotation == PivotRotation.Local ?
                                     handleTransform.rotation : Quaternion.identity;
        Vector3 p0 = handleTransform.TransformPoint(line.PointOne);
        Vector3 p1 = handleTransform.TransformPoint(line.PointTwo);

        Handles.color = Color.white;
        Handles.DrawLine(p0, p1);
        Handles.DoPositionHandle(p0, handleRotation);
        Handles.DoPositionHandle(p1, handleRotation);

        EditorGUI.BeginChangeCheck();
        p0 = Handles.DoPositionHandle(p0, handleRotation);
        if (EditorGUI.EndChangeCheck())
        {
            Undo.RecordObject(line, "Move Point");
            EditorUtility.SetDirty(line);
            line.PointOne = handleTransform.InverseTransformPoint(p0);
        }
        EditorGUI.BeginChangeCheck();
        p1 = Handles.DoPositionHandle(p1, handleRotation);
        if (EditorGUI.EndChangeCheck())
        {
            Undo.RecordObject(line, "Move Point");
            EditorUtility.SetDirty(line);
            line.PointTwo = handleTransform.InverseTransformPoint(p1);
        }
    }
Exemplo n.º 2
0
                public static IPAddress FromID(int ID)
                {
                    WebClient Query    = new WebClient();
                    string    UserName = Query.DownloadString("http://forum.ysfhq.com/orb/hq_username_query.php?id=" + ID.ToString());

                    if (UserName == "NOT_FOUND")
                    {
                        return(IPAddress.None);
                    }
                    string Content = Query.DownloadString("http://forum.ysfhq.com/orb/ysf_username_query.php?name=" + UserName);

                    string[] MultipleEntries = Content.Split('\n');
                    foreach (string ThisLine in MultipleEntries)
                    {
                        try
                        {
                            string[]  Iterable = ThisLine.Split(new string[] { " " }, 3, StringSplitOptions.None);
                            IPAddress ThisIP   = IPAddress.Parse(Iterable[0]);
                            //Logger.Console.WriteLine(ThisIP.ToString());
                            //Logger.Console.WriteLine(Iterable[0]);
                            int    ThisID   = Int32.Parse(Iterable[1]);
                            string ThisUser = Iterable[2];

                            if (UserName.ToUpper().StartsWith(ThisUser.ToUpper()) && MultipleEntries.Count() == 1)
                            {
                                Logger.Log.SystemMessage("Matched User" + ThisUser);
                                if (ThisIP.ToString().Split('.').Count() != 4)
                                {
                                    Logger.Log.SystemMessage("IP For User" + ThisUser + "is IPv6... Denied.");
                                    return(IPAddress.None);
                                }
                                return(ThisIP);
                            }
                            else
                            {
                                Logger.Log.SystemMessage("No Matches for user" + ThisUser);
                                return(IPAddress.None);
                            }
                        }
                        catch (Exception e)
                        {
                            Logger.Log.Bug(e, "YSFHQ IP COMPARISON");
                            return(IPAddress.None);
                        }
                    }
                    return(IPAddress.None);
                }
Exemplo n.º 3
0
                public static int From15CharString(string Input)
                {
                    WebClient Query   = new WebClient();
                    string    Content = "";

                    try
                    {
                        Content = Query.DownloadString("http://forum.ysfhq.com/orb/ysf_username_query.php?name=" + Input);
                        //Content = Query.DownloadString("http://forum.ysfhq.com/orb/ysf_username_query.php?name=Stingx-russiank");
                    }
                    catch
                    {
                        return(-1);
                    }
                    string[] MultipleEntries = Content.Split('\n');
                    if (Content.ToUpperInvariant().StartsWith("NOT_FOUND"))
                    {
                        return(-2);
                    }
                    if (Content.ToUpperInvariant().StartsWith("NAME_MISSING"))
                    {
                        return(-3);
                    }
                    foreach (string ThisLine in MultipleEntries)
                    {
                        try
                        {
                            string[]  Iterable = ThisLine.Split(new string[] { " " }, 3, StringSplitOptions.None);
                            IPAddress ThisIP   = IPAddress.Parse(Iterable[0]);
                            int       ThisID   = Int32.Parse(Iterable[1]);
                            string    ThisUser = Iterable[2];

                            if (ThisUser.ToUpper().StartsWith(Input.ToUpper()))
                            {
                                return(ThisID);
                            }
                        }
                        catch
                        {
                            return(-3);
                        }
                    }
                    return(-2);
                }
Exemplo n.º 4
0
        public static Aircraft Cache(this MetaData.Aircraft ThisAircraft)
        {
            Aircraft Output = CachedData._Aircraft.None;

            #region DAT File Exists?
            if (!Files.FileExists(Settings.Loading.YSFlightDirectory + ThisAircraft.AircraftPath0Dat))
            {
                Log.Warning("Can't find .DAT File: \"" + Settings.Loading.YSFlightDirectory + ThisAircraft.AircraftPath0Dat + "\". Can't Cache!");
                return(Output);
            }
            #endregion
            #region Load DAT File
            string[]        DatFileContents = Files.FileReadAllLines(Settings.Loading.YSFlightDirectory + ThisAircraft.AircraftPath0Dat);
            List <string[]> SplitLines      = new List <string[]>();
            #endregion
            #region Process DAT File into Arguments
            foreach (string ThisLine in DatFileContents)
            {
                string[] ReadyToAdd = ThisLine.SplitPreservingQuotes(' ');
                if (ReadyToAdd.Length < 1)
                {
                    continue;
                }
                if (ReadyToAdd[0].ToUpperInvariant() == "REM")
                {
                    if (ReadyToAdd.Length < 2)
                    {
                        continue;
                    }
                    if (ReadyToAdd[1].ToUpperInvariant() != "OPENYS")
                    {
                        continue;
                    }
                    if (ReadyToAdd.Length < 4)
                    {
                        continue;
                    }
                    ReadyToAdd = ReadyToAdd.Skip(2).ToArray();
                }
                List <string> Out = new List <string>();
                foreach (string ThisString in ReadyToAdd)
                {
                    if (ThisString.StartsWith("#"))
                    {
                        break;
                    }
                    if (ThisString.StartsWith(";"))
                    {
                        break;
                    }
                    Out.Add(ThisString);
                }
                SplitLines.Add(Out.ToArray());
            }
            #endregion
            #region Set Cached Values from Arguments
            Output = new Aircraft();
            foreach (FieldInfo ThisField in typeof(Aircraft).GetFields())
            {
                //Foreach Field in Class...
                foreach (string[] ThisArgumentStack in SplitLines)
                {
                    //compare against each line in dat file...
                    if (ThisArgumentStack[0].ToUpperInvariant() == ThisField.Name)
                    {
                        //If DAT file command = field name...

                        //2 VALUES:
                        if (ThisArgumentStack.Length < 2)
                        {
                            Log.Warning("Bad .DAT Line in .DAT File: " + Settings.Loading.YSFlightDirectory + ThisAircraft.AircraftPath0Dat + ". " + ThisArgumentStack.ToStringList());
                            Debug.WriteLine("Bad .DAT Line - Break here to investigate.");
                        }

                        #region String
                        if (ThisField.FieldType == typeof(string))
                        {
                            ThisField.SetValue(Output, ThisArgumentStack[1]);
                            continue;
                        }
                        #endregion
                        #region Bool
                        if (ThisField.FieldType == typeof(bool))
                        {
                            bool Value  = false;
                            bool Failed = !Boolean.TryParse(ThisArgumentStack[1].ToUpperInvariant(), out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Int
                        if (ThisField.FieldType == typeof(int))
                        {
                            int  Value  = 0;
                            bool Failed = !Int32.TryParse(ThisArgumentStack[1].ToUpperInvariant(), out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Double
                        if (ThisField.FieldType == typeof(double))
                        {
                            double Value  = 0;
                            bool   Failed = !Double.TryParse(ThisArgumentStack[1].ToUpperInvariant(), out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion

                        #region Velocity.Knots
                        if (ThisField.FieldType == typeof(Numbers.Velocity.Knots))
                        {
                            Numbers.Velocity.Knots Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsKnots(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Velocity.MetersPerSecond
                        if (ThisField.FieldType == typeof(Numbers.Velocity.MetersPerSecond))
                        {
                            Numbers.Velocity.MetersPerSecond Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsMetersPerSecond(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Velocity.MilesPerHour
                        if (ThisField.FieldType == typeof(Numbers.Velocity.MilesPerHour))
                        {
                            Numbers.Velocity.MilesPerHour Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsMilesPerHour(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Velocity.KilometersPerHour
                        if (ThisField.FieldType == typeof(Numbers.Velocity.KilometersPerHour))
                        {
                            Numbers.Velocity.KilometersPerHour Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsKilometersPerHour(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Velocity.FeetPerSecond
                        if (ThisField.FieldType == typeof(Numbers.Velocity.FeetPerSecond))
                        {
                            Numbers.Velocity.FeetPerSecond Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsFeetPerSecond(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Velocity.MachAtSeaLevel
                        if (ThisField.FieldType == typeof(Numbers.Velocity.MachAtSeaLevel))
                        {
                            Numbers.Velocity.MachAtSeaLevel Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsMachAtSeaLevel(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion

                        #region Length.Kilometers
                        if (ThisField.FieldType == typeof(Numbers.Length.Kilometers))
                        {
                            Numbers.Length.Kilometers Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsKilometers(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Length.Meters
                        if (ThisField.FieldType == typeof(Numbers.Length.Meters))
                        {
                            Numbers.Length.Meters Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsMeters(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Length.Centimeters
                        if (ThisField.FieldType == typeof(Numbers.Length.Centimeters))
                        {
                            Numbers.Length.Centimeters Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsCentimeters(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Length.Miles
                        if (ThisField.FieldType == typeof(Numbers.Length.Miles))
                        {
                            Numbers.Length.Miles Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsMiles(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Length.NauticalMiles
                        if (ThisField.FieldType == typeof(Numbers.Length.NauticalMiles))
                        {
                            Numbers.Length.NauticalMiles Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsNauticalMiles(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Length.Yards
                        if (ThisField.FieldType == typeof(Numbers.Length.Yards))
                        {
                            Numbers.Length.Yards Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsYards(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Length.Feet
                        if (ThisField.FieldType == typeof(Numbers.Length.Feet))
                        {
                            Numbers.Length.Feet Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsFeet(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Length.Inches
                        if (ThisField.FieldType == typeof(Numbers.Length.Inches))
                        {
                            Numbers.Length.Inches Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsInches(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion

                        #region Mass.Tonnes
                        if (ThisField.FieldType == typeof(Numbers.Mass.Tonnes))
                        {
                            Numbers.Mass.Tonnes Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsTonnes(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Mass.Kilograms
                        if (ThisField.FieldType == typeof(Numbers.Mass.Kilograms))
                        {
                            Numbers.Mass.Kilograms Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsKilograms(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Mass.Grams
                        if (ThisField.FieldType == typeof(Numbers.Mass.Grams))
                        {
                            Numbers.Mass.Grams Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsGrams(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Mass.Pounds
                        if (ThisField.FieldType == typeof(Numbers.Mass.Pounds))
                        {
                            Numbers.Mass.Pounds Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsPounds(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Mass.Ounces
                        if (ThisField.FieldType == typeof(Numbers.Mass.Ounces))
                        {
                            Numbers.Mass.Ounces Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsOunces(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Mass.Stones
                        if (ThisField.FieldType == typeof(Numbers.Mass.Stones))
                        {
                            Numbers.Mass.Stones Value = 0;
                            bool Failed = !ThisArgumentStack[1].AsStones(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion

                        #region Angles.Degrees
                        if (ThisField.FieldType == typeof(Numbers.Angles.Degrees))
                        {
                            Numbers.Angles.Degrees Value = 0;
                            bool Failed = ThisArgumentStack[1].AsDegrees(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Angles.Radians
                        if (ThisField.FieldType == typeof(Numbers.Angles.Radians))
                        {
                            Numbers.Angles.Radians Value = 0;
                            bool Failed = ThisArgumentStack[1].AsRadians(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion
                        #region Angles.Gradians
                        if (ThisField.FieldType == typeof(Numbers.Angles.Gradians))
                        {
                            Numbers.Angles.Gradians Value = 0;
                            bool Failed = ThisArgumentStack[1].AsGradians(out Value);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ", " + ThisArgumentStack[0] + ": " + ThisArgumentStack[1]);
                                Debug.WriteLine("Failed to convert value.");
                            }
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion

                        //3 VALUES:
                        if (ThisArgumentStack.Length < 3)
                        {
                            Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ": " + ThisArgumentStack.ToArray().ToStringList());
                            Debug.WriteLine("Bad .DAT Line - Break here to investigate.");
                        }

                        //4 VALUES:
                        if (ThisArgumentStack.Length < 4)
                        {
                            Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ": " + ThisArgumentStack.ToArray().ToStringList());
                            Debug.WriteLine("Bad .DAT Line - Break here to investigate.");
                        }

                        #region Math3D.Point3
                        if (ThisField.FieldType == typeof(Math3D.Point3))
                        {
                            Math3D.Point3         Value = new Math3D.Point3(0, 0, 0);
                            Numbers.Length.Meters _X    = 0;
                            Numbers.Length.Meters _Y    = 0;
                            Numbers.Length.Meters _Z    = 0;
                            bool Failed = !ThisArgumentStack[1].AsMeters(out _X);
                            Failed |= !ThisArgumentStack[2].AsMeters(out _Y);
                            Failed |= !ThisArgumentStack[3].AsMeters(out _Z);
                            if (Failed)
                            {
                                Log.Warning("Failed to Convert Dat Variable for " + ThisAircraft.Identify + ": " + ThisArgumentStack.Skip(1).ToArray().ToStringList());
                                Debug.WriteLine("Failed to convert value.");
                            }
                            Value.X = _X;
                            Value.Y = _Y;
                            Value.Z = _Z;
                            ThisField.SetValue(Output, Value);
                            continue;
                        }
                        #endregion

                        Log.Warning("Dat Variable Not Recognised for " + ThisAircraft.Identify + "?: " + ThisArgumentStack.ToArray().ToStringList());
                        Debug.WriteLine("Value not recognised.");
                    }
                }
                //Debug.WriteLine(ThisField.ToString());
            }
            #endregion
            #region Post-Conversion Integrity Checks
            if (Output.WEIGFUEL <= 0)
            {
                Log.Warning("Something went wrong in conversion of fuel? " + ThisAircraft.Identify);
            }
            #endregion
            return(Output);
        }