public static float GetValue(this AvatarParameter parameter) { if (parameter == null) { return(0f); } return(parameter.field_Private_ParameterType_0 switch { AvatarParameter.ParameterType.Bool => parameter.prop_Boolean_1 ? 1f : 0f, AvatarParameter.ParameterType.Int => parameter.prop_Int32_1, AvatarParameter.ParameterType.Float => parameter.prop_Single_0, _ => 0f, });
public Parameter(AvatarParameter src) { type = src.field_Private_ParameterType_0; switch (type) { case AvatarParameter.ParameterType.Bool: val_bool = src.prop_Boolean_1; break; case AvatarParameter.ParameterType.Int: val_int = src.prop_Int32_1; break; case AvatarParameter.ParameterType.Float: val_float = src.prop_Single_0; break; } }
public void Apply(AvatarParameter dst) { switch (type) { case AvatarParameter.ParameterType.Bool: dst.SetBoolProperty(val_bool); break; case AvatarParameter.ParameterType.Int: dst.SetIntProperty(val_int); break; case AvatarParameter.ParameterType.Float: dst.SetFloatProperty(val_float); break; } dst.Lock(); }
public static void SetValue(this AvatarParameter parameter, float value) { if (parameter == null) { return; } /* Call original delegate to avoid self MITM */ switch (parameter.field_Private_ParameterType_0) { case AvatarParameter.ParameterType.Bool: _boolPropertySetterDelegate(parameter.Pointer, value != 0.0f); break; case AvatarParameter.ParameterType.Int: _intPropertySetterDelegate(parameter.Pointer, (int)value); break; case AvatarParameter.ParameterType.Float: _floatPropertySetterDelegate(parameter.Pointer, value); break; } }