Ejemplo n.º 1
0
 public void UpdateUserVar(UserVariable userVar, bool fromReplay = false)
 {
     if (userVar.Name == "spd")
     {
         UpdateSpeed(userVar);
     }
     else if (userVar.Name == "ptype")
     {
         UpdateType(userVar);
     }
     else if (userVar.Name == "modelAnimation")
     {
         UpdateAnimState(userVar);
     }
     else if (userVar.Name == "op")
     {
         ApplyAvatarOptions(userVar.GetStringValue());
     }
     else if (userVar.Name == "parseId")
     {
         string postfix = fromReplay ? ">" : "";
         ParseId = userVar.GetStringValue() + postfix;
     }
     else if (userVar.Name == "displayName")
     {
         DisplayName = userVar.GetStringValue();
     }
     else if (userVar.Name == "team")
     {
         teamID = userVar.GetIntValue();
     }
     else if (userVar.Name == "gt" || userVar.Name == "gp")
     {
         UpdateGaze(userVar.Name, (float)userVar.GetDoubleValue());
     }
     else if (userVar.Name == "sit")
     {
         UpdateSit(userVar.GetBoolValue());
     }
     else if (userVar.Name == "scl")
     {
         UpdateScale((float)userVar.GetDoubleValue());
     }
     else
     {
         Debug.LogError("Unsupported userVar: " + userVar.Name);
     }
 }
Ejemplo n.º 2
0
    void RecordUserVariable(BinaryWriter writer, UserVariable userVar)
    {
        writer.Write(userVar.Name);
        writer.Write((int)userVar.Type);
        switch (userVar.Type)
        {
        case VariableType.INT:
            writer.Write(userVar.GetIntValue());
            break;

        case VariableType.DOUBLE:
            writer.Write(userVar.GetDoubleValue());
            break;

        case VariableType.STRING:
            writer.Write(userVar.GetStringValue());
            break;

        case VariableType.OBJECT:
            ByteArray ba = userVar.GetSFSObjectValue().ToBinary();
            writer.Write(ba.Length);
            writer.Write(ba.Bytes);
            break;
        }
    }
Ejemplo n.º 3
0
 public static object GetValueFromSFSUserValue(UserVariable sfsValue, Type type)
 {
     if (sfsValue.IsNull())
     {
         return(null);
     }
     if (type == typeof(bool))
     {
         return(Convert.ChangeType(sfsValue.GetBoolValue(), type));
     }
     if (type == typeof(double))
     {
         return(Convert.ChangeType(sfsValue.GetDoubleValue(), type));
     }
     if (type == typeof(int))
     {
         return(Convert.ChangeType(sfsValue.GetIntValue(), type));
     }
     if (type == typeof(string))
     {
         return(Convert.ChangeType(sfsValue.GetStringValue(), type));
     }
     if (type == typeof(SFSObject))
     {
         return(Convert.ChangeType(sfsValue.GetSFSObjectValue(), type));
     }
     return(Convert.ChangeType(sfsValue.GetSFSObjectValue(), type));
 }
Ejemplo n.º 4
0
 public static void UpdateTransformVars(UserVariable userVar, ref float rotAngle, ref Vector3 pos)
 {
     if (userVar.Name == "rot")
     {
         rotAngle = (float)userVar.GetDoubleValue();
     }
     else if (userVar.Name == "x")
     {
         pos.x = (float)userVar.GetDoubleValue();
     }
     else if (userVar.Name == "y")
     {
         pos.y = (float)userVar.GetDoubleValue();
     }
     else if (userVar.Name == "z")
     {
         pos.z = (float)userVar.GetDoubleValue();
     }
 }
Ejemplo n.º 5
0
 public void UpdateSpeed(UserVariable userVar)
 {
     UpdateSpeed((float)userVar.GetDoubleValue());
 }