Skip to content

Commit 5b83df7

Browse files
committed
Add compiler configurable options
1 parent 300dd32 commit 5b83df7

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

src/Configuration/OxideConfig.cs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,25 @@ public class CommandOptions
2828
public List<string> ChatPrefix { get; set; } = new List<string>() { "/" };
2929
}
3030

31+
public class CompilerOptions
32+
{
33+
/// <summary>
34+
/// Shuts the compiler down when no more jobs are in queue
35+
/// </summary>
36+
[JsonProperty(PropertyName = "Shutdown on idle")]
37+
public bool IdleShutdown { get; set; } = true;
38+
39+
/// <summary>
40+
/// Seconds after last job before considered idle
41+
/// </summary>
42+
[JsonProperty(PropertyName = "Seconds before idle")]
43+
public int IdleTimeout { get; set; } = 60;
44+
45+
/// <summary>
46+
/// Additional preprocessor directives to add during plugin compilation
47+
/// </summary>
48+
[JsonProperty(PropertyName = "Preprocessor directives")]
49+
public List<string> PreprocessorDirectives { get; set; } = new List<string>();
3150
}
3251

3352
[JsonObject]
@@ -103,6 +122,12 @@ public class OxideRcon
103122
[JsonProperty(PropertyName = "Commands")]
104123
public CommandOptions Commands { get; set; }
105124

125+
/// <summary>
126+
/// Gets or sets information regarding the Roslyn compiler
127+
/// </summary>
128+
[JsonProperty(PropertyName = "Plugin Compiler")]
129+
public CompilerOptions Compiler { get; set; }
130+
106131
/// <summary>
107132
/// Gets or sets information regarding the Oxide console
108133
/// </summary>

0 commit comments

Comments
 (0)