using System;
using Unity.VisualScripting;
using UnityEngine;
using Object = UnityEngine.Object;

namespace BansheeGz.BGDatabase
{
    [UnitShortTitle("Entity added Event")]
    [UnitTitle("Entity added Event")]
    [UnitSubtitle("Fires when new entity is added")]
    [UnitCategory("Events/BansheeGz")]
    public class BGBoltEntityAddedEvent : BGBoltEntityAbstractEvent
    {
        protected override string hookName => nameof(BGBoltEntityAddedEvent);

        protected override void AddListener(BGId tableId, EventHandler<BGEventArgsAnyEntity> handler)
        {
            BGRepo.I.Events.AddAnyEntityAddedListener(tableId, handler);
        }

        protected override void RemoveListener(BGId tableId, EventHandler<BGEventArgsAnyEntity> handler)
        {
            BGRepo.I.Events.RemoveAnyEntityAddedListener(tableId, handler);
        }
    }
}