Change texture load for ship log

This commit is contained in:
Nick J. Connors 2022-02-23 02:44:02 -05:00
parent d2a223cefb
commit 8b253ed6a0
4 changed files with 21 additions and 21 deletions

View File

@ -15,7 +15,7 @@ namespace NewHorizons.Builder.ShipLog
public static class EntryLocationBuilder
{
private static readonly List<ShipLogEntryLocation> _locationsToInitialize = new List<ShipLogEntryLocation>();
public static void Make(GameObject go, Sector sector, PropModule.EntryLocationInfo info, IModHelper mod)
public static void Make(GameObject go, Sector sector, PropModule.EntryLocationInfo info, IModBehaviour mod)
{
GameObject entryLocationGameObject = new GameObject("Entry Location (" + info.id + ")");
entryLocationGameObject.SetActive(false);

View File

@ -63,7 +63,7 @@ namespace NewHorizons.Builder.ShipLog
return ShipLogHandler.GetNameFromAstroID(id) ?? id;
}
private static GameObject CreateImage(GameObject nodeGO, IModAssets assets, Texture2D texture, string name, int layer)
private static GameObject CreateImage(GameObject nodeGO, Texture2D texture, string name, int layer)
{
GameObject newImageGO = new GameObject(name);
newImageGO.layer = layer;
@ -113,14 +113,14 @@ namespace NewHorizons.Builder.ShipLog
string imagePath = body.Config.ShipLog?.mapMode?.revealedSprite;
string outlinePath = body.Config.ShipLog?.mapMode?.outlineSprite;
if (imagePath != null) image = body.Mod.Assets.GetTexture(imagePath);
if (imagePath != null) image = ImageUtilities.GetTexture(body.Mod, imagePath);
else image = AutoGenerateMapModePicture(body);
if (outlinePath != null) outline = body.Mod.Assets.GetTexture(outlinePath);
if (outlinePath != null) outline = ImageUtilities.GetTexture(body.Mod, outlinePath);
else outline = ImageUtilities.MakeOutline(image, Color.white, 10);
astroObject._imageObj = CreateImage(gameObject, body.Mod.Assets, image, body.Config.Name + " Revealed", layer);
astroObject._outlineObj = CreateImage(gameObject, body.Mod.Assets, outline, body.Config.Name + " Outline", layer);
astroObject._imageObj = CreateImage(gameObject, image, body.Config.Name + " Revealed", layer);
astroObject._outlineObj = CreateImage(gameObject, outline, body.Config.Name + " Outline", layer);
if (ShipLogHandler.BodyHasEntries(body))
{
Image revealedImage = astroObject._imageObj.GetComponent<Image>();
@ -157,14 +157,14 @@ namespace NewHorizons.Builder.ShipLog
string imagePath = info.revealedSprite;
string outlinePath = info.outlineSprite;
if (imagePath != null) image = body.Mod.Assets.GetTexture(imagePath);
if (imagePath != null) image = ImageUtilities.GetTexture(body.Mod, imagePath);
else image = AutoGenerateMapModePicture(body);
if (outlinePath != null) outline = body.Mod.Assets.GetTexture(outlinePath);
if (outlinePath != null) outline = ImageUtilities.GetTexture(body.Mod, outlinePath);
else outline = ImageUtilities.MakeOutline(image, Color.white, 10);
Image revealedImage = CreateImage(detailGameObject, body.Mod.Assets, image, "Detail Revealed", parent.gameObject.layer).GetComponent<Image>();
Image outlineImage = CreateImage(detailGameObject, body.Mod.Assets, outline, "Detail Outline", parent.gameObject.layer).GetComponent<Image>();
Image revealedImage = CreateImage(detailGameObject, image, "Detail Revealed", parent.gameObject.layer).GetComponent<Image>();
Image outlineImage = CreateImage(detailGameObject, outline, "Detail Outline", parent.gameObject.layer).GetComponent<Image>();
ShipLogDetail detail = detailGameObject.AddComponent<ShipLogDetail>();
detail.Init(info, revealedImage, outlineImage, greyScaleMaterial);
@ -500,9 +500,9 @@ namespace NewHorizons.Builder.ShipLog
{
Texture2D texture;
if(body.Config.Star != null) texture = Main.Instance.ModHelper.Assets.GetTexture("AssetBundle/DefaultMapModeStar.png");
else if(body.Config.Atmosphere != null) texture = Main.Instance.ModHelper.Assets.GetTexture("AssetBundle/DefaultMapModNoAtmo.png");
else texture = Main.Instance.ModHelper.Assets.GetTexture("AssetBundle/DefaultMapModePlanet.png");
if(body.Config.Star != null) texture = ImageUtilities.GetTexture(Main.Instance, "AssetBundle/DefaultMapModeStar.png");
else if(body.Config.Atmosphere != null) texture = ImageUtilities.GetTexture(Main.Instance, "AssetBundle/DefaultMapModNoAtmo.png");
else texture = ImageUtilities.GetTexture(Main.Instance, "AssetBundle/DefaultMapModePlanet.png");
var color = GetDominantPlanetColor(body);
var darkColor = new Color(color.r / 3f, color.g / 3f, color.b / 3f);
@ -529,7 +529,7 @@ namespace NewHorizons.Builder.ShipLog
{
try
{
var texture = body.Mod.Assets.GetTexture(body.Config.HeightMap.TextureMap);
var texture = ImageUtilities.GetTexture(body.Mod, body.Config.HeightMap.TextureMap);
var landColor = ImageUtilities.GetAverageColor(texture);
if (landColor != null) return landColor;
}

View File

@ -14,7 +14,7 @@ namespace NewHorizons.Builder.ShipLog
{
public static class RevealBuilder
{
public static void Make(GameObject go, Sector sector, PropModule.RevealInfo info, IModHelper mod)
public static void Make(GameObject go, Sector sector, PropModule.RevealInfo info, IModBehaviour mod)
{
GameObject newRevealGO = MakeGameObject(go, sector, info, mod);
switch (info.revealOn.ToLower())
@ -44,7 +44,7 @@ namespace NewHorizons.Builder.ShipLog
return newShape;
}
private static GameObject MakeGameObject(GameObject go, Sector sector, PropModule.RevealInfo info, IModHelper mod)
private static GameObject MakeGameObject(GameObject go, Sector sector, PropModule.RevealInfo info, IModBehaviour mod)
{
GameObject revealTriggerVolume = new GameObject("Reveal Volume (" + info.revealOn + ")");
revealTriggerVolume.SetActive(false);
@ -53,7 +53,7 @@ namespace NewHorizons.Builder.ShipLog
return revealTriggerVolume;
}
private static void MakeTrigger(GameObject go, Sector sector, PropModule.RevealInfo info, IModHelper mod)
private static void MakeTrigger(GameObject go, Sector sector, PropModule.RevealInfo info, IModBehaviour mod)
{
SphereShape newShape = MakeShape(go, info, Shape.CollisionMode.Volume);
OWTriggerVolume newVolume = go.AddComponent<OWTriggerVolume>();
@ -62,7 +62,7 @@ namespace NewHorizons.Builder.ShipLog
volume._factIDs = info.reveals;
}
private static void MakeObservable(GameObject go, Sector sector, PropModule.RevealInfo info, IModHelper mod)
private static void MakeObservable(GameObject go, Sector sector, PropModule.RevealInfo info, IModBehaviour mod)
{
go.layer = LayerMask.NameToLayer("Interactible");
SphereCollider newSphere = go.AddComponent<SphereCollider>();
@ -76,7 +76,7 @@ namespace NewHorizons.Builder.ShipLog
newObserveTrigger._disableColliderOnRevealFact = true;
}
private static void MakeSnapshot(GameObject go, Sector sector, PropModule.RevealInfo info, IModHelper mod)
private static void MakeSnapshot(GameObject go, Sector sector, PropModule.RevealInfo info, IModBehaviour mod)
{
SphereShape newShape = MakeShape(go, info, Shape.CollisionMode.Manual);
ShapeVisibilityTracker newTracker = go.AddComponent<ShapeVisibilityTracker>();

View File

@ -58,7 +58,7 @@ namespace NewHorizons.Builder.ShipLog
public static void AddBodyToShipLog(ShipLogManager manager, NewHorizonsBody body)
{
string systemName = body.Config.StarSystem;
XElement astroBodyFile = XElement.Load(body.Mod.Manifest.ModFolderPath + "/" + body.Config.ShipLog.xmlFile);
XElement astroBodyFile = XElement.Load(body.Mod.ModHelper.Manifest.ModFolderPath + "/" + body.Config.ShipLog.xmlFile);
XElement astroBodyId = astroBodyFile.Element("ID");
if (astroBodyId == null)
{
@ -208,7 +208,7 @@ namespace NewHorizons.Builder.ShipLog
string relativePath = body.Config.ShipLog.spriteFolder + "/" + entryId + ".png";
try
{
Texture2D newTexture = body.Mod.Assets.GetTexture(relativePath);
Texture2D newTexture = ImageUtilities.GetTexture(body.Mod, relativePath);
Rect rect = new Rect(0, 0, newTexture.width, newTexture.height);
Vector2 pivot = new Vector2(newTexture.width / 2, newTexture.height / 2);
return Sprite.Create(newTexture, rect, pivot);