private void ChangeState(Gumb Gumbo) { //States: //0=Unselected, 1=Blue, 2=Orange int[] oldstates = new int[gumbs.Length]; //Populate states with loop int[] newstates = new int[gumbs.Length]; for (int i = 0; i < gumbs.Length; i++) { oldstates [i] = gumbs [i].gstate; } int variableclicked = Gumbo.gvariable; int literalclicked = Gumbo.gliteral; for (int i = 0; i < v.Length; i++) { if (v [i] == variableclicked && ls [i] == literalclicked && oldstates[i] == 0) { newstates [i] = 1; } else if (v [i] == variableclicked && ls [i] != literalclicked && oldstates[i] == 0) { newstates [i] = 2; } else if (v [i] == variableclicked && oldstates[i] == 1) { newstates [i] = 0; } else if (v [i] == variableclicked && oldstates[i] == 2) { newstates [i] = 0; } else { newstates [i] = oldstates [i]; } gumbs [i].gstate = newstates [i]; } // Debug.Log ("State change"); ChangeColour(oldstates, newstates); changeBulbs(newstates); }
//public static itemClicks[] = new List<Vector4> (); //Function that takes click as input and stores [c,b] private void ClickDetect(Gumb Gumbo) { if (clickNumber <= GameManager.maxClicks) { ChangeState(Gumbo); itemClick itemClick1 = new itemClick(); Gumb newGumb = gumbs [Gumbo.gitemnumber]; itemClick1.clickNumber = clickNumber; itemClick1.gvariable = newGumb.gvariable; itemClick1.gliteral = newGumb.gliteral; itemClick1.time = GameManager.timeQuestion - GameManager.tiempo; itemClick1.state = newGumb.gstate; //itemClicks.Add (new Vector4 (clickNumber,Gumbo.gvariable,Gumbo.gliteral,GameManager.timeQuestion - GameManager.tiempo)); itemClicks.Add(itemClick1); SetClickText(); clickNumber = clickNumber + 1; } }