140 lines
3.3 KiB
C#
140 lines
3.3 KiB
C#
using System;
|
|
using System.ComponentModel;
|
|
using ActiproSoftware.Windows.Controls.Grids.PropertyEditors;
|
|
using Plume.Editors.WPF.Editors;
|
|
using Plume.Interfaces.Settings;
|
|
using Plume.WPF.Mvvm;
|
|
|
|
namespace JD.GameLauncher
|
|
{
|
|
public class EngineSettings : BindableBase, ISettings
|
|
{
|
|
[Description("Path of Engine (Default is data/engine)")]
|
|
[Editor(typeof(FilePathEditor), typeof(PropertyEditor))]
|
|
[FilePathEditor.Parameters(Filter = "UA engine (ua_engine.exe)|ua_engine.exe")]
|
|
public string EnginePath { get; set; }
|
|
|
|
[Description("Language of the game")]
|
|
public Language? Language { get; set; } = null;
|
|
|
|
[Description("To launch engine in offline mode")]
|
|
public bool NoOnline { get; set; } = false;
|
|
|
|
[Description("To launch engine without sound")]
|
|
public bool NoSound { get; set; } = false;
|
|
|
|
[Description("Ignore Assert messages")]
|
|
public bool NoAsserts { get; set; } = true;
|
|
|
|
public bool NoTrc { get; set; } = false;
|
|
|
|
[Description("Launch game in editor mode")]
|
|
public bool Editor { get; set; } = true;
|
|
|
|
[Description(".isc file to launch")]
|
|
[Editor(typeof(FilePathEditor), typeof(PropertyEditor))]
|
|
[FilePathEditor.Parameters(Filter = "isc files (*.isc)|*.isc")]
|
|
public string Map { get; set; }
|
|
|
|
#region Advanced
|
|
|
|
[Description("Additional arguments")]
|
|
[Category("Advanced")]
|
|
public string AdditionalArguments { get; set; }
|
|
|
|
#endregion
|
|
|
|
#region Log
|
|
|
|
[Category("Log")]
|
|
public bool? NoWarnings { get; set; }
|
|
|
|
[Category("Log")]
|
|
public string LogFilePath { get; set; }
|
|
|
|
#endregion
|
|
|
|
#region Online
|
|
|
|
[Category("Online"), DefaultValue("default")]
|
|
public string OnlineServer { get; set; } = "default";
|
|
|
|
[Category("Online")]
|
|
public WdfRoom? WdfRoom { get; set; } = null;
|
|
|
|
#endregion
|
|
|
|
#region Video Settings
|
|
|
|
[Category("Video Settings"), DefaultValue(GameLauncher.Resolution.HD1080p)]
|
|
public Resolution? Resolution { get; set; } = GameLauncher.Resolution.HD1080p;
|
|
|
|
[Category("Video Settings")]
|
|
public bool NoLogos { get; set; }
|
|
|
|
[Category("Video Settings")]
|
|
public bool NoSafeFrame { get; set; }
|
|
|
|
#endregion
|
|
}
|
|
|
|
public enum WdfRoom
|
|
{
|
|
None,
|
|
OnlyBoss,
|
|
OnlySpotlight,
|
|
OnlyTournament
|
|
}
|
|
|
|
public enum Language
|
|
{
|
|
English,
|
|
French,
|
|
Japanese,
|
|
German,
|
|
Spanish,
|
|
Italian,
|
|
Korean,
|
|
TraditionalChinese,
|
|
Portuguese,
|
|
SimpilifiedChinese,
|
|
Polish,
|
|
Russian,
|
|
Dutch,
|
|
Danish,
|
|
Norwegian,
|
|
Swedish,
|
|
Finnish,
|
|
Arabic,
|
|
Turkish,
|
|
PortigueseBr,
|
|
SpanishMa,
|
|
FrenchCa,
|
|
Unknown,
|
|
DevReference
|
|
}
|
|
|
|
public enum Resolution
|
|
{
|
|
Default,
|
|
Wide480p,
|
|
HD720p,
|
|
HD1080p
|
|
}
|
|
|
|
[Flags]
|
|
public enum Platform
|
|
{
|
|
win32 = 1 << 1,
|
|
Cafe = 1 << 2,
|
|
wii = 1 << 3,
|
|
x360 = 1 << 4,
|
|
PS3 = 1 << 5,
|
|
Durango = 1 << 6,
|
|
Orbis = 1 << 7,
|
|
PC = 1 << 8,
|
|
NX = 1 << 9,
|
|
win64 = 1 << 10,
|
|
}
|
|
|
|
}
|