mirror of
https://github.com/bdunderscore/modular-avatar.git
synced 2025-04-24 13:29:01 +08:00
fix: menu item with float value incorrectly generates bool parameter
This commit is contained in:
parent
c80d24ea46
commit
988eb9cf3a
@ -115,8 +115,7 @@ namespace nadena.dev.modular_avatar.core.editor
|
|||||||
|
|
||||||
var nextValue = 1;
|
var nextValue = 1;
|
||||||
|
|
||||||
var canBeBool = true;
|
var valueType = VRCExpressionParameters.ValueType.Bool;
|
||||||
var canBeInt = true;
|
|
||||||
var isSaved = false;
|
var isSaved = false;
|
||||||
var isSynced = false;
|
var isSynced = false;
|
||||||
|
|
||||||
@ -137,10 +136,14 @@ namespace nadena.dev.modular_avatar.core.editor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Mathf.Abs(mami.Control.value - Mathf.Round(mami.Control.value)) > 0.01f)
|
var type =
|
||||||
canBeInt = false;
|
Mathf.Abs(mami.Control.value - Mathf.Round(mami.Control.value)) > 0.01f ? VRCExpressionParameters.ValueType.Float
|
||||||
else
|
: mami.Control.value < 0 || mami.Control.value > 1 ? VRCExpressionParameters.ValueType.Int
|
||||||
canBeBool &= mami.Control.value is >= 0 and <= 1;
|
: VRCExpressionParameters.ValueType.Bool;
|
||||||
|
if (valueType == VRCExpressionParameters.ValueType.Bool || type == VRCExpressionParameters.ValueType.Float)
|
||||||
|
{
|
||||||
|
valueType = type;
|
||||||
|
}
|
||||||
|
|
||||||
isSaved |= mami.isSaved;
|
isSaved |= mami.isSaved;
|
||||||
isSynced |= mami.isSynced;
|
isSynced |= mami.isSynced;
|
||||||
@ -148,15 +151,10 @@ namespace nadena.dev.modular_avatar.core.editor
|
|||||||
|
|
||||||
if (!declaredParams.ContainsKey(paramName))
|
if (!declaredParams.ContainsKey(paramName))
|
||||||
{
|
{
|
||||||
VRCExpressionParameters.ValueType newType;
|
|
||||||
if (canBeBool) newType = VRCExpressionParameters.ValueType.Bool;
|
|
||||||
else if (canBeInt) newType = VRCExpressionParameters.ValueType.Int;
|
|
||||||
else newType = VRCExpressionParameters.ValueType.Float;
|
|
||||||
|
|
||||||
var newParam = new VRCExpressionParameters.Parameter
|
var newParam = new VRCExpressionParameters.Parameter
|
||||||
{
|
{
|
||||||
name = paramName,
|
name = paramName,
|
||||||
valueType = newType,
|
valueType = valueType,
|
||||||
saved = isSaved,
|
saved = isSaved,
|
||||||
defaultValue = defaultValue,
|
defaultValue = defaultValue,
|
||||||
networkSynced = isSynced
|
networkSynced = isSynced
|
||||||
|
Loading…
x
Reference in New Issue
Block a user