Пример #1
0
 public virtual void Initialize()
 {
     this.transform.position = new Vector3(this.transform.position.x, Constants.HeroYpos, 0);
     hPcurrent = HPBars;
     Inventory = new AbItem[Constants.InventorySize];
     Equipment = new AbEquipment[Enum.GetNames(typeof(EquipmentTypes)).Length];
     Animator = this.gameObject.GetComponent<Animator>();
     AudioPlayer = this.gameObject.GetComponent<AudioController>();
     Statistics = new AdventureResult();
 }
Пример #2
0
    public void Unequip(AbEquipment item)
    {
        if (AbCompartmentSceneController.Instance != null ? !AbCompartmentSceneController.Instance.isFighting : true)
        {
            if (Equipment[(int)item.Slot] == item)
            {
                for (int i = 0; i < InventorySlotCount; i++)
                {
                    if (Inventory[i] == null)
                    {
                        item.Status = ItemStatuses.Inventory;
                        Inventory[i] = item;
                        item.transform.position = Constants.GetInventoryPosition(i);
                        if (AbCompartmentSceneController.Instance.EquipmentBoard != null && AbCompartmentSceneController.Instance.EquipmentBoard.gameObject.activeSelf)
                        {
                            item.gameObject.SetActive(false);
                        }
                        else
                        {
                            item.gameObject.SetActive(true);
                        }

                        Equipment[(int)item.Slot] = null;
                        break;
                    }
                }
            }
        }
    }
Пример #3
0
    public void Equip(AbEquipment item)
    {
        if (AbCompartmentSceneController.Instance!=null ? !AbCompartmentSceneController.Instance.isFighting : true)
        {
            if (this.Equipment[(int)item.Slot] != this)
            {
                if (this.Equipment[(int)item.Slot] != null)
                {
                    if (!(this.Equipment[(int)item.Slot] is EquipmentSilhouette))
                    {
                        if (item.Status == ItemStatuses.Inventory)
                        {
                            for (int i = 0; i < InventorySlotCount; i++)
                            {
                                if (Inventory[i] == item)
                                {
                                    Inventory[i] = Equipment[(int)item.Slot];
                                    Inventory[i].Status = ItemStatuses.Inventory;
                                    Inventory[i].transform.position = Constants.GetInventoryPosition(i);
                                    Inventory[i].gameObject.SetActive(true);

                                    Equipment[(int)item.Slot] = null;
                                    break;
                                }
                            }
                        }
                        else
                        {
                            for (int i = 0; i < InventorySlotCount; i++)
                            {
                                if (Inventory[i] == null)
                                {
                                    Inventory[i] = Equipment[(int)item.Slot];
                                    Inventory[i].Status = ItemStatuses.Inventory;
                                    Inventory[i].transform.position = Constants.GetInventoryPosition(i);
                                    Inventory[i].gameObject.SetActive(AbCompartmentSceneController.Instance.EquipmentBoard == null
                                        || !AbCompartmentSceneController.Instance.EquipmentBoard.gameObject.activeSelf);

                                    Equipment[(int)item.Slot] = null;
                                    break;
                                }
                            }
                        }
                    }
                    if (Equipment[(int)item.Slot] != null && !(this.Equipment[(int)item.Slot] is TheRivenMask))
                    {
                        this.Equipment[(int)item.Slot].Drop();
                        this.Equipment[(int)item.Slot] = null;
                    }
                }
                if (this.Equipment[(int)item.Slot] == null)
                {
                    this.Equipment[(int)item.Slot] = item;
                    item.Status = ItemStatuses.Equiped;
                    item.transform.position = Constants.GetEquipmentPosition(item.Slot);
                    if (AbCompartmentSceneController.Instance.EquipmentBoard == null || !AbCompartmentSceneController.Instance.EquipmentBoard.gameObject.activeSelf)
                    {
                        item.gameObject.SetActive(false);
                    }
                }
            }
        }
    }