Esempio n. 1
0
    public void SetGame(GameInfo game)
    {
        CurrentGame = game;
        List <PlayerInfo> players = game.Players;

        mNodes = new Dictionary <PlayerInfo, PlayerNode>();

        foreach (PlayerInfo player in players)
        {
            PlayerNode bubble = Instantiate(mNodePrefab);
            bubble.transform.SetParent(MainCanvas.transform);
            bubble.RectTransform.anchoredPosition = Vector2.zero;

            bubble.SetPlayer(player);

            mNodes[player] = bubble;
        }

        mArcs = new List <CommanderDamageArc>();

        for (int i = 0; i < players.Count - 1; i++)
        {
            for (int j = i + 1; j < players.Count; j++)
            {
                PlayerNode playerBubble      = mNodes[players[i]];
                PlayerNode otherPlayerBubble = mNodes[players[j]];

                CommanderDamageArc arc = Instantiate(mCommanderDamagePrefab);
                arc.transform.SetParent(MainCanvas.transform);
                //Ensure the arcs render behind the nodes but in front of the background
                arc.transform.SetSiblingIndex(mBackgroundChildrenCount);

                arc.BeginTarget = playerBubble.VisualRectTransform;
                arc.EndTarget   = otherPlayerBubble.VisualRectTransform;

                arc.SetPlayers(players[i], players[j]);

                mArcs.Add(arc);
            }
        }

        Scale();
    }