Update Renderer utility to API 11
authorLiza Carvelli <liza@carvel.li>
Tue, 19 Nov 2024 14:57:15 +0000 (15:57 +0100)
committerLiza Carvelli <liza@carvel.li>
Tue, 19 Nov 2024 14:57:15 +0000 (15:57 +0100)
GatheringPathRenderer/EditorCommands.cs
GatheringPathRenderer/RendererPlugin.cs
GatheringPathRenderer/Windows/EditorWindow.cs

index 2e9edad5d0cd1273ec54e7b24817154ec00e424d..ae0247ae0def2a4e1ac6ad822336b9fe742d8f76 100644 (file)
@@ -3,16 +3,12 @@ using System.Collections.Generic;
 using System.IO;
 using System.Linq;
 using System.Numerics;
-using System.Text.Json;
-using System.Text.Json.Nodes;
-using System.Text.Json.Serialization;
-using System.Text.Json.Serialization.Metadata;
 using Dalamud.Game.ClientState.Objects;
 using Dalamud.Game.ClientState.Objects.Enums;
 using Dalamud.Game.ClientState.Objects.Types;
 using Dalamud.Game.Command;
 using Dalamud.Plugin.Services;
-using Lumina.Excel.GeneratedSheets;
+using Lumina.Excel.Sheets;
 using Questionable.Model;
 using Questionable.Model.Gathering;
 using Questionable.Model.Questing;
@@ -70,14 +66,14 @@ internal sealed class EditorCommands : IDisposable
         if (target == null || target.ObjectKind != ObjectKind.GatheringPoint)
             throw new Exception("No valid target");
 
-        var gatheringPoint = _dataManager.GetExcelSheet<GatheringPoint>()!.GetRow(target.DataId);
+        var gatheringPoint = _dataManager.GetExcelSheet<GatheringPoint>().GetRowOrDefault(target.DataId);
         if (gatheringPoint == null)
             throw new Exception("Invalid gathering point");
 
         FileInfo targetFile;
         GatheringRoot root;
         var locationsInTerritory = _plugin.GetLocationsInTerritory(_clientState.TerritoryType).ToList();
-        var location = locationsInTerritory.SingleOrDefault(x => x.Id == gatheringPoint.GatheringPointBase.Row);
+        var location = locationsInTerritory.SingleOrDefault(x => x.Id == gatheringPoint.Value.GatheringPointBase.RowId);
         if (location != null)
         {
             targetFile = location.File;
@@ -96,7 +92,7 @@ internal sealed class EditorCommands : IDisposable
         }
         else
         {
-            (targetFile, root) = CreateNewFile(gatheringPoint, target);
+            (targetFile, root) = CreateNewFile(gatheringPoint.Value, target);
             _chatGui.Print($"Creating new file under {targetFile.FullName}", "qG");
         }
 
@@ -174,16 +170,16 @@ internal sealed class EditorCommands : IDisposable
             ?.File.Directory;
         if (targetFolder == null)
         {
-            var territoryInfo = _dataManager.GetExcelSheet<TerritoryType>()!.GetRow(_clientState.TerritoryType)!;
+            var territoryInfo = _dataManager.GetExcelSheet<TerritoryType>().GetRow(_clientState.TerritoryType);
             targetFolder = _plugin.PathsDirectory
-                .CreateSubdirectory(ExpansionData.ExpansionFolders[(EExpansionVersion)territoryInfo.ExVersion.Row])
-                .CreateSubdirectory(territoryInfo.PlaceName.Value!.Name.ToString());
+                .CreateSubdirectory(ExpansionData.ExpansionFolders[(EExpansionVersion)territoryInfo.ExVersion.RowId])
+                .CreateSubdirectory(territoryInfo.PlaceName.Value.Name.ToString());
         }
 
         FileInfo targetFile =
             new FileInfo(
                 Path.Combine(targetFolder.FullName,
-                    $"{gatheringPoint.GatheringPointBase.Row}_{gatheringPoint.PlaceName.Value!.Name}_{(_clientState.LocalPlayer!.ClassJob.Id == 16 ? "MIN" : "BTN")}.json"));
+                    $"{gatheringPoint.GatheringPointBase.RowId}_{gatheringPoint.PlaceName.Value.Name}_{(_clientState.LocalPlayer!.ClassJob.RowId == 16 ? "MIN" : "BTN")}.json"));
         var root = new GatheringRoot
         {
             Author = [_configuration.AuthorName],
index dbad17157c6b85583417544b5062698274c9eec8..5ef430eaea0928e070ff80d19752524bfcbf378d 100644 (file)
@@ -59,7 +59,7 @@ public sealed class RendererPlugin : IDalamudPlugin
         _editorWindow = new EditorWindow(this, _editorCommands, dataManager, targetManager, clientState, objectTable)
             { IsOpen = true };
         _windowSystem.AddWindow(_editorWindow);
-        _currentClassJob = (EClassJob?)_clientState.LocalPlayer?.ClassJob.Id ?? EClassJob.Adventurer;
+        _currentClassJob = (EClassJob?)_clientState.LocalPlayer?.ClassJob.RowId ?? EClassJob.Adventurer;
 
         _pluginInterface.GetIpcSubscriber<object>("Questionable.ReloadData")
             .Subscribe(Reload);
index 55f9a5c204fc1a8342758c20f9b4ccfac2fcbc3f..1150558fa3a0e743713c87fc5d1950f7e341f7e7 100644 (file)
@@ -1,7 +1,6 @@
 using System;
 using System.Collections.Generic;
 using System.Globalization;
-using System.IO;
 using System.Linq;
 using System.Numerics;
 using Dalamud.Game.ClientState.Objects;
@@ -11,7 +10,7 @@ using Dalamud.Interface.Colors;
 using Dalamud.Interface.Windowing;
 using Dalamud.Plugin.Services;
 using ImGuiNET;
-using Lumina.Excel.GeneratedSheets;
+using Lumina.Excel.Sheets;
 using Questionable.Model.Gathering;
 
 namespace GatheringPathRenderer.Windows;
@@ -205,12 +204,12 @@ internal sealed class EditorWindow : Window
         }
         else if (_target != null)
         {
-            var gatheringPoint = _dataManager.GetExcelSheet<GatheringPoint>()!.GetRow(_target.DataId);
+            var gatheringPoint = _dataManager.GetExcelSheet<GatheringPoint>().GetRowOrDefault(_target.DataId);
             if (gatheringPoint == null)
                 return;
 
             var locationsInTerritory = _plugin.GetLocationsInTerritory(_clientState.TerritoryType).ToList();
-            var location = locationsInTerritory.SingleOrDefault(x => x.Id == gatheringPoint.GatheringPointBase.Row);
+            var location = locationsInTerritory.SingleOrDefault(x => x.Id == gatheringPoint.Value.GatheringPointBase.RowId);
             if (location != null)
             {
                 var targetFile = location.File;
@@ -234,9 +233,9 @@ internal sealed class EditorWindow : Window
             }
             else
             {
-                if (ImGui.Button($"Create location ({gatheringPoint.GatheringPointBase.Row})"))
+                if (ImGui.Button($"Create location ({gatheringPoint.Value.GatheringPointBase.RowId})"))
                 {
-                    var (targetFile, root) = _editorCommands.CreateNewFile(gatheringPoint, _target);
+                    var (targetFile, root) = _editorCommands.CreateNewFile(gatheringPoint.Value, _target);
                     _plugin.Save(targetFile, root);
                 }
             }