57 lines
1.9 KiB
C#
57 lines
1.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Xml.Linq;
|
|
using System.IO;
|
|
|
|
namespace ProjectConverter.Platforms
|
|
{
|
|
public class AnxConverter : AbstractXna2AnxConverter
|
|
{
|
|
public AnxConverter()
|
|
{
|
|
// add default XNA references
|
|
assemblyReferencesToAdd.Add("Microsoft.Xna.Framework");
|
|
assemblyReferencesToAdd.Add("Microsoft.Xna.Framework.Game");
|
|
assemblyReferencesToAdd.Add("Microsoft.Xna.Framework.Input");
|
|
assemblyReferencesToAdd.Add("Microsoft.Xna.Framework.Graphics");
|
|
}
|
|
|
|
public override string Name
|
|
{
|
|
get { return "anx2xna"; }
|
|
}
|
|
|
|
protected internal override MappingDirection MappingDirection
|
|
{
|
|
get { return ProjectConverter.MappingDirection.Anx2Xna; }
|
|
}
|
|
|
|
protected override void ConvertProjectReference(XElement element)
|
|
{
|
|
XAttribute includeAttribute = element.Attribute("Include");
|
|
if (includeAttribute != null)
|
|
{
|
|
string reference = Path.GetFileNameWithoutExtension(includeAttribute.Value); // sometimes the node contains a relative path to the reference
|
|
|
|
if (NamespaceMapper.IsProjectReference(MappingDirection, reference))
|
|
{
|
|
string referenceAssembly = NamespaceMapper.GetReferencingAssemblyName(MappingDirection, reference);
|
|
if (!string.IsNullOrEmpty(referenceAssembly))
|
|
{
|
|
assemblyReferencesToAdd.Add(referenceAssembly);
|
|
}
|
|
|
|
element.Remove();
|
|
}
|
|
}
|
|
}
|
|
|
|
protected internal override string ReplaceInlineNamespaces(string input)
|
|
{
|
|
return input.Replace("ANX.Framework.Game", "Microsoft.Xna.Framework.Game");
|
|
}
|
|
}
|
|
}
|