2026-03-14 03:13:10 -04:00
|
|
|
using System;
|
|
|
|
|
using System.Collections;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using Ichni.RhythmGame.Beatmap;
|
|
|
|
|
using Lean.Pool;
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
|
|
namespace Ichni.RhythmGame
|
|
|
|
|
{
|
2026-03-19 14:14:28 -04:00
|
|
|
public partial class EnvironmentObject : SubstantialObject, IHaveDirtyMarkSubmodule
|
2026-03-14 03:13:10 -04:00
|
|
|
{
|
2026-03-19 14:14:28 -04:00
|
|
|
#region [脏数据标记] Dirty Mark Submodule
|
|
|
|
|
public DirtyMarkSubmodule dirtyMarkSubmodule { get; set; }
|
|
|
|
|
|
|
|
|
|
public virtual void OnDirtyRefresh(Dictionary<string, bool> flags)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void SetDefaultSubmodules()
|
|
|
|
|
{
|
|
|
|
|
base.SetDefaultSubmodules();
|
|
|
|
|
dirtyMarkSubmodule = new DirtyMarkSubmodule(this);
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
|
2026-03-14 03:13:10 -04:00
|
|
|
#region [标记参数] Flags
|
|
|
|
|
public bool isStatic;
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region [生命周期] Lifecycle & Factory
|
|
|
|
|
public static EnvironmentObject GenerateElement(string elementName, Guid id, List<string> tags,
|
|
|
|
|
bool isFirstGenerated, string themeBundleName, string objectName, GameElement parentElement, bool isStatic)
|
|
|
|
|
{
|
|
|
|
|
EnvironmentObject environmentObject =
|
|
|
|
|
SubstantialObject.GenerateElement(elementName, id, tags, isFirstGenerated, themeBundleName, objectName, parentElement)
|
|
|
|
|
.GetComponent<EnvironmentObject>();
|
|
|
|
|
|
|
|
|
|
environmentObject.isStatic = isStatic;
|
|
|
|
|
environmentObject.gameObject.isStatic = isStatic;
|
|
|
|
|
|
|
|
|
|
return environmentObject;
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|