Exemplo n.º 1
0
    private void CreateElementViews(BuildingData.BuildingCategory buildingCategory)
    {
        List <BuildingData> buildingDataArray = this._buildingDictionary[buildingCategory];

        foreach (BuildingData buildingData in buildingDataArray)
        {
            ConstructionElementView constructionChoiceView = GameObject.Instantiate(_constructionElementViewPrefab, _scrollViewContent);
            constructionChoiceView.BuildingData = buildingData;
            constructionChoiceView.BuildingSelectToggle.group = _constructionElementToggleGroup;
            constructionChoiceView.BuildingSelectToggle.isOn  = false;
        }
    }
Exemplo n.º 2
0
    private void Start()
    {
        _buildingDictionary = new Dictionary <BuildingData.BuildingCategory, List <BuildingData> >();
        GameHandler gameHandler = FindObjectOfType <GameHandler>();

        _placementController = gameHandler.PlacementController;
        _exitButton.onClick.AddListener(delegate { SetVisible(false); });
        _showButton.onClick.AddListener(delegate { SetVisible(!VisibleObject.activeSelf); });

        gameHandler.ProgressionManager.onBuildingUnlock += delegate(BuildingData[] buildingDataArray)
        {
            Debug.Log("BuildingUnlock");
            foreach (BuildingData buildingData in buildingDataArray)
            {
                if (!_buildingDictionary.ContainsKey(buildingData.Category))
                {
                    _buildingDictionary.Add(buildingData.Category, new List <BuildingData>());
                }
                _buildingDictionary[buildingData.Category].Add(buildingData);
            }
            CreateElementViews(BuildingData.BuildingCategory.Infrastructure);
        };

        _constructionElementViewPrefab = Resources.Load <ConstructionElementView>(Util.PathTo("ConstructionElementView"));

        _infrastructureButton.onValueChanged.AddListener(delegate(bool value)
        {
            if (!value)
            {
                return;
            }
            ClearElementViews();
            CreateElementViews(BuildingData.BuildingCategory.Infrastructure);
        });
        _productionButton.onValueChanged.AddListener(delegate(bool value)
        {
            if (!value)
            {
                return;
            }
            ClearElementViews();
            CreateElementViews(BuildingData.BuildingCategory.Production);
        });
        _infrastructureButton.isOn = true;
    }