public static void loadAPPreset(APPreset p, George instance)
        {
            APController[] c = instance.controllers;
            for (int i = 0; i < c.Length && i < p.PIDGains.Count; i++)
            {
                c[i].PGain      = p.PIDGains[i][0];
                c[i].IGain      = p.PIDGains[i][1];
                c[i].DGain      = p.PIDGains[i][2];
                c[i].OutMin     = p.PIDGains[i][3];
                c[i].OutMax     = p.PIDGains[i][4];
                c[i].ClampLower = p.PIDGains[i][5];
                c[i].ClampUpper = p.PIDGains[i][6];
                c[i].Scalar     = p.PIDGains[i][7];
                c[i].Easing     = p.PIDGains[i][8];
            }

            Instance.activeAPPreset = p;
            GeneralUI.postMessage("Loaded preset " + p.name);

            if (Instance.activeAPPreset != Instance.craftPresetDict[craftDefaultName].apPreset)
            {
                updateCraftPreset(Instance.activeAPPreset, instance.vessel);
            }

            saveToFile();
        }
 public static void initDefaultPresets(APPreset p)
 {
     initDefaultPresets();
     if (Instance.craftPresetDict[craftDefaultName].apPreset == null)
     {
         Instance.craftPresetDict[craftDefaultName].apPreset = p;
     }
     PresetManager.saveDefaults();
 }
        public static void deleteAPPreset(APPreset p)
        {
            GeneralUI.postMessage("Deleted preset " + p.name);
            if (Instance.activeAPPreset == p)
            {
                Instance.activeAPPreset = null;
            }
            Instance.APPresetList.Remove(p);

            p = null;

            saveToFile();
        }
        public static ConfigNode PIDnode(string name, int index, APPreset preset)
        {
            ConfigNode node = new ConfigNode(name);

            node.AddValue(pGain, preset.PIDGains[index][0]);
            node.AddValue(iGain, preset.PIDGains[index][1]);
            node.AddValue(dGain, preset.PIDGains[index][2]);
            node.AddValue(min, preset.PIDGains[index][3]);
            node.AddValue(max, preset.PIDGains[index][4]);
            node.AddValue(iLower, preset.PIDGains[index][5]);
            node.AddValue(iUpper, preset.PIDGains[index][6]);
            node.AddValue(scalar, preset.PIDGains[index][7]);
            node.AddValue(ease, preset.PIDGains[index][8]);
            return(node);
        }
Esempio n. 5
0
        public static ConfigNode APPresetNode(APPreset preset)
        {
            ConfigNode node = new ConfigNode(apPresetNodeName);
            node.AddValue("name", preset.name);
            node.AddNode(PIDnode(hdgCtrlr, (int)AsstList.HdgBank, preset));
            node.AddNode(PIDnode(yawCtrlr, (int)AsstList.BankToYaw, preset));
            node.AddNode(PIDnode(aileronCtrlr, (int)AsstList.Aileron, preset));
            node.AddNode(PIDnode(rudderCtrlr, (int)AsstList.Rudder, preset));
            node.AddNode(PIDnode(altCtrlr, (int)AsstList.Altitude, preset));
            node.AddNode(PIDnode(vertCtrlr, (int)AsstList.VertSpeed, preset));
            node.AddNode(PIDnode(elevCtrlr, (int)AsstList.Elevator, preset));
            node.AddNode(PIDnode(speedCtrlr, (int)AsstList.Speed, preset));
            node.AddNode(PIDnode(accelCtrlr, (int)AsstList.Acceleration, preset));
            node.AddNode(PIDnode(cdiCtrlr, (int)AsstList.CdiVelocity, preset));

            return node;
        }
        public static ConfigNode APPresetNode(APPreset preset)
        {
            ConfigNode node = new ConfigNode(apPresetNodeName);

            node.AddValue("name", preset.name);
            node.AddNode(PIDnode(hdgCtrlr, (int)AsstList.HdgBank, preset));
            node.AddNode(PIDnode(yawCtrlr, (int)AsstList.BankToYaw, preset));
            node.AddNode(PIDnode(aileronCtrlr, (int)AsstList.Aileron, preset));
            node.AddNode(PIDnode(rudderCtrlr, (int)AsstList.Rudder, preset));
            node.AddNode(PIDnode(altCtrlr, (int)AsstList.Altitude, preset));
            node.AddNode(PIDnode(vertCtrlr, (int)AsstList.VertSpeed, preset));
            node.AddNode(PIDnode(elevCtrlr, (int)AsstList.Elevator, preset));
            node.AddNode(PIDnode(speedCtrlr, (int)AsstList.Speed, preset));
            node.AddNode(PIDnode(accelCtrlr, (int)AsstList.Acceleration, preset));
            node.AddNode(PIDnode(cdiCtrlr, (int)AsstList.CdiVelocity, preset));

            return(node);
        }
        public static void newAPPreset(ref string name, APController[] controllers, Vessel v)
        {
            if (name == "")
            {
                return;
            }

            string tempName = name;

            if (Instance.APPresetList.Any(p => p.name == tempName))
            {
                GeneralUI.postMessage("Failed to add preset with duplicate name");
                return;
            }
            APPreset newPreset = new APPreset(controllers, name);

            updateCraftPreset(newPreset, v);
            Instance.APPresetList.Add(newPreset);
            Instance.activeAPPreset = PresetManager.Instance.APPresetList.Last();
            saveToFile();
            name = "";
        }
Esempio n. 8
0
 public static ConfigNode PIDnode(string name, int index, APPreset preset)
 {
     ConfigNode node = new ConfigNode(name);
     node.AddValue(pGain, preset.PIDGains[index][0]);
     node.AddValue(iGain, preset.PIDGains[index][1]);
     node.AddValue(dGain, preset.PIDGains[index][2]);
     node.AddValue(min, preset.PIDGains[index][3]);
     node.AddValue(max, preset.PIDGains[index][4]);
     node.AddValue(iLower, preset.PIDGains[index][5]);
     node.AddValue(iUpper, preset.PIDGains[index][6]);
     node.AddValue(scalar, preset.PIDGains[index][7]);
     node.AddValue(ease, preset.PIDGains[index][8]);
     return node;
 }
Esempio n. 9
0
        public static void newAPPreset(ref string name, APController[] controllers, Vessel v)
        {
            if (name == "")
                return;

            string tempName = name;
            if (Instance.APPresetList.Any(p => p.name == tempName))
            {
                GeneralUI.postMessage("Failed to add preset with duplicate name");
                return;
            }
            APPreset newPreset = new APPreset(controllers, name);
            updateCraftPreset(newPreset, v);
            Instance.APPresetList.Add(newPreset);
            Instance.activeAPPreset = PresetManager.Instance.APPresetList.Last();
            saveToFile();
            name = "";
        }
Esempio n. 10
0
        public static void loadPresetsFromFile()
        {
            APPreset asstDefault = null;

            foreach (ConfigNode node in GameDatabase.Instance.GetConfigNodes(apPresetNodeName))
            {
                if (node == null)
                    continue;

                List<double[]> gains = new List<double[]>();
                gains.Add(controllerGains(node.GetNode(hdgCtrlr), AsstList.HdgBank));
                gains.Add(controllerGains(node.GetNode(yawCtrlr), AsstList.BankToYaw));
                gains.Add(controllerGains(node.GetNode(aileronCtrlr), AsstList.Aileron));
                gains.Add(controllerGains(node.GetNode(rudderCtrlr), AsstList.Rudder));
                gains.Add(controllerGains(node.GetNode(altCtrlr), AsstList.Altitude));
                gains.Add(controllerGains(node.GetNode(vertCtrlr), AsstList.VertSpeed));
                gains.Add(controllerGains(node.GetNode(elevCtrlr), AsstList.Elevator));
                gains.Add(controllerGains(node.GetNode(speedCtrlr), AsstList.Speed));
                gains.Add(controllerGains(node.GetNode(accelCtrlr), AsstList.Acceleration));
                gains.Add(controllerGains(node.GetNode(cdiCtrlr), AsstList.CdiVelocity));

                string name = node.GetValue("name");
                if (name == apDefaultName)
                    asstDefault = new APPreset(gains, name);
                else if (!instance.APPresetList.Any(p => p.name == name))
                    instance.APPresetList.Add(new APPreset(gains, name));
            }

            /*
            foreach (ConfigNode node in GameDatabase.Instance.GetConfigNodes(sasPresetNodeName))
            {
                if (node == null || node.GetValue("stock") == "false")
                    continue;

                List<double[]> gains = new List<double[]>();
                gains.Add(controllerSASGains(node.GetNode(elevCtrlr), SASList.Pitch));
                gains.Add(controllerSASGains(node.GetNode(aileronCtrlr), SASList.Bank));
                gains.Add(controllerSASGains(node.GetNode(rudderCtrlr), SASList.Hdg));

                string name = node.GetValue("name");
                if (name == SASDefaultName)
                    SASDefault = new SASPreset(gains, name);
                else if (!instance.SASPresetList.Any(p => p.name == name))
                    instance.SASPresetList.Add(new SASPreset(gains, name));
            }
            */

            foreach (ConfigNode node in GameDatabase.Instance.GetConfigNodes(craftPresetNodeName))
            {
                if (node == null || instance.craftPresetDict.ContainsKey(node.GetValue("name")))
                    continue;

                string name = node.GetValue("name");
                if (name == craftDefaultName)
                    instance.craftPresetDict.Add(craftDefaultName,
                        new CraftPreset(craftDefaultName, asstDefault));
                else
                {
                    CraftPreset cP = new CraftPreset(name,
                                            instance.APPresetList.FirstOrDefault(p => p.name == node.GetValue(craftAPKey)));

                    instance.craftPresetDict.Add(cP.Name, cP);
                }
            }
        }
Esempio n. 11
0
        public static void loadAPPreset(APPreset p, George instance)
        {
            APController[] c = instance.controllers;
            for (int i = 0; i < c.Length && i < p.PIDGains.Count; i++)
            {
                c[i].PGain = p.PIDGains[i][0];
                c[i].IGain = p.PIDGains[i][1];
                c[i].DGain = p.PIDGains[i][2];
                c[i].OutMin = p.PIDGains[i][3];
                c[i].OutMax = p.PIDGains[i][4];
                c[i].ClampLower = p.PIDGains[i][5];
                c[i].ClampUpper = p.PIDGains[i][6];
                c[i].Scalar = p.PIDGains[i][7];
                c[i].Easing = p.PIDGains[i][8];
            }

            Instance.activeAPPreset = p;
            GeneralUI.postMessage("Loaded preset " + p.name);

            if (Instance.activeAPPreset != Instance.craftPresetDict[craftDefaultName].apPreset)
                updateCraftPreset(Instance.activeAPPreset, instance.vessel);

            saveToFile();
        }
Esempio n. 12
0
 public static void initDefaultPresets(APPreset p)
 {
     initDefaultPresets();
     if (Instance.craftPresetDict[craftDefaultName].apPreset == null)
         Instance.craftPresetDict[craftDefaultName].apPreset = p;
     PresetManager.saveDefaults();
 }
Esempio n. 13
0
        public static void deleteAPPreset(APPreset p)
        {
            GeneralUI.postMessage("Deleted preset " + p.name);
            if (Instance.activeAPPreset == p)
                Instance.activeAPPreset = null;
            Instance.APPresetList.Remove(p);

            p = null;

            saveToFile();
        }
Esempio n. 14
0
        public static void loadPresetsFromFile()
        {
            APPreset asstDefault = null;

            foreach (ConfigNode node in GameDatabase.Instance.GetConfigNodes(apPresetNodeName))
            {
                if (node == null)
                {
                    continue;
                }

                List <double[]> gains = new List <double[]>();
                gains.Add(controllerGains(node.GetNode(hdgCtrlr), AsstList.HdgBank));
                gains.Add(controllerGains(node.GetNode(yawCtrlr), AsstList.BankToYaw));
                gains.Add(controllerGains(node.GetNode(aileronCtrlr), AsstList.Aileron));
                gains.Add(controllerGains(node.GetNode(rudderCtrlr), AsstList.Rudder));
                gains.Add(controllerGains(node.GetNode(altCtrlr), AsstList.Altitude));
                gains.Add(controllerGains(node.GetNode(vertCtrlr), AsstList.VertSpeed));
                gains.Add(controllerGains(node.GetNode(elevCtrlr), AsstList.Elevator));
                gains.Add(controllerGains(node.GetNode(speedCtrlr), AsstList.Speed));
                gains.Add(controllerGains(node.GetNode(accelCtrlr), AsstList.Acceleration));
                gains.Add(controllerGains(node.GetNode(cdiCtrlr), AsstList.CdiVelocity));

                string name = node.GetValue("name");
                if (name == apDefaultName)
                {
                    asstDefault = new APPreset(gains, name);
                }
                else if (!instance.APPresetList.Any(p => p.name == name))
                {
                    instance.APPresetList.Add(new APPreset(gains, name));
                }
            }

            /*
             * foreach (ConfigNode node in GameDatabase.Instance.GetConfigNodes(sasPresetNodeName))
             * {
             *  if (node == null || node.GetValue("stock") == "false")
             *      continue;
             *
             *  List<double[]> gains = new List<double[]>();
             *  gains.Add(controllerSASGains(node.GetNode(elevCtrlr), SASList.Pitch));
             *  gains.Add(controllerSASGains(node.GetNode(aileronCtrlr), SASList.Bank));
             *  gains.Add(controllerSASGains(node.GetNode(rudderCtrlr), SASList.Hdg));
             *
             *  string name = node.GetValue("name");
             *  if (name == SASDefaultName)
             *      SASDefault = new SASPreset(gains, name);
             *  else if (!instance.SASPresetList.Any(p => p.name == name))
             *      instance.SASPresetList.Add(new SASPreset(gains, name));
             * }
             */

            foreach (ConfigNode node in GameDatabase.Instance.GetConfigNodes(craftPresetNodeName))
            {
                if (node == null || instance.craftPresetDict.ContainsKey(node.GetValue("name")))
                {
                    continue;
                }

                string name = node.GetValue("name");
                if (name == craftDefaultName)
                {
                    instance.craftPresetDict.Add(craftDefaultName,
                                                 new CraftPreset(craftDefaultName, asstDefault));
                }
                else
                {
                    CraftPreset cP = new CraftPreset(name,
                                                     instance.APPresetList.FirstOrDefault(p => p.name == node.GetValue(craftAPKey)));

                    instance.craftPresetDict.Add(cP.Name, cP);
                }
            }
        }
Esempio n. 15
0
 public static void updateCraftPreset(APPreset p, Vessel v)
 {
     initCraftPreset(v);
     Instance.craftPresetDict[v.vesselName].apPreset = p;
 }
Esempio n. 16
0
 public static void updateCraftPreset(APPreset p, Vessel v)
 {
     initCraftPreset(v);
     Instance.craftPresetDict[v.vesselName].apPreset = p;
 }
 public CraftPreset(string Name, APPreset PA)
 {
     name = Name;
     pa   = PA;
 }
Esempio n. 18
0
 public CraftPreset(string Name, APPreset PA)
 {
     name = Name;
     pa = PA;
 }