71 lines
1.7 KiB
C#
71 lines
1.7 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using Ichni.Editor;
|
|
using Ichni.RhythmGame.Beatmap;
|
|
using Sirenix.OdinInspector;
|
|
using UniRx;
|
|
using UnityEngine;
|
|
|
|
namespace Ichni.RhythmGame
|
|
{
|
|
public interface IBaseElement
|
|
{
|
|
public BaseElement_BM matchedBM { get; set; }
|
|
|
|
/// <summary>
|
|
/// 用于生成存档
|
|
/// </summary>
|
|
public void SaveBM();
|
|
|
|
/// <summary>
|
|
/// 刷新物体的状态
|
|
/// </summary>
|
|
public void Refresh();
|
|
|
|
/// <summary>
|
|
/// 当物体被删除时执行的方法
|
|
/// </summary>
|
|
public void OnDelete()
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除物体,包括所有子物体
|
|
/// </summary>
|
|
public void Delete()
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
public Inspector inspector => EditorManager.instance.uiManager.inspector;
|
|
public void SetUpInspector();
|
|
}
|
|
|
|
// public virtual void SetTimeDuration()
|
|
// {
|
|
//
|
|
// }
|
|
//
|
|
// public void ApplyTimeDuration()
|
|
// {
|
|
// childElementList.ForEach(x => x.ApplyTimeDuration());
|
|
// timeDurationSubmodule?.SetDurationFromChildren(
|
|
// childElementList.Select(x => x.timeDurationSubmodule).ToList());
|
|
// }
|
|
//
|
|
|
|
|
|
namespace Beatmap
|
|
{
|
|
public abstract class BaseElement_BM
|
|
{
|
|
/// <summary>
|
|
/// 从存档类中生成游戏物体
|
|
/// </summary>
|
|
public abstract void ExecuteBM();
|
|
}
|
|
}
|
|
} |