// Update display of the selected predefined character
 void UpdateDescription(int HistoryChoice)
 {
     PreDefinedSelection.GetComponentsInChildren <Text>()[12].text = ((string)((ArrayList)refData[HistoryChoice])[2]).Replace("<br>", "\n");
     characterDisplay.UpdateCharacterDisplay(historyChoices, false);
 }
    // Interaction with UI Buttons
    public void choice(int choice)
    {
        HistoryChoice = choice;
        switch (currentStep)
        {
        case PlayerHistoryStep.HELLCIRCLE:
            CommentText.text = ((string)((ArrayList)RefHellCircles[HistoryChoice])[3]).Replace("<br>", "\n");
            historyChoices.HellCircleChoice = HistoryChoice;
            break;

        case PlayerHistoryStep.ALLEGIANCE:
            CommentText.text = ((string)((ArrayList)RefAllegiance[HistoryChoice])[3]).Replace("<br>", "\n");
            historyChoices.AllegianceChoice = HistoryChoice;
            break;

        case PlayerHistoryStep.GENUS:

            if (HistoryChoice >= 7)
            {
                historyChoices.SpeciesChoice = 3 * (historyChoices.GenusChoice - 1) + HistoryChoice - 6;
                CommentText.text             = ((string)((ArrayList)RefSpecies[historyChoices.SpeciesChoice])[3]).Replace("<br>", "\n");
            }
            else
            {
                if (historyChoices.GenusChoice == 0)
                {
                    DisplayButtonsOnUi(6, 9, true, true);
                }
                historyChoices.GenusChoice = HistoryChoice;
                if (!(historyChoices.SpeciesChoice == 0))
                {
                    historyChoices.SpeciesChoice = 0;
                }
                for (int i = 6; i < 9; i++)
                {
                    Choice[i].GetComponentInChildren <Text>().text = (string)((ArrayList)RefSpecies[3 * (historyChoices.GenusChoice - 1) + i - 5])[2];
                }
                CommentText.text = ((string)((ArrayList)RefGenus[HistoryChoice])[3]).Replace("<br>", "\n");
            }
            break;

        case PlayerHistoryStep.CLASS:
            CommentText.text         = ((string)((ArrayList)RefClass[HistoryChoice])[3]).Replace("<br>", "\n");
            historyChoices.JobChoice = HistoryChoice;
            break;

        case PlayerHistoryStep.IMP:
            CommentText.text         = ((string)((ArrayList)RefImp[HistoryChoice])[3]).Replace("<br>", "\n");
            historyChoices.ImpChoice = HistoryChoice;
            break;

        case PlayerHistoryStep.ORIGIN:
            CommentText.text            = ((string)((ArrayList)RefOrigin[HistoryChoice])[3]).Replace("<br>", "\n");
            historyChoices.OriginChoice = HistoryChoice;
            break;

        case PlayerHistoryStep.TEMPER:
            CommentText.text            = ((string)((ArrayList)RefTemper[HistoryChoice])[3]).Replace("<br>", "\n");
            historyChoices.TemperChoice = HistoryChoice;
            break;

        case PlayerHistoryStep.ASTRO:
            CommentText.text           = ((string)((ArrayList)RefAstro[HistoryChoice])[3]).Replace("<br>", "\n");
            historyChoices.AstroChoice = HistoryChoice;
            break;

        case PlayerHistoryStep.AFFINITY:
            CommentText.text = ((string)((ArrayList)RefAffinity[HistoryChoice])[3]).Replace("<br>", "\n");
            historyChoices.AffinityChoice = HistoryChoice;
            break;
        }

        characterDisplay.UpdateCharacterDisplay(historyChoices, true);
    }
 public void ActivateMenu()
 {
     CharacterMenuCanvas.enabled = true;
     characterDisplay.UpdateCharacterDisplay(cityGUI.Player.HistoryChoices, false);
     CharacterName.text = cityGUI.Player.PlayerFirstName + " " + cityGUI.Player.PlayerLastName;
 }