Exemple #1
0
    // ========================================= PRIVATE FUNCS =========================================
    private void AddChildPanel(OriginPanel originPanel, LinkLabel linkLabel)
    {
        CommonPanel comPanel = linkLabel.GetReferPanel();

        // foreach all of labels
        List <Label> labels = comPanel.GetLabels();

        if (labels.Count == 0)
        {
            return;
        }

        Label label = labels[Random.Range(0, labels.Count)];

        // add normal label
        if (label is InputLabel)
        {
            originPanel.AddLabel(label);

            if (resultText.Length > 0)
            {
                resultText += " ";
            }
            resultText += label.GetText();
        }
        // add origin panel (for linking label)
        else if (label is LinkLabel)
        {
            CommonPanel referPanel = (label as LinkLabel).GetReferPanel();

            OriginPanel genPanel = originPanel.AddOriginPanel(referPanel);
            // loop add all labels of the generated panel
            AddChildPanel(genPanel, label as LinkLabel);
        }
    }