Files
TheVVaS-Assets/RPGCore/Runtime/Core/Objects/UnitObject.cs
T

26 lines
921 B
C#

using System;
using RPGCore.ObjectModules.ActionObjectModule;
using RPGCoreCommon.DynamicValues;
using RPGCoreCommon.Helpers.PropertyAttributeDrawers;
using UnityEngine;
namespace RPGCore.Core.Objects
{
[RequireComponent(typeof(CapsuleCollider))]
[RequireComponent(typeof(ActionModule))]
public class UnitObject : BaseObject
{
[DynamicValueProvider]
private ObjectModule<UnitObject> UnitModuleProvider(Type moduleType) => GetComponent(moduleType) as ObjectModule<UnitObject>;
[field: SerializeField, ReadOnly] public CapsuleCollider unitCollider { get; private set; }
[field: SerializeField, ReadOnly] public ActionModule actions { get; private set; }
protected new void OnValidate()
{
base.OnValidate();
actions = GetComponent<ActionModule>();
unitCollider = GetComponent<CapsuleCollider>();
}
}
}