forked from liza/Deliveroo
NET 8
This commit is contained in:
parent
5836c6312e
commit
76d00fb2dc
1017
Deliveroo/.editorconfig
Normal file
1017
Deliveroo/.editorconfig
Normal file
File diff suppressed because it is too large
Load Diff
@ -18,13 +18,6 @@ internal sealed class Configuration : IPluginConfiguration
|
|||||||
public int PauseAtRank { get; set; }
|
public int PauseAtRank { get; set; }
|
||||||
public EBehaviorOnOtherWorld BehaviorOnOtherWorld { get; set; } = EBehaviorOnOtherWorld.Warning;
|
public EBehaviorOnOtherWorld BehaviorOnOtherWorld { get; set; } = EBehaviorOnOtherWorld.Warning;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// A config-only setting, not exposed in the UI.
|
|
||||||
///
|
|
||||||
/// If set, buys all GC items in their max quantity (otherwise, everything except ventures is capped to 99).
|
|
||||||
/// </summary>
|
|
||||||
public bool IgnoreCertainLimitations { get; set; } = false;
|
|
||||||
|
|
||||||
internal sealed class PurchasePriority
|
internal sealed class PurchasePriority
|
||||||
{
|
{
|
||||||
public uint ItemId { get; set; }
|
public uint ItemId { get; set; }
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net7.0-windows</TargetFramework>
|
<TargetFramework>net8.0-windows</TargetFramework>
|
||||||
<Version>3.3</Version>
|
<Version>4.0</Version>
|
||||||
<LangVersion>11.0</LangVersion>
|
<LangVersion>12</LangVersion>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
|
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
|
||||||
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||||
|
@ -34,7 +34,7 @@ partial class DeliverooPlugin
|
|||||||
if (request == previousRequest)
|
if (request == previousRequest)
|
||||||
{
|
{
|
||||||
toBuy = (int)request.StackSize;
|
toBuy = (int)request.StackSize;
|
||||||
if (request.ItemId != ItemIds.Venture && !_configuration.IgnoreCertainLimitations)
|
if (request.ItemId != ItemIds.Venture)
|
||||||
toBuy = Math.Min(toBuy, 99);
|
toBuy = Math.Min(toBuy, 99);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -152,7 +152,7 @@ partial class DeliverooPlugin
|
|||||||
else
|
else
|
||||||
toBuy = Math.Min(toBuy, item.EffectiveLimit);
|
toBuy = Math.Min(toBuy, item.EffectiveLimit);
|
||||||
|
|
||||||
if (item.ItemId != ItemIds.Venture && !_configuration.IgnoreCertainLimitations)
|
if (item.ItemId != ItemIds.Venture)
|
||||||
toBuy = Math.Min(toBuy, 99);
|
toBuy = Math.Min(toBuy, 99);
|
||||||
|
|
||||||
if (toBuy <= 0)
|
if (toBuy <= 0)
|
||||||
|
@ -66,7 +66,7 @@ partial class DeliverooPlugin
|
|||||||
return float.MaxValue;
|
return float.MaxValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
private int GetNpcId(GameObject obj)
|
private static int GetNpcId(GameObject obj)
|
||||||
{
|
{
|
||||||
return Marshal.ReadInt32(obj.Address + 128);
|
return Marshal.ReadInt32(obj.Address + 128);
|
||||||
}
|
}
|
||||||
@ -95,7 +95,7 @@ partial class DeliverooPlugin
|
|||||||
|
|
||||||
private uint GetSealCap() => _sealCaps.TryGetValue(GetGrandCompanyRank(), out var cap) ? cap : 0;
|
private uint GetSealCap() => _sealCaps.TryGetValue(GetGrandCompanyRank(), out var cap) ? cap : 0;
|
||||||
|
|
||||||
public uint GetMaxSealCap() => _sealCaps[11];
|
public uint MaxSealCap => _sealCaps[11];
|
||||||
|
|
||||||
public unsafe int GetItemCount(uint itemId, bool checkRetainerInventory)
|
public unsafe int GetItemCount(uint itemId, bool checkRetainerInventory)
|
||||||
{
|
{
|
||||||
|
@ -8,7 +8,6 @@ using FFXIVClientStructs.FFXIV.Client.UI;
|
|||||||
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
|
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
|
||||||
using FFXIVClientStructs.FFXIV.Component.GUI;
|
using FFXIVClientStructs.FFXIV.Component.GUI;
|
||||||
using LLib.GameUI;
|
using LLib.GameUI;
|
||||||
using Lumina.Text.Payloads;
|
|
||||||
using ValueType = FFXIVClientStructs.FFXIV.Component.GUI.ValueType;
|
using ValueType = FFXIVClientStructs.FFXIV.Component.GUI.ValueType;
|
||||||
|
|
||||||
namespace Deliveroo;
|
namespace Deliveroo;
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Collections.ObjectModel;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using Dalamud.Game.Addon.Lifecycle;
|
using Dalamud.Game.Addon.Lifecycle;
|
||||||
using Dalamud.Game.ClientState.Conditions;
|
using Dalamud.Game.ClientState.Conditions;
|
||||||
@ -25,7 +26,6 @@ namespace Deliveroo;
|
|||||||
public sealed partial class DeliverooPlugin : IDalamudPlugin
|
public sealed partial class DeliverooPlugin : IDalamudPlugin
|
||||||
{
|
{
|
||||||
private readonly WindowSystem _windowSystem = new(typeof(DeliverooPlugin).AssemblyQualifiedName);
|
private readonly WindowSystem _windowSystem = new(typeof(DeliverooPlugin).AssemblyQualifiedName);
|
||||||
private readonly IReadOnlyList<uint> DisabledTurnInItems = new List<uint> { 2820 }.AsReadOnly();
|
|
||||||
|
|
||||||
private readonly DalamudPluginInterface _pluginInterface;
|
private readonly DalamudPluginInterface _pluginInterface;
|
||||||
private readonly IChatGui _chatGui;
|
private readonly IChatGui _chatGui;
|
||||||
@ -52,13 +52,13 @@ public sealed partial class DeliverooPlugin : IDalamudPlugin
|
|||||||
private readonly ItemCache _itemCache;
|
private readonly ItemCache _itemCache;
|
||||||
private readonly ConfigWindow _configWindow;
|
private readonly ConfigWindow _configWindow;
|
||||||
private readonly TurnInWindow _turnInWindow;
|
private readonly TurnInWindow _turnInWindow;
|
||||||
private readonly IReadOnlyDictionary<uint, uint> _sealCaps;
|
private readonly ReadOnlyDictionary<uint, uint> _sealCaps;
|
||||||
private readonly Dictionary<uint, int> _retainerItemCache = new();
|
private readonly Dictionary<uint, int> _retainerItemCache = new();
|
||||||
|
|
||||||
private Stage _currentStageInternal = Stage.Stopped;
|
private Stage _currentStageInternal = Stage.Stopped;
|
||||||
private DateTime _continueAt = DateTime.MinValue;
|
private DateTime _continueAt = DateTime.MinValue;
|
||||||
private int _lastTurnInListSize = int.MaxValue;
|
private int _lastTurnInListSize = int.MaxValue;
|
||||||
private uint _turnInErrors = 0;
|
private uint _turnInErrors;
|
||||||
private List<PurchaseItemRequest> _itemsToPurchaseNow = new();
|
private List<PurchaseItemRequest> _itemsToPurchaseNow = new();
|
||||||
|
|
||||||
public DeliverooPlugin(DalamudPluginInterface pluginInterface, IChatGui chatGui, IGameGui gameGui,
|
public DeliverooPlugin(DalamudPluginInterface pluginInterface, IChatGui chatGui, IGameGui gameGui,
|
||||||
@ -66,6 +66,8 @@ public sealed partial class DeliverooPlugin : IDalamudPlugin
|
|||||||
IDataManager dataManager, ICondition condition, ICommandManager commandManager, IPluginLog pluginLog,
|
IDataManager dataManager, ICondition condition, ICommandManager commandManager, IPluginLog pluginLog,
|
||||||
IAddonLifecycle addonLifecycle, ITextureProvider textureProvider)
|
IAddonLifecycle addonLifecycle, ITextureProvider textureProvider)
|
||||||
{
|
{
|
||||||
|
ArgumentNullException.ThrowIfNull(dataManager);
|
||||||
|
|
||||||
_pluginInterface = pluginInterface;
|
_pluginInterface = pluginInterface;
|
||||||
_chatGui = chatGui;
|
_chatGui = chatGui;
|
||||||
_gameGui = gameGui;
|
_gameGui = gameGui;
|
||||||
@ -89,7 +91,8 @@ public sealed partial class DeliverooPlugin : IDalamudPlugin
|
|||||||
_turnInWindow = new TurnInWindow(this, _pluginInterface, _configuration, _condition, _clientState, _gcRewardsCache, _configWindow, _iconCache);
|
_turnInWindow = new TurnInWindow(this, _pluginInterface, _configuration, _condition, _clientState, _gcRewardsCache, _configWindow, _iconCache);
|
||||||
_windowSystem.AddWindow(_turnInWindow);
|
_windowSystem.AddWindow(_turnInWindow);
|
||||||
_sealCaps = dataManager.GetExcelSheet<GrandCompanyRank>()!.Where(x => x.RowId > 0)
|
_sealCaps = dataManager.GetExcelSheet<GrandCompanyRank>()!.Where(x => x.RowId > 0)
|
||||||
.ToDictionary(x => x.RowId, x => x.MaxSeals);
|
.ToDictionary(x => x.RowId, x => x.MaxSeals)
|
||||||
|
.AsReadOnly();
|
||||||
|
|
||||||
_framework.Update += FrameworkUpdate;
|
_framework.Update += FrameworkUpdate;
|
||||||
_pluginInterface.UiBuilder.Draw += _windowSystem.Draw;
|
_pluginInterface.UiBuilder.Draw += _windowSystem.Draw;
|
||||||
@ -160,7 +163,7 @@ public sealed partial class DeliverooPlugin : IDalamudPlugin
|
|||||||
if (CharacterConfiguration is { IgnoreMinimumSealsToKeep: true })
|
if (CharacterConfiguration is { IgnoreMinimumSealsToKeep: true })
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
return _configuration.ReserveDifferentSealCountAtMaxRank && GetSealCap() == GetMaxSealCap()
|
return _configuration.ReserveDifferentSealCountAtMaxRank && GetSealCap() == MaxSealCap
|
||||||
? _configuration.ReservedSealCountAtMaxRank
|
? _configuration.ReservedSealCountAtMaxRank
|
||||||
: _configuration.ReservedSealCount;
|
: _configuration.ReservedSealCount;
|
||||||
}
|
}
|
||||||
|
4
Deliveroo/External/AllaganToolsIpc.cs
vendored
4
Deliveroo/External/AllaganToolsIpc.cs
vendored
@ -5,9 +5,9 @@ using Dalamud.Plugin.Ipc.Exceptions;
|
|||||||
using Dalamud.Plugin.Services;
|
using Dalamud.Plugin.Services;
|
||||||
using FFXIVClientStructs.FFXIV.Client.Game;
|
using FFXIVClientStructs.FFXIV.Client.Game;
|
||||||
|
|
||||||
namespace ARControl.External;
|
namespace Deliveroo.External;
|
||||||
|
|
||||||
public class AllaganToolsIpc
|
internal sealed class AllaganToolsIpc
|
||||||
{
|
{
|
||||||
private readonly IPluginLog _pluginLog;
|
private readonly IPluginLog _pluginLog;
|
||||||
|
|
||||||
|
1
Deliveroo/External/ExternalPluginHandler.cs
vendored
1
Deliveroo/External/ExternalPluginHandler.cs
vendored
@ -1,6 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using ARControl.External;
|
|
||||||
using Dalamud.Plugin;
|
using Dalamud.Plugin;
|
||||||
using Dalamud.Plugin.Services;
|
using Dalamud.Plugin.Services;
|
||||||
|
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Data;
|
||||||
|
using System.Diagnostics.CodeAnalysis;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using Dalamud.Game.Text;
|
using Dalamud.Game.Text;
|
||||||
using Dalamud.Plugin.Services;
|
using Dalamud.Plugin.Services;
|
||||||
@ -15,19 +17,19 @@ internal sealed class GameStrings
|
|||||||
{
|
{
|
||||||
UndertakeSupplyAndProvisioningMission =
|
UndertakeSupplyAndProvisioningMission =
|
||||||
dataManager.GetString<ComDefGrandCompanyOfficer>("TEXT_COMDEFGRANDCOMPANYOFFICER_00073_A4_002", pluginLog)
|
dataManager.GetString<ComDefGrandCompanyOfficer>("TEXT_COMDEFGRANDCOMPANYOFFICER_00073_A4_002", pluginLog)
|
||||||
?? throw new Exception($"Unable to resolve {nameof(UndertakeSupplyAndProvisioningMission)}");
|
?? throw new ConstraintException($"Unable to resolve {nameof(UndertakeSupplyAndProvisioningMission)}");
|
||||||
ClosePersonnelOfficerTalk =
|
ClosePersonnelOfficerTalk =
|
||||||
dataManager.GetString<ComDefGrandCompanyOfficer>("TEXT_COMDEFGRANDCOMPANYOFFICER_00073_A4_004", pluginLog)
|
dataManager.GetString<ComDefGrandCompanyOfficer>("TEXT_COMDEFGRANDCOMPANYOFFICER_00073_A4_004", pluginLog)
|
||||||
?? throw new Exception($"Unable to resolve {nameof(ClosePersonnelOfficerTalk)}");
|
?? throw new ConstraintException($"Unable to resolve {nameof(ClosePersonnelOfficerTalk)}");
|
||||||
ExchangeItems = dataManager.GetRegex<Addon>(3290, addon => addon.Text, pluginLog)
|
ExchangeItems = dataManager.GetRegex<Addon>(3290, addon => addon.Text, pluginLog)
|
||||||
?? throw new Exception($"Unable to resolve {nameof(ExchangeItems)}");
|
?? throw new ConstraintException($"Unable to resolve {nameof(ExchangeItems)}");
|
||||||
TradeHighQualityItem =
|
TradeHighQualityItem =
|
||||||
dataManager.GetString<Addon>(102434, addon => addon.Text, pluginLog)?.ReplaceLineEndings("")
|
dataManager.GetString<Addon>(102434, addon => addon.Text, pluginLog)?.ReplaceLineEndings("")
|
||||||
?? throw new Exception($"Unable to resolve {nameof(TradeHighQualityItem)}");
|
?? throw new ConstraintException($"Unable to resolve {nameof(TradeHighQualityItem)}");
|
||||||
|
|
||||||
var rankUpFc = dataManager.GetExcelSheet<LogMessage>()!.GetRow(3123)!;
|
var rankUpFc = dataManager.GetExcelSheet<LogMessage>()!.GetRow(3123)!;
|
||||||
RankUpFc = rankUpFc.GetRegex(logMessage => logMessage.Text, pluginLog)
|
RankUpFc = rankUpFc.GetRegex(logMessage => logMessage.Text, pluginLog)
|
||||||
?? throw new Exception($"Unable to resolve {nameof(RankUpFc)}");
|
?? throw new ConstraintException($"Unable to resolve {nameof(RankUpFc)}");
|
||||||
RankUpFcType = (XivChatType)rankUpFc.LogKind;
|
RankUpFcType = (XivChatType)rankUpFc.LogKind;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -40,7 +42,8 @@ internal sealed class GameStrings
|
|||||||
public XivChatType RankUpFcType { get; }
|
public XivChatType RankUpFcType { get; }
|
||||||
|
|
||||||
[Sheet("custom/000/ComDefGrandCompanyOfficer_00073")]
|
[Sheet("custom/000/ComDefGrandCompanyOfficer_00073")]
|
||||||
private class ComDefGrandCompanyOfficer : QuestDialogueText
|
[SuppressMessage("Performance", "CA1812")]
|
||||||
|
private sealed class ComDefGrandCompanyOfficer : QuestDialogueText
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,7 @@ using Lumina.Excel.GeneratedSheets;
|
|||||||
|
|
||||||
namespace Deliveroo.GameData;
|
namespace Deliveroo.GameData;
|
||||||
|
|
||||||
internal class ItemCache
|
internal sealed class ItemCache
|
||||||
{
|
{
|
||||||
private readonly Dictionary<string, HashSet<uint>> _itemNamesToIds = new();
|
private readonly Dictionary<string, HashSet<uint>> _itemNamesToIds = new();
|
||||||
|
|
||||||
|
@ -12,10 +12,11 @@ using Dalamud.Plugin.Services;
|
|||||||
using Deliveroo.GameData;
|
using Deliveroo.GameData;
|
||||||
using ImGuiNET;
|
using ImGuiNET;
|
||||||
using LLib;
|
using LLib;
|
||||||
|
using LLib.ImGui;
|
||||||
|
|
||||||
namespace Deliveroo.Windows;
|
namespace Deliveroo.Windows;
|
||||||
|
|
||||||
internal sealed class ConfigWindow : LImGui.LWindow
|
internal sealed class ConfigWindow : LWindow
|
||||||
{
|
{
|
||||||
private readonly DalamudPluginInterface _pluginInterface;
|
private readonly DalamudPluginInterface _pluginInterface;
|
||||||
private readonly DeliverooPlugin _plugin;
|
private readonly DeliverooPlugin _plugin;
|
||||||
@ -160,7 +161,7 @@ internal sealed class ConfigWindow : LImGui.LWindow
|
|||||||
bool addFirst = ImGui.InputTextWithHint("", "Filter...", ref _searchString, 256,
|
bool addFirst = ImGui.InputTextWithHint("", "Filter...", ref _searchString, 256,
|
||||||
ImGuiInputTextFlags.AutoSelectAll | ImGuiInputTextFlags.EnterReturnsTrue);
|
ImGuiInputTextFlags.AutoSelectAll | ImGuiInputTextFlags.EnterReturnsTrue);
|
||||||
|
|
||||||
foreach (var item in comboValues.Where(x => x.Name.ToLower().Contains(_searchString.ToLower())))
|
foreach (var item in comboValues.Where(x => x.Name.Contains(_searchString, StringComparison.OrdinalIgnoreCase)))
|
||||||
{
|
{
|
||||||
IDalamudTextureWrap? icon = _iconCache.GetIcon(item.IconId);
|
IDalamudTextureWrap? icon = _iconCache.GetIcon(item.IconId);
|
||||||
if (icon != null)
|
if (icon != null)
|
||||||
@ -314,7 +315,7 @@ internal sealed class ConfigWindow : LImGui.LWindow
|
|||||||
if (ImGui.InputInt("Minimum Seals to keep (e.g. for Squadron Missions)", ref reservedSealCount, 1000))
|
if (ImGui.InputInt("Minimum Seals to keep (e.g. for Squadron Missions)", ref reservedSealCount, 1000))
|
||||||
{
|
{
|
||||||
_configuration.ReservedSealCount =
|
_configuration.ReservedSealCount =
|
||||||
Math.Max(0, Math.Min((int)_plugin.GetMaxSealCap(), reservedSealCount));
|
Math.Max(0, Math.Min((int)_plugin.MaxSealCap, reservedSealCount));
|
||||||
Save();
|
Save();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -334,7 +335,7 @@ internal sealed class ConfigWindow : LImGui.LWindow
|
|||||||
if (ImGui.InputInt("Minimum seals to keep at max rank", ref reservedSealCountAtMaxRank))
|
if (ImGui.InputInt("Minimum seals to keep at max rank", ref reservedSealCountAtMaxRank))
|
||||||
{
|
{
|
||||||
_configuration.ReservedSealCountAtMaxRank = Math.Max(0,
|
_configuration.ReservedSealCountAtMaxRank = Math.Max(0,
|
||||||
Math.Min((int)_plugin.GetMaxSealCap(), reservedSealCountAtMaxRank));
|
Math.Min((int)_plugin.MaxSealCap, reservedSealCountAtMaxRank));
|
||||||
Save();
|
Save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,10 +15,11 @@ using FFXIVClientStructs.FFXIV.Client.Game;
|
|||||||
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
|
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
|
||||||
using ImGuiNET;
|
using ImGuiNET;
|
||||||
using LLib;
|
using LLib;
|
||||||
|
using LLib.ImGui;
|
||||||
|
|
||||||
namespace Deliveroo.Windows;
|
namespace Deliveroo.Windows;
|
||||||
|
|
||||||
internal sealed class TurnInWindow : LImGui.LWindow
|
internal sealed class TurnInWindow : LWindow
|
||||||
{
|
{
|
||||||
private static readonly IReadOnlyList<InventoryType> InventoryTypes = new[]
|
private static readonly IReadOnlyList<InventoryType> InventoryTypes = new[]
|
||||||
{
|
{
|
||||||
@ -224,13 +225,15 @@ internal sealed class TurnInWindow : LImGui.LWindow
|
|||||||
if (Multiplier <= 1.10m)
|
if (Multiplier <= 1.10m)
|
||||||
{
|
{
|
||||||
InventoryManager* inventoryManager = InventoryManager.Instance();
|
InventoryManager* inventoryManager = InventoryManager.Instance();
|
||||||
|
AgentInventoryContext* agentInventoryContext = AgentInventoryContext.Instance();
|
||||||
if (inventoryManager->GetInventoryItemCount(ItemIds.PrioritySealAllowance) > 0)
|
if (inventoryManager->GetInventoryItemCount(ItemIds.PrioritySealAllowance) > 0)
|
||||||
{
|
{
|
||||||
ImGui.BeginDisabled(_condition[ConditionFlag.OccupiedInQuestEvent] ||
|
ImGui.BeginDisabled(_condition[ConditionFlag.OccupiedInQuestEvent] ||
|
||||||
_condition[ConditionFlag.Casting]);
|
_condition[ConditionFlag.Casting] ||
|
||||||
|
agentInventoryContext == null);
|
||||||
if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Bolt, "Use Priority Seal Allowance (15%)"))
|
if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Bolt, "Use Priority Seal Allowance (15%)"))
|
||||||
{
|
{
|
||||||
AgentInventoryContext.Instance()->UseItem(ItemIds.PrioritySealAllowance);
|
agentInventoryContext->UseItem(ItemIds.PrioritySealAllowance);
|
||||||
}
|
}
|
||||||
|
|
||||||
ImGui.EndDisabled();
|
ImGui.EndDisabled();
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"version": 1,
|
"version": 1,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"net7.0-windows7.0": {
|
"net8.0-windows7.0": {
|
||||||
"DalamudPackager": {
|
"DalamudPackager": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[2.1.12, )",
|
"requested": "[2.1.12, )",
|
||||||
|
2
LLib
2
LLib
@ -1 +1 @@
|
|||||||
Subproject commit 865a6080319f8ccbcd5fd5b0004404822b6e60d4
|
Subproject commit 3792244261a9f5426a7916f5a6dd1966238ba84a
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"sdk": {
|
"sdk": {
|
||||||
"version": "7.0.0",
|
"version": "8.0.0",
|
||||||
"rollForward": "latestMinor",
|
"rollForward": "latestMinor",
|
||||||
"allowPrerelease": false
|
"allowPrerelease": false
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user