Exemplo n.º 1
0
    public void SetSelected(string oldValue)
    {
        if (oldValue != null)
        {
            ShipData.mainShip.SetSelected(oldValue, false);
        }

        if (selected != null)
        {
            buildPanel.SetActive(false);
            ShipData.mainShip.SetSelected(selected, true);
            selectedPanel.SetActive(true);
            tileDamage.gameObject.SetActive(true);
            tileEnergy.gameObject.SetActive(true);


            HexaTile tile = ShipData.mainShip.GetTile(selected);
            blankPanel.SetActive(tile.device.id == 0);
            devicePanel.SetActive(tile.device.id != 0);
            deviceImage.sprite = deviceSprites[tile.device.id];
            deviceName.text    = ShipData.devices[tile.device.id].name;

            foreach (GuiUpgrade obj in upgrades)
            {
                if (tile.device.upgrades.ContainsKey(obj.gameObject.name))
                {
                    obj.value.text = tile.valueByName(obj.gameObject.name);

                    if (tile.device.upgrades[obj.gameObject.name].level <= 3)
                    {
                        obj.price.text = tile.device.upgrades[obj.gameObject.name].price.ToString();
                        obj.label.text = tile.device.upgrades[obj.gameObject.name].label;
                        obj.button.gameObject.SetActive(true);
                    }
                    else
                    {
                        obj.button.gameObject.SetActive(false);
                    }


                    obj.gameObject.SetActive(true);
                }
                else
                {
                    obj.gameObject.SetActive(false);
                }
            }
        }
        else
        {
            tileDamage.gameObject.SetActive(false);
            tileEnergy.gameObject.SetActive(false);
            selectedPanel.SetActive(false);
            if (_gameMode == 0)
            {
                buildPanel.SetActive(true);
            }
        }
    }