예제 #1
0
    public void DealArmour(Transform spawnTransform, ArmourData data, List <GameObject> objectList) //Deals hero cards at start of game
    {
        ArmourData card     = Instantiate(data);                                                    //instantiates instance of scriptable object
        ArmourCard tempCard = Instantiate(armourCardTemplate);                                      //instantiates an instance of the card prefab

        tempCard.transform.SetParent(spawnTransform, false);                                        //moves card onto board
        tempCard.armourData = card;                                                                 //assigns the instance of the scriptable object to the instance of the prefab
        equippedArmourObj.Add(tempCard.gameObject);                                                 //adds card to live list
        currentArmour = equippedArmourObj[0].GetComponent <ArmourCard>();
    }
예제 #2
0
    public void DealArmour(Transform armourTransform, List <GameObject> armourObjectList, ArmourData armour) //Deals one card
    {
        ArmourData card     = Instantiate(armour);                                                           //instantiates instance of scriptable object
        ArmourCard tempCard = Instantiate(armourCardTemplate);                                               //instantiates an instance of the card prefab

        tempCard.transform.SetParent(armourInvTransform.transform, false);                                   //moves card onto board
        tempCard.armourData = card;                                                                          //assigns the instance of the scriptable object to the instance of the prefab
        invArmour.Add(tempCard.gameObject);                                                                  //adds card to live list
        tempCard.equipButton.SetActive(true);                                                                //enables the button
        tempCard.name = tempCard.armourData.name.Replace("(Clone)", "").ToString();
    }
예제 #3
0
    public void SaveBackpack() //saves backpack lists and remaining lootdrop lists
    {
        //saves backpack items to list of strings

        textBackpackWeapons.Clear(); //clears list before saving
        foreach (GameObject weapon in backPackWeapons)
        {
            WeaponCard tempWeapon = weapon.GetComponent <WeaponCard>();
            weaponLoot1.Remove(tempWeapon.weaponData);       //removes from loot drop list
            textBackpackWeapons.Add(weapon.name.ToString()); //Converts data to string
        }

        textBackpackUltimate.Clear(); //clears list before saving
        foreach (GameObject ultimate in backPackUltimates)
        {
            UltimateCard tempUltimate = ultimate.GetComponent <UltimateCard>();
            ultimateLoot1.Remove(tempUltimate.ultimateData);    //removes from loot drop list
            textBackpackUltimate.Add(ultimate.name.ToString()); //Converts data to string
        }

        textBackpackArmour.Clear(); //clears list before saving
        foreach (GameObject armour in backPackArmour)
        {
            ArmourCard tempArmour = armour.GetComponent <ArmourCard>();
            armourLoot1.Remove(tempArmour.armourData);      //removes from loot drop list
            textBackpackArmour.Add(armour.name.ToString()); //Converts data to string
        }

        //serializes list of strings to .dat files

        FileStream weaponFile = new FileStream("BackpackWeapons.dat", FileMode.Create);
        var        bf         = new BinaryFormatter();

        bf.Serialize(weaponFile, textBackpackWeapons);
        weaponFile.Close();

        FileStream ultimateFile = new FileStream("BackpackUltimates.dat", FileMode.Create);

        bf.Serialize(ultimateFile, textBackpackUltimate);
        ultimateFile.Close();

        FileStream armourFile = new FileStream("BackpackArmour.dat", FileMode.Create);

        bf.Serialize(armourFile, textBackpackArmour);
        armourFile.Close();

        //print("saved backpack");
        SaveLootTable();
        SceneManager.LoadScene("MenuScene");
    }
예제 #4
0
    public void DealArmourLoot(Transform spawnTransform, List <ArmourData> dataList, List <GameObject> objectList) //Deals one weapon card
    {
        if (dataList.Count > 0)
        {
            int rng = UnityEngine.Random.Range(0, dataList.Count); //randomly select a card
            armourTopDeck = dataList[rng];
        }
        else
        {
            armourTopDeck = null;
        }
        ArmourData card     = Instantiate(armourTopDeck);      //instantiates instance of scriptable object
        ArmourCard tempCard = Instantiate(armourCardTemplate); //instantiates an instance of the card prefab

        tempCard.transform.SetParent(spawnTransform, false);   //moves card onto board
        tempCard.armourData = card;                            //assigns the instance of the scriptable object to the instance of the prefab
        armourLoot1.Remove(armourTopDeck);                     //removes from list
        objectList.Add(tempCard.gameObject);                   //adds card to list
        tempCard.equipButton.SetActive(true);                  //enables button
        tempCard.name = tempCard.armourData.name.Replace("(Clone)", "").ToString();
    }