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

using System;
using GameCreator.Runtime.Common;
using UnityEngine;

namespace BansheeGz.BGDatabase
{
    /// <summary>
    ///  set database float/int value  
    /// </summary>
    [Title("BGDatabase: set number")]
    [Category("BansheeGz/set number")]
    [Serializable]
    public class BGGCSetNumber : BGGCSetA
    {
        
        [SerializeField] private PropertyGetDecimal value = GetDecimalDecimal.Create(0D);

        public override string Title => "BGDatabase: set number";
        public override bool IsSupported(BGField field) => field is BGFieldInt || field is BGFieldFloat;

        protected override void Set(Args args, BGGCCell cell)
        {
            if(cell.field is BGFieldInt) cell.Value = (int)value.Get(args);
            else if(cell.field is BGFieldFloat) cell.Value = (float)value.Get(args);
        }
    }
}