using Microsoft.Xna.Framework.Graphics;
using StardewModdingAPI;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace StardustCore.UIUtilities
{
public class Texture2DExtended
{
public string Name;
public Texture2D texture;
public string path;
IModHelper helper;
public string modID;
///
/// Empty/null constructor.
///
public Texture2DExtended()
{
this.Name = "";
this.texture = null;
this.path = "";
this.helper = null;
this.modID = "";
}
///
/// Constructor.
///
/// The relative path to file on disk. See StardustCore.Utilities.getRelativePath(modname,path);
public Texture2DExtended(IModHelper helper,IManifest manifest,string path)
{
this.Name = Path.GetFileNameWithoutExtension(path);
this.path = path;
this.texture = helper.Content.Load(path);
this.helper = helper;
this.modID = manifest.UniqueID;
}
public Texture2DExtended(IModHelper helper, string modID, string path)
{
this.Name = Path.GetFileNameWithoutExtension(path);
this.path = path;
this.texture = helper.Content.Load(path);
this.helper = helper;
this.modID = modID;
}
public Texture2DExtended Copy()
{
return new Texture2DExtended(this.helper,this.modID,this.path);
}
public IModHelper getHelper()
{
return this.helper;
}
///
/// Returns the actual 2D texture held by this wrapper class.
///
///
public Texture2D getTexture()
{
return this.texture;
}
public void setTexure(Texture2D text)
{
this.texture = text;
}
}
}