using UnityEngine; using System.Text; using System; namespace Fruitomation.Game { public enum CurrencyMagnitude { Ones, Thousands, Millions, Billions, Trillions } [Serializable] public class CurrencyAmount { [SerializeField] private CurrencyMagnitude Magnitude; [SerializeField] private float Ammount; public string AsString() { StringBuilder builder = new(); builder.Append( Ammount > 10f ? $"${Ammount:I}" : $"${Ammount:F1}" ); switch (Magnitude) { case CurrencyMagnitude.Ones: break; case CurrencyMagnitude.Thousands: builder.Append("K"); break; case CurrencyMagnitude.Millions: builder.Append("M"); break; case CurrencyMagnitude.Billions: builder.Append("B"); break; case CurrencyMagnitude.Trillions: builder.Append("T"); break; default: throw new ArgumentOutOfRangeException(); } return builder.ToString(); } } }