ParticleEffect出现无法加载完成的异常

This commit is contained in:
2025-11-30 17:33:26 +08:00
parent 0b80d0a775
commit 430209c948
5 changed files with 66 additions and 45 deletions

View File

@@ -1,14 +1,14 @@
using Convention;
using Convention.RScript;
using Convention.WindowsUI.Variant;
using Demo.Game;
using Dreamteck.Splines;
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text.RegularExpressions;
using Convention;
using Convention.RScript;
using Convention.WindowsUI.Variant;
using Demo.Game;
using Dreamteck.Splines;
using Unity.VisualScripting;
using UnityEngine;
@@ -76,6 +76,15 @@ namespace Demo
public Spline.Type CatmullRom => Spline.Type.CatmullRom;
public Spline.Type Bezier => Spline.Type.Bezier;
}
public class IEffectHookObjectInstance
{
public static IEffectHookObjectInstance instance = new();
public IEffectHookObject.InteractiveEffectType VisibleDuration => IEffectHookObject.InteractiveEffectType.VisibleDuration;
public IEffectHookObject.InteractiveEffectType InteractiveDuration => IEffectHookObject.InteractiveEffectType.InteractiveDuration;
public IEffectHookObject.InteractiveEffectType InteractableScoreInterval => IEffectHookObject.InteractiveEffectType.InteractableScoreInterval;
public IEffectHookObject.InteractiveEffectType InteractableIntervalThatCanScoreBest => IEffectHookObject.InteractiveEffectType.InteractableIntervalThatCanScoreBest;
}
}
public partial class ScriptableObject : IScriptableObject
@@ -204,7 +213,7 @@ namespace Demo
public ScriptableObject Parent;
public readonly List<ScriptableObject> Childs = new();
public readonly List<ScriptableObject> UpdateChilds = new();
[Content, SerializeField] private List<ScriptableObject> UpdateChilds = new();
/// <summary>
/// 获取根脚本对象
@@ -490,6 +499,8 @@ namespace Demo
new() { data = PrivateType.SplineComputerSampleModeInstance.instance, type = typeof(PrivateType.SplineComputerSampleModeInstance)} },
{ $"Spline{nameof(Spline.Type)}",
new() { data = PrivateType.SplineTypeInstance.instance, type = typeof(PrivateType.SplineTypeInstance)} },
{ nameof(IEffectHookObject.InteractiveEffectType),
new() { data = PrivateType.IEffectHookObjectInstance.instance, type = typeof(PrivateType.IEffectHookObjectInstance)} }
};
foreach (var ir in engine.RunAsync(script, importClass, variables).Yield())
@@ -530,7 +541,7 @@ namespace Demo
else
{
// UpdateTicks
if (UpdatePerFrame > 0)
if (this.IsSelfEnableUpdate && UpdatePerFrame > 0)
{
if (ScriptUpdateCounter % UpdatePerFrame == 0)
UpdateTicks(currentTime, deltaTime, tickType);
@@ -751,7 +762,6 @@ namespace Demo
public static IEnumerator LoadAssetBundle(this IAssetBundleLoader self, string ab, Action<AssetBundle> callback)
{
Debug.Log($"{self.SharedInterfaceScriptObject.ScriptName}.{nameof(LoadAssetBundle)}({ab})", self.SharedInterfaceScriptObject);
yield return LoadAssetBundleAsync(ab, callback);
}