rj-action-library/Runtime/Tools/Boxed/FloatValue.cs

60 lines
1.1 KiB
C#
Raw Normal View History

2025-05-27 20:07:15 +00:00
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System;
using Godot;
namespace Rokojori
{
[Tool]
[GlobalClass]
2025-06-19 17:22:25 +00:00
public partial class FloatValue:BoxedFloatValue
2025-05-27 20:07:15 +00:00
{
[Export]
public float value;
2025-06-19 17:22:25 +00:00
public override float GetFloatValue()
2025-05-27 20:07:15 +00:00
{
2025-06-19 17:22:25 +00:00
return value;
2025-05-27 20:07:15 +00:00
}
2025-06-19 17:22:25 +00:00
public override void SetFloatValue( float value )
{
this.value = value;
}
2025-05-27 20:07:15 +00:00
public static FloatValue Create( float value )
{
var fv = new FloatValue();
fv.value = value;
return fv;
}
public static FloatValue Create( double value )
{
return Create( (float) value );
}
2025-05-27 20:07:15 +00:00
public static FloatValue Clone( FloatValue value, bool deepClone )
{
if ( deepClone )
{
return value == null ? null : Create( value.value );
}
return value;
}
2025-06-19 17:22:25 +00:00
public static FloatValue Create( BoxedFloatValue floatValue )
2025-05-27 20:07:15 +00:00
{
2025-06-19 17:22:25 +00:00
if ( floatValue == null )
2025-05-27 20:07:15 +00:00
{
2025-06-19 17:22:25 +00:00
return null;
2025-05-27 20:07:15 +00:00
}
2025-06-19 17:22:25 +00:00
return new FloatValue { value = floatValue.GetFloatValue() };
}
2025-05-27 20:07:15 +00:00
}
}