Пример #1
0
    public void Initialize()
    {
        int numMergeable = CombatSceneController.MaxPlayerHandSize / 3;

        TileGO tilePrefab = CombatSceneController.Instance.TilePrefab;

        int   midIdx      = CombatSceneController.SetSize / 2;
        float imageWidth  = tilePrefab.Image.rectTransform.rect.width;
        float imageHeight = tilePrefab.Image.rectTransform.rect.height;

        for (int i = 0; i < numMergeable; ++i)
        {
            for (int j = 0; j < CombatSceneController.SetSize; ++j)
            {
                TileGO        tile      = GameObject.Instantiate(tilePrefab);
                RectTransform rectTrans = tile.GetComponent <RectTransform>();
                rectTrans.anchorMin     = new Vector2(rectTrans.anchorMin.x, 0);
                rectTrans.anchorMax     = new Vector2(rectTrans.anchorMax.x, 0);
                rectTrans.localPosition = new Vector2((j - midIdx) * imageWidth, i * imageHeight + imageHeight / 2);
                tile.transform.SetParent(this.transform, false);

                this.tileGOs.Add(tile);
            }
        }
    }
Пример #2
0
    public void Initialize()
    {
        CombatSceneController controller = CombatSceneController.Instance;
        int maxDiscardSize = (controller.MaxDeckSize - controller.PlayerSize * (CombatSceneController.MaxPlayerHandSize - 1)) / controller.PlayerSize;

        TileGO tilePrefab = controller.TilePrefab;
        float  imageWidth = tilePrefab.Image.rectTransform.rect.width;

        for (int i = 0; i < maxDiscardSize; ++i)
        {
            TileGO        tileGO    = GameObject.Instantiate(tilePrefab);
            RectTransform rectTrans = tileGO.GetComponent <RectTransform>();
            rectTrans.anchorMin     = new Vector2(0, rectTrans.anchorMin.y);
            rectTrans.anchorMax     = new Vector2(0, rectTrans.anchorMax.y);
            rectTrans.localPosition = new Vector2(imageWidth / 2 + i * imageWidth, 0);
            tileGO.transform.SetParent(this.transform, false);
            this.discard.Add(tileGO);
        }
    }
Пример #3
0
    public void Initialize()
    {
        int deckSizePerPlayer = CombatSceneController.Instance.MaxDeckSize / CombatSceneController.Instance.PlayerSize;

        TileGO tilePrefab  = CombatSceneController.Instance.TilePrefab;
        float  imageWidth  = tilePrefab.Image.rectTransform.rect.width;
        float  imageHeight = tilePrefab.Image.rectTransform.rect.height;

        for (int i = 0; i < deckSizePerPlayer; ++i)
        {
            bool          bot       = (i % 2) == 0;
            TileGO        tileGO    = GameObject.Instantiate(tilePrefab);
            RectTransform rectTrans = tileGO.GetComponent <RectTransform>();
            rectTrans.anchorMin     = new Vector2(0, rectTrans.anchorMin.y);
            rectTrans.anchorMax     = new Vector2(0, rectTrans.anchorMax.y);
            rectTrans.localPosition = new Vector2(imageWidth / 2 + ((int)(i / 2)) * imageWidth, (bot ? -imageHeight / 2 : imageHeight / 2));
            tileGO.transform.SetParent(this.transform, false);
            this.deck.Add(tileGO);
        }
    }