77 lines
No EOL
2.2 KiB
C#
77 lines
No EOL
2.2 KiB
C#
using System;
|
|
using System.ComponentModel;
|
|
using System.Linq;
|
|
using JD.Asset.Types.Map;
|
|
using JD.LogService;
|
|
using Packager.Parameters;
|
|
using ILogger = Plume.Core.Logging.ILogger;
|
|
|
|
namespace Packager.Tasks
|
|
{
|
|
[DisplayName(@"Generate Map Cover Images")]
|
|
public class GenerateCoverImagesTask : Task
|
|
{
|
|
[Input("Map Specific Dependency File List", IOCardinality.Multi, IOType.String)]
|
|
public ReferenceList MapNames { get; set; }
|
|
|
|
public GenerateCoverImagesTask()
|
|
{
|
|
MapNames = new ReferenceList();
|
|
}
|
|
|
|
protected override void StartInternal(BuildConfiguration profile, cookerWrapper cooker)
|
|
{
|
|
foreach (var mapName in MapNames.Where(reference => !string.IsNullOrEmpty(reference)))
|
|
{
|
|
var map = Map.FromName(mapName);
|
|
LogMessage(false, $"Generating cover images for map {mapName}");
|
|
|
|
foreach (var coverImage in map.CoverImages)
|
|
{
|
|
coverImage.Generate(new PlumeLogger(Logger), true);
|
|
}
|
|
}
|
|
}
|
|
|
|
private class PlumeLogger : ILogger
|
|
{
|
|
private readonly JD.LogService.ILogger _logger;
|
|
|
|
public PlumeLogger(JD.LogService.ILogger logger)
|
|
{
|
|
_logger = logger;
|
|
}
|
|
|
|
public void Debug(string message, Exception exception = null)
|
|
{
|
|
_logger.LogMessage(message);
|
|
}
|
|
|
|
public void Error(string message, Exception exception = null)
|
|
{
|
|
_logger.LogError(message);
|
|
}
|
|
|
|
public void Fatal(string message, Exception exception = null)
|
|
{
|
|
_logger.LogError(message);
|
|
}
|
|
|
|
public void Info(string message, Exception exception = null)
|
|
{
|
|
_logger.LogMessage(message);
|
|
}
|
|
|
|
public void Trace(string message, Exception exception = null)
|
|
{
|
|
}
|
|
|
|
public void Warn(string message, Exception exception = null)
|
|
{
|
|
_logger.LogWarning(message);
|
|
}
|
|
|
|
public string Name { get; }
|
|
}
|
|
}
|
|
} |