Save ffxiv font to disk on first download

This commit is contained in:
Infi
2024-06-10 22:15:37 +02:00
parent 70989da680
commit 34b76cc853
3 changed files with 18 additions and 10 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk"> <Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup> <PropertyGroup>
<Version>1.26.0</Version> <Version>1.26.1</Version>
<TargetFramework>net8.0-windows</TargetFramework> <TargetFramework>net8.0-windows</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
+17 -5
View File
@@ -32,11 +32,23 @@ public class FontManager
{ {
Plugin = plugin; Plugin = plugin;
var gameSym = new HttpClient().GetAsync("https://img.finalfantasyxiv.com/lds/pc/global/fonts/FFXIV_Lodestone_SSF.ttf") byte[] gameSym;
.Result var filePath = Path.Combine(Plugin.Interface.ConfigDirectory.FullName, "FFXIV_Lodestone_SSF.ttf");
.Content if (File.Exists(filePath))
.ReadAsByteArrayAsync() {
.Result; gameSym = File.ReadAllBytes(filePath);
}
else
{
gameSym = new HttpClient().GetAsync("https://img.finalfantasyxiv.com/lds/pc/global/fonts/FFXIV_Lodestone_SSF.ttf")
.Result
.Content
.ReadAsByteArrayAsync()
.Result;
File.WriteAllBytes(filePath, gameSym);
}
_gameSymFont = new FaceData(gameSym); _gameSymFont = new FaceData(gameSym);
} }
-4
View File
@@ -5,10 +5,8 @@ using ChatTwo.Ipc;
using ChatTwo.Resources; using ChatTwo.Resources;
using ChatTwo.Ui; using ChatTwo.Ui;
using ChatTwo.Util; using ChatTwo.Util;
using Dalamud.Game;
using Dalamud.Game.ClientState.Conditions; using Dalamud.Game.ClientState.Conditions;
using Dalamud.Game.ClientState.Objects; using Dalamud.Game.ClientState.Objects;
using Dalamud.Hooking;
using Dalamud.Interface.Windowing; using Dalamud.Interface.Windowing;
using Dalamud.IoC; using Dalamud.IoC;
using Dalamud.Plugin; using Dalamud.Plugin;
@@ -67,7 +65,6 @@ public sealed class Plugin : IDalamudPlugin
internal DateTime GameStarted { get; } internal DateTime GameStarted { get; }
#pragma warning disable CS8618
public Plugin() public Plugin()
{ {
try try
@@ -143,7 +140,6 @@ public sealed class Plugin : IDalamudPlugin
throw; throw;
} }
} }
#pragma warning restore CS8618
// Suppressing this warning because Dispose() is called in Plugin() if the // Suppressing this warning because Dispose() is called in Plugin() if the
// load fails, so some values may not be initialized. // load fails, so some values may not be initialized.