Skip to content

Commit c03350b

Browse files
committed
net9 and clear proxy list refs
1 parent da05c9f commit c03350b

3 files changed

Lines changed: 31 additions & 13 deletions

File tree

ArrayEditing/ArrayEditing.csproj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<PackageId>ArrayEditing</PackageId>
1010
<Title>Array Editing</Title>
1111
<Authors>Banane9, Nytra</Authors>
12-
<Version>1.0.1</Version>
12+
<Version>1.1.0</Version>
1313
<Description>Adds proxy list UI for editing arrays in inspectors. Also improves the look of list UI a bit.</Description>
1414
<PackageLicenseExpression>LGPL-3.0-or-later</PackageLicenseExpression>
1515
<PackageProjectUrl>https://github.com/ResoniteModdingGroup/ArrayEditing</PackageProjectUrl>
@@ -36,18 +36,18 @@
3636
</ItemGroup>
3737

3838
<ItemGroup>
39-
<PackageReference Include="MicroUtils.HarmonyAnalyzers" Version="1.3.1">
39+
<PackageReference Include="MicroUtils.HarmonyAnalyzers" Version="1.6.1">
4040
<PrivateAssets>all</PrivateAssets>
4141
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
4242
</PackageReference>
43-
<PackageReference Include="MonkeyLoader.GamePacks.Resonite" Version="0.21.2-beta" GeneratePathProperty="true" />
43+
<PackageReference Include="MonkeyLoader.GamePacks.Resonite" Version="0.24.1-beta" GeneratePathProperty="true" />
4444
<PackageReference Include="PolySharp" Version="1.15.0">
4545
<PrivateAssets>all</PrivateAssets>
4646
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
4747
</PackageReference>
48-
<PackageReference Include="Resonite.Elements.Core" Version="1.4.3" />
49-
<PackageReference Include="Resonite.FrooxEngine" Version="2025.1.17.6" />
50-
<PackageReference Include="System.Text.Json" Version="9.0.2">
48+
<PackageReference Include="Resonite.Elements.Core" Version="1.4.9.4" />
49+
<PackageReference Include="Resonite.FrooxEngine" Version="2025.8.28.607" />
50+
<PackageReference Include="System.Text.Json" Version="9.0.1">
5151
<PrivateAssets>all</PrivateAssets>
5252
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
5353
</PackageReference>

ArrayEditing/ArrayEditor.cs

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
using Elements.Core;
2-
using FrooxEngine.UIX;
2+
using EnumerableToolkit;
33
using FrooxEngine;
4+
using FrooxEngine.UIX;
45
using HarmonyLib;
56
using MonkeyLoader.Patching;
7+
using MonkeyLoader.Resonite;
8+
using MonkeyLoader.Resonite.UI.Inspectors;
69
using System;
7-
using System.Diagnostics.CodeAnalysis;
810
using System.Collections.Generic;
11+
using System.Diagnostics.CodeAnalysis;
912
using System.Linq;
1013
using System.Reflection;
11-
using EnumerableToolkit;
12-
using MonkeyLoader.Resonite;
13-
using MonkeyLoader.Resonite.UI.Inspectors;
1414

1515
namespace ArrayEditing
1616
{
@@ -403,6 +403,24 @@ private static bool BuildArray(ISyncArray array, string name, FieldInfo fieldInf
403403
SyncMemberEditorBuilder.BuildList(list, name, listField, ui);
404404
var listSlot = ui.Current;
405405
listSlot.DestroyWhenLocalUserLeaves();
406+
407+
ClearRefs(listSlot);
408+
list.Changed += (IChangeable change) =>
409+
{
410+
ClearRefs(listSlot);
411+
};
412+
void ClearRefs(Slot listSlot)
413+
{
414+
if (listSlot == null || listSlot.IsRemoved) return;
415+
listSlot.World.RunInUpdates(3, () =>
416+
{
417+
if (listSlot == null || listSlot.IsRemoved) return;
418+
foreach (var refProxySource in listSlot.GetComponentsInChildren<ReferenceProxySource>())
419+
{
420+
refProxySource.Reference.Target = null;
421+
}
422+
});
423+
}
406424
void ArrayDriveCheck(IChangeable changeable)
407425
{
408426
if (((ISyncArray)changeable).IsDriven)

Directory.Build.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project>
22
<PropertyGroup>
33
<OutputType>Library</OutputType>
4-
<TargetFramework>netstandard2.0</TargetFramework>
4+
<TargetFramework>net9.0</TargetFramework>
55
<AssemblyFileName>$(AssemblyTitle).dll</AssemblyFileName>
66
<LangVersion>12.0</LangVersion>
77
<Nullable>enable</Nullable>
@@ -38,6 +38,6 @@
3838
<ResonitePath Condition="Exists('C:\Program Files (x86)\Steam\steamapps\common\Resonite\')">C:\Program Files (x86)\Steam\steamapps\common\Resonite</ResonitePath>
3939
<ResonitePath Condition="Exists('$(HOME)/.steam/steam/steamapps/common/Resonite/')">$(HOME)/.steam/steam/steamapps/common/Resonite</ResonitePath>
4040
<ResonitePath Condition="Exists('D:/Files/Games/Resonite/app/')">D:/Files/Games/Resonite/app</ResonitePath>
41-
<ResonitePath Condition="Exists('G:\SteamLibrary\steamapps\common\Resonite\')">G:\SteamLibrary\steamapps\common\Resonite</ResonitePath>
41+
<ResonitePath Condition="Exists('G:\SteamLibrary\steamapps\common\Resonite\')">G:\SteamLibrary\steamapps\common\Resonite</ResonitePath>
4242
</PropertyGroup>
4343
</Project>

0 commit comments

Comments
 (0)