Variable giving odd results. Can't figure out why.

Here's my script. For some reason my randSum variable always returns 0. Any Ideas.

var i1 :int;
var i2 :int;
var i3 :int;
var i4 :int;
var i5 :int;
var i6 :int;
var i7 :int;
var i8 :int;
var i9 :int;
var i0 :int;

i0 = Random.Range(0, 2);
i1 = Random.Range(0, 2);
i2 = Random.Range(0, 2);
i3 = Random.Range(0, 2);
i4 = Random.Range(0, 2);
i5 = Random.Range(0, 2);
i6 = Random.Range(0, 2);
i7 = Random.Range(0, 2);
i8 = Random.Range(0, 2);
i9 = Random.Range(0, 2);

Debug.Log("i0:"+i0);
Debug.Log(""+i1);
Debug.Log(""+i2);
Debug.Log(""+i3);
Debug.Log(""+i4);
Debug.Log(""+i5);
Debug.Log(""+i6);
Debug.Log(""+i7);
Debug.Log(""+i8);
Debug.Log(""+i9);

var isRandTrue : boolean ;
var randSum = i0 + i1 + i2 + i3 + i4 + i5 + i6 + i7 + i8 + i9;
Debug.Log("Sum:"+randSum);
if(randSum > 5)
{
    isRandTrue = true;
}
else isRandTrue = false;
Debug.Log(isRandTrue);

function Update ()
{

}

I don't know the exact reason why it doesn't work unless you wrap the code in a function, but that's your problem. Using Start() or Awake() will fix it for you.

However, your biggest problem is that your code is extremely verbose. You should go learn about arrays and loops, and name your variables better.

http://answers.unity3d.com/questions/8431/what-are-some-good-scripting-habits

import UnityEngine.Debug;

var integers : int[];   // Size this in the Editor.

function Start () {
    var randSum = 0;
    for (var i = 0; i < integers.Length; ++i) randSum += integers *= Random.Range(0, 2);*
 *Log("Sum:" + randSum);*
 *var isRand = randSum > 5;*
 *Log(isRand);*
*}*
*```*