Ejemplo n.º 1
0
    void LoadLever(string line)
    {
        string[] param = line.Split(';');
        Lever    lever = Instantiate(lever_prefab).GetComponent <Lever>();

        for (int i = 1; i < param.Length; i++)
        {
            switch (i)
            {
            case 1:
                lever.transform.position = new Vector3(anchor.position.x + float.Parse(param[i]), anchor.position.y + float.Parse(param[i + 1]));
                i++;
                continue;

            case 3:
                switch (param[i])
                {
                case "t":
                    lever.on = true;
                    lever.GetComponent <SpriteRenderer>().sprite = lever.on_sprite;
                    break;

                case "f":
                    lever.on = false;
                    lever.GetComponent <SpriteRenderer>().sprite = lever.off_sprite;
                    break;

                default:
                    break;
                }
                continue;

            case 4:
                switch (param[i])
                {
                case "v":
                    break;

                case "h":
                    lever.transform.rotation = Quaternion.Euler(new Vector3(0, 0, 90));
                    break;

                default:
                    break;
                }
                continue;

            default:
                continue;
            }
        }
        lever.controller = this;
        lever_list.Add(lever);
    }
Ejemplo n.º 2
0
    void Awake()
    {
        thisLoggingID = loggingID++;

        GetComponent <KMBombModule>().OnActivate += Init;

        Dials = new KMSelectable[] { Dial1, Dial2, Dial3, Dial4, Dial5, Dial6 };

        for (int a = 0; a < 6; a++)
        {
            Dials[a].transform.Find("LED").GetComponent <MeshRenderer>().material.color     = new Color(0, 0, 0);
            Dials[a].transform.Find("default").GetComponent <MeshRenderer>().material.color = new Color(0.91f, 0.88f, 0.86f);
        }

        for (int a = 0; a < 6; a++)
        {
            Dials[a].transform.Find("Bar").GetComponent <MeshRenderer>().material.color = new Color(0.4f, 0.4f, 0.4f);
            DialPos[a] = Random.Range(0, 12);
            Dials[a].transform.Find("Bar").transform.localEulerAngles = new Vector3(0, DialPos[a] * 30f, 0);
            ClickPos[a] = Random.Range(0, 12);
            int a2 = a;
            Dials[a].OnInteract += delegate() { HandleInteract(a2); return(false); };
        }

        Debug.Log("[Safety Safe #" + thisLoggingID + "] Safety Safe dial click locations: " + ClickPos[0] + "," + ClickPos[1] + "," + ClickPos[2] + "," + ClickPos[3] + "," + ClickPos[4] + "," + ClickPos[5]);

        Lever.GetComponent <MeshRenderer>().material.color = new Color(0.91f, 0.88f, 0.86f);
        Lever.transform.Find("default").GetComponent <MeshRenderer>().material.color = new Color(0.91f, 0.88f, 0.86f);
    }
Ejemplo n.º 3
0
 void Update()
 {
     //Link to animations parameters
     anim.SetBool("activated", activated);
     linkedLever.GetComponent <Animator>().SetBool("activated", activated);
 }