Files
2025-05-29 22:31:40 +03:00

39 lines
861 B
C#

using UnityEngine;
namespace Obi
{
[RequireComponent(typeof(ObiActor))]
public class SetCategory : MonoBehaviour
{
public int category;
private ObiActor act;
private void Awake()
{
act = GetComponent<ObiActor>();
act.OnBlueprintLoaded += OnLoad;
if (act.isLoaded)
act.SetFilterCategory(category);
}
private void OnDestroy()
{
act.OnBlueprintLoaded -= OnLoad;
}
private void OnValidate()
{
category = Mathf.Clamp(category, ObiUtils.MinCategory, ObiUtils.MaxCategory);
if (act != null && act.isLoaded)
act.SetFilterCategory(category);
}
private void OnLoad(ObiActor actor, ObiActorBlueprint blueprint)
{
actor.SetFilterCategory(category);
}
}
}