Files
MovementTests/addons/forge/resources/statescript/resolvers/RoundResolverResource.cs
Minimata e09714cf83
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 27s
Create tag and build when new code gets to main / Export (push) Successful in 7m25s
update forge
2026-05-17 00:06:44 +02:00

33 lines
920 B
C#

// Copyright © Gamesmiths Guild.
using System;
using Gamesmiths.Forge.Godot.Resources.Statescript.Resolvers.Bases;
using Gamesmiths.Forge.Statescript;
using Gamesmiths.Forge.Statescript.Properties;
using Godot;
namespace Gamesmiths.Forge.Godot.Resources.Statescript.Resolvers;
[Tool]
[GlobalClass]
public partial class RoundResolverResource : UnaryNestedResolverResourceBase
{
[Export]
public int Digits { get; set; }
[Export]
public MidpointRounding Mode { get; set; } = MidpointRounding.ToEven;
public override string ResolverTypeId => "Round";
protected override string PropertyNamePrefix => "__round";
protected override IPropertyResolver CreateResolver(IPropertyResolver operandResolver, Graph graph)
{
operandResolver = PromoteIntegralResolverToFloatingPoint(
operandResolver,
GetPreferredFloatingPointType(operandResolver));
return new RoundResolver(operandResolver, Digits, Mode);
}
}