Added support for Dark Messiah engine and game. (no bug, r=me).

The development of this feature would not be possible without the support of the following people from the game's community:
Dylan Riggs, Carl Pettengill, Ed Moreland, and Christian.
This commit is contained in:
Scott Ehlert
2009-02-18 02:19:22 -06:00
parent 15d64b8486
commit bd9fab6cf5
36 changed files with 1523 additions and 74 deletions
+4
View File
@@ -175,6 +175,10 @@ namespace builder
{
continue;
}
if ((libs[i].platform & cfg.Platform) != cfg.Platform)
{
continue;
}
if (!BuildLibrary(pkg, libs[i]))
{
throw new System.Exception("Failed to compile library: " + libs[i].binary_name);
+1
View File
@@ -4,6 +4,7 @@ using System.Text;
namespace builder
{
[Flags]
public enum BasePlatform
{
Platform_Windows,
+11 -8
View File
@@ -12,6 +12,7 @@ namespace builder
{
BuildMode_Simple,
BuildMode_OldMetamod,
BuildMode_DarkMessiah,
BuildMode_Episode1,
BuildMode_Episode2,
BuildMode_Left4Dead
@@ -25,15 +26,17 @@ namespace builder
is_executable = false;
release_mode = ReleaseMode.ReleaseMode_Release;
build_mode = BuildMode.BuildMode_Simple;
platform = BasePlatform.Platform_Linux | BasePlatform.Platform_Windows;
}
public string binary_name; /* Name of binary */
public string source_path; /* Local path to library build scripts */
public ReleaseMode release_mode; /* Release mode */
public BuildMode build_mode; /* Build mode */
public string package_path; /* Final relative path */
public bool has_platform_ext; /* Add extra platform extension? */
public string vcproj_name; /* Project file, NULL for standard */
public bool is_executable; /* If this is an EXE instead of a DLL */
public string binary_name; /* Name of binary */
public string source_path; /* Local path to library build scripts */
public ReleaseMode release_mode; /* Release mode */
public BuildMode build_mode; /* Build mode */
public string package_path; /* Final relative path */
public bool has_platform_ext; /* Add extra platform extension? */
public string vcproj_name; /* Project file, NULL for standard */
public bool is_executable; /* If this is an EXE instead of a DLL */
public BasePlatform platform; /* Platforms for which the binary should be built */
};
public class Plugin
+28
View File
@@ -66,6 +66,7 @@ namespace builder
folders.Add("addons/sourcemod/scripting/basebans");
folders.Add("addons/sourcemod/scripting/funcommands");
folders.Add("addons/sourcemod/extensions/auto.1.ep1");
folders.Add("addons/sourcemod/extensions/auto.2.darkm");
//folders.Add("addons/sourcemod/extensions/auto.2.ep1");
folders.Add("addons/sourcemod/extensions/auto.2.ep2");
folders.Add("addons/sourcemod/extensions/auto.2.l4d");
@@ -159,6 +160,15 @@ namespace builder
lib.build_mode = BuildMode.BuildMode_OldMetamod;
libraries.Add(lib);
lib = new Library();
lib.package_path = "addons/sourcemod/bin";
lib.source_path = "core";
lib.binary_name = "sourcemod.2.darkm";
lib.vcproj_name = "sourcemod_mm";
lib.build_mode = BuildMode.BuildMode_DarkMessiah;
lib.platform = BasePlatform.Platform_Windows;
libraries.Add(lib);
lib = new Library();
lib.package_path = "addons/sourcemod/bin";
lib.source_path = "core";
@@ -204,6 +214,15 @@ namespace builder
lib.build_mode = BuildMode.BuildMode_OldMetamod;
libraries.Add(lib);
lib = new Library();
lib.package_path = "addons/sourcemod/extensions/auto.2.darkm";
lib.source_path = "extensions/bintools";
lib.binary_name = "bintools.ext";
lib.vcproj_name = "bintools";
lib.build_mode = BuildMode.BuildMode_DarkMessiah;
lib.platform = BasePlatform.Platform_Windows;
libraries.Add(lib);
lib = new Library();
lib.package_path = "addons/sourcemod/extensions/auto.2.ep2";
lib.source_path = "extensions/bintools";
@@ -235,6 +254,15 @@ namespace builder
lib.build_mode = BuildMode.BuildMode_OldMetamod;
libraries.Add(lib);
lib = new Library();
lib.package_path = "addons/sourcemod/extensions/auto.2.darkm";
lib.source_path = "extensions/sdktools";
lib.binary_name = "sdktools.ext";
lib.vcproj_name = "sdktools";
lib.build_mode = BuildMode.BuildMode_DarkMessiah;
lib.platform = BasePlatform.Platform_Windows;
libraries.Add(lib);
lib = new Library();
lib.package_path = "addons/sourcemod/extensions/auto.2.ep2";
lib.source_path = "extensions/sdktools";
+4
View File
@@ -38,6 +38,10 @@ namespace builder
config_name = "Debug";
}
if (lib.build_mode == BuildMode.BuildMode_DarkMessiah)
{
config_name = config_name + " - Dark Messiah";
}
if (lib.build_mode == BuildMode.BuildMode_Episode1)
{
config_name = config_name + " - Episode 1";