コード例 #1
0
        // public void SetupCrew() {

        //     // clear previous crewattpanels
        //     foreach(Transform child in crewAttributePanels)
        //         Destroy(child.gameObject);

        //     int currentButtonIndex = 0;

        //     for (int i = 0; i < playerShip.crew.transform.childCount; i++) {

        //         GameObject crewmemberGO;
        //         crewmemberGO = playerShip.crew.transform.GetChild(i).gameObject;

        //         // if the crewmember's gameobject is inactive for some reason, skip to next
        //         if(crewmemberGO.activeSelf == false) {
        //             continue;
        //         }

        //         Crewmember crewmember = crewmemberGO.GetComponent<Crewmember>();

        //         print(crewmember.name);

        //         GameObject crewmemberButtonGO = crewPanel.transform.GetChild(currentButtonIndex).gameObject;
        //         // add to crew button index
        //         currentButtonIndex++;

        //         Image crewmemberIcon = crewmemberButtonGO.transform.GetChild(0).GetComponentInChildren<Image>(true);
        //         // enable crew icon
        //         crewmemberIcon.enabled = true;
        //         // set crew icon
        //         crewmemberIcon.sprite = crewmember.icon;
        //         print(crewmember.icon + " vs " + crewmemberIcon.sprite);
        //         crewmemberIcon.color = crewmember.GetComponent<SpriteRenderer>().color;

        //         RectTransform crewAttPanelRectT = crewmemberButtonGO.transform.Find("CrewAttributesPanel").GetComponent<RectTransform>();
        //         AttributesUIPanel attUI = crewAttPanelRectT.GetComponent<AttributesUIPanel>();
        //         attUI.SetCrewmember(crewmember);

        //         //crewAttPanelRectT.SetParent(crewAttributePanels.transform, true);

        //         // set double click
        //         CustomButton crewmemberButton = crewmemberButtonGO.GetComponent<CustomButton>();
        //         crewmemberButton.onDoubleTap.AddListener(
        //             () =>  crewAttPanelRectT.gameObject.SetActive(!crewAttPanelRectT.gameObject.activeSelf)
        //         );

        //         crewmemberButton.onDoubleTap?.Invoke();

        //     }

        //     AddListenerToShipCrew();

        // }

        public void SetupSystems()
        {
            for (int i = 0; i < playerShip.systems.transform.childCount; i++)
            {
                ShipSystem shipSystem = GameManager.shipSystems[i].GetComponent <ShipSystem>();
                // set system power usage to UI
                GameObject systemButton     = systemPanel.transform.GetChild(i).gameObject;
                PowerUsage systemPowerUsage = systemButton.GetComponent <PowerUsage>();
                systemPowerUsage.maxUsage = shipSystem.powerCap;
                systemPowerUsage.RefreshMaxPowerUsageUI();
                Image systemIcon = systemButton.transform.GetChild(0).GetComponentInChildren <Image>();
                // enable system icon
                systemIcon.enabled = true;
                // set system icon
                systemIcon.sprite = shipSystem.system.icon;
            }

            AddListenerToShipSystems();
            RefreshSystemsPowerUsage();
        }
コード例 #2
0
        public void SetupWeapons()
        {
            for (int i = 0; i < GameManager.shipWeapons.Count; i++)
            {
                GameObject weapon     = weapons.transform.GetChild(i).gameObject;
                Weaponry   shipWeapon = GameManager.shipWeapons[i].GetComponent <Weaponry>();

                // set weapon power usage to UI
                PowerUsage weaponPowerUsage = weapon.GetComponent <PowerUsage>();
                weaponPowerUsage.SetWeapon(shipWeapon);
                weaponPowerUsage.maxUsage = shipWeapon.powerCap;
                weaponPowerUsage.RefreshMaxPowerUsageUI();

                Image weaponIcon = weapon.transform.GetChild(0).GetComponentInChildren <Image>();
                // enable weapon icon
                weaponIcon.enabled = true;
                // set weapon icon
                weaponIcon.sprite = GameManager.ship.WeaponsRoom.weaponsEquipped[i].icon;
            }

            AddListenerToShipWeapons();

            RefreshWeaponsPowerUsage();
        }