Add a Utility class and update command interface.
This commit is contained in:
@@ -149,10 +149,10 @@ namespace OpenRA.Mods.TS.UtilityCommands
|
||||
};
|
||||
|
||||
[Desc("FILENAME", "Convert a Tiberian Sun map to the OpenRA format.")]
|
||||
void IUtilityCommand.Run(ModData modData, string[] args)
|
||||
void IUtilityCommand.Run(Utility utility, string[] args)
|
||||
{
|
||||
// HACK: The engine code assumes that Game.modData is set.
|
||||
Game.ModData = modData;
|
||||
Game.ModData = utility.ModData;
|
||||
|
||||
var filename = args[1];
|
||||
var file = new IniFile(File.Open(args[1], FileMode.Open));
|
||||
@@ -163,12 +163,12 @@ namespace OpenRA.Mods.TS.UtilityCommands
|
||||
var iniBounds = mapSection.GetValue("LocalSize", "0, 0, 0, 0").Split(',').Select(int.Parse).ToArray();
|
||||
var size = new Size(iniSize[2], 2 * iniSize[3]);
|
||||
|
||||
var map = new Map(Game.ModData, modData.DefaultTileSets[tileset], size.Width, size.Height)
|
||||
var map = new Map(Game.ModData, utility.ModData.DefaultTileSets[tileset], size.Width, size.Height)
|
||||
{
|
||||
Title = basic.GetValue("Name", Path.GetFileNameWithoutExtension(filename)),
|
||||
Author = "Westwood Studios",
|
||||
Bounds = new Rectangle(iniBounds[0], iniBounds[1], iniBounds[2], 2 * iniBounds[3] + 2 * iniBounds[1]),
|
||||
RequiresMod = modData.Manifest.Mod.Id
|
||||
RequiresMod = utility.ModData.Manifest.Mod.Id
|
||||
};
|
||||
|
||||
var fullSize = new int2(iniSize[2], iniSize[3]);
|
||||
|
||||
@@ -20,21 +20,21 @@ namespace OpenRA.Mods.TS.UtilityCommands
|
||||
{
|
||||
class LegacyRulesImporter : IUtilityCommand
|
||||
{
|
||||
public bool ValidateArguments(string[] args)
|
||||
bool IUtilityCommand.ValidateArguments(string[] args)
|
||||
{
|
||||
return args.Length >= 3;
|
||||
}
|
||||
|
||||
public string Name { get { return "--rules-import"; } }
|
||||
string IUtilityCommand.Name { get { return "--rules-import"; } }
|
||||
|
||||
IniFile rulesIni;
|
||||
IniFile artIni;
|
||||
|
||||
[Desc("RULES.INI", "ART.INI", "Convert ART.INI and RULES.INI to the OpenRA rules definition format.")]
|
||||
public void Run(ModData modData, string[] args)
|
||||
void IUtilityCommand.Run(Utility utility, string[] args)
|
||||
{
|
||||
// HACK: The engine code assumes that Game.modData is set.
|
||||
Game.ModData = modData;
|
||||
Game.ModData = utility.ModData;
|
||||
|
||||
rulesIni = new IniFile(File.Open(args[1], FileMode.Open));
|
||||
artIni = new IniFile(File.Open(args[2], FileMode.Open));
|
||||
|
||||
@@ -19,21 +19,21 @@ namespace OpenRA.Mods.TS.UtilityCommands
|
||||
{
|
||||
class ImportLegacySequenceCommand : IUtilityCommand
|
||||
{
|
||||
public bool ValidateArguments(string[] args)
|
||||
bool IUtilityCommand.ValidateArguments(string[] args)
|
||||
{
|
||||
return args.Length >= 2;
|
||||
}
|
||||
|
||||
public string Name { get { return "--sequence-import"; } }
|
||||
string IUtilityCommand.Name { get { return "--sequence-import"; } }
|
||||
|
||||
IniFile file;
|
||||
MapGrid grid;
|
||||
|
||||
[Desc("FILENAME", "Convert ART.INI to the OpenRA sequence definition format.")]
|
||||
public void Run(ModData modData, string[] args)
|
||||
void IUtilityCommand.Run(Utility utility, string[] args)
|
||||
{
|
||||
// HACK: The engine code assumes that Game.modData is set.
|
||||
Game.ModData = modData;
|
||||
Game.ModData = utility.ModData;
|
||||
|
||||
grid = Game.ModData.Manifest.Get<MapGrid>();
|
||||
|
||||
|
||||
@@ -20,22 +20,22 @@ namespace OpenRA.Mods.TS.UtilityCommands
|
||||
{
|
||||
class ImportLegacyTilesetCommand : IUtilityCommand
|
||||
{
|
||||
public string Name { get { return "--tileset-import"; } }
|
||||
string IUtilityCommand.Name { get { return "--tileset-import"; } }
|
||||
|
||||
public bool ValidateArguments(string[] args)
|
||||
bool IUtilityCommand.ValidateArguments(string[] args)
|
||||
{
|
||||
return args.Length >= 3;
|
||||
}
|
||||
|
||||
[Desc("FILENAME", "TEMPLATEEXTENSION", "[TILESETNAME]", "Convert a legacy tileset to the OpenRA format.")]
|
||||
public void Run(ModData modData, string[] args)
|
||||
void IUtilityCommand.Run(Utility utility, string[] args)
|
||||
{
|
||||
// HACK: The engine code assumes that Game.modData is set.
|
||||
Game.ModData = modData;
|
||||
var modData = Game.ModData = utility.ModData;
|
||||
|
||||
var file = new IniFile(File.Open(args[1], FileMode.Open));
|
||||
var extension = args[2];
|
||||
var tileSize = modData.Manifest.Get<MapGrid>().TileSize;
|
||||
var tileSize = utility.ModData.Manifest.Get<MapGrid>().TileSize;
|
||||
|
||||
var templateIndex = 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user