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); }
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"); }
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(); }
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(); }
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()); } } } }); }
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); }
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); } }
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(); }
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."); } }
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(); }
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."); } }