コード例 #1
0
    private bool parseProperty(string type, string intensity, out MovementWithProperty parsedProperty)
    {
        object parsedEnum;
        float  parsedFloat;

        bool successfulEnumParse  = EnumUtils.TryParse(typeof(PropertyEnum), type, out parsedEnum);
        bool successfulFloatParse = float.TryParse(intensity, out parsedFloat);

        if (successfulEnumParse && successfulFloatParse)
        {
            parsedProperty = new MovementWithProperty((PropertyEnum)parsedEnum, parsedFloat);
            return(true);
        }
        else
        {
            if (!successfulEnumParse)
            {
                Debug.Log(String.Format("{0} is not a reconizable movement property.", type));
            }
            else
            {
                Debug.Log(String.Format("{0} could not be parsed as a float.", intensity));
            }
            parsedProperty = null;
            return(false);
        }
    }
コード例 #2
0
    public void setParameter(Tutor tutor, MovementWithProperty movement)
    {
        object paramEnum;
        string parameterString = string.Concat(getFirstMovementString(movement), "_", getSecondMovementString(movement));

        if (EnumUtils.TryParse(typeof(AnimatorParams), parameterString, out paramEnum))
        {
            avatarManager.setParameter(tutor.Name, (AnimatorParams)paramEnum, movement.Value);
        }
        if (EnumUtils.TryParse(typeof(ControllerParams), parameterString, out paramEnum))
        {
            avatarManager.setParameter(tutor.Name, (ControllerParams)paramEnum, movement.Value);
        }
    }
コード例 #3
0
 // Auxiliary Methods
 private string getSecondMovementString(MovementWithProperty movement)
 {
     return(movement.Property.ToString().ToUpperInvariant());
 }