CSGO-Projects/DamageCalculator/DamageCalculator/Settings.cs
Mathias Lui c449cd1bf9 Fix bomb prediction & Add netconport integration
* Bomb distance was previously fetched like in CBaseEntity::BodyTarget, but was switched to CBasePlayer::BodyTarget, which adds an amount of randomness to the damage, the more above or below the bomb a player is, the more randomness
* unitsDistanceMax will now keep the maximum distance the bomb calculates damage at, whereas unitsDistanceMin will have the minimum distance, generating a from-to value for damage
* Add min and max to bomb damage in the UI
* Added more summaries
* Bomb and player stroke are now thinner
* Fixed a random crash at startup when there were no NavAreas to loop over
* Added the functionality to set the current in-game point to either of the two points in the program, -netconport is needed for that and automatically added, if not there
* Added said netconport to the settings
* Added SteamUser class
* Added ability for VdfParser to find strings where quotes are escaped, since they were treated as normal quotes
* Add function to get the steam user that most recently logged into steam
2022-12-10 00:27:23 +01:00

53 lines
2.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;
namespace Damage_Calculator
{
public class Settings : ICloneable
{
[XmlIgnore]
public static readonly string SettingsFileName = "settings.xml";
public Settings() { /* Do nothing */ }
// VISUAL SETTINGS
public REghZyFramework.Themes.ThemesController.ThemeTypes Theme { get; set; } = REghZyFramework.Themes.ThemesController.ThemeTypes.Dark;
public List<SteamShared.Models.MapCustomOverwriteMapping> MapCoordinateOffsets { get; set; } = new();
public bool ShowBombSites { get; set; } = true;
public bool ShowSpawnAreas { get; set; } = true;
public bool ShowStandardSpawns { get; set; } = true;
public bool Show2v2Spawns { get; set; } = true;
public bool ShowHostageSpawns { get; set; } = true;
public bool AllowNonPrioritySpawns { get; set; } = true;
public System.Windows.Media.Color NavLowColour { get; set; } = System.Windows.Media.Color.FromArgb(255, 20, 20, 20);
public System.Windows.Media.Color NavHighColour { get; set; } = System.Windows.Media.Color.FromArgb(140, 255, 255, 255);
public System.Windows.Media.Color NavHoverColour { get; set; } = System.Windows.Media.Color.FromArgb(140, 255, 165, 0);
public SteamShared.NavDisplayModes NavDisplayMode { get; set; } = SteamShared.NavDisplayModes.None;
public double ShowNavAreasAbove { get; set; } = 0;
public double ShowNavAreasBelow { get; set; } = 1;
// MAP FILTERS
public bool ShowDefusalMaps { get; set; } = true;
public bool ShowHostageMaps { get; set; } = true;
public bool ShowArmsRaceMaps { get; set; } = true;
public bool ShowDangerZoneMaps { get; set; } = true;
public bool ShowMapsMissingBsp { get; set; } = true;
public bool ShowMapsMissingNav { get; set; } = true;
public bool ShowMapsMissingAin { get; set; } = true;
// OTHER
public ushort NetConPort { get; set; } = 2121;
public object Clone()
{
return this.MemberwiseClone();
}
}
}