- var values = params[attr].toString().split(separator),
- from2 = from[attr].toString().split(separator);
- if (attr == "translation") {
- from[attr] = [0, 0];
- diff[attr] = [values[0] / ms, values[1] / ms];
- } else if (attr == "rotation") {
- from[attr] = (from2[1] == values[1] && from2[2] == values[2]) ? from2 : [0, values[1], values[2]];
- diff[attr] = [(values[0] - from[attr][0]) / ms, 0, 0];
- } else {
- from[attr] = (from[attr] + "").split(separator);
- diff[attr] = [(values[0] - from[attr][0]) / ms, (values[1] - from[attr][0]) / ms];
+ var values = (params[attr] + "").split(separator),
+ from2 = (from[attr] + "").split(separator);
+ switch (attr) {
+ case "translation":
+ from[attr] = [0, 0];
+ diff[attr] = [values[0] / ms, values[1] / ms];
+ break;
+ case "rotation":
+ from[attr] = (from2[1] == values[1] && from2[2] == values[2]) ? from2 : [0, values[1], values[2]];
+ diff[attr] = [(values[0] - from[attr][0]) / ms, 0, 0];
+ break;
+ case "scale":
+ params[attr] = values;
+ from[attr] = (from[attr] + "").split(separator);
+ diff[attr] = [(values[0] - from[attr][0]) / ms, (values[1] - from[attr][1]) / ms, 0, 0];