Ejemplo n.º 1
0
 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,
     });
Ejemplo n.º 2
0
            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;
                }
            }
Ejemplo n.º 3
0
            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();
            }
Ejemplo n.º 4
0
        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;
            }
        }