// Start is called before the first frame update void Start() { CombatEntity = EntityFactory.Create <CombatEntity>(); CombatEntity.ListenActionPoint(ActionPointType.PostReceiveDamage, OnReceiveDamage); CombatEntity.ListenActionPoint(ActionPointType.PostReceiveCure, OnReceiveCure); if (name == "Monster") { CombatEntity.ListenActionPoint(ActionPointType.PostReceiveStatus, ReceiveStatus); CombatEntity.Subscribe <StatusRemoveEvent>(OnStatusRemove).AsCoroutine(); } var config = Resources.Load <StatusConfigObject>("StatusConfigs/Status_Tenacity_坚韧"); var Status = CombatEntity.ReceiveStatus <StatusTenacity>(config); Status.Caster = CombatEntity; Status.TryActivateAbility(); }