From e600beb2787af2d24cd55be41817692c7bde08b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Vondr=C3=A1=C5=A1ek?= Date: Mon, 5 Feb 2024 11:23:01 +0100 Subject: [PATCH] The LEAVE GUILD button is now a part of the popup, it is no longer displayed next to the EXIT button. --- LeaveGuild.dfmod.json | 5 +- Scripts/LeaveGuildServicePopupWindow.cs | 80 ++++++++++++++++-- Textures.meta | 8 ++ Textures/BLANKMENU_4.png | Bin 0 -> 7059 bytes Textures/BLANKMENU_4.png.meta | 104 ++++++++++++++++++++++++ 5 files changed, 186 insertions(+), 11 deletions(-) create mode 100644 Textures.meta create mode 100644 Textures/BLANKMENU_4.png create mode 100644 Textures/BLANKMENU_4.png.meta diff --git a/LeaveGuild.dfmod.json b/LeaveGuild.dfmod.json index a20e304..8289177 100644 --- a/LeaveGuild.dfmod.json +++ b/LeaveGuild.dfmod.json @@ -1,6 +1,6 @@ { "ModTitle": "Leave Guild", - "ModVersion": "1.0.3", + "ModVersion": "1.0.4", "ModAuthor": "Berzeger", "DFUnity_Version": "1.0.0", "ModDescription": "A simple mod that lets you leave guilds. Simply talk to a guild member and you'll find the new option there.", @@ -10,6 +10,7 @@ "Assets/Game/Mods/LeaveGuild/Scripts/LeaveGuild.cs", "Assets/Game/Mods/LeaveGuild/Scripts/LeaveGuildServicePopupWindow.cs", "Assets/Game/Mods/LeaveGuild/Scripts/LeaveGuildSaveData.cs", - "Assets/Game/Mods/LeaveGuild/modsettings.json" + "Assets/Game/Mods/LeaveGuild/modsettings.json", + "Assets/Game/Mods/LeaveGuild/Textures/BLANKMENU_4.png" ] } \ No newline at end of file diff --git a/Scripts/LeaveGuildServicePopupWindow.cs b/Scripts/LeaveGuildServicePopupWindow.cs index 775f110..b51c5c2 100644 --- a/Scripts/LeaveGuildServicePopupWindow.cs +++ b/Scripts/LeaveGuildServicePopupWindow.cs @@ -15,13 +15,18 @@ using static Berzeger.LeaveGuildSaveData; using System; using System.Reflection; +using DaggerfallWorkshop.Utility.AssetInjection; +using DaggerfallWorkshop.Game.Guilds; namespace Berzeger { public class LeaveGuildServicePopupWindow : DaggerfallGuildServicePopupWindow { protected Button leaveButton = new Button(); - protected Rect leaveButtonRect = new Rect(5, 33, 35, 15); + protected Rect leaveButtonRect = new Rect(5f, 33f, 120f, 7f); + protected new Rect talkButtonRect = new Rect(5f, 15f, 120f, 7f); + protected new Rect exitButtonRect = new Rect(44f, 42f, 43f, 15f); + private new const string baseTextureName = "BLANKMENU_4"; public LeaveGuildServicePopupWindow(IUserInterfaceManager uiManager, StaticNPC npc, FactionFile.GuildGroups guildGroup, int buildingFactionId) : base(uiManager, npc, guildGroup, buildingFactionId) @@ -32,22 +37,79 @@ protected override void Setup() { ResolveQuestOfferLocationsModCompatibility(); - // Leave Guild button + TextureReplacement.TryImportTexture(baseTextureName, true, out Texture2D tex); + baseTexture = tex; + + // Create interface panel + mainPanel.HorizontalAlignment = HorizontalAlignment.Center; + mainPanel.VerticalAlignment = VerticalAlignment.Middle; + mainPanel.BackgroundTexture = baseTexture; + mainPanel.Position = new Vector2(0, 50); + mainPanel.Size = new Vector2(130, 60); + + // Is a member of the guild group (i.e. a temple, a knight order etc.) + bool isGeneralMember = guildManager.GetGuild(guildGroup).IsMember(); + // The game generally considers the player a member of a guild if they're a member of any guild belonging to the faction. // We need to query specifically the one single faction. bool isSpecificMember = guild.IsMember(); + + // Join Guild button + joinButton = DaggerfallUI.AddButton(joinButtonRect, mainPanel); + joinButton.Hotkey = DaggerfallShortcut.GetBinding(DaggerfallShortcut.Buttons.GuildsJoin); + joinButton.Label.Text = "JOIN GUILD"; + joinButton.Label.TextColor = !isGeneralMember ? DaggerfallUI.DaggerfallDefaultTextColor : DaggerfallUI.DaggerfallDisabledTextColor; + joinButton.Label.HorizontalAlignment = HorizontalAlignment.Center; + joinButton.Label.Position = new Vector2(0, 1); + joinButton.Label.ShadowPosition = Vector2.zero; + if (!isGeneralMember) + { + joinButton.OnMouseClick += JoinButton_OnMouseClick; + } + + // Leave Guild button + leaveButton = DaggerfallUI.AddButton(leaveButtonRect, mainPanel); + leaveButton.Label.Text = "LEAVE GUILD"; + leaveButton.Label.TextColor = isSpecificMember? DaggerfallUI.DaggerfallDefaultTextColor : DaggerfallUI.DaggerfallDisabledTextColor; + leaveButton.Label.HorizontalAlignment = HorizontalAlignment.Center; + leaveButton.Label.Position = new Vector2(0, 1); + leaveButton.Label.ShadowPosition = Vector2.zero; + leaveButton.Hotkey = DaggerfallShortcut.GetBinding(DaggerfallShortcut.Buttons.GuildsJoin); + // Assign the handler only if the button is enabled if (isSpecificMember) { - leaveButton = DaggerfallUI.AddButton(leaveButtonRect, mainPanel); leaveButton.OnMouseClick += LeaveButton_OnMouseClick; - leaveButton.Label.Text = "LEAVE GUILD"; - leaveButton.Label.TextColor = DaggerfallUI.DaggerfallDefaultTextColor; - - // we can also reuse the join hotkey - these two buttons are never shown together - leaveButton.Hotkey = DaggerfallShortcut.GetBinding(DaggerfallShortcut.Buttons.GuildsJoin); } - base.Setup(); + // Talk button + talkButton = DaggerfallUI.AddButton(talkButtonRect, mainPanel); + talkButton.OnMouseClick += TalkButton_OnMouseClick; + talkButton.Hotkey = DaggerfallShortcut.GetBinding(DaggerfallShortcut.Buttons.GuildsTalk); + talkButton.OnKeyboardEvent += TalkButton_OnKeyboardEvent; + talkButton.Label.TextColor = DaggerfallUI.DaggerfallDefaultTextColor; + talkButton.Label.Text = "TALK"; + talkButton.Label.HorizontalAlignment = HorizontalAlignment.Center; + talkButton.Label.Position = new Vector2(0, 1); + talkButton.Label.ShadowPosition = Vector2.zero; + + // Service button + serviceLabel.Position = new Vector2(0, 1); + serviceLabel.ShadowPosition = Vector2.zero; + serviceLabel.HorizontalAlignment = HorizontalAlignment.Center; + serviceLabel.Text = Services.GetServiceLabelText(service).ToUpper(); + serviceButton = DaggerfallUI.AddButton(serviceButtonRect, mainPanel); + serviceButton.Components.Add(serviceLabel); + serviceButton.OnMouseClick += ServiceButton_OnMouseClick; + serviceButton.Hotkey = DaggerfallShortcut.GetBinding(Services.GetServiceShortcutButton(service)); + serviceButton.OnKeyboardEvent += ServiceButton_OnKeyboardEvent; + + // Exit button + exitButton = DaggerfallUI.AddButton(exitButtonRect, mainPanel); + exitButton.OnMouseClick += ExitButton_OnMouseClick; + exitButton.Hotkey = DaggerfallShortcut.GetBinding(DaggerfallShortcut.Buttons.GuildsExit); + exitButton.OnKeyboardEvent += ExitButton_OnKeyboardEvent; + + NativePanel.Components.Add(mainPanel); } protected virtual void LeaveButton_OnMouseClick(BaseScreenComponent sender, Vector2 position) diff --git a/Textures.meta b/Textures.meta new file mode 100644 index 0000000..af88006 --- /dev/null +++ b/Textures.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d82339dd829daf347ae15ca507290aee +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Textures/BLANKMENU_4.png b/Textures/BLANKMENU_4.png new file mode 100644 index 0000000000000000000000000000000000000000..1aa1b29f4ce2f9300ce2097707eb479d6552d33d GIT binary patch literal 7059 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 literal 0 HcmV?d00001 diff --git a/Textures/BLANKMENU_4.png.meta b/Textures/BLANKMENU_4.png.meta new file mode 100644 index 0000000..0c3b4f5 --- /dev/null +++ b/Textures/BLANKMENU_4.png.meta @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: ebabed0ea31d9f441b96ebc2e72dcc28 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: