万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・寄付お願いします
    YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
    BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
    c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1

UnityScript setプロパティの罠

UnityScriptに限ったことではないが、C#では検証してない。
今回NGUI付属のTweenPositionのセットをプロパティでやっていたが、
valueをそのまま使って+演算子を使うと怒られた

    public function set SetPosition (value : Vector3) {
        var tweenPosition : TweenPosition = hogeObj.AddComponent(TweenPosition);
        tweenPosition.method = UITweener.Method.EaseOut;
        tweenPosition.style = UITweener.Style.Loop;
        tweenPosition.from = value;
        tweenPosition.to = value + Vector3.left * 100; // ←ここで怒られる!
    }

いったんvec3にvalueを対比させてそれを使ったらOKでした。

    public function set SetPosition (value : Vector3) {
        var vec3 : Vector3 = value; // ←こうすると〜
        var tweenPosition : TweenPosition = hogeObj.AddComponent(TweenPosition);
        tweenPosition.method = UITweener.Method.EaseOut;
        tweenPosition.style = UITweener.Style.Loop;
        tweenPosition.from = vec3;
        tweenPosition.to = vec3 + Vector3.left * 100; // ←怒られない
    }