2019-04-07 10:03:16 -04:00
|
|
|
using UnityEngine;
|
2018-10-30 15:05:06 -04:00
|
|
|
|
|
|
|
namespace UnityAtoms
|
|
|
|
{
|
2019-10-15 16:32:06 -04:00
|
|
|
/// <summary>
|
2020-02-16 06:44:46 -05:00
|
|
|
/// Variable of type `int`. Inherits from `EquatableAtomVariable<int, IntEvent, IntIntEvent, IntIntFunction>`.
|
2019-10-15 16:32:06 -04:00
|
|
|
/// </summary>
|
2019-10-14 10:51:54 -04:00
|
|
|
[EditorIcon("atom-icon-lush")]
|
2019-05-29 12:52:27 -04:00
|
|
|
[CreateAssetMenu(menuName = "Unity Atoms/Variables/Int", fileName = "IntVariable")]
|
2020-02-16 06:44:46 -05:00
|
|
|
public sealed class IntVariable : EquatableAtomVariable<int, IntEvent, IntIntEvent, IntIntFunction>
|
2018-10-30 15:05:06 -04:00
|
|
|
{
|
2020-02-23 17:07:49 -05:00
|
|
|
/// <summary>
|
|
|
|
/// Add value to Variable.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="value">Value to add.</param>
|
|
|
|
public void Add(int value) => Value += value;
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Add variable value to Variable.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="variable">Variable with value to add.</param>
|
|
|
|
public void Add(AtomBaseVariable<int> variable) => Add(variable.Value);
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Subtract value from Variable.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="value">Value to subtract.</param>
|
|
|
|
public void Subtract(int value) => Value -= value;
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Subtract variable value from Variable.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="variable">Variable with value to subtract.</param>
|
|
|
|
public void Subtract(AtomBaseVariable<int> variable) => Subtract(variable.Value);
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Multiply variable by value.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="value">Value to multiple by.</param>
|
|
|
|
public void MultiplyBy(int value) => Value *= value;
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Multiply variable by Variable value.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="variable">Variable with value to multiple by.</param>
|
|
|
|
public void MultiplyBy(AtomBaseVariable<int> variable) => MultiplyBy(variable.Value);
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Divide Variable by value.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="value">Value to divide by.</param>
|
|
|
|
public void DivideBy(int value) => Value /= value;
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Divide Variable by Variable value.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="variable">Variable value to divide by.</param>
|
|
|
|
public void DivideBy(AtomBaseVariable<int> variable) => DivideBy(variable.Value);
|
2018-10-30 15:05:06 -04:00
|
|
|
}
|
2019-04-07 05:10:09 -04:00
|
|
|
}
|