diff --git a/Class1.cs b/Class1.cs index b5b652e..2eca2b0 100644 --- a/Class1.cs +++ b/Class1.cs @@ -58,7 +58,10 @@ namespace StrategicMapPlus if (textureLookup.ContainsKey(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)); SpriteCache[logicKey] = s; loadedCount++; @@ -177,7 +180,7 @@ namespace StrategicMapPlus } // 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; @@ -207,6 +210,12 @@ namespace StrategicMapPlus Vector2 center = new Vector2(width / 2f, height / 2f); 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++) { // --- Opción A: Máscara Redonda (Matemática) --- diff --git a/Textures.cs b/Textures.cs index ee8da9c..0f0aa45 100644 --- a/Textures.cs +++ b/Textures.cs @@ -11,33 +11,47 @@ namespace StrategicMapPlus // ----------------------------------------------------------------------- // --- ZONA DE CONFIGURACIÓN --- // ----------------------------------------------------------------------- - public static Dictionary TextureMap = new Dictionary() + public static Dictionary TextureMap = new Dictionary() { - // --- CONSOLIDAR PODER (Fuerza suele ser 0) --- - { "ConsolidatePower_0", "T_tkn_Order_ConsolidatePower" }, - { "ConsolidatePower_0_Star", "T_tkn_Order_ConsolidatePowerStar" }, - {"ConsolidatePower_122_Star", "T_tkn_Order_ConsolidatePowerStar" }, - {"ConsolidatePower_121", "T_tkn_Order_ConsolidatePower"}, + // --- CONSOLIDAR PODER (Fuerza suele ser 0) --- + {"ConsolidatePower_0", "T_tkn_Order_ConsolidatePower" }, + {"ConsolidatePower_0_Star", "T_tkn_Order_ConsolidatePowerStar" }, + {"ConsolidatePower_122_Star", "T_tkn_Order_ConsolidatePowerStar" }, + {"ConsolidatePower_121", "T_tkn_Order_ConsolidatePower"}, // March {"March_130", "T_tkn_Order_MarchPlus0" }, {"March_129_Star", "T_tkn_Order_MarchPlus1" }, - {"March_128", "T_tkn_Order_MarchMinus1" }, + {"March_128", "T_tkn_Order_MarchMinus1" }, // Defense {"Defense_124_Star", "T_tkn_Order_DefendPlus2" }, - // Raid - {"Raid_131", "T_tkn_Order_Raid" }, - {"Raid_132_Star", "T_tkn_Order_RaidStar" }, + // Raid + {"Raid_131", "T_tkn_Order_Raid" }, + {"Raid_132_Star", "T_tkn_Order_RaidStar" }, - // Defense - {"Defense_123", "T_tkn_Order_DefendPlus1" }, + // Defense + {"Defense_123", "T_tkn_Order_DefendPlus1" }, - // Support - {"Support_135", "T_tkn_Order_Support" }, - {"Support_136_Star", "T_tkn_Order_SupportPlus1" } + // Support + {"Support_135", "T_tkn_Order_Support" }, + {"Support_136_Star", "T_tkn_Order_SupportPlus1" } }; // ----------------------------------------------------------------------- + static public Dictionary IconsOffsets = new Dictionary() { }; + + 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; + } + } } } diff --git a/obj/Debug/net472/StrategicView-Plus.AssemblyInfo.cs b/obj/Debug/net472/StrategicView-Plus.AssemblyInfo.cs index ef459de..640548f 100644 --- a/obj/Debug/net472/StrategicView-Plus.AssemblyInfo.cs +++ b/obj/Debug/net472/StrategicView-Plus.AssemblyInfo.cs @@ -14,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("StrategicView-Plus")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [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.AssemblyTitleAttribute("StrategicView-Plus")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/obj/Debug/net472/StrategicView-Plus.AssemblyInfoInputs.cache b/obj/Debug/net472/StrategicView-Plus.AssemblyInfoInputs.cache index 3fe4afb..688dc93 100644 --- a/obj/Debug/net472/StrategicView-Plus.AssemblyInfoInputs.cache +++ b/obj/Debug/net472/StrategicView-Plus.AssemblyInfoInputs.cache @@ -1 +1 @@ -6324d5e6ed883eb594c7f064c6899c6620ec3f6f4b54e50bf9c693a1c9798e38 +32d9cb21f9105a306e788f865867ce1cabf7e1239b4f80ba170e98b961bae87f diff --git a/obj/Debug/net472/StrategicView-Plus.dll b/obj/Debug/net472/StrategicView-Plus.dll index 6f568d3..7d282c7 100644 Binary files a/obj/Debug/net472/StrategicView-Plus.dll and b/obj/Debug/net472/StrategicView-Plus.dll differ diff --git a/obj/Debug/net472/StrategicView-Plus.pdb b/obj/Debug/net472/StrategicView-Plus.pdb index f3c21a3..14d0aa6 100644 Binary files a/obj/Debug/net472/StrategicView-Plus.pdb and b/obj/Debug/net472/StrategicView-Plus.pdb differ