/*
<copyright file="BGGCCount.cs" company="BansheeGz">
    Copyright (c) 2018-2022 All Rights Reserved
</copyright>
*/

using System;
using System.Threading.Tasks;
using GameCreator.Runtime.Common;
using GameCreator.Runtime.Variables;
using UnityEngine;

namespace BansheeGz.BGDatabase
{
    /// <summary>
    /// Count table rows
    /// </summary>
    [Title("BGDatabase: count entities")]
    [Category("BansheeGz/count entities")]
    [Serializable]
    public class BGGCCount : BGGCTableA
    {
        [SerializeField] private PropertySetNumber saveToVar = SetNumberGlobalName.Create;

        public override string Title => "BGDatabase: Count entities";

        protected override Task Run(Args args)
        {
            var meta = Meta;
            if (meta == null) Debug.Log("WARNING! BGDatabase: meta is not defined!");
            else saveToVar.Set(meta.CountEntities, args);

            return DefaultResult;
        }
    }
}