Functions/Custom/DiceFunction.cs
using System;
using Expressive.Expressions;
using Sandbox;
namespace Expressive.Functions.Custom;
public class DiceFunction : FunctionBase
{
public override string Name { get { return "Dice"; } }
public override object Evaluate( IExpression[] parameters, Context context )
{
var numbDice = Convert.ToInt32( parameters[0].Evaluate( Variables ) );
var diceNumber = Convert.ToInt32( parameters[1].Evaluate( Variables ) );
var total = 0;
for ( var i = 0; i < numbDice; i++ )
{
total += Game.Random.Next( 1, diceNumber + 1 );
}
return total;
}
}