示例#1
0
    // Start is called before the first frame update
    void Start()
    {
        specChoicePanel    = GameObject.Find("HUBUI/Loadout Panel/Spec Panel");
        specSkillTreePanel = GameObject.Find("HUBUI/Loadout Panel/Skill Tree Panel");
        skillPanelChild    = GameObject.Find("HUBUI/Loadout Panel/Skill Tree Panel/Spec Title");
        hubStats           = GameObject.Find("HUBUI/Loadout Panel/Stats Backing").GetComponent <HUBStats>();
        specText           = GetComponent <TextMeshProUGUI>();
        specText.text      = "No Specialization";
        specSet            = false;

        foreach (Transform block in skillPanelChild.GetComponentsInChildren <Transform>())
        {
            if (block.name.Contains("Block"))
            {
                perkBlocks.Add(block.gameObject);
            }
        }
    }
    private void Awake()
    {
        hubStats = GameObject.Find("HUBUI/Loadout Panel/Stats Backing").GetComponent <HUBStats>();

        foreach (Transform child in gameObject.GetComponentInChildren <Transform>())
        {
            var imageObject = child.gameObject.GetComponent <Image>();
            children.Add(child.gameObject);

            if (imageObject.sprite != null)
            {
                child.gameObject.SetActive(true);
            }
            else
            {
                child.gameObject.SetActive(false);
            }
        }
    }
示例#3
0
    public void OnLevelLoad(Scene scene) //called from the game manager to send stats to the bots when a level is loaded
    {
        if (scene.name == "HUB scene")
        {
            hubStats = GameObject.Find("HUBUI/Loadout Panel/Stats Backing").GetComponent <HUBStats>();
        }

        if (scene.name != "HUB scene" && scene.name != "Main Menu")
        {
            leadBot.bot   = GameObject.Find("PlayerSphere").GetComponent <BotStats>();
            blueBot.bot   = GameObject.Find("AISphere Blue").GetComponent <BotStats>();
            greenBot.bot  = GameObject.Find("AISphere Green").GetComponent <BotStats>();
            orangeBot.bot = GameObject.Find("AISphere Orange").GetComponent <BotStats>();

            leadBot.bot.StatUpdate(leadBot);
            blueBot.bot.StatUpdate(blueBot);
            greenBot.bot.StatUpdate(greenBot);
            orangeBot.bot.StatUpdate(orangeBot);

            hubStats = null;
        }
    }
示例#4
0
 private void Awake()
 {
     invManager    = GameObject.Find("Persistent Object").GetComponent <InventoryManager>();
     inv           = GameObject.Find("HUBUI/Loadout Panel/Inventory Grid").GetComponent <Inventory>();
     invEquip      = GameObject.Find("HUBUI/Loadout Panel/Equipment Grid").GetComponent <Inventory>();
     mainInventory = GameObject.Find("HUBUI/Inventory Panel/Grid Layout").GetComponent <Inventory>();
     hubStats      = GameObject.Find("HUBUI/Loadout Panel/Stats Backing").GetComponent <HUBStats>();
     childIcon     = transform.GetChild(0).GetComponent <Image>();
     bonusStats.Add(strBonus);
     bonusStats.Add(elecBonus);
     bonusStats.Add(agiBonus);
     bonusStats.Add(combatBonus);
     bonusStats.Add(scanBonus);
     bonusStats.Add(crWBonus);
     bonusStats.Add(rWBonus);
     bonusStats.Add(retBonus);
     bonusStats.Add(ventBonus);
     bonusStats.Add(objMBonus);
     bonusStats.Add(regenBonus);
     bonusStats.Add(luckBonus);
     bonusStats.Add(teamPBonus);
     bonusStats.Add(infoBonus);
 }
    public void OnLevelLoad(Scene scene)
    {
        if (scene.name == "HUB scene")
        {
            inv      = GameObject.Find("HUBUI/Inventory Panel/Grid Layout").GetComponent <Inventory>();
            inv2     = GameObject.Find("HUBUI/Loadout Panel/Inventory Grid").GetComponent <Inventory>();
            equipInv = GameObject.Find("HUBUI/Loadout Panel/Equipment Grid").GetComponent <Inventory>();
            sellInv  = GameObject.Find("HUBUI/Inventory Panel/Sell Inv").GetComponent <Inventory>();
            hubStats = GameObject.Find("HUBUI/Loadout Panel/Stats Backing").GetComponent <HUBStats>();
            lore     = GameObject.Find("HUBUI/Information Panel").GetComponent <Lore>();

            uiMgr.HUBUISet();

            if (allPickedUpObjects.Count > 0)
            {
                for (int i = 0; i < allPickedUpObjects.Count; i++)
                {
                    Item item = allPickedUpObjects[i].GetComponent <Item>();

                    if (item.itemStats.equipped == true) //check if the item is equipped and then if the lead bot has it. Since the leadbot will always show when first opening the loadout screen, no other bots need to be checked
                    {
                        if (item.itemStats.leadOwns)
                        {
                            equipInv.ItemRetrieve(item.itemStats);
                        }
                    }
                    else
                    {
                        inv.ItemRetrieve(item.itemStats);
                        inv2.ItemRetrieve(item.itemStats);
                    }
                }
            }

            if (loreObjects.Count > 0)
            {
                for (int i = 0; i < loreObjects.Count; i++)
                {
                    Item item = loreObjects[i].GetComponent <Item>();

                    lore.ItemRetrieve(item.itemStats);
                }
            }

            if (loadDataOnLevelLoad) //called when a button is pressed that sets the bool false, loads save data when the level loads
            {
                hubTracker.LoadDataFromFile(saveMgr.saveFileName);
                LoadInventoryData(saveMgr.saveFileName);

                loadDataOnLevelLoad = false;
            }

            if (resetDataForNewGame) //called when a button is pressed that sets the bool false, clears save data and then updates the UI when the level loads
            {
                Debug.Log("Reseting data for new game");

                hubTracker.ClearAllSaveData();
                ClearAllSaveData();
                ClearEquipment();

                inv.UpdateSlotUI();
                inv2.UpdateSlotUI();
                equipInv.UpdateSlotUI();
                sellInv.UpdateSlotUI();

                resetDataForNewGame = false;
            }
        }
    }