示例#1
0
    public void Setup(IPuzzleData _data)
    {
        selectable  = GetComponent <SelectableBehaviour>();
        graphicCtrl = GetComponent <PuzzleGraphic>();

        data = _data as PuzzleCablesData;

        GameObject fakeCable2 = new GameObject("FakeCable2");

        fakeCable2.transform.parent = transform;
        Components.Cables.Insert(1, fakeCable2);

        GameObject fakeCable6 = new GameObject("FakeCable2");

        fakeCable6.transform.parent = transform;
        Components.Cables.Insert(5, fakeCable6);

        lightOff_MatArr = new Material[] { Components.Lights[0].materials[0], LightOff_Mat };
        lightOn_MatArr  = new Material[] { Components.Lights[0].materials[0], LightOn_Mat };
    }
示例#2
0
    public bool CheckIfSolved()
    {
        CabSwitchData    data;
        List <CableType> connectedCabs = new List <CableType>(chosenSetup.Sol_ConnectedCabs);
        List <CableType> detachedCabs  = new List <CableType>(chosenSetup.Sol_DetachedCables);

        foreach (SelectableSwitch switchCab in switches)
        {
            data = switchCab.InputData as CabSwitchData;

            if (switchCab.selectStatus == true)
            {
                //Check right connection
                if (!connectedCabs.Remove(data.CabType))
                {
                    return(false);
                }
            }
            else
            {
                //Check right detachment
                if (!detachedCabs.Remove(data.CabType))
                {
                    return(false);
                }
            }
        }

        if (connectedCabs.Count + detachedCabs.Count != 0)
        {
            return(false);
        }
        else
        {
            return(true);
        }
    }