コード例 #1
0
    /// <summary>
    /// Checks if a scene is unlocked or not
    /// </summary>
    /// <param name="topic">Current topic chosen</param>
    /// <param name="index">Index in array of buttons</param>
    /// <returns>Returns true if clicked button leads to an unlocked scene; false, if otherwise</returns>
    public bool isSceneLocked(SelectSceneScreen.Topic topic, int index)
    {
        Debug.Log("Checking if locked");
        switch (topic)
        {
        case SelectSceneScreen.Topic.ADD:
            if (addSimSceneButtons [index].transform.GetChild(0).gameObject.activeSelf)
            {
                return(true);
            }
            return(false);

            break;

        case SelectSceneScreen.Topic.SUB:
            if (subSimSceneButtons [index].transform.GetChild(0).gameObject.activeSelf)
            {
                return(true);
            }
            return(false);

            break;

        case SelectSceneScreen.Topic.MIXED:
            if (disSceneButtons [index].transform.GetChild(0).gameObject.activeSelf)
            {
                return(true);
            }
            return(false);

            break;
        }
        return(false);
    }
コード例 #2
0
    /// <summary>
    /// Unlocks levels for each topic based on user's current level
    /// </summary>
    /// <param name="topic">Current topic chosen</param>
    /// <param name="levelReached">Current level of user</param>
    public void LoadUserData(SelectSceneScreen.Topic topic, int levelReached)
    {
        Debug.Log("Level Reached " + levelReached);
        DisableAll();
        switch (topic)
        {
        case SelectSceneScreen.Topic.ADD:
            Debug.Log("Loaded add level");
            //			Debug.Log (addSimSceneButtons.Length);
            for (int i = 0; i < addSimSceneButtons.Length; i++)
            {
                addSimSceneButtons [i].gameObject.SetActive(true);
                if (i + 1 > levelReached)
                {
                    addSimSceneButtons [i].transform.GetChild(0).gameObject.SetActive(true);
                }
            }
            break;

        case SelectSceneScreen.Topic.SUB:
            Debug.Log("Loaded sub level");
            Debug.Log(subSimSceneButtons.Length);
            for (int i = 0; i < subSimSceneButtons.Length; i++)
            {
                subSimSceneButtons [i].gameObject.SetActive(true);
                if (i + 1 > levelReached)
                {
                    subSimSceneButtons [i].transform.GetChild(0).gameObject.SetActive(true);
                }
            }
            break;

        case SelectSceneScreen.Topic.MIXED:
            Debug.Log("Loaded mixed level");
            Debug.Log(disSceneButtons.Length);
            for (int i = 0; i < disSceneButtons.Length; i++)
            {
                disSceneButtons [i].gameObject.SetActive(true);
                if (i + 1 > levelReached)
                {
                    disSceneButtons [i].transform.GetChild(0).gameObject.SetActive(true);
                }
            }
            break;
        }
    }