Ejemplo n.º 1
0
    public PlayerDataManager.PlayerData LoadPlayerEquipmentStatusSetting(PlayerDataManager.PlayerData _playerData)
    {
        ItemContainerSaveData savedSlots = ItemSaveIO.LoadItems(EquipmentFileName);

        if (savedSlots == null)
        {
            return(_playerData);
        }

        for (int i = 0; i < savedSlots.savedSlots.Length; i++)
        {
            ItemSlotSaveData savedSlot = savedSlots.savedSlots[i];

            if (savedSlot == null)
            {
            }
            else
            {
                EquippableItem equipItem = (EquippableItem)m_itemDataBase.GetItemReference(savedSlot.itemID);

                _playerData.attack    += equipItem.attackBonus;
                _playerData.defensive += equipItem.armorBonus;
                _playerData.maxHp     += equipItem.maxHealthBonus;
            }
        }
        return(_playerData);
    }
Ejemplo n.º 2
0
    public void LoadInventory(InventoryManger _inventoryManager)
    {
        ItemContainerSaveData savedSlots = ItemSaveIO.LoadItems(InventoryFileName);

        if (savedSlots == null)
        {
            return;
        }

        _inventoryManager.inventory.Clear();

        for (int i = 0; i < savedSlots.savedSlots.Length; i++)
        {
            ItemSlot         itemSlot  = _inventoryManager.inventory.itemSlots[i];
            ItemSlotSaveData savedSlot = savedSlots.savedSlots[i];

            if (savedSlot == null)
            {
                itemSlot.Item   = null;
                itemSlot.Amount = 0;
            }
            else
            {
                itemSlot.Item       = m_itemDataBase.GetItemCopy(savedSlot.itemID);
                itemSlot.Amount     = savedSlot.amount;
                itemSlot.eSlotState = savedSlot.slotState;
                itemSlot.SetStart();
            }
        }
    }
Ejemplo n.º 3
0
    public void LoadEquipment(InventoryManger _inventoryManager)
    {
        ItemContainerSaveData savedSlots = ItemSaveIO.LoadItems(EquipmentFileName);

        if (savedSlots == null)
        {
            return;
        }

        for (int i = 0; i < savedSlots.savedSlots.Length; i++)
        {
            ItemSlot         itemSlot  = _inventoryManager.equipmentPanel.equipmentSlots[i];
            ItemSlotSaveData savedSlot = savedSlots.savedSlots[i];

            if (savedSlot == null)
            {
                itemSlot.Item   = null;
                itemSlot.Amount = 0;
            }
            else
            {
                itemSlot.Item   = m_itemDataBase.GetItemCopy(savedSlot.itemID);
                itemSlot.Amount = savedSlot.amount;
                ((EquipmentSlot)itemSlot).rememberInventoryIndex = savedSlot.rememberInventoryIndex;
                itemSlot.eSlotState = savedSlot.slotState;
                itemSlot.SetStart();
            }
        }
    }
Ejemplo n.º 4
0
    public void LoadInventory(Character character)
    {
        ItemContainerSaveData savedSlots = ItemSaveIO.LoadItems(InventoryFileName);

        if (savedSlots == null)
        {
            return;
        }
        character.Inventory.Clear();

        for (int i = 0; i < savedSlots.SavedSlots.Length; i++)
        {
            ItemSlot         itemSlot  = character.Inventory.ItemSlots[i];
            ItemSlotSaveData savedSlot = savedSlots.SavedSlots[i];

            if (savedSlot == null)
            {
                itemSlot.Item   = null;
                itemSlot.Amount = 0;
            }
            else
            {
                itemSlot.Item   = itemDatabase.GetItemCopy(savedSlot.ItemID);
                itemSlot.Amount = savedSlot.Amount;
            }
        }
    }
Ejemplo n.º 5
0
 private void Start()
 {
     myConfigs = ItemSaveIO.LoadItems("configurations");
     if (myConfigs == null)
     {
         myConfigs = new List <MyConfiguration>();
     }
 }
Ejemplo n.º 6
0
    public void RewordItemToInventory()
    {
        int rewordItemCount = rewordItemArray.Length - 1;

        ItemContainerSaveData savedSlots = ItemSaveIO.LoadItems(InventoryFileName);

        if (savedSlots == null)
        {
            savedSlots = new ItemContainerSaveData(PlayerDataManager.Inst.GetPlayerData().inventoySize);

            for (int i = 0; i < rewordItemArray.Length; i++)
            {
                savedSlots.savedSlots[i] = new ItemSlotSaveData(rewordItemArray[rewordItemCount - i].ID, 1, SLOT_STATE.NOT_MOUNTING);
            }

            ItemSaveIO.SaveItems(savedSlots, InventoryFileName);
            return;
        }

        //저장할 공간
        var tempSaveData = new ItemContainerSaveData(savedSlots.savedSlots.Length);

        for (int i = 0; i < savedSlots.savedSlots.Length; i++)
        {
            ItemSlotSaveData savedSlot = savedSlots.savedSlots[i];

            if (savedSlot == null)
            {
                if (rewordItemCount >= 0)
                {
                    tempSaveData.savedSlots[i] = new ItemSlotSaveData(rewordItemArray[rewordItemCount].ID, 1, SLOT_STATE.NOT_MOUNTING);

                    rewordItemCount--;
                }
                else
                {
                    tempSaveData.savedSlots[i] = null;
                }
            }
            else
            {
                tempSaveData.savedSlots[i] = new ItemSlotSaveData(savedSlot.itemID, savedSlot.amount, savedSlot.slotState);
            }
        }

        ItemSaveIO.SaveItems(tempSaveData, InventoryFileName);
    }
Ejemplo n.º 7
0
    public void LoadInventory(Inventory inventory)
    {
        //Debug.Log("Loading Inventory...");
        ItemContainerSaveData savedSlots = ItemSaveIO.LoadItems(InventoryFileName);

        inventory.Money = savedSlots.Money;
        if (savedSlots == null)
        {
            return;
        }

        inventory.Clear(); //Clear inventory

        for (int i = 0; i < savedSlots.SavedSlots.Length; i++)
        {
            //ItemSlot itemSlot = inventory.ItemContainer.itemSlots[i];
            ItemSlot         itemSlot;
            ItemSlotSaveData savedSlot = savedSlots.SavedSlots[i];

            if (savedSlot == null)
            {
                itemSlot.item     = null;
                itemSlot.quantity = 0;
            }
            else
            {
                itemSlot.item     = itemDatabase.GetItemCopy(savedSlot.ItemID);
                itemSlot.quantity = savedSlot.Amount;
                inventory.ItemContainer.AddItemAt(itemSlot, i);

                if (itemSlot.item as EquipmentItem)
                {
                    (itemSlot.item as EquipmentItem).itemData = savedSlot.itemData;
                }
            }
        }

        if (savedSlots.SavedSlots[17] != null)
        {
            //Debug.Log("Loading Equipped Weapon from Save File...");
            uiCharacterEquipment.loadEquippedItems();
        }
    }
Ejemplo n.º 8
0
    public void LoadEquipment(Character character)
    {
        ItemContianerSaveData savedSlots = ItemSaveIO.LoadItems(EquipmentFileName);

        if (savedSlots == null)
        {
            return;
        }
        foreach (ItemSlotSaveData savedSlot in savedSlots.SavedSlots)
        {
            if (savedSlot == null)
            {
                continue;
            }

            Item item = itemDatabase.GetItemCopy(savedSlot.ItemID);
            character.Inventory.AddItem(item);
            character.Equip((EquippableItem)item);
        }
    }
Ejemplo n.º 9
0
    /// <summary>
    /// Loads state of the inventory.
    /// </summary>
    /// <param name="character"></param>
    public void LoadInventory(Character character)
    {
        ItemContainerSaveData savedInventorySlots = ItemSaveIO.LoadItems(InventoryFileName);

        if (savedInventorySlots != null)
        {
            character.InventoryManager.Inventory.Clear();
            for (int i = 0; i < savedInventorySlots.SavedSlots.Length; i++)
            {
                ItemSlot         itemSlot  = character.InventoryManager.Inventory.ItemSlots[i];
                ItemSlotSaveData savedSlot = savedInventorySlots.SavedSlots[i];

                itemSlot.Item = (savedSlot != null) ? itemConfig.GetItemClone(savedSlot.ItemId) : null;
                if (itemSlot.Item != null)
                {
                    character.InventoryManager.Inventory.AddItem(itemSlot.Item);
                }
            }
        }
    }
Ejemplo n.º 10
0
        public void LoadInventory()
        {
            ContainerSaveData data = ItemSaveIO.LoadItems(gameObject.name);

            if (data == null)
            {
                return;
            }
            ItemData[] idata = new ItemData[data.savedSlots.Length];

            for (int i = 0; i < data.savedSlots.Length; i++)
            {
                if (data.savedSlots[i] != null)
                {
                    Item item = itemDatabase.GetItemCopy(data.savedSlots[i].itemID);
                    idata[i] = new ItemData(item, data.savedSlots[i].amount);
                }
            }

            items = idata;
        }
Ejemplo n.º 11
0
    /// <summary>
    /// Loads state of the equipments.
    /// </summary>
    /// <param name="character"></param>
    public void LoadEquipments(Character character)
    {
        ItemContainerSaveData savedEquipmentSlots = ItemSaveIO.LoadItems(EquipmentFileName);

        if (savedEquipmentSlots == null)
        {
            return;
        }

        foreach (ItemSlotSaveData savedSlot in savedEquipmentSlots.SavedSlots)
        {
            if (savedSlot == null)
            {
                continue;
            }

            Item item = (savedSlot != null) ? itemConfig.GetItemClone(savedSlot.ItemId) : null;
            if (item != null)
            {
                character.InventoryManager.Inventory.AddItem(item);
                character.Equip(item);
            }
        }
    }
Ejemplo n.º 12
0
    private void SetWeaponItem(HotbarItem weaponItem, bool isLoadingfromSave)
    {
        this.weaponItem = weaponItem;
        //Debug.Log("Weapon Slot: Currently Equiped " + weaponItem.name);

        if (LoadedWeapon)
        {
            PhotonNetwork.Destroy(LoadedWeapon);
        }

        if (isLoadingfromSave)
        {
            ItemContainerSaveData savedSlots = ItemSaveIO.LoadItems("Inventory");
            if (savedSlots.SavedSlots[17] != null)
            {
                CurrentPlayer = PhotonNetwork.LocalPlayer.TagObject as GameObject;
                LoadedWeapon  = PhotonNetwork.Instantiate((Path.Combine("PhotonPrefabs/Items", savedSlots.SavedSlots[17].ItemID)), Vector3.up, Quaternion.identity) as GameObject;
                LoadedWeapon.transform.position = CurrentPlayer.transform.GetChild(1).GetChild(0).position;
                LoadedWeapon.transform.rotation = CurrentPlayer.transform.GetChild(1).GetChild(0).rotation;

                // if(PV.IsMine)
                //     PV.RPC("TransformLoadedWeapon", RpcTarget.All);
                TransformLoadedWeapon();
                //LoadedWeapon.transform.SetParent(CurrentPlayer.transform.GetChild(1).GetChild(0));
                //LoadedWeapon.transform.parent = CurrentPlayer.transform.GetChild(1).GetChild(0);

                LoadedWeapon.GetComponent <WeaponStats>().item_value    = savedSlots.SavedSlots[17].itemData.item_value;
                LoadedWeapon.GetComponent <WeaponStats>().attack        = savedSlots.SavedSlots[17].itemData.attack;
                LoadedWeapon.GetComponent <WeaponStats>().attack_speed  = savedSlots.SavedSlots[17].itemData.attack_speed;
                LoadedWeapon.GetComponent <WeaponStats>().crit_chance   = savedSlots.SavedSlots[17].itemData.crit_chance;
                LoadedWeapon.GetComponent <WeaponStats>().bleed_chance  = savedSlots.SavedSlots[17].itemData.bleed_chance;
                LoadedWeapon.GetComponent <WeaponStats>().range         = savedSlots.SavedSlots[17].itemData.range;
                LoadedWeapon.GetComponent <WeaponStats>().defense       = savedSlots.SavedSlots[17].itemData.defense;
                LoadedWeapon.GetComponent <WeaponStats>().magic_defense = savedSlots.SavedSlots[17].itemData.magic_defense;
                LoadedWeapon.GetComponent <WeaponStats>().move_speed    = savedSlots.SavedSlots[17].itemData.move_speed;
                LoadedWeapon.GetComponent <WeaponStats>().item_type     = savedSlots.SavedSlots[17].itemData.item_type;
            }
        }
        else
        {
            CurrentPlayer = PhotonNetwork.LocalPlayer.TagObject as GameObject;
            LoadedWeapon  = PhotonNetwork.Instantiate((Path.Combine("PhotonPrefabs/Items", weaponItem.Name)), Vector3.up, Quaternion.identity) as GameObject;
            LoadedWeapon.transform.position = CurrentPlayer.transform.GetChild(1).GetChild(0).position;
            LoadedWeapon.transform.rotation = CurrentPlayer.transform.GetChild(1).GetChild(0).rotation;

            // if(PV.IsMine)
            //     PV.RPC("TransformLoadedWeapon", RpcTarget.All); // RpcTarget.all
            TransformLoadedWeapon();
            //LoadedWeapon.transform.SetParent(CurrentPlayer.transform.GetChild(1).GetChild(0));
            //LoadedWeapon.transform.parent = CurrentPlayer.transform.GetChild(1).GetChild(0);

            equipmentItem = playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem;

            LoadedWeapon.GetComponent <WeaponStats>().item_value    = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.item_value;
            LoadedWeapon.GetComponent <WeaponStats>().attack        = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.attack;
            LoadedWeapon.GetComponent <WeaponStats>().attack_speed  = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.attack_speed;
            LoadedWeapon.GetComponent <WeaponStats>().crit_chance   = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.crit_chance;
            LoadedWeapon.GetComponent <WeaponStats>().bleed_chance  = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.bleed_chance;
            LoadedWeapon.GetComponent <WeaponStats>().range         = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.range;
            LoadedWeapon.GetComponent <WeaponStats>().defense       = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.defense;
            LoadedWeapon.GetComponent <WeaponStats>().magic_defense = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.magic_defense;
            LoadedWeapon.GetComponent <WeaponStats>().move_speed    = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.move_speed;
            LoadedWeapon.GetComponent <WeaponStats>().item_type     = (playerInventory.ItemContainer.itemSlots[17].item as EquipmentItem).itemData.item_type;
        }

        //LoadIntoHand(weaponItem, isLoadingfromSave);
    }