Esempio n. 1
0
    public static GameObject getLevel(int level)
    {
        GameObject original  = Resources.Load <GameObject>("Prefabs/BoardTemplate");
        GameObject original2 = Resources.Load <GameObject>("Prefabs/DebugCell");

        int[]      levelInfo  = FugoUtils.getLevelInfo(level);
        Section    section    = Games.sections[levelInfo[0]];
        LevelSet   levelSet   = section.sets[levelInfo[1]];
        Level      level2     = levelSet.levels[levelInfo[2]];
        float      num        = FugoUtils.boardHeight;
        float      num2       = num * FugoUtils.getBoardRatio();
        GameObject gameObject = UnityEngine.Object.Instantiate(original);
        Transform  transform  = gameObject.transform.Find("Board");
        float      val        = 7.5f / (float)level2.width;
        float      val2       = num / 100f / (float)level2.height;
        float      num3       = Math.Min(val, val2);
        float      num4       = 100f * num3;
        float      val3       = num2 / (float)level2.width;
        float      val4       = num / (float)level2.height;

        num4 = Math.Min(val3, val4);
        float num5 = num2 - (float)level2.width * num4;
        float num6 = num - (float)level2.height * num4;

        UnityEngine.Debug.Log(num + "  " + level2.height + "   " + cellSize);
        num5 *= 0.5f;
        num6 *= 0.5f;
        RectTransform component = transform.GetComponent <RectTransform>();

        UnityEngine.Debug.Log("board size  " + component.sizeDelta);
        Vector2 sizeDelta = component.sizeDelta;

        sizeDelta.y         = FugoUtils.adBoardHeight;
        component.sizeDelta = sizeDelta;
        Vector2 anchoredPosition = component.anchoredPosition;

        anchoredPosition.y         = -100f;
        component.anchoredPosition = anchoredPosition;
        List <Word> words = level2.words;

        foreach (Word item in words)
        {
            int length = item.length;
            int x      = item.X;
            int y      = item.Y;
            for (int i = 0; i < length; i++)
            {
                GameObject gameObject2 = UnityEngine.Object.Instantiate(original2);
                gameObject2.GetComponent <Image>().color = FugoUtils.HexToColor(levelSet.InGameSelectedLetterBGColor);
                gameObject2.transform.Find("Text").GetComponent <Text>().color = FugoUtils.HexToColor(levelSet.InGameSelectedLetterColor);
                gameObject2.transform.Find("Text").GetComponent <Text>().text  = item.word[i].ToString();
                RectTransform component2 = gameObject2.GetComponent <RectTransform>();
                gameObject2.transform.SetParent(transform.transform);
                component2.anchorMin         = Vector2.up;
                component2.anchorMax         = Vector2.up;
                component2.pivot             = Vector2.up;
                component2.sizeDelta         = Vector2.one * num4;
                component2.anchoredPosition  = Vector2.right * x * num4 + Vector2.down * y * num4;
                component2.anchoredPosition += Vector2.down * num6 + Vector2.right * num5;
                if (item.orientation == Orientation.HORIZONTAL)
                {
                    component2.anchoredPosition += Vector2.right * i * num4;
                }
                else
                {
                    component2.anchoredPosition += Vector2.down * i * num4;
                }
                gameObject2.transform.localScale = Vector3.one;
            }
        }
        return(gameObject);
    }