架构重新设计

基本重做了所有物体和次级模块代码
This commit is contained in:
SoulliesOfficial
2025-02-08 02:31:39 -05:00
parent 752c9b73e3
commit 7ab738cb68
44 changed files with 1320 additions and 847 deletions

View File

@@ -4,23 +4,25 @@ using System.Collections.Generic;
using System.Linq;
using Unity.Mathematics;
using UnityEngine;
using UnityEngine.Serialization;
namespace Ichni.RhythmGame
{
public abstract class AnimationBase : BaseElement
public abstract class AnimationBase : GameElement, IHaveTimeDurationSubmodule
{
public BaseElement targetObject;
public GameElement animatedObject;
public FlexibleReturnType animationReturnType;
//public ICanHaveAnimation target;
public override void Initialize(string elementName, Guid id, List<string> tags)
public TimeDurationSubmodule timeDurationSubmodule { get; set; }
protected override void SetDefaultSubmodules()
{
base.Initialize(elementName, id, tags);
timeDurationSubmodule = new TimeDurationSubmodule(this);
submoduleList.Add(timeDurationSubmodule);
}
protected abstract void UpdateAnimation(float songTime);
protected virtual void Update()
{
if (timeDurationSubmodule.CheckTimeInDuration(EditorManager.instance.songModule.songTime))
@@ -29,4 +31,22 @@ namespace Ichni.RhythmGame
}
}
}
namespace Beatmap
{
public abstract class AnimationBase_BM : GameElement_BM
{
public AnimationBase_BM()
{
}
public AnimationBase_BM(string elementName, Guid elementGuid, List<string> tags,
GameElement_BM attachedElement) : base(elementName, elementGuid, tags, attachedElement)
{
}
}
}
}