diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..6369c21 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,31 @@ +root = true + +[*] +indent_style = space +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[{*.cs}] +charset = utf-8-bom +indent_size = 4 +dotnet_sort_system_directives_first = true +csharp_style_implicit_object_creation_when_type_is_apparent = true +csharp_trailing_comma_in_multiline_lists = true +csharp_place_simple_embedded_block_on_same_line = false +csharp_place_attribute_on_same_line = false + +resharper_indent_text = ZeroIndent + +# methods +csharp_style_expression_bodied_methods = true + +# namespaces +csharp_style_namespace_declarations = block_scoped + +# braces +csharp_prefer_braces = when_multiline + +[{*.resx,*.Designer.cs,packages.lock.json}] +generated_code = true +ij_formatter_enabled = false diff --git a/.github/workflows/server.yml b/.github/workflows/server.yml index 708e562..1e5451f 100644 --- a/.github/workflows/server.yml +++ b/.github/workflows/server.yml @@ -8,24 +8,24 @@ on: - 'Pal.Common/**' - 'Pal.Server/**' - 'Dockerfile' - workflow_dispatch: {} + workflow_dispatch: { } permissions: packages: write jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v3 - - name: Login to GitHub Package Registry - uses: docker/login-action@v1 - with: - registry: ghcr.io - username: ${{ github.repository_owner }} - password: ${{ secrets.GITHUB_TOKEN }} + - name: Login to GitHub Package Registry + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} - - name: Build and push - uses: docker/build-push-action@v4 - with: - push: true - tags: ghcr.io/${{ github.repository_owner }}/palace-pal:latest + - name: Build and push + uses: docker/build-push-action@v4 + with: + push: true + tags: ghcr.io/${{ github.repository_owner }}/palace-pal:latest diff --git a/.github/workflows/upload-crowdin.yml b/.github/workflows/upload-crowdin.yml index d6aa22b..b438b66 100644 --- a/.github/workflows/upload-crowdin.yml +++ b/.github/workflows/upload-crowdin.yml @@ -6,19 +6,19 @@ on: paths: - 'Pal.Client/Properties/*.resx' - 'crowdin.yml' - workflow_dispatch: {} + workflow_dispatch: { } jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - name: Crowdin Action - uses: crowdin/github-action@1.4.9 - with: - upload_sources: true - upload_translations: true - download_translations: false - crowdin_branch_name: ${{ github.ref_name }} - env: - CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} - CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} + - uses: actions/checkout@v3 + - name: Crowdin Action + uses: crowdin/github-action@1.4.9 + with: + upload_sources: true + upload_translations: true + download_translations: false + crowdin_branch_name: ${{ github.ref_name }} + env: + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} diff --git a/Directory.Build.targets b/Directory.Build.targets index 8a0fcbd..4caee6b 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,10 +1,10 @@ - - $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots', 'KitsRoot10', null, RegistryView.Registry32, RegistryView.Default)) - $(WindowsKitsRoot)bin\10.0.19041.0\x86\ - + + $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots', 'KitsRoot10', null, RegistryView.Registry32, RegistryView.Default)) + $(WindowsKitsRoot)bin\10.0.19041.0\x86\ + - - - + + + diff --git a/Pal.Client/Configuration/EMode.cs b/Pal.Client/Configuration/EMode.cs index 40d17d7..dde18f2 100644 --- a/Pal.Client/Configuration/EMode.cs +++ b/Pal.Client/Configuration/EMode.cs @@ -8,7 +8,7 @@ Online = 1, /// - /// Only shows traps found by yourself uisng a pomander of sight. + /// Only shows traps found by yourself using a pomander of sight. /// Offline = 2, } diff --git a/Pal.Client/Configuration/Legacy/JsonFloorState.cs b/Pal.Client/Configuration/Legacy/JsonFloorState.cs index 5742b2f..df59d93 100644 --- a/Pal.Client/Configuration/Legacy/JsonFloorState.cs +++ b/Pal.Client/Configuration/Legacy/JsonFloorState.cs @@ -19,7 +19,9 @@ namespace Pal.Client.Configuration.Legacy private const int CurrentVersion = 4; private static string _pluginConfigDirectory = null!; - private static readonly EMode _mode = EMode.Online; // might not be true, but this is 'less strict filtering' for migrations + + // might not be true, but this is 'less strict filtering' for migrations + private static readonly EMode _mode = EMode.Online; internal static void SetContextProperties(string pluginConfigDirectory) { diff --git a/Pal.Client/DalamudPackager.targets b/Pal.Client/DalamudPackager.targets index 27e6884..265b96a 100644 --- a/Pal.Client/DalamudPackager.targets +++ b/Pal.Client/DalamudPackager.targets @@ -1,21 +1,21 @@  - - - + + + - - - + + + diff --git a/Pal.Client/Net/JwtClaims.cs b/Pal.Client/Net/JwtClaims.cs index 5d8704b..cd2796a 100644 --- a/Pal.Client/Net/JwtClaims.cs +++ b/Pal.Client/Net/JwtClaims.cs @@ -2,8 +2,8 @@ using System.Collections.Generic; using System.Linq; using System.Text; -using System.Text.Json.Serialization; using System.Text.Json; +using System.Text.Json.Serialization; using System.Threading.Tasks; namespace Pal.Client.Net diff --git a/Pal.Client/Net/RemoteApi.AccountService.cs b/Pal.Client/Net/RemoteApi.AccountService.cs index c76554e..558eebc 100644 --- a/Pal.Client/Net/RemoteApi.AccountService.cs +++ b/Pal.Client/Net/RemoteApi.AccountService.cs @@ -1,16 +1,16 @@ -using Account; -using Grpc.Core; -using Grpc.Net.Client; -using Microsoft.Extensions.Logging; -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Threading; using System.Threading.Tasks; +using Account; +using Grpc.Core; +using Grpc.Net.Client; +using Microsoft.Extensions.Logging; +using Pal.Client.Configuration; using Pal.Client.Extensions; using Pal.Client.Properties; -using Pal.Client.Configuration; namespace Pal.Client.Net { diff --git a/Pal.Client/Net/RemoteApi.ExportService.cs b/Pal.Client/Net/RemoteApi.ExportService.cs index 2c0eec6..79e2e31 100644 --- a/Pal.Client/Net/RemoteApi.ExportService.cs +++ b/Pal.Client/Net/RemoteApi.ExportService.cs @@ -1,7 +1,7 @@ -using Export; -using System; +using System; using System.Threading; using System.Threading.Tasks; +using Export; namespace Pal.Client.Net { diff --git a/Pal.Client/Net/RemoteApi.PalaceService.cs b/Pal.Client/Net/RemoteApi.PalaceService.cs index 161b3f5..140d92f 100644 --- a/Pal.Client/Net/RemoteApi.PalaceService.cs +++ b/Pal.Client/Net/RemoteApi.PalaceService.cs @@ -1,5 +1,4 @@ -using Palace; -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Numerics; @@ -7,6 +6,7 @@ using System.Threading; using System.Threading.Tasks; using Pal.Client.Database; using Pal.Client.Floors; +using Palace; namespace Pal.Client.Net { diff --git a/Pal.Client/Net/RemoteApi.Utils.cs b/Pal.Client/Net/RemoteApi.Utils.cs index 83a1180..f520bd0 100644 --- a/Pal.Client/Net/RemoteApi.Utils.cs +++ b/Pal.Client/Net/RemoteApi.Utils.cs @@ -1,8 +1,8 @@ using System; -using Dalamud.Logging; -using Grpc.Core; using System.Net.Security; using System.Security.Cryptography.X509Certificates; +using Dalamud.Logging; +using Grpc.Core; using Microsoft.Extensions.Logging; namespace Pal.Client.Net diff --git a/Pal.Client/Net/RemoteApi.cs b/Pal.Client/Net/RemoteApi.cs index 382f103..0fad434 100644 --- a/Pal.Client/Net/RemoteApi.cs +++ b/Pal.Client/Net/RemoteApi.cs @@ -1,8 +1,8 @@ -using Dalamud.Logging; +using System; +using Dalamud.Game.Gui; +using Dalamud.Logging; using Grpc.Net.Client; using Microsoft.Extensions.Logging; -using System; -using Dalamud.Game.Gui; using Pal.Client.Configuration; using Pal.Client.DependencyInjection; diff --git a/Pal.Client/Pal.Client.csproj b/Pal.Client/Pal.Client.csproj index 524a360..a400064 100644 --- a/Pal.Client/Pal.Client.csproj +++ b/Pal.Client/Pal.Client.csproj @@ -1,133 +1,133 @@  - - net7.0-windows - 11.0 - enable - win-x64 - + + net7.0-windows + 11.0 + enable + win-x64 + - - false - x64 - Palace Pal - true - false - false - true - portable - $(SolutionDir)=X:\ - false - false - false - false - true - + + false + x64 + Palace Pal + true + false + false + true + portable + $(SolutionDir)=X:\ + false + false + false + false + true + - - dist - + + dist + - - - + + + - - - + + + - - - - - - - all - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - + + + + + + + all + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + - - - - + + + + - - - - - + + + + + - - - - $(AppData)\XIVLauncher\addon\Hooks\dev\Dalamud.dll - false - - - $(AppData)\XIVLauncher\addon\Hooks\dev\ImGui.NET.dll - false - - - $(AppData)\XIVLauncher\addon\Hooks\dev\ImGuiScene.dll - false - - - $(AppData)\XIVLauncher\addon\Hooks\dev\Lumina.dll - false - - - $(AppData)\XIVLauncher\addon\Hooks\dev\Lumina.Excel.dll - false - - - $(AppData)\XIVLauncher\addon\Hooks\dev\Newtonsoft.Json.dll - false - - - $(AppData)\XIVLauncher\addon\Hooks\dev\FFXIVClientStructs.dll - false - - - $(AppData)\XIVLauncher\addon\Hooks\dev\Serilog.dll - false - - + + + + $(AppData)\XIVLauncher\addon\Hooks\dev\Dalamud.dll + false + + + $(AppData)\XIVLauncher\addon\Hooks\dev\ImGui.NET.dll + false + + + $(AppData)\XIVLauncher\addon\Hooks\dev\ImGuiScene.dll + false + + + $(AppData)\XIVLauncher\addon\Hooks\dev\Lumina.dll + false + + + $(AppData)\XIVLauncher\addon\Hooks\dev\Lumina.Excel.dll + false + + + $(AppData)\XIVLauncher\addon\Hooks\dev\Newtonsoft.Json.dll + false + + + $(AppData)\XIVLauncher\addon\Hooks\dev\FFXIVClientStructs.dll + false + + + $(AppData)\XIVLauncher\addon\Hooks\dev\Serilog.dll + false + + - - - ResXFileCodeGenerator - Localization.Designer.cs - - - True - True - Localization.resx - - + + + ResXFileCodeGenerator + Localization.Designer.cs + + + True + True + Localization.resx + + - - - $(GitSemVerMajor).$(GitSemVerMinor) - $(Version) - - + + + $(GitSemVerMajor).$(GitSemVerMinor) + $(Version) + + - - - + + + - - - + + + diff --git a/Pal.Client/Palace Pal.json b/Pal.Client/Palace Pal.json index 79e7ff4..8979d5a 100644 --- a/Pal.Client/Palace Pal.json +++ b/Pal.Client/Palace Pal.json @@ -5,5 +5,10 @@ "Description": "Shows possible trap & hoard coffer locations in Palace of the Dead & Heaven on High.\n\nThe default configuration requires Splatoon to be installed. If you do not wish to install Splatoon, you can switch to the experimental 'Simple' renderer in the configuration.", "RepoUrl": "https://github.com/carvelli/PalacePal", "IconUrl": "https://raw.githubusercontent.com/carvelli/Dalamud-Plugins/master/dist/Palace Pal.png", - "Tags": [ "potd", "palace", "hoh", "splatoon" ] + "Tags": [ + "potd", + "palace", + "hoh", + "splatoon" + ] } diff --git a/Pal.Client/Plugin.cs b/Pal.Client/Plugin.cs index edcdc0d..f45ae99 100644 --- a/Pal.Client/Plugin.cs +++ b/Pal.Client/Plugin.cs @@ -1,7 +1,4 @@ -using Dalamud.Interface.Windowing; -using Dalamud.Plugin; -using Pal.Client.Rendering; -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.IO; @@ -12,7 +9,8 @@ using Dalamud.Game; using Dalamud.Game.ClientState; using Dalamud.Game.Command; using Dalamud.Game.Gui; -using Pal.Client.Properties; +using Dalamud.Interface.Windowing; +using Dalamud.Plugin; using ECommons; using ECommons.DalamudServices; using Microsoft.Extensions.DependencyInjection; @@ -20,6 +18,8 @@ using Microsoft.Extensions.Logging; using Pal.Client.Commands; using Pal.Client.Configuration; using Pal.Client.DependencyInjection; +using Pal.Client.Properties; +using Pal.Client.Rendering; namespace Pal.Client { diff --git a/Pal.Client/Rendering/SimpleRenderer.cs b/Pal.Client/Rendering/SimpleRenderer.cs index 3143def..6220faf 100644 --- a/Pal.Client/Rendering/SimpleRenderer.cs +++ b/Pal.Client/Rendering/SimpleRenderer.cs @@ -1,12 +1,12 @@ -using Dalamud.Interface; -using ImGuiNET; -using System; +using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Numerics; using Dalamud.Game.ClientState; using Dalamud.Game.Gui; +using Dalamud.Interface; +using ImGuiNET; using Pal.Client.Configuration; using Pal.Client.DependencyInjection; using Pal.Client.Floors; diff --git a/Pal.Client/Rendering/SplatoonRenderer.cs b/Pal.Client/Rendering/SplatoonRenderer.cs index bdcee3d..7e2a482 100644 --- a/Pal.Client/Rendering/SplatoonRenderer.cs +++ b/Pal.Client/Rendering/SplatoonRenderer.cs @@ -1,15 +1,15 @@ -using Dalamud.Plugin; -using ECommons; -using ECommons.Reflection; -using ECommons.Schedulers; -using ECommons.SplatoonAPI; -using System; +using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Numerics; using System.Reflection; using Dalamud.Game.ClientState; +using Dalamud.Plugin; +using ECommons; +using ECommons.Reflection; +using ECommons.Schedulers; +using ECommons.SplatoonAPI; using Microsoft.Extensions.Logging; using Pal.Client.Configuration; using Pal.Client.DependencyInjection; diff --git a/Pal.Client/Scheduled/QueuedImport.cs b/Pal.Client/Scheduled/QueuedImport.cs index d12588d..7799a53 100644 --- a/Pal.Client/Scheduled/QueuedImport.cs +++ b/Pal.Client/Scheduled/QueuedImport.cs @@ -1,14 +1,14 @@ -using Export; -using Pal.Common; -using System; +using System; using System.IO; using System.Threading.Tasks; +using Export; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Pal.Client.Database; using Pal.Client.DependencyInjection; using Pal.Client.Properties; using Pal.Client.Windows; +using Pal.Common; namespace Pal.Client.Scheduled { diff --git a/Pal.Client/Windows/AgreementWindow.cs b/Pal.Client/Windows/AgreementWindow.cs index 6442805..b791076 100644 --- a/Pal.Client/Windows/AgreementWindow.cs +++ b/Pal.Client/Windows/AgreementWindow.cs @@ -1,9 +1,9 @@ using System; +using System.Numerics; using Dalamud.Interface.Colors; using Dalamud.Interface.Windowing; using ECommons; using ImGuiNET; -using System.Numerics; using Pal.Client.Configuration; using Pal.Client.Extensions; using Pal.Client.Properties; diff --git a/Pal.Client/Windows/ConfigWindow.cs b/Pal.Client/Windows/ConfigWindow.cs index 71ef233..d7d99ea 100644 --- a/Pal.Client/Windows/ConfigWindow.cs +++ b/Pal.Client/Windows/ConfigWindow.cs @@ -1,27 +1,27 @@ -using Export; -using Dalamud.Interface; -using Dalamud.Interface.Components; -using Dalamud.Interface.ImGuiFileDialog; -using Dalamud.Interface.Windowing; -using ECommons; -using Google.Protobuf; -using ImGuiNET; -using Pal.Client.Net; -using Pal.Client.Rendering; -using Pal.Client.Scheduled; -using System; +using System; using System.IO; using System.Linq; using System.Numerics; using System.Threading; using System.Threading.Tasks; +using Dalamud.Interface; +using Dalamud.Interface.Components; +using Dalamud.Interface.ImGuiFileDialog; +using Dalamud.Interface.Windowing; +using ECommons; +using Export; +using Google.Protobuf; +using ImGuiNET; using Microsoft.Extensions.Logging; -using Pal.Client.Extensions; -using Pal.Client.Properties; using Pal.Client.Configuration; using Pal.Client.Database; using Pal.Client.DependencyInjection; +using Pal.Client.Extensions; using Pal.Client.Floors; +using Pal.Client.Net; +using Pal.Client.Properties; +using Pal.Client.Rendering; +using Pal.Client.Scheduled; namespace Pal.Client.Windows { diff --git a/Pal.Client/Windows/StatisticsWindow.cs b/Pal.Client/Windows/StatisticsWindow.cs index 159129d..13ccff5 100644 --- a/Pal.Client/Windows/StatisticsWindow.cs +++ b/Pal.Client/Windows/StatisticsWindow.cs @@ -1,12 +1,12 @@ -using Dalamud.Interface.Windowing; -using ImGuiNET; -using Pal.Common; -using Palace; -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Numerics; +using Dalamud.Interface.Windowing; +using ImGuiNET; using Pal.Client.Properties; +using Pal.Common; +using Palace; namespace Pal.Client.Windows { diff --git a/Pal.Common/Pal.Common.csproj b/Pal.Common/Pal.Common.csproj index bfea15d..51b73c8 100644 --- a/Pal.Common/Pal.Common.csproj +++ b/Pal.Common/Pal.Common.csproj @@ -1,12 +1,12 @@  - - net7.0 - 11.0 - enable - enable - portable - $(SolutionDir)=X:\ - true - + + net7.0 + 11.0 + enable + enable + portable + $(SolutionDir)=X:\ + true + diff --git a/Pal.sln b/Pal.sln index e58e97e..eeec27e 100644 --- a/Pal.sln +++ b/Pal.sln @@ -13,6 +13,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution ProjectSection(SolutionItems) = preProject Dockerfile = Dockerfile README.md = README.md + .editorconfig = .editorconfig EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ECommons", "vendor\ECommons\ECommons\ECommons.csproj", "{D0B37096-5BC3-41B0-8D81-203CBA3932B0}" diff --git a/README.md b/README.md index 43b6136..3333de3 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Palace Pal -Shows possible trap & hoard coffer locations in Palace of the Dead & Heaven on High. +Shows possible trap & hoard coffer locations in Palace of the Dead & Heaven on High. ## Installation @@ -10,10 +10,9 @@ To install this plugin from my plugin repository, please check the Additionally, you **need to install Splatoon**, which is used to render the visible overlays. Please check [Splatoon's Installation Instructions](https://github.com/NightmareXIV/MyDalamudPlugins#installation). - ## Translation Please feel free to help by [translating this plugin into your language](https://crowdin.com/project/palace-pal). -If you want to translate the plugin into a language that is currently not enabled, +If you want to translate the plugin into a language that is currently not enabled, [please create a new issue](https://github.com/carvelli/PalacePal/issues/new).