diff --git a/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFG.cs b/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFG.cs
new file mode 100644
index 0000000..f944d6c
--- /dev/null
+++ b/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFG.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace SteamShared.SourceConfig
+{
+ public class SourceCFG
+ {
+ ///
+ /// Gets or sets a list of concommands or convars in this CFG-file.
+ ///
+ public List Commands { get; set; }
+ }
+}
diff --git a/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommand.cs b/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommand.cs
new file mode 100644
index 0000000..54d9993
--- /dev/null
+++ b/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommand.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace SteamShared.SourceConfig
+{
+ public class SourceCFGCommand : SourceCFGCommandBase
+ {
+ public string? CommandName { get; set; }
+
+ ///
+ /// Gets or sets the values of this command.
+ /// This can be a value or another command, for example when using the 'alias' command.
+ ///
+ public List CommandValues { get; set; }
+ }
+}
diff --git a/SteamShared/SteamShared/SteamShared/SourceCFG/SourceCFG.cs b/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommandBase.cs
similarity index 65%
rename from SteamShared/SteamShared/SteamShared/SourceCFG/SourceCFG.cs
rename to SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommandBase.cs
index 1d2bbb9..360a22b 100644
--- a/SteamShared/SteamShared/SteamShared/SourceCFG/SourceCFG.cs
+++ b/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommandBase.cs
@@ -4,9 +4,9 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace SteamShared
+namespace SteamShared.SourceConfig
{
- public class SourceCFG
+ public class SourceCFGCommandBase
{
}
}
diff --git a/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommandValue.cs b/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommandValue.cs
new file mode 100644
index 0000000..5cdc730
--- /dev/null
+++ b/SteamShared/SteamShared/SteamShared/SourceConfig/SourceCFGCommandValue.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace SteamShared.SourceConfig
+{
+ public class SourceCFGCommandValue : SourceCFGCommandBase
+ {
+ public string? Value { get; set; }
+ }
+}
diff --git a/SteamShared/SteamShared/SteamShared/SourceConfig/test_source.cfg b/SteamShared/SteamShared/SteamShared/SourceConfig/test_source.cfg
new file mode 100644
index 0000000..c87b542
--- /dev/null
+++ b/SteamShared/SteamShared/SteamShared/SourceConfig/test_source.cfg
@@ -0,0 +1,7 @@
+test_cvar 5
+test_cvar2 6;test_cvar3 "7
+test_command
+// some comment
+test_command2; test_command3 // another comment
+test_cvar "test_cvar4 8; test_cvar5 9";test_command
+//test comment
\ No newline at end of file