Exemplo n.º 1
0
        internal static void LoadSettings()
        {
            Game.LogTrivial("[LOG]: Loading config file from UnitedCallouts.");
            var path = "Plugins/LSPDFR/UnitedCallouts/UnitedCallouts.ini";
            var ini  = new InitializationFile(path);

            ini.Create();
            Burglary                = ini.ReadBoolean("Callouts", "Burglary", true);
            ArrestWarrant           = ini.ReadBoolean("Callouts", "ArrestWarrant", true);
            RobberyHL               = ini.ReadBoolean("Callouts", "RobberyHL", true);
            StolenEmergencyVehicle  = ini.ReadBoolean("Callouts", "StolenEmergencyVehicle", true);
            StolenEmergencyVehicle2 = ini.ReadBoolean("Callouts", "StolenEmergencyVehicle2", true);
            GangAttack              = ini.ReadBoolean("Callouts", "GangAttack", true);
            DrugDeal                = ini.ReadBoolean("Callouts", "DrugDeal", true);
            KillerClownWasSeen      = ini.ReadBoolean("Callouts", "KillerClownWasSeen", true);
            Fighting                = ini.ReadBoolean("Callouts", "Fighting", true);
            PersonWithKnife         = ini.ReadBoolean("Callouts", "PersonWithKnife", true);
            StolenBus               = ini.ReadBoolean("Callouts", "StolenBus", true);
            StolenTruck             = ini.ReadBoolean("Callouts", "StolenTruck", true);
            MoneyTruckIsRobbed      = ini.ReadBoolean("Callouts", "MoneyTruckIsRobbed", true);
            troublemaker            = ini.ReadBoolean("Callouts", "troublemaker", true);
            CarTrade                = ini.ReadBoolean("Callouts", "CarTrade", true);
            ArmoredPerson           = ini.ReadBoolean("Callouts", "ArmoredPerson", true);
            ShotsFired              = ini.ReadBoolean("Callouts", "ShotsFired", true);
            Bicycle             = ini.ReadBoolean("Callouts", "Bicycle", true);
            WelfareCheck        = ini.ReadBoolean("Callouts", "WelfareCheck", true);
            K9Backup            = ini.ReadBoolean("Callouts", "K9Backup", true);
            store               = ini.ReadBoolean("Callouts", "store", true);
            TrafficBackup       = ini.ReadBoolean("Callouts", "TrafficBackup", true);
            Hostages            = ini.ReadBoolean("Callouts", "Hostages", true);
            JewelleryRobbery    = ini.ReadBoolean("Callouts", "JewelleryRobbery", true);
            ATMActivity         = ini.ReadBoolean("Callouts", "ATMActivity", true);
            MurderInvestigation = ini.ReadBoolean("Callouts", "MurderInvestigation", true);
            ActivateAIBackup    = ini.ReadBoolean("Settings", "ActivateAIBackup", true);
            ActivateAIBackup    = ini.ReadBoolean("Settings", "HelpMessages", true);
            EndCall             = ini.ReadEnum("Keys", "EndCall", Keys.End);
            Dialog              = ini.ReadEnum("Keys", "Dialog", Keys.Y);
        }
Exemplo n.º 2
0
        internal static void Initalize()
        {
            string pathToFile = "Plugins/LSPDFR/FireyCallouts.ini";
            var    ini        = new InitializationFile(pathToFile);

            ini.Create();

            // Controls
            endKey      = ini.ReadEnum("Controls", "endKey", Keys.Delete);
            dialogueKey = ini.ReadEnum("Controls", "dialogueKey", Keys.Y);

            // Callouts
            burningTruck    = ini.ReadBoolean("Callouts", "burningTruck", true);
            burningGarbage  = ini.ReadBoolean("Callouts", "burningGarbage", true);
            lostFreight     = ini.ReadBoolean("Callouts", "lostFreight", true);
            heliCrash       = ini.ReadBoolean("Callouts", "heliCrash", true);
            planeLanding    = ini.ReadBoolean("Callouts", "planeLanding", true);
            illegalFirework = ini.ReadBoolean("Callouts", "illegalFirework", true);
            structuralFire  = ini.ReadBoolean("Callouts", "structuralFire", true);
            campfire        = ini.ReadBoolean("Callouts", "campfire", true);
            //smokeDetected = ini.ReadBoolean("Callouts", "smokeDetected", false);

            Game.LogTrivial("[FireyCallouts][Init] successfully initialized");
        }
Exemplo n.º 3
0
        private static void ReadCfg()
        {
            Logger.LogTrivial("Reading settings from config file...");

            ToggleKey                 = mCfgFile.ReadEnum <Keys>(ECfgSections.SETTINGS.ToString(), ESettings.ToggleKey.ToString(), Keys.F8);
            ToggleKeyModifier         = mCfgFile.ReadEnum <Keys>(ECfgSections.SETTINGS.ToString(), ESettings.ToggleKeyModifier.ToString(), Keys.None);
            PlayAlertSound            = mCfgFile.ReadBoolean(ECfgSections.SETTINGS.ToString(), ESettings.PlayAlertSound.ToString(), true);
            PlayScanSound             = mCfgFile.ReadBoolean(ECfgSections.SETTINGS.ToString(), ESettings.PlayScanSound.ToString(), true);
            AutoDisableOnTrafficStops = mCfgFile.ReadBoolean(ECfgSections.SETTINGS.ToString(), ESettings.AutoDisableOnTrafficStops.ToString(), true);
            AutoDisableOnPursuits     = mCfgFile.ReadBoolean(ECfgSections.SETTINGS.ToString(), ESettings.AutoDisableOnPursuits.ToString(), true);
            //BetaKey = mCfgFile.ReadString(ECfgSections.SETTINGS.ToString(), ESettings.BetaKey.ToString(), "YourBetaKeyHere");

            Logger.LogTrivial("ToggleKey = " + ToggleKey.ToString());

            CameraDegreesFOV    = mCfgFile.ReadInt32(ECfgSections.CAMERAS.ToString(), ECameras.CameraDegreesFOV.ToString(), cCameraDegreesFOV);
            CameraRange         = (float)mCfgFile.ReadDouble(ECfgSections.CAMERAS.ToString(), ECameras.CameraRange.ToString(), cCameraRange);
            CameraMinimum       = (float)mCfgFile.ReadDouble(ECfgSections.CAMERAS.ToString(), ECameras.CameraMinimum.ToString(), (float)cCameraMinRange);
            DriverFrontAngle    = mCfgFile.ReadInt32(ECfgSections.CAMERAS.ToString(), ECameras.DriverFrontAngle.ToString(), cDriverFrontAngle);
            DriverRearAngle     = mCfgFile.ReadInt32(ECfgSections.CAMERAS.ToString(), ECameras.DriverRearAngle.ToString(), cDriverRearAngle);
            PassengerRearAngle  = mCfgFile.ReadInt32(ECfgSections.CAMERAS.ToString(), ECameras.PassengerRearAngle.ToString(), cPassengerRearAngle);
            PassengerFrontAngle = mCfgFile.ReadInt32(ECfgSections.CAMERAS.ToString(), ECameras.PassengerFrontAngle.ToString(), cPassengerFrontAngle);
            VehicleRescanBuffer = mCfgFile.ReadInt32(ECfgSections.CAMERAS.ToString(), ECameras.VehicleRescanBuffer.ToString(), cVehicleRescanBuffer);

            SecondsBetweenAlerts        = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.SecondsBetweenAlerts.ToString(), cSecondsBetweenAlerts);
            ProbabilityOfAlerts         = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.ProbabilityOfAlerts.ToString(), cProbabilityOfAlerts);
            StolenVehicleWeight         = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.StolenVehicleWeight.ToString(), cDefaultStolenVehicleWeight);
            OwnerWantedWeight           = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.OwnerWantedWeight.ToString(), cDefaultOwnerWantedWeight);
            OwnerLicenseSuspendedWeight = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.OwnerLicenseSuspendedWeight.ToString(), cDefaultOwnerLicenseSuspendedWeight);
            OwnerLicenseExpiredWeight   = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.OwnerLicenseExpiredWeight.ToString(), cDefaultOwnerLicenseExpiredWeight);
            UnregisteredVehicleWeight   = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.UnregisteredVehicleWeight.ToString(), cDefaultUnregisteredVehicleWeight);
            RegisrationExpiredWeight    = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.RegisrationExpiredWeight.ToString(), cDefaultRegisrationExpiredWeight);
            NoInsuranceWeight           = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.NoInsuranceWeight.ToString(), cDefaultNoInsuranceWeight);
            InsuranceExpiredWeight      = mCfgFile.ReadInt32(ECfgSections.ALERTS.ToString(), EAlerts.InsuranceExpiredWeight.ToString(), cDefaultInsuranceExpiredWeight);

            AdjustAlertWeights();
        }
Exemplo n.º 4
0
        public static void Initialise()
        {
            //ini stuff

            InitializationFile ini = new InitializationFile("Plugins/LSPDFR/LSPDFR+.ini");

            ini.Create();
            try
            {
                EnhancedTrafficStop.BringUpTrafficStopMenuControllerButton = ini.ReadEnum <ControllerButtons>("General", "BringUpTrafficStopMenuControllerButton", ControllerButtons.DPadRight);
                EnhancedTrafficStop.BringUpTrafficStopMenuKey = (Keys)kc.ConvertFromString(ini.ReadString("General", "BringUpTrafficStopMenuKey", "E"));
                CourtSystem.OpenCourtMenuKey                        = (Keys)kc.ConvertFromString(ini.ReadString("OnlyWithoutBritishPolicingScriptInstalled", "OpenCourtMenuKey", "F9"));
                CourtSystem.OpenCourtMenuModifierKey                = (Keys)kc.ConvertFromString(ini.ReadString("OnlyWithoutBritishPolicingScriptInstalled", "OpenCourtMenuModifierKey", "None"));
                EnhancedTrafficStop.EnhancedTrafficStopsEnabled     = ini.ReadBoolean("General", "EnhancedTrafficStopsEnabled", true);
                EnhancedPursuitAI.EnhancedPursuitAIEnabled          = ini.ReadBoolean("General", "EnhancedPursuitAIEnabled", true);
                EnhancedPursuitAI.AutoPursuitBackupEnabled          = ini.ReadBoolean("General", "AutoPursuitBackupEnabled", false);
                EnhancedPursuitAI.OpenPursuitTacticsMenuKey         = (Keys)kc.ConvertFromString(ini.ReadString("General", "OpenPursuitTacticsMenuKey", "Q"));
                EnhancedPursuitAI.OpenPursuitTacticsMenuModifierKey = (Keys)kc.ConvertFromString(ini.ReadString("General", "OpenPursuitTacticsMenuModifierKey", "LShiftKey"));
                EnhancedPursuitAI.DefaultAutomaticAI                = ini.ReadBoolean("General", "DefaultAutomaticAI", true);

                Offence.maxpoints    = ini.ReadInt32("General", "MaxPoints", 12);
                Offence.pointincstep = ini.ReadInt32("General", "PointsIncrementalStep", 1);
                Offence.maxFine      = ini.ReadInt32("General", "MaxFine", 5000);

                Offence.OpenTicketMenuKey         = (Keys)kc.ConvertFromString(ini.ReadString("General", "OpenTicketMenuKey", "Q"));
                Offence.OpenTicketMenuModifierKey = (Keys)kc.ConvertFromString(ini.ReadString("General", "OpenTicketMenuModifierKey", "LShiftKey"));
                Offence.enablePoints = ini.ReadBoolean("General", "EnablePoints", true);

                CourtSystem.RealisticCourtDates = ini.ReadBoolean("OnlyWithoutBritishPolicingScriptInstalled", "RealisticCourtDates", true);
            }
            catch (Exception e)
            {
                Game.LogTrivial(e.ToString());
                Game.LogTrivial("Error loading LSPDFR+ INI file. Loading defaults");
                Game.DisplayNotification("~r~Error loading LSPDFR+ INI file. Loading defaults");
            }
            BetaCheck();
        }
Exemplo n.º 5
0
        public static void Main()
        {
            InitializationFile iniFile = new InitializationFile("plugins//PlateChecker.ini");

            //Keys key = iniFile.Read<Keys>("Keys", "ReadPlate", Keys.F3);
            Keys key = iniFile.ReadEnum <Keys>("Keys", "ReadPlate", Keys.F3);

            GameFiber.StartNew(delegate
            {
                while (true)
                {
                    GameFiber.Yield();
                    if (Game.IsKeyDown(key))
                    {
                        Vehicle closestVehicle = Game.LocalPlayer.Character.IsInAnyVehicle(false) ? GetVehicleInFront(7.5f) : GetVehicleInFront(4.2f);
                        if (closestVehicle != null)
                        {
                            Game.DisplayHelp("Plate: " + closestVehicle.LicensePlate.ToString());
                        }
                    }
                }
            });
        }
Exemplo n.º 6
0
        internal Settings(string generalSettingsFileName, string vehiclesSettingsFileName, string visualSettingsFileName, bool generateDefaultsIfFileNotFound)
        {
            GeneralSettingsFileName  = generalSettingsFileName;
            VehiclesSettingsFileName = vehiclesSettingsFileName;
            VisualSettingsFileName   = visualSettingsFileName;

            if (generateDefaultsIfFileNotFound)
            {
                if (!File.Exists(generalSettingsFileName))
                {
                    Game.LogTrivial($"'{Path.GetFileName(generalSettingsFileName)}' file doesn't exists, creating default...");
                    CreateDefaultGeneralSettingsIniFile(generalSettingsFileName);
                }

                if (!File.Exists(vehiclesSettingsFileName))
                {
                    Game.LogTrivial($"'{Path.GetFileName(vehiclesSettingsFileName)}' file doesn't exists, creating default...");
                    CreateDefaultVehiclesSettingsFile(vehiclesSettingsFileName, true);
                }

                if (!File.Exists(visualSettingsFileName))
                {
                    Game.LogTrivial($"'{Path.GetFileName(visualSettingsFileName)}' file doesn't exists, creating default...");
                    CreateDefaultVisualSettingsXMLFile(visualSettingsFileName);
                }
            }

            Game.LogTrivial("Reading settings...");
            GeneralSettingsIniFile = new InitializationFile(generalSettingsFileName);
            Vehicles = ReadVehiclesSettings(vehiclesSettingsFileName);
            Visual   = ReadVisualSettingsFromXMLFile(visualSettingsFileName);

            EditorKey = GeneralSettingsIniFile.ReadEnum <Keys>("Misc", "EditorKey", Keys.F11);

            EnableTrackingNotifications = GeneralSettingsIniFile.ReadBoolean("Misc", "TrackingNotificationsEnabled", true);
        }
Exemplo n.º 7
0
        private static void SetupBackgroundSettings()
        {
            RadioBackgroundTexture       = Game.CreateTextureFromFile(PathModifier + "Background" + DisplayExtension);
            MasterScalingFactor          = DisplayIni.ReadSingle("DisplayConfig", "DisplayScalingFactor", 1.0f);
            RadioBackgroundTextureWidth  = RadioBackgroundTexture.Size.Width * MasterScalingFactor;
            RadioBackgroundTextureHeight = RadioBackgroundTexture.Size.Height * MasterScalingFactor;

            UIPositions Position = DisplayIni.ReadEnum <UIPositions>("DisplayConfig", "DisplayPosition", UIPositions.BottomRight);

            if (!string.IsNullOrWhiteSpace(DisplayIni.ReadString("DisplaySpecificPositioning", "X", "")) && !string.IsNullOrWhiteSpace(DisplayIni.ReadString("DisplaySpecificPositioning", "Y", "")))
            {
                BaseX = DisplayIni.ReadInt32("DisplaySpecificPositioning", "X");
                BaseY = DisplayIni.ReadInt32("DisplaySpecificPositioning", "Y");
                Game.LogTrivial("Setting Display position to specifics: " + BaseX + ":" + BaseY);
            }
            else
            {
                switch (Position)
                {
                case UIPositions.BottomRight:
                    BaseX = Game.Resolution.Width - (Int32)RadioBackgroundTextureWidth;
                    BaseY = Game.Resolution.Height - (Int32)RadioBackgroundTextureHeight;
                    break;

                case UIPositions.BottomLeft:
                    BaseX = 0;
                    BaseY = Game.Resolution.Height - (Int32)RadioBackgroundTextureHeight;
                    break;

                case UIPositions.TopLeft:
                    BaseX = 0;
                    BaseY = 0;
                    break;

                case UIPositions.TopRight:
                    BaseX = Game.Resolution.Width - (Int32)RadioBackgroundTextureWidth;
                    BaseY = 0;
                    break;

                case UIPositions.CentreLeft:
                    BaseX = 0;
                    BaseY = Game.Resolution.Height / 2 - (Int32)RadioBackgroundTextureHeight / 2;
                    break;

                case UIPositions.CentreRight:
                    BaseX = Game.Resolution.Width - (Int32)RadioBackgroundTextureWidth;
                    BaseY = Game.Resolution.Height / 2 - (Int32)RadioBackgroundTextureHeight / 2;
                    break;

                case UIPositions.CentreBottom:
                    BaseX = Game.Resolution.Width / 2 - (Int32)RadioBackgroundTextureWidth / 2;
                    BaseY = Game.Resolution.Height - (Int32)RadioBackgroundTextureHeight;
                    break;

                case UIPositions.CentreTop:
                    BaseX = Game.Resolution.Width / 2 - (Int32)RadioBackgroundTextureWidth / 2;
                    BaseY = 0;
                    break;
                }
                Game.LogTrivial("Setting Display position to " + Position.ToString());
                Game.LogTrivial(BaseX + ":" + BaseY);
            }
        }
Exemplo n.º 8
0
        public static void Initialise()
        {
            //ini stuff

            InitializationFile ini = new InitializationFile("Plugins/LSPDFR/LSPDFR+.ini");

            ini.Create();
            try
            {
                EnhancedTrafficStop.BringUpTrafficStopMenuControllerButton = ini.ReadEnum <ControllerButtons>("General", "BringUpTrafficStopMenuControllerButton", ControllerButtons.DPadRight);
                EnhancedTrafficStop.BringUpTrafficStopMenuKey = (Keys)kc.ConvertFromString(ini.ReadString("General", "BringUpTrafficStopMenuKey", "D7"));

                try
                {
                    stockLSPDFRIni = new InitializationFile(LSPDFRKeyIniPath);
                    string[] stockinicontents = File.ReadAllLines(LSPDFRKeyIniPath);
                    //Alternative INI reading implementation, RPH doesn't work with sectionless INIs.
                    foreach (string line in stockinicontents)
                    {
                        if (line.StartsWith("TRAFFICSTOP_INTERACT_Key="))
                        {
                            stockTrafficStopInteractKey = (Keys)kc.ConvertFromString(line.Substring(line.IndexOf('=') + 1));
                        }
                        else if (line.StartsWith("TRAFFICSTOP_INTERACT_ModifierKey"))
                        {
                            stockTrafficStopInteractModifierKey = (Keys)kc.ConvertFromString(line.Substring(line.IndexOf('=') + 1));
                        }
                        else if (line.StartsWith("TRAFFICSTOP_INTERACT_ControllerKey"))
                        {
                            stockTrafficStopInteractControllerButton = (ControllerButtons)Enum.Parse(typeof(ControllerButtons), line.Substring(line.IndexOf('=') + 1));
                        }
                        else if (line.StartsWith("TRAFFICSTOP_INTERACT_ControllerModifierKey"))
                        {
                            stockTrafficStopInteractModifierControllerButton = (ControllerButtons)Enum.Parse(typeof(ControllerButtons), line.Substring(line.IndexOf('=') + 1));
                        }
                    }
                    if ((EnhancedTrafficStop.BringUpTrafficStopMenuKey == stockTrafficStopInteractKey && stockTrafficStopInteractModifierKey == Keys.None) || (EnhancedTrafficStop.BringUpTrafficStopMenuControllerButton == stockTrafficStopInteractControllerButton && stockTrafficStopInteractModifierControllerButton == ControllerButtons.None))
                    {
                        TrafficStopMenuPopup = new Popup("LSPDFR+: Traffic Stop Menu Conflict", "Your LSPDFR+ traffic stop menu keys (plugins/lspdfr/lspdfr+.ini) are the same as the default LSPDFR traffic stop keys (lspdfr/keys.ini TRAFFICSTOP_INTERACT_Key and TRAFFICSTOP_INTERACT_ControllerKey). How would you like to solve this?",
                                                         new List <string>()
                        {
                            "Recommended: Automatically disable the default LSPDFR traffic stop menu keys (this will edit keys.ini TRAFFICSTOP_INTERACT_Key and TRAFFICSTOP_INTERACT_ControllerKey to None)", "I know what I'm doing, I will change the keys in the INIs myself!"
                        }, false, true, TrafficStopMenuCb);
                        TrafficStopMenuPopup.Display();
                    }
                }
                catch (Exception e)
                {
                    Game.LogTrivial($"Failed to determine stock LSPDFR key bind/controller button for traffic stop keys: {e}");
                }

                CourtSystem.OpenCourtMenuKey                        = (Keys)kc.ConvertFromString(ini.ReadString("OnlyWithoutBritishPolicingScriptInstalled", "OpenCourtMenuKey", "F9"));
                CourtSystem.OpenCourtMenuModifierKey                = (Keys)kc.ConvertFromString(ini.ReadString("OnlyWithoutBritishPolicingScriptInstalled", "OpenCourtMenuModifierKey", "None"));
                EnhancedTrafficStop.EnhancedTrafficStopsEnabled     = ini.ReadBoolean("General", "EnhancedTrafficStopsEnabled", true);
                EnhancedPursuitAI.EnhancedPursuitAIEnabled          = ini.ReadBoolean("General", "EnhancedPursuitAIEnabled", true);
                EnhancedPursuitAI.AutoPursuitBackupEnabled          = ini.ReadBoolean("General", "AutoPursuitBackupEnabled", false);
                EnhancedPursuitAI.OpenPursuitTacticsMenuKey         = (Keys)kc.ConvertFromString(ini.ReadString("General", "OpenPursuitTacticsMenuKey", "Q"));
                EnhancedPursuitAI.OpenPursuitTacticsMenuModifierKey = (Keys)kc.ConvertFromString(ini.ReadString("General", "OpenPursuitTacticsMenuModifierKey", "LShiftKey"));
                EnhancedPursuitAI.DefaultAutomaticAI                = ini.ReadBoolean("General", "DefaultAutomaticAI", true);

                Offence.maxpoints    = ini.ReadInt32("General", "MaxPoints", 12);
                Offence.pointincstep = ini.ReadInt32("General", "PointsIncrementalStep", 1);
                Offence.maxFine      = ini.ReadInt32("General", "MaxFine", 5000);

                Offence.OpenTicketMenuKey         = (Keys)kc.ConvertFromString(ini.ReadString("General", "OpenTicketMenuKey", "Q"));
                Offence.OpenTicketMenuModifierKey = (Keys)kc.ConvertFromString(ini.ReadString("General", "OpenTicketMenuModifierKey", "LShiftKey"));
                Offence.enablePoints = ini.ReadBoolean("General", "EnablePoints", true);

                CourtSystem.RealisticCourtDates = ini.ReadBoolean("OnlyWithoutBritishPolicingScriptInstalled", "RealisticCourtDates", true);
            }
            catch (Exception e)
            {
                Game.LogTrivial(e.ToString());
                Game.LogTrivial("Error loading LSPDFR+ INI file. Loading defaults");
                Game.DisplayNotification("~r~Error loading LSPDFR+ INI file. Loading defaults");
            }
            BetaCheck();
        }
Exemplo n.º 9
0
        private static void LoadValuesFromIniFile()
        {
            // string path = "Plugins\\RecovFR.ini";
            InitializationFile ini = new InitializationFile(INIpath);

            ini.Create();

            try
            {
                if (ini.DoesKeyExist("Keybindings", "BackupKey"))
                {
                    BackupKey = ini.ReadEnum <Keys>("Keybindings", "BackupKey", Keys.F12);
                }
                else
                {
                    ini.Write("Keybindings", "BackupKey", "F12");
                    BackupKey = Keys.F12;
                }

                if (ini.DoesKeyExist("Keybindings", "BackupModifierKey"))
                {
                    BackupModifierKey = ini.ReadEnum <Keys>("Keybindings", "BackupModifierKey", Keys.ControlKey);
                }
                else
                {
                    ini.Write("Keybindings", "BackupModifierKey", "ControlKey");
                    BackupModifierKey = Keys.ControlKey;
                }

                if (ini.DoesKeyExist("Keybindings", "RestoreKey"))
                {
                    RestoreKey = ini.ReadEnum <Keys>("Keybindings", "RestoreKey", Keys.F12);
                }
                else
                {
                    ini.Write("Keybindings", "RestoreKey", "F12");
                    RestoreKey = Keys.F12;
                }

                if (ini.DoesKeyExist("Keybindings", "RestoreModifierKey"))
                {
                    RestoreModifierKey = ini.ReadEnum <Keys>("Keybindings", "RestoreModifierKey", Keys.Menu);
                }
                else
                {
                    ini.Write("Keybindings", "RestoreModifierKey", "ControlKey");
                    RestoreModifierKey = Keys.Menu;
                }

                if (ini.DoesKeyExist("Keybindings", "MenuKey"))
                {
                    MenuKey = ini.ReadEnum <Keys>("Keybindings", "MenuKey", Keys.F11);
                }
                else
                {
                    ini.Write("Keybindings", "MenuKey", "F11");
                    MenuKey = Keys.F11;
                }

                if (ini.DoesKeyExist("Keybindings", "MenuModifierKey"))
                {
                    MenuModifierKey = ini.ReadEnum <Keys>("Keybindings", "MenuModifierKey", Keys.None);
                }
                else
                {
                    ini.Write("Keybindings", "MenuModifierKey", "None");
                    MenuModifierKey = Keys.None;
                }

                if (ini.DoesKeyExist("Features", "AutoBackups"))
                {
                    AutoBackups = ini.ReadBoolean("Features", "AutoBackups", false);
                }
                else
                {
                    ini.Write("Features", "AutoBackups", "false");
                    AutoBackups = false;
                }

                if (ini.DoesKeyExist("Features", "AutoBackupInt"))
                {
                    AutoBackupInt = ini.ReadByte("Features", "AutoBackupInt", 60);
                }
                else
                {
                    ini.Write("Features", "AutoBackupInt", "60");
                    AutoBackupInt = 60;
                }

                if (ini.DoesKeyExist("Features", "ShowNotifications"))
                {
                    ShowNotifications = ini.ReadBoolean("Features", "ShowNotifications", false);
                }
                else
                {
                    ini.Write("Features", "ShowNotifications", "false");
                    ShowNotifications = false;
                }

                if (ini.DoesKeyExist("RestoreOptions", "PlayerGodMode"))
                {
                    PlayerGodMode = ini.ReadBoolean("RestoreOptions", "PlayerGodMode", false);
                }
                else
                {
                    ini.Write("RestoreOptions", "PlayerGodMode", "False");
                    PlayerGodMode = false;
                }

                if (ini.DoesKeyExist("RestoreOptions", "VehicleGodMode"))
                {
                    VehicleGodMode = ini.ReadBoolean("RestoreOptions", "VehicleGodMode", false);
                }
                else
                {
                    ini.Write("RestoreOptions", "VehicleGodMode", "false");
                    VehicleGodMode = false;
                }

                if (ini.DoesKeyExist("RestoreOptions", "FreezeWeather"))
                {
                    FreezeWeather = ini.ReadBoolean("RestoreOptions", "FreezeWeather", false);
                }
                else
                {
                    ini.Write("RestoreOptions", "FreezeWeather", "false");
                    FreezeWeather = false;
                }

                if (ini.DoesKeyExist("RestoreOptions", "SnowOnGround"))
                {
                    SnowOnGround = ini.ReadBoolean("RestoreOptions", "SnowOnGround", false);
                }
                else
                {
                    ini.Write("RestoreOptions", "SnowOnGround", "false");
                    SnowOnGround = false;
                }

                if (ini.DoesKeyExist("RestoreOptions", "FreezeTime"))
                {
                    FreezeTime = ini.ReadBoolean("RestoreOptions", "FreezeTime", false);
                }
                else
                {
                    ini.Write("RestoreOptions", "FreezeTime", "false");
                    FreezeTime = false;
                }
                Game.LogTrivial("Settings initialisation complete.");
            }
            catch (Exception e)
            {
                ErrorLogger(e, "Initialisation", "Unable to read INI file.");
            }
        }
Exemplo n.º 10
0
        public static void RunConfigCheck()
        {
            InitializationFile iniFile = new InitializationFile(@"Plugins\DashcamV.ini");

            if (!iniFile.Exists())
            {
                iniFile.Create();
                iniFile.Write("SETTINGS", "EnableFilter", false);
                iniFile.Write("SETTINGS", "EnableRemoteView", true);
                iniFile.Write("SETTINGS", "EnableDashcamOnAllViews", false);
                iniFile.Write("SETTINGS", "LayoutStyle", 0);
                iniFile.Write("SETTINGS", "MeasurementSystem", 1);
                iniFile.Write("SETTINGS", "DateFormat", 0);
                iniFile.Write("SETTINGS", "UnitName", "");
                iniFile.Write("CONTROLS", "RemoteViewToggleKey", Keys.E);
                iniFile.Write("CONTROLS", "RemoteViewToggleGamepad", ControllerButtons.LeftThumb);
            }

            Filter            = iniFile.ReadBoolean("SETTINGS", "EnableFilter");
            DashTextOnPOVOnly = iniFile.ReadBoolean("SETTINGS", "EnableDashcamOnAllViews");
            Layout            = iniFile.ReadEnum <LayoutType>("SETTINGS", "LayoutStyle", 0);
            System            = iniFile.ReadEnum <MeasurementType>("SETTINGS", "MeasurementSystem", 0);
            DateFormat        = iniFile.ReadString("SETTINGS", "DateFormat");
            Unit = iniFile.ReadString("SETTINGS", "UnitName");

            _remKeys.Key    = iniFile.ReadEnum <Keys>("CONTROLS", "RemoteViewToggleKey", Keys.E);
            _remBtns.Button = iniFile.ReadEnum <ControllerButtons>("CONTROLS", "RemoteViewToggleGamepad", ControllerButtons.LeftThumb);

            if (!iniFile.ReadBoolean("SETTINGS", "EnableRemoteView", true))
            {
                _remKeys.Key    = Keys.None;
                _remBtns.Button = ControllerButtons.None;
            }

            var sections = iniFile.GetSectionNames();

            foreach (var section in sections)
            {
                if (section.Substring(0, 4).ToLower() == "veh:")
                {
                    var vehName = section.Substring(4).ToLower();

                    var depName  = iniFile.ReadString(section, "Department");
                    var depShort = iniFile.ReadString(section, "Acronym");

                    var arrColour = iniFile.ReadString(section, "Colour").Split(',');
                    var colour    = Color.FromArgb(255, int.Parse(arrColour[0]), int.Parse(arrColour[1]), int.Parse(arrColour[2]));

                    var arrOffset = iniFile.ReadString(section, "Offset").Split(',');
                }
            }
            confVehs = temp.ToArray();

            List <String> temp_confDepName  = new List <String>();
            List <String> temp_confDepAbrv  = new List <String>();
            List <String> temp_confDepNameR = new List <String>();
            List <String> temp_confDepNameG = new List <String>();
            List <String> temp_confDepNameB = new List <String>();
            List <String> temp_confOffset   = new List <String>();

            for (int i = 0; i < confVehs.Length; i++)
            {
                temp_confDepName.Add(iniFile.ReadString("Veh:" + confVehs[i], "Department", "Generic Department"));
                temp_confDepAbrv.Add(iniFile.ReadString("Veh:" + confVehs[i], "Acronym", "GD"));
                String[] rgb = iniFile.ReadString("Veh:" + confVehs[i], "Colour", "255,255,255").Split(',');
                temp_confDepNameR.Add(rgb[0]);
                temp_confDepNameG.Add(rgb[1]);
                temp_confDepNameB.Add(rgb[2]);
                temp_confOffset.Add(iniFile.ReadString("Veh:" + confVehs[i], "Offset", "0,0.75,0.65"));
            }
            confDepName  = temp_confDepName.ToArray();
            confDepAbrv  = temp_confDepAbrv.ToArray();
            confDepNameR = temp_confDepNameR.ToArray();
            confDepNameG = temp_confDepNameG.ToArray();
            confDepNameB = temp_confDepNameB.ToArray();
            confOffset   = temp_confOffset.ToArray();
        }
Exemplo n.º 11
0
        private static void LoadValuesFromIniFile()
        {
            InitializationFile ini = new InitializationFile(INIpath);

            ini.Create();

            try
            {
                //Keyboard ini

                if (ini.DoesKeyExist("Keyboard", "CinematicKey"))
                {
                    CinematicKey = ini.ReadEnum <Keys>("Keyboard", "CinematicKey", Keys.R);
                }
                else
                {
                    ini.Write("Keyboard", "CinematicKey", "R");
                    CinematicKey = Keys.R;
                }

                if (ini.DoesKeyExist("Keyboard", "CinematicModifierKey"))
                {
                    CinematicModifierKey = ini.ReadEnum <Keys>("Keyboard", "CinematicModifierKey", Keys.ControlKey);
                }
                else
                {
                    ini.Write("Keyboard", "CinematicModifierKey", "ControlKey");
                    CinematicModifierKey = Keys.ControlKey;
                }

                // Controller ini

                if (ini.DoesKeyExist("Controller", "CinematicButton"))
                {
                    CinematicButton = ini.ReadEnum <ControllerButtons>("Controller", "CinematicButton", ControllerButtons.None);
                }
                else
                {
                    ini.Write("Controller", "CinematicButton", "None");
                    CinematicButton = ControllerButtons.None;
                }

                if (ini.DoesKeyExist("Controller", "CinematicModifierButton"))
                {
                    CinematicModifierButton = ini.ReadEnum <ControllerButtons>("Controller", "CinematicModifierButton", ControllerButtons.None);
                }
                else
                {
                    ini.Write("Controller", "CinematicModifierButton", "None");
                    CinematicModifierButton = ControllerButtons.None;
                }

                // Other ini

                if (ini.DoesKeyExist("Other", "ShowDebug"))
                {
                    ShowDebug = ini.ReadBoolean("Other", "ShowDebug", false);
                }
                else
                {
                    ini.Write("Other", "ShowDebug", "false");
                    ShowDebug = false;
                }

                Game.LogTrivial("Settings initialisation complete.");
            }
            catch (Exception e)
            {
                ErrorLogger(e, "Initialisation", "Unable to read INI file.");
            }
        }