ResoniteModdingGroup / MonkeyLoader.GamePacks.Resonite

MonkeyLoader Game Pack which provides hooks for Resonite mods.
https://resonitemoddinggroup.github.io/MonkeyLoader.GamePacks.Resonite/
GNU Lesser General Public License v3.0
15 stars 2 forks source link

Create flexible DataFeedInjector system to allow for arbitrary item injection and result replacement #23

Closed Banane9 closed 2 months ago

Banane9 commented 6 months ago

Closes #6 and #9.

Banane9 commented 2 months ago

If you want to test this, you also need the latest version of MonkeyLoader - make sure to move the new EnumerableToolkit* dependencies to the Resonite/MonkeyLoader/ folder too

Nytra commented 2 months ago

Settings template injection not working

Edit: fixed

Nytra commented 2 months ago

Requires System.Linq.Async which isn't included with MonkeyLoader

Nytra commented 2 months ago
Cannot yield to world, origin CoroutineManager is null!

   at void Elements.Core.UniLog.Error(string message, bool stackTrace)
   at void FrooxEngine.NextUpdate.OnCompleted(Action continuation)
   at void System.Runtime.CompilerServices.AsyncTaskMethodBuilder<System.Threading.Tasks.VoidTaskResult>.AwaitOnCompleted<NextUpdate, <<-ctor>b__25_0>d>(ref NextUpdate awaiter, ref <<-ctor>b__25_0>d stateMachine)
   at void System.Runtime.CompilerServices.AsyncTaskMethodBuilder.AwaitOnCompleted<NextUpdate, <<-ctor>b__25_0>d>(ref NextUpdate awaiter, ref <<-ctor>b__25_0>d stateMachine)
   at async MonkeyLoader.Resonite.DataFeeds.Settings.SettingsViewData(SettingsDataFeed dataFeed)+(?) => { }
   at void System.Runtime.CompilerServices.AsyncTaskMethodBuilder.Start<<<-ctor>b__25_0>d>(ref <<-ctor>b__25_0>d stateMachine)
   at MonkeyLoader.Resonite.DataFeeds.Settings.SettingsViewData(SettingsDataFeed dataFeed)+() => { }
   at Task FrooxEngine.ComponentBase<C>.RunSynchronouslyAsync(Action action, bool immediatellyIfPossible)+() => { }
   at void FrooxEngine.World.RunSynchronousActions()
   at void FrooxEngine.World.NextRefreshStage()
   at bool FrooxEngine.World.Refresh()
   at void FrooxEngine.WorldManager.UpdateStep()
   at bool FrooxEngine.WorldManager.RunUpdateLoop()
   at void FrooxEngine.Engine.UpdateStep()
   at void FrooxEngine.Engine.RunUpdateLoop()
   at void UnityFrooxEngineRunner.FrooxEngineRunner.UpdateFrooxEngine()
   at void UnityFrooxEngineRunner.FrooxEngineRunner.Update()

Edit: fixed