Esempio n. 1
0
 /// <summary>
 /// Attempts to unequip the item in the provided slot
 /// </summary>
 /// <param name="placement">Placement of the item we want to remove (Helmet, Torso, legs, etc)</param>
 /// <returns>Returns true on success, false on failure, no item, or no Actor_Equipment</returns>
 public bool unEquipItem(Item_Equipment.Placement placement)
 {
     if (m_actorEquipment != null)
     {
         return(m_actorEquipment.unEquipItem(placement));
     }
     return(false);
 }
    /// <summary>
    ///Attempts to equip the provided item into the placement slot it belongs in. Return false if item is already equipped there
    ///</summary>
    public bool equipItem(Item equipmentItem)
    {
        Item_Equipment equipment = equipmentItem.getItemEquipment();

        Item_Equipment.Placement placement = equipment.EquipmentPlacement;
        if (placement == Item_Equipment.Placement.Head)
        {
            if (Helmet != null)
            {
                return(false);
            }
            else
            {
                Helmet = equipment;
                equipment.transform.localScale        = Vector3.one;
                equipment.gameObject.transform.parent = m_HeadTransform;
                equipment.transform.localPosition     = Vector3.zero;
                return(true);
            }
        }
        else if (placement == Item_Equipment.Placement.Torso)
        {
            if (Torso != null)
            {
                return(false);
            }
            else
            {
                Torso = equipment;
                equipment.transform.localScale        = Vector3.one;
                equipment.gameObject.transform.parent = m_HeadTransform;
                equipment.transform.localPosition     = Vector3.zero;
                return(true);
            }
        }
        else if (placement == Item_Equipment.Placement.Arm)
        {
            if (RightArm == null)
            {
                RightArm = equipment;
                equipment.transform.localScale        = Vector3.one;
                equipment.gameObject.transform.parent = m_RightArmTransform;
                equipment.transform.localPosition     = Vector3.zero;
            }
            else if (LeftArm == null)
            {
                LeftArm = equipment;
                equipment.transform.localScale        = Vector3.one;
                equipment.gameObject.transform.parent = m_LeftArmTransform;
                equipment.transform.localPosition     = Vector3.zero;
            }
            else
            {
                return(false);
            }
            return(true);
        }
        else if (placement == Item_Equipment.Placement.Leg)
        {
            if (Legs != null)
            {
                return(false);
            }
            else
            {
                Legs = equipment;
                equipment.transform.localScale        = Vector3.one;
                equipment.gameObject.transform.parent = m_LegsTransform;
                equipment.transform.localPosition     = Vector3.zero;
                return(true);
            }
        }
        else if (placement == Item_Equipment.Placement.MainHand)
        {
            if (RightHand != null)
            {
                return(false);
            }
            else
            {
                RightHand = equipment;
                equipment.transform.localScale        = Vector3.one;
                equipment.gameObject.transform.parent = m_RightHandTransform;
                equipment.transform.localPosition     = Vector3.zero;
                equipment.transform.localRotation     = m_RightHandTransform.rotation;
                return(true);
            }
        }
        else if (placement == Item_Equipment.Placement.OffHand)
        {
            if (LeftHand != null)
            {
                return(false);
            }
            else
            {
                LeftHand = equipment;
                equipment.transform.localScale        = Vector3.one;
                equipment.gameObject.transform.parent = m_LeftHandTransform;
                equipment.transform.localPosition     = Vector3.zero;
                return(true);
            }
        }

        Debug.LogWarning("This Item_Equipment doesn't have a specified placement: " + equipment);
        return(false);
    }
 public bool unEquipItem(Item_Equipment.Placement placement)
 {
     return(false);
 }