add offsets dictionary

This commit is contained in:
Jose Luis Montañes Ojados
2026-01-06 15:29:51 +01:00
parent 9153fd763e
commit 7e598d765a
6 changed files with 42 additions and 19 deletions

View File

@@ -58,7 +58,10 @@ namespace StrategicMapPlus
if (textureLookup.ContainsKey(texName)) if (textureLookup.ContainsKey(texName))
{ {
Texture2D tex = textureLookup[texName]; Texture2D tex = textureLookup[texName];
Texture2D roundTex = MakeTextureTransparent(tex); Textures.IconOffset offset = null;
if (Textures.IconsOffsets.ContainsKey(logicKey)) offset = Textures.IconsOffsets[logicKey];
Texture2D roundTex = MakeTextureTransparent(tex, offset);
Sprite s = Sprite.Create(roundTex, new Rect(0, 0, roundTex.width, roundTex.height), new Vector2(0.5f, 0.5f)); Sprite s = Sprite.Create(roundTex, new Rect(0, 0, roundTex.width, roundTex.height), new Vector2(0.5f, 0.5f));
SpriteCache[logicKey] = s; SpriteCache[logicKey] = s;
loadedCount++; loadedCount++;
@@ -177,7 +180,7 @@ namespace StrategicMapPlus
} }
// Función auxiliar que podrías llamar desde tu parche de Harmony // Función auxiliar que podrías llamar desde tu parche de Harmony
public static Texture2D MakeTextureTransparent(Texture originalTexture) public static Texture2D MakeTextureTransparent(Texture originalTexture, Textures.IconOffset offset = null)
{ {
if (originalTexture == null) return null; if (originalTexture == null) return null;
@@ -207,6 +210,12 @@ namespace StrategicMapPlus
Vector2 center = new Vector2(width / 2f, height / 2f); Vector2 center = new Vector2(width / 2f, height / 2f);
float radius = (Mathf.Min(width, height) / 2f); // Radio máximo float radius = (Mathf.Min(width, height) / 2f); // Radio máximo
if (offset != null)
{
center += new Vector2(offset.x, offset.y);
if (offset.size > 0) radius = offset.size / 2f;
}
for (int i = 0; i < pixels.Length; i++) for (int i = 0; i < pixels.Length; i++)
{ {
// --- Opción A: Máscara Redonda (Matemática) --- // --- Opción A: Máscara Redonda (Matemática) ---

View File

@@ -14,8 +14,8 @@ namespace StrategicMapPlus
public static Dictionary<string, string> TextureMap = new Dictionary<string, string>() public static Dictionary<string, string> TextureMap = new Dictionary<string, string>()
{ {
// --- CONSOLIDAR PODER (Fuerza suele ser 0) --- // --- CONSOLIDAR PODER (Fuerza suele ser 0) ---
{ "ConsolidatePower_0", "T_tkn_Order_ConsolidatePower" }, {"ConsolidatePower_0", "T_tkn_Order_ConsolidatePower" },
{ "ConsolidatePower_0_Star", "T_tkn_Order_ConsolidatePowerStar" }, {"ConsolidatePower_0_Star", "T_tkn_Order_ConsolidatePowerStar" },
{"ConsolidatePower_122_Star", "T_tkn_Order_ConsolidatePowerStar" }, {"ConsolidatePower_122_Star", "T_tkn_Order_ConsolidatePowerStar" },
{"ConsolidatePower_121", "T_tkn_Order_ConsolidatePower"}, {"ConsolidatePower_121", "T_tkn_Order_ConsolidatePower"},
@@ -39,5 +39,19 @@ namespace StrategicMapPlus
}; };
// ----------------------------------------------------------------------- // -----------------------------------------------------------------------
static public Dictionary<string, IconOffset> IconsOffsets = new Dictionary<string, IconOffset>() { };
public class IconOffset
{
public float x; public float y;
public float size;
public IconOffset(float x, float y, float size)
{
this.x = x;
this.y = y;
this.size = size;
}
}
} }
} }

View File

@@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("StrategicView-Plus")] [assembly: System.Reflection.AssemblyCompanyAttribute("StrategicView-Plus")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+132b1baedc3e76f674b00252e91ab05982ba6455")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+9153fd763e579199d54cab0a432ff9090b4c64e9")]
[assembly: System.Reflection.AssemblyProductAttribute("StrategicView-Plus")] [assembly: System.Reflection.AssemblyProductAttribute("StrategicView-Plus")]
[assembly: System.Reflection.AssemblyTitleAttribute("StrategicView-Plus")] [assembly: System.Reflection.AssemblyTitleAttribute("StrategicView-Plus")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@@ -1 +1 @@
6324d5e6ed883eb594c7f064c6899c6620ec3f6f4b54e50bf9c693a1c9798e38 32d9cb21f9105a306e788f865867ce1cabf7e1239b4f80ba170e98b961bae87f